greglando113 / gwca Goto Github PK
View Code? Open in Web Editor NEWA C++ internal API for interfacing with the Guild Wars® client.
License: Other
A C++ internal API for interfacing with the Guild Wars® client.
License: Other
GwArmory apparently doesn't offer a filter for the eotn armors and is missing the Deldrimor armor for paragon. (i.e. Winged Raiment)
Hi,
I'm currently trying to accept a party invite using the GWCA function RespondToPartyRequest(true) from PartyMgr. However the behaviour is a bit strange:
The rest of GWCA seems to work fine, so it seems to be a problem with this particular function only. Did I miss anything? I guess calling RespondToPartyRequest(true) should be all that is required to accept an invite... Or has the packet which has to be sent in order to accept possibly been changed in one of the past updates?
Thanks in advance.
Not directly related, but I was wondering if some knows how the current Auth server protocol rc4 key is derived, because I wanted to implement an proxy: https://github.com/valaphee/sprinkle/blob/main/src/bin/proxy.rs#L153, but couldn't figure it out yet.
Hi 👋 I'm new to Visual Studio and C++ and am wondering how I can get the Packet Logger example project up-and-running? I currently have Visual Studio 2022 installed.
Here's what I've tried so-far:
None of that worked so then I tried running cmake .
in the Examples directory but it only seemed to partially succeed
$ cmake .
-- Building for: Visual Studio 17 2022
-- Selecting Windows SDK version 10.0.22000.0 to target Windows 10.0.22621.
-- The C compiler identification is MSVC 19.35.32216.1
-- The CXX compiler identification is MSVC 19.35.32216.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.35.32215/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.35.32215/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at CMakeLists.txt:6 (message):
You are configuring a 64bit build, this is not supported. Run cmake with
`-A Win32`
-- Configuring incomplete, errors occurred!
See also "C:/.../GWCA/CMakeFiles/CMakeOutput.log".
Then I deleted CMakeCache.txt
and tried cmake again with cmake -A Win32 .
and it appeared to succeed.
$ cmake . -A Win32
-- Building for: Visual Studio 17 2022
-- Selecting Windows SDK version 10.0.22000.0 to target Windows 10.0.22621.
-- The C compiler identification is MSVC 19.35.32216.1
-- The CXX compiler identification is MSVC 19.35.32216.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.35.32215/bin/Hostx64/x86/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.35.32215/bin/Hostx64/x86/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: C:/.../GWCA
Then I tried to build/run PacketLogger in Visual Studio again
and wasn't sure where to go from there. I've probably way over-complicated it. Any help would be appreciated 😄 .
The provided example in the readme does not work.
When I try to build it I get the that the file "GWCA/APIMain.h" cannot be found.
I have followed every other steps in the readme (added GWCA as a git submodule, added it as a project in VC, defined it as a dependency and added it as a reference).
When switching between certain pieces of armor you can get multiple pieces of armor at the same time. An example is spectacles:
(This bug existed all the way back in gwdressup)
The workaround for now is to take off the offending armor piece in-game to reset the look.
Adding an option for "No armor" to the select would also be nice for headpieces which can be hidden
Hi,
when using the function GW::Agents::Move(x, y) it just crashes the game client for me.
Initialize() returned true before and other API functions seem to work (e.g. reading the player coordinates or map id), so I guess the API startup itself is performed corectly.
However inside Toolbox the very same function call (even with the same coordinates on the same map in the same instance) works just fine and the character starts moving to the specified position when setting a corresponding hotkey for it.
On the other hand, there seems to be any kind of initialization missing: When I download GWToolbox, build it from source and slightly modify the code in GWToolbox.cpp to use GW::Agents::Move(x, y) right after enabling the HookBase hooks(see code snippet below) it also crashes the game client from inside toolbox:
https://github.com/HasKha/GWToolboxpp/blob/f325d384b5cddc2505aea6134019150f4dcf9da1/GWToolbox/GWToolbox/GWToolbox.cpp#L94-L97
Therefore I must be missing any kind of initialization Toolbox does before enabling the move hotkeys. Are there any further requirements / initializations / etc. before I can use GW::Agents::Move(x, y) in order to not crash the game client? Toolbox seems to do them after enabling the HookBase hooks and before a move hotkey is executed.
The game tries to Read Memory at address 0x14 which fails for obvious reasons.
Thans in advance.
uintptr_t found = GW::Scanner::Find("\xF7\x40\x0C\x10\x00\x02\x00\x75", "xxxxxxxx", +7);
printf("[SCAN] GoldConfirmationPatch = %p\n", (void *)found);
// \xF7\x40\x0C\x10\x00\x02\x00\x75
// 0 1 2 3 4 5 6 7
Hi,
I would like to use this GW client using Python. Is it theoretically possible to interface GWCA C++ functions in a piece of Python code?
Thank you.
Hi,
I'm trying to include GWCA in my project as in the example and I've added the include libraries in my setup. The executable now builds fine however when I execute the first function GW::Initialize() I receive the following error
Exception thrown at 0x00806823 in App.exe: 0xC0000005: Access violation reading location 0x00401000.
System.AccessViolationException: 'Attempted to read or write protected memory. This is often an indication that other memory is corrupt.'
And it's happening here
So I'm pretty much stuck at the first step.
if (GW::Initialize()) {
this->initialized = true;
this->button1->Text = "Stop";
}
Any ideas why this might be happening? I'd be happy to provide additional info to troubleshoot it if I new what is needed :)
Any help is appreciated.
PS: I'm running as administrator and with a/v disabled completely.
e.g. When entering an amount of gold or item to move, GW::Chat::GetIsTyping
says no
aggro bubble should be 1012 and cast range 1248 gwinches
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.