Commit Graph

88 Commits (0bd627a6f6e65a1e2bd64e45f6bccb5041840603)

Author SHA1 Message Date
Matthew Cline 109f34cd6e Improved Items module and itemhacks plugin
Items module:
* Identified flags for "owned by hostile" and "owned by trader".
* Identified an unknown uint32_t field as being the item age.
* Added and documented ClassNameCheck for more item ref types, though
  they aren't used yet (other than to mark that item ref class as a
  "known" class).
* Added method to get list of an item's unknown item ref classes.
* Made all unknown flags have name 'unk#', instead of some also having
  the name 'u_ngrd#'.

Itemhacks plugin:
* Folded second command into "dumpitems unknown", which will list
  any items which have the unknown vector field non-empty (which seems
  to be associated with tasked items).
* "dumpitems unknown" will also dump any item with a set unknown flag
  or with item refs of an unknown class.
2011-07-24 21:35:50 -07:00
Petr Mrázek 0defcc9889 Making Items a bit more sane. It's still using Accessors though. 2011-07-20 10:41:13 +02:00
Petr Mrázek 4ff5db06be Maps no longer copy the map block pointer array, blocks are structs, map data is public. 2011-07-07 07:00:36 +02:00
Petr Mrázek e0fb8f7c81 Crud removal: Context is gone. Added missing FakeSDL.h 2011-06-17 15:02:43 +02:00
Petr Mrázek 93be1eb1fb Yay, kittens! Also some license cleanup, IO thread usage, more SDL wrapping and ability to run reveal from DFHack console. 2011-06-16 23:53:39 +02:00
Petr Mrázek 511f459182 Stripped nonsense from the DFHack vector wrapper. Next step: removal. 2011-06-13 01:14:10 +02:00
Petr Mrázek 81d648dfa7 First 'working' DFHack inside DF, for 'some' values of 'working'. 2011-06-12 23:17:40 +02:00
Petr Mrázek da2fb1cb1a Fix creature owned items vector offset on Windows, added support for owned items to more versions. 2011-05-28 10:18:50 +02:00
Petr Mrázek 61dea59e29 Fix a big heap of warnings. 2011-05-15 22:24:40 +02:00
Alexander Gavrilov a7be2aee33 Support actually removing owner links between items and creatures. 2011-05-12 21:10:29 +04:00
Alexander Gavrilov c7f4f8c281 Support printing refs in dfitemdump, and add methods for containers. 2011-05-12 21:10:29 +04:00
Petr Mrázek 4631ec2e0d Item quantity support for 31.25 2011-05-11 23:53:16 +02:00
Alexander Gavrilov ed1477b53d Support listing items owned by a creature. 2011-05-09 14:49:44 +04:00
Alexander Gavrilov 14f291d539 Support reading the item ID field, which is used for cross-referencing. 2011-05-09 14:04:39 +04:00
Alexander Gavrilov e993bbcb67 Implement class name caching and optimized equality check. 2011-05-09 13:48:54 +04:00
Petr Mrázek 03a3f29871 Fix misplaced exports 2011-04-28 05:10:37 +02:00
Petr Mrázek b0cb59a3f2 The item designator tool lives again. 2011-04-16 23:57:04 +02:00
Petr Mrázek 89169053ff Item support for windows 31.25 2011-04-16 21:02:20 +02:00
Petr Mrázek 34128c2f6d Item Accessor method pointer was used incorrectly. 2011-04-14 15:16:12 +02:00
Petr Mrázek 1a8c27ce01 Fix accessor mess I made. Added Accessor description dump to the dfitemdump tool and Items module. 2011-04-14 01:42:03 +02:00
Petr Mrázek f5911a14a6 Some const correctness, re-enabled job printing in the creature dump tool. 2011-04-12 13:59:07 +02:00
Petr Mrázek 212500ee00 Big Items refactor, made all the Accessor offsets optional. 2011-04-11 22:13:06 +02:00
Alexander Gavrilov 2e0ec2db72 Support retrieving the item owner reference.
Reference is done by item id, and stored in some kind
of generic reference vector in the item structure.
2011-04-11 14:32:53 +04:00
Alexander Gavrilov fbf76440b5 Try to handle signed and unsigned 16-bit accessors.
Not sure whether it makes much sense, seeing as some
accessors (e.g. wear) actually return 32-bit values,
assuming that the caller would correctly sign-extend
the lower half and discard the upper.
2011-04-10 22:44:01 +04:00
Alexander Gavrilov f6ae41fe49 Provide access to item header, including flags, and wear information.
Add preliminary offsets for the item data to Memory.xml
2011-04-10 22:42:25 +04:00
Alexander Gavrilov e3897b0f93 Improve the accessor instruction parser.
Instead of hard-coding complete machine code patterns, try
to really parse a certain subset of MOV instructions.
2011-04-10 21:51:21 +04:00
Petr Mrázek bb04aa1a32 Linux header cleanups. Windows side will follow. 2011-04-10 10:19:15 +02:00
Petr Mrázek b94ddf50d0 Eliminated silly dependency cascade within the library. Some documentation tweaks. 2011-03-18 08:53:59 +01:00
Petr Mrázek eb1a0b6b22 A little cleanup in Context.cpp, started work on 31.19 2011-02-16 19:29:16 +01:00
Petr Mrázek 457b331be7 Small fixes 2010-11-03 10:45:29 +01:00
reverb 4edd33e13a Fix crash when deallocating items module 2010-10-28 17:22:56 -05:00
unknown ba88c86670 dfitemdump appears to work. Materials still buggy (Pig Iron Bar != Mule Bar). This has been bugged since .12 or earlier 2010-10-19 05:07:07 -05:00
Petr Mrázek 95abf6e605 All the modules *should* now use the new offset storage properly. Maybe, needs testing :) 2010-08-30 00:08:17 +02:00
Petr Mrázek 1bceac2343 Rename memory_info and its factory class. 2010-08-20 14:10:05 +02:00
Petr Mrázek ec35663b62 Common base for all modules 2010-06-25 07:11:26 +02:00
Petr Mrázek 04b71f154c Fun and games. Also turning old DFWindow class into a module tracked by Context. 2010-05-26 12:24:45 +02:00
Petr Mrázek 966a145b3e Moving stuff around, part 3 2010-05-26 08:42:09 +02:00
Petr Mrázek b710ed687a Moving stuff around, part 2 2010-05-26 06:48:23 +02:00