Firstly, I owe this community an apology for my sudden disappearance. I’ve had to move back to the U.S. from Europe, and it has taken me a solid couple of months to settle everything down. I think last time I was able to even update anything was back in June and it was brief/short. Thanks for bearing with me during this transition.
In the spirit of the season, I wanted to update and share latest update with all of you as a Christmas present to our community. This was rushed to get this out just in time, hoping it can assist in your projects.
Most of my future updates will be available on my GitHub, so feel free to follow me there to stay updated on my projects. Here’s the link:
For those with questions or who want to dive deeper, I invite you to join my Discord server. I'll be more active there and happy to engage with all of you.
Note: It is your responsibility to update your script to talk to my lib updates. I will not do that for you, ensure you go through the lib and find what you are looking for with the proper function names.
**Note** If you're looking for a specific Bot Update and are willing to pay for the source ( all files not the exe) reach out on discord, we have verified people who can do this. Otherwise try your best and share as a community.
Changelog 02.01.25:
- Added new function: KickHero($aHeroId) to kick a specific hero from the party.
- Renamed existing function: KickHero() to KickHero1($aHeroId) to avoid naming conflicts.
- Updated function: KickAllHeroes() to KickAllHeroes1() to match the new naming convention.
- Modified function: CancelHero($aHeroNumber) to use the correct packet header $HEADER_HERO_FLAG_ALL instead of $HEADER_HERO_CLEAR_FLAG.
- Updated function: Attack($aAgent,$ aCallTarget = False) to use the correct packet header $HEADER_ACTION_ATTACK instead of $HEADER_CALL_TARGET.
__________________________________________________
Changelog 30.12.24:
- Removed Logging:
- Removed CurrentAction() logging calls:
- "Getting nearest agent to coordinates: x, y"
- "No agent found near the specified coordinates"
- "Found nearest agent at distance: distance"
- Removed CurrentAction() logging calls:
- Code Fixes:
- Restored GetNearestAgentToCoords() function call that was commented out
- Removed incorrect $lNearestAgent = 0 initialization
- Address Updates:
- Updated ChangeTargetFunction address offset from -0x0089 to -0x0086
- Updated ScanEngine address offset from -0x6D + 2 to -0x22 ( Was Causing Freezing )
- Code Cleanup:
- Simplified If statement structure for early return
- Improved code formatting and readability
- Maintained original NPC interaction functionality
- Functionality Changes:
- Commented out ScanRenderFunction
Changelog 28.12.24
- Integrated over 300 Debug line to Injection function to detect any issues as we still troubleshoot the cause of functionality issues
- Fixed Send Packet issues that did not allow functionality with the game to occur.
Additional Fix:
Fixed Functionality with Game
- Refactored Chest Checking Code
Refactored the CheckForChest function to improve readability and maintainability
Introduced global constants for magic numbers to make the code more descriptive and easier to understand
Added a separate function IsChestOpened to check if a chest has been opened
Added a separate function AddOpenedChest to add a chest to the opened list
Improved array management and bounds checking to prevent errors
Removed dirty fix and replaced it with a more elegant solution
Changes:
Introduced global constants for:
AGENT_TYPE_STATIC (0x200)
AGENT_TYPE_ITEM (0x400)
AGENT_TYPE_CHEST (512)
LOOT_PICKUP_DELAY (500)
Renamed variables and functions to follow a consistent naming convention
Improved code formatting and indentation for better readability
Added comments to explain the purpose of each function and variable
Fixes:
Fixed potential array out of bounds error when checking if a chest has been opened
Fixed potential error when adding a chest to the opened list
__________________________________________________
Changelog 27.12.24
- Updated all GWA2 LIB Header Calls to match GWA2 Headers
- Cleaner GWA2 LIB
- Offset Validation for Agent Pointer
- Broke up long lines of code into multiple lines
- Removed unnecessary variables and code duplication
- Renamed some variables to make them more descriptive
- Used consistent indentation and formatting
- Added comments to explain what each section of code does
Changelog 26.12.24
- $mAgentBase = MemoryRead(GetScannedAddress('ScanAgentBasePointer ', 8) + 0xC - 7) - 8 ; Updated
- isLoggedIn Updated
ChangeLog – Updated Patterns as of December 23, 2024:
Updated Patterns
The following patterns were successfully updated:
- ScanEngine: Pattern: 56FFD083C4048BCEE897, Updated: 23.12.24, needs to be updated each patch
- Changes to: $lTemp = GetScannedAddress('ScanEngine', -0x6D + 2) ;-16 ; Previous ('ScanEngine', -0x6E) - Updated 24.12.24
- ScanPing: Pattern: E874651600, Updated: 23.12.24
- ScanLoggedIn: Pattern: BEFFC705C0, Updated: 24.12.24 (Old: BFFFC70580 85C07411B807)
- ScanPacketSendFunction: Pattern: F7D81BC02500800000, Updated: 24.12.24 (Old: F7D9C74754010000001BC981, 558BEC83EC2C5356578BF985)
- ScanActionBase: Pattern: 8D1C87899DF4, Updated: 24.12.24 (Old: 8D1C87899DF4FEFFFF8BC32BC7C1F802, 8B4208A80175418B4A08)
- ScanSleep: Pattern: 6A0057FF15D8408A006860EA0000, Updated: 24.12.24 (Old: 5F5E5B741A6860EA0000)
- ScanSalvageFunction: Pattern : 33C58945FC8B45088945F08B450C8945F48B45108945F88D45 EC506A10C745EC76, Updated: 24.12.24 (Old: 33C58945FC8B45088945F08B450C8945F48B45108945F88D45 EC506A10C745EC75)
- ScanForCharname: Description: The ScanForCharname function has been updated to use $lCharNameCode and a readprocessmemory call at $lTmpAddress + 6.
_('ScanMapLoading:')
AddPattern('2480ED0000000000') ; UPDATED 25.12.24, 6A2C50E8
Still Working Patterns
The following patterns continue to function correctly and require no updates:
- ScanAgentBasePointer: Pattern: FF501083C6043BF775E2, Context: Still functional as of the latest update.
- ScanCurrentTarget: Pattern: 83C4085F8BE55DC3CCCCCCCCCCCCCCCCCCCCCC55, Context: Continues to function correctly in the current version.
- ScanMyID: Pattern: 83EC08568BF13B15, Context: Used for identifying user-specific data within the application.
- ScanRenderFunc: Pattern: F6C401741C68B1010000BA, Context: Rendering functions continue to operate effectively.
- ScanChangeTargetFunction: Pattern: 3BDF0F95C033C03BDA0F95, Context: Function for changing targets remains functional.
- ScanMoveFunction: Pattern: 558BEC83EC208D45F0, Context: Movement functionalities are still working without need for update.
- ScanMapID: Pattern: 558BEC8B450885C074078B, Context: Map identification functions are still working.
- ScanRegion: Pattern: 8BF0EB038B750C3B, Context: Region-related functions are still operational.
- ScanMapInfo: Pattern: 8BF0EB038B750C3B, Context: Map information retrieval functions continue to work as expected.
- ScanActionFunction: Pattern: 8B7508578BF983FE09750C6876, Context: Actions within the application are still being processed correctly.
- ScanUseHeroSkillFunction: Pattern: BA02000000B954080000, Context: Functions related to using hero skills are still operational.
- ScanTransactionFunction: Pattern: 85FF741D8B4D14EB08, Context: Transaction-related functions are working without issues.
- ScanBuyItemBase: Pattern: D9EED9580CC74004, Context: Item purchase base functions remain unchanged and functional.
- ScanRequestQuoteFunction: Pattern: 8B752083FE107614, Context: Quote request functionalities are still effective.
- ScanTraderFunction: Pattern: 83FF10761468D2210000, Context: Trader functionalities continue to work correctly.
- ScanSkillTimer: Pattern: FFD68B4DF08BD88B4708, Context: Skill timing functions are operational.
- ScanClickToMoveFix: Pattern: 3DD301000074, Context: Click-to-move fixes are still functioning.
- ScanDecreaseAttributeFunction: Pattern: 8B8AA800000089480C5DC3CC, Context: Attribute decrease functions are operational.
- ScanClickCoords: Pattern: 8B451C85C0741CD945F8, Context: Click coordinate functionalities are still accurate.
- ScanTradeHack: Pattern: 8BEC8B450883F846, Context: Trade hack detection mechanisms
No Updates
The following patterns could not be updated as of December 23, 2024:
- ScanLoadFinished: Pattern: 8B561C8BCF52E8
- ScanPostMessage: Pattern: 6A00680080000051FF15
- ScanTargetLog: Pattern: 5356578BFA894DF4E8
- ScanLanguage: Pattern: C38B75FC8B04B5
- ScanSkillLog: Pattern: 408946105E5B5D
- ScanSkillCompleteLog: Pattern: 741D6A006A40
- ScanSkillCancelLog: Pattern: 741D6A006A48
- ScanChatLog: Pattern: 8B45F48B138B4DEC50
- ScanSellItemFunction: Pattern: 8B4D2085C90F858E
- ScanStringLog: Pattern: 893E8B7D10895E04397E08
- ScanStringFilter1: Pattern: 8B368B4F2C6A006A008B06
- ScanStringFilter2: Pattern: 515356578BF933D28B4F2C
- ScanTraderHook: Pattern: 8955FC6A008D55F8B9BB
- ScanZoomStill: Pattern: 558BEC8B41085685C0
- ScanZoomMoving: Pattern: EB358B4304
- ScanBuildNumber: Pattern: 558BEC83EC4053568BD9
- ScanCharslots: Pattern: 8B551041897E38897E3C897E34897E48897E4C890D
- ScanReadChatFunction: Pattern: A128B6EB00
[Contributor/Collaborators]
As of Decemebr 30, 2024 Ogdankmaster420 or also known as Alienman9696on Elitepvpers joined for Collaboration/Contribution.
As of December 25, 2024 "Glob of Armbraces" also known as MoneyvsMoney on Elitepvpers joined for Collaboration/Contribution.
List of things Contributors/Collaborators have done:
- 100% Valid Headers
- Identify Backend Issues with Functionality
- Troubleshoot Offsets
- Debug Function
P.S:
Big Shout Out to Greg76 for working multiple projects that will revolutionize scripting. Also providing solutions to the problems at hand!
Big Shout Out to apoguita for developing an amazing project that we should move forward with in the future as we allow GWA2 to die over time.
Listen as a community we share these things for other to contribute and advance what we come up with! We don't all know everything, so please do not shit on anyones projects.