34 Commits

Author SHA1 Message Date
guiyomu-dev
50eb39853c remove unecessary code due to bad game update 2026-02-15 00:04:18 +01:00
guiyomu-dev
285129e47e fix names 2026-02-14 19:33:39 +01:00
guiyomu-dev
828db2029f adjustment 2026-02-13 12:34:48 +01:00
crazywh1t3
52f9079ba1 new txt files and generated .go files
- Implemented a new script to extract item names from items.go and generate a corresponding name.go file with constants and utility functions for name retrieval.
2026-02-12 18:08:28 +02:00
Genqila
d3d93034b9 style: autoformat codegen files 2026-01-15 22:17:32 +01:00
Genqila
b510968f7d style: fix codegen formatting and run gofmt after generation 2026-01-15 22:17:32 +01:00
Genqila
762e8f1794 feat(npc): add monstats2 parsing 2026-01-15 21:43:22 +01:00
c6be35b37b add skill metadata 2026-01-14 21:17:50 +01:00
Genqila
b194bcc737 feat: expose undead/demon/beast helper directly in Monster instead of npc package for convenience 2025-12-28 04:35:42 +07:00
Genqila
918a5f3d32 feat(npc): expose monstats flags with undead/demon helpers
(cherry picked from commit 52a2eaa082724d36af249114b73558e5b4905a85)
2025-12-28 02:40:53 +07:00
guiyomu-dev
141306fe1c use data from skills.txt 2025-12-12 14:49:56 +01: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
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
Sorc
b3d88b84b9 Remove [level] example in pickit rules (#72)
Co-authored-by: Sorc <>
2025-02-17 21:07:03 +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
elb
2924189fe8 Added Entrance/Stairs unittype5 table lvlwrap.txt (#64) 2024-12-23 20:06:15 +02:00
elb
8a1f7e1a17 Extracting more data from object.txt for interactions (#63)
* Extracting more data from object.txt for interactions
Description struct {
    ID           int
    Name         string
    SizeX        int
    SizeY        int
    HasCollision bool
    Left         int
    Top          int
    Width        int
    Height       int
    Xoffset      int
    Yoffset      int
}

* levelreq readded

* formatting in one line.
2024-12-21 20:25:11 +02:00
Carl Poppa
7ac45c0182 Fix levelreq 2024-12-17 00:23:50 +09:00
TDL
7b42e27aba Added extra item info (#41) 2024-09-10 23:04:47 +09:00
Héctor Giménez
8c6044cb44 bump versions 2024-06-13 08:35:17 +09:00
Héctor Giménez
c85217e8e7 generate object descriptions 2024-05-29 09:06:30 +09:00
Héctor Giménez
2a5f31885e get stashed gold 2024-05-15 17:23:53 +09:00
Héctor Giménez
aa2a1aaeb3 fetch static data from txt files and properly get all the item stats... maybe? 2024-05-08 21:31:40 +09:00
Héctor Giménez
638f3047f8 allow partial rules for specific item types 2024-05-05 13:43:19 +09:00
Héctor Giménez
bb0ec2555d NIP parser v2 (#17) 2024-05-05 12:15:08 +09:00
Héctor Giménez
de84f7bbe0 add basic tz data 2024-04-24 22:16:23 +09:00
Héctor Giménez
07b5a3a1c3 Add levels and fix tz? 2024-04-24 21:47:45 +09:00
13413j1j13j5315n13
58b995842d Return nip.Rule struct from Evaluate function in itemfilter (#14)
* Return Rule from –Evaluate in itemfilter

* Return Rule as the first argument
2024-03-31 09:57:42 +09:00
Héctor Giménez
db8fc7d6db D2Data and Quest data (#9) 2024-02-02 20:19:44 +09:00
Héctor Giménez
1c8aab1580 Item refactor and more (#1) 2023-08-18 22:33:54 +09:00
Héctor Giménez
2900f71000 less spam on itemfilter 2023-03-14 23:07:30 +09:00
Héctor Giménez
5f285a4660 added more nip files as example 2023-03-14 23:06:48 +09:00
Héctor Giménez
fd93be2b66 add small tool that plays a sound when item passing the filter is found in the ground 2023-03-13 22:52:51 +09:00