Commit Graph

203 Commits

Author SHA1 Message Date
CarlPoppa
28d41070ce Add ping to OnlineGame 2025-10-18 23:03:59 +01:00
CarlPoppa
fafcbc8728 Add ping to game_reader 2025-10-18 23:03:47 +01:00
CarlPoppa
e5a60b63dd Add ping AOB scan 2025-10-18 23:03:15 +01:00
adpist
923f44d46a Do not erase learned skill by a skill with charges 2025-10-18 13:59:38 +02:00
guiyomu-dev
e882b40af4 update offset 2025-10-18 11:04:33 +02:00
guiyomu-dev
bd10a7f706 add pattern for keybinding 2025-10-18 11:04:33 +02:00
guiyomu-dev
2a52975420 Merge pull request #10 from kwader2k/nip-tiers
add support for fixed values tier and merc tier in nip files
2025-10-18 01:37:40 +02:00
guiyomu-dev
3ff7274ce2 Merge remote-tracking branch 'origin/main' into pr/CarlPoppa1/12 2025-10-18 00:34:20 +02:00
CarlPoppa
06a59974ac Use AOB scan for quests instead of hardcoded offset 2025-10-18 00:12:05 +02:00
CarlPoppa
ce23058fb4 Add quests AOB
Resolves to originally used offset (0x22D8369)
2025-10-18 00:12:05 +02:00
guiyomu-dev
56601ab9ce keep only actual tz zones 2025-10-17 20:59:10 +02:00
CarlPoppa
1313a1747b Remove hardcoded TZ offset 2025-10-17 13:20:43 +01:00
CarlPoppa
aebef7b721 Replace hardcoded TZ offset with AOB scan 2025-10-17 13:20:18 +01:00
CarlPoppa
5731cd1687 Add TZ online AOB scan 2025-10-17 13:19:38 +01:00
guiyomu-dev
d4ef3b0308 fix offset for terror zones 2025-10-17 11:09:44 +02:00
guiyomu-dev
ab0f68ec5e fix offsets for lobby games 2025-10-17 11:09:44 +02:00
adpist
f3263ba4f8 add function to skip tier rules when evaluating 2025-10-16 23:33:18 +02:00
adpist
cfcc94c874 add support for fixed values tier and merc tier in nip files 2025-10-16 21:40:21 +02:00
crazywh1t3
b1273ff5d1 Update LegacyGraphics address for game reader 2025-10-15 23:41:29 +02:00
crazywh1t3
e743ebb537 Update terror zone offsets 2025-10-15 23:41:29 +02:00
crazywh1t3
88d456c640 Fix memory address for reading game quests 2025-10-15 23:41:29 +02:00
guiyomu-dev
8844908462 fix comparison 2025-10-15 02:38:59 +02:00
guiyomu-dev
294273abfc fix offsets 2025-10-15 02:13:53 +02:00
guiyomu-dev
b7017a4cb3 add helper to get latest Inventory data 2025-10-13 23:16:27 +02:00
guiyomu-dev
05ef02e35b update send packet to be compatible with win 11 24h2 2025-10-13 23:16:27 +02:00
adpist
3d5be6b2c0 Safeguard from divide by 0 on replenish stat computation 2025-10-12 13:08:33 +02:00
guiyomu-dev
8c72ab6d50 add send packet function 2025-10-04 20:42:14 +02:00
guiyomu-dev
ead8e9fbe3 use pattern for key bindings 2025-10-01 21:05:46 +02:00
guiyomu-dev
00cfbed068 add ability to get the merc list in legacy graphic mode 2025-09-09 07:39:04 +02:00
guiyomu-dev
c970e6a0fb fix mapping between skills and skilldescs 2025-09-05 18:40:22 +02:00
CarlPoppa
08a12b1967 Fix skilldesc IDs 2025-08-20 22:25:18 +02:00
elb
dba9a7b5a5 Make OpenMenus and Hover data accessible outside GetData() (#92)
Simply making openMenu and hoverData exposed like everything else in game_reader.go

to be used with koolo on demand  outside of  GetData()
This will improve openMenu and hover refresh by avoiding updating everything from GetData  when we only need light information.

Benefit:
Increase responsiveness of bot, reduce cpu usage by much

i already have the work done on koolo side waiting on this to be merged.
2025-03-24 09:05:59 +02:00
Arto Simonyan
169a765152 Add IsBlocking function (#89)
- Add IsBlocking function that checks if confirmation popup or blocking panel (loading screen as in when trying to re-connect to bnet) are on the screen
2025-03-14 20:50:00 +02:00
elb
b8765f634f Repair Broken rules ( white base items mostly) (#88)
* Repair Broken rules  ( white base items mostly)

* Removed double find stat check
2025-03-13 18:48:18 +02:00
Arto Simonyan
844439002c Panel Manager Improvements (#85)
* Panel Manager Improvements

- Now maps instead of slices for easy traverse
- Function for easy and safe traverse of paths
- Removed constant updates of Panel Manager to reduce usage. It will now be called on demand.
- Updated some functions to use the new Panel Manager.

* Remove unused struct members

* Added IsDismissalModalPresent (error popup)

* Correct function return for char select screen and dismissal modal

* Add error checking to IsDismissableModalPresent
2025-03-04 08:09:22 +09:00
joffreybesos
4a7e782343 panels (#84) 2025-03-01 22:00:50 +09:00
CarlPoppa1
d2da4b1919 Add BodyLoc1 and BodyLoc2 as an array in item Type struct (#77)
* Added BodyLocs to type struct
To hold array of BodyLoc1 and BodyLoc2 from itemtypes.txt

* Updated itemtype template to import BodyLoc1 and BodyLoc2 as an array

* New generated itemtypes.go with BodyLocs array

* Use LocationType instead of string for BodyLocs

* Added missing ItemTypes declaration

---------

Co-authored-by: CarlPoppa <hilikus99@protonmail.com>
2025-02-28 22:01:13 +09:00
elb
4204d68f23 Performance upgrade? (#83)
* Performance upgrade?

* update monster to be on 200ms since 250ms will skip to 300
2025-02-27 17:04:16 +02:00
joffreybesos
7d37526163 Added waypoint pattern scan (#80)
Co-authored-by: Arto Simonyan <artosimonyan@protonmail.com>
2025-02-23 21:01:16 +02:00
elb
fd7f7ba8a4 Pattern Scanner for missing FPS (#82) 2025-02-23 20:59:23 +02:00
elb
5455fd9772 Fix broken negative stats, update some stat description (#79)
* Fix broken negative stats, update some stat description

* ###

* #2

* curses is necro, frw on armor is velocity percent ( unused)

* Update rules to accept negative value

fix a bug with unique grand charm tz

[name] == grandcharm && [quality] == unique # ([fireresist] + [coldresist] + [lightresist]) >= -75

Single stat rules like [coldresist] >= -75 require the stat to exist

expressions like ([fireresist] + [coldresist] + [lightresist]) >= -75 treat missing stats as 0

Unidentified items with any stat requirements need identification first

* LevelReq + identifiedName added for all Crafted items

* Fix issue with rule.go

* Update stat throw damage and basename: GrandCharm -- Grand Charm

* Adjusting rule for ItemLevelReq  = 0

* update rule again
2025-02-21 18:11:27 +02:00
elb
438f80b911 Added WidgetStates + ActiveWeaponSlot (#62) 2025-02-19 20:15:33 +09:00
elb
1aa957dd96 Linking Item.LevelReq to stat(92) stat.LevelRequire + nip parser, Upped item levelreq (#78)
* Linking Item.LevelReq to stat(92) stat.LevelRequire . Update nip parser

* LevelReq for upgraded items

LevelReq is now accurate for upgraded and double upgraded set/unique items

Fixed an issue with levelreq not working with socketed jewels on items.
2025-02-17 19:28:27 +02:00
davidfvsilva
700af20844 fix: act 5 barbarians are good boys (#75) 2025-02-17 21:07:46 +09:00
elb
120c2ba144 Prefix,Suffix,LevelReq Socketed items on bases, bodyloc, Merc equipment (#74)
* Prefix,Suffix, Socketed with base, bodyloc, Merc equipment

Will add better description later:

Item that has socketed items now display their linked runes/jewels/gems in accurate order

Rare prefix, rare suffix id
Magic prefix1,2,3  magic suffix1,2,3
Prefix1 also used to tell wich runeword it is
Spirit 20635, cta 20519 , infinity 20566 see : getlocalestring.txt

Mercenary equipment now displaying in inventory list . Also has custom location : mercenary instead of equipped

Bodyloc :
	// Body locations
	LocNone              LocationType = "none"
	LocHead              LocationType = "head"
	LocNeck              LocationType = "neck"
	LocTorso             LocationType = "torso"
	LocLeftArm           LocationType = "left_arm"
	LocRightArm          LocationType = "right_arm"
	LocLeftRing          LocationType = "left_ring"
	LocRightRing         LocationType = "right_ring"
	LocBelt              LocationType = "belt"
	LocFeet              LocationType = "feet"
	LocGloves            LocationType = "gloves"
	LocLeftArmSecondary  LocationType = "left_arm_secondary"
	LocRightArmSecondary LocationType = "right_arm_secondary"

	Note that if you begin game on secondary slot it will be left_arm  then primary will be  left_arm_secondary (inversed):  With pr 62 (activeweaponslot) we will be able to solve this potential issue.

* small optimization

* Socketed items to base from pointer

new helper functions.
AutoAffix offset.

* remove helpers fnc, flag isEquipped to HasBeenEquipped

* Runewords names mapped

* helper function not needed

* Optimization

* adjust pre-allocations

* readd removed itemloc comment

* Addex prefix/suffix to rules .nip

new structure:
[Type], [Quality],[Class], [Name], [Flag], [Color], [Prefix], [Suffix]  #  Stats

Exemple : [name] == ring && [quality] == rare && [suffix] == 174 #

Any magic ring with suffix 'of The Apprentice'  ( 10 faster cast rate)

Will be useful for trophy items with fool/cruel  [prefix] == 1416 [prefix] == 1273

* LevelReq + Affixes mapping rare/magic/base/runewords. Nip parser LevelReq

* Unique and set items mapping + LevelReq
2025-02-16 23:02:03 +02:00
Arto Simonyan
09dfe3c65d Add more item flags (#69)
* Add more item flags

- Add more item flags
- Modify some of the stat strings

* fix ethereal

* Rename flag
2025-02-09 01:08:58 +02:00
elb
415ac29ab1 Chat Open menu + additions to IsMenuOpen() (#71) 2025-01-19 18:32:31 +02:00
elb
8bce23b039 fix missing stats (#68)
Credits to gogigogi1  thanks!
2025-01-06 03:50:39 +02:00
Arto Simonyan
591fbf1605 Add Stat names (#67)
* Add Stat names

* Return actual stat name with value

* Remove one of the methods
2024-12-30 13:47:02 +02:00
elb
2924189fe8 Added Entrance/Stairs unittype5 table lvlwrap.txt (#64) 2024-12-23 20:06:15 +02:00