Petr Mrázek
be358ec1de
Ported deramp, cleanowned and cleartask tools.
2011-08-05 00:41:31 +02:00
Warmist
4b9786f8af
Thread safety for void* sharing part of DFHack::Core
2011-08-04 22:33:54 +03:00
Warmist
9985b5de0f
DFHack::Core modification: added a way to share void* between plugins and/or plugin unloads.
2011-08-04 22:00:21 +03:00
Petr Mrázek
fa970fc8fa
Hotkey commands work with TEXT mode (limited).
2011-08-01 04:40:23 +02:00
Petr Mrázek
331ada8f91
Don't take over console in TEXT mode.
2011-08-01 03:31:52 +02:00
Petr Mrázek
a36d8b0619
Merge https://github.com/warmist/dfhack
2011-07-31 23:29:34 +02:00
Petr Mrázek
9cf69164ed
BitArray implementation, now used in Maps for the flags.
2011-07-30 16:47:49 +02:00
Petr Mrázek
a9a3a3ff5f
Merge branch 'topic_tools'
2011-07-28 02:36:25 +02:00
Warmist
bc23cc9eca
Made Process::setPermisions functions, to set memory page's permisions
2011-07-28 01:00:12 +03:00
Petr Mrázek
2470e564a9
Linux-side of threading function rewrite. Windows=broken.
2011-07-27 05:59:09 +02:00
Petr Mrázek
d65f5596cb
Ported mode, probe. Some changes required for that.
2011-07-25 10:14:58 +02:00
Petr Mrázek
a8ff3d9d48
Merge pull request #116 from matthew-cline/TOPIC-items
...
Improved Items module and itemhacks plugin
2011-07-25 01:10:07 -07:00
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
Matthew Cline
41130cb613
ClassNameCheck tracks class names used
...
Each time the ClassNameCheck constructor is called it adds to the list
of class names given to it, which can later be retrieved by a class
static method.
2011-07-24 21:24:34 -07:00
Petr Mrázek
bd9643c8cc
Merge branch 'dfapi'
...
Conflicts:
CMakeLists.txt
library/DFProcess-linux.cpp
library/include/dfhack-c/modules/Creatures_C.h
library/include/dfhack/modules/Maps.h
library/modules/Creatures_C.cpp
2011-07-23 17:29:05 +02:00
Petr Mrázek
6b6eed34cc
Merge https://github.com/zilpin/dfhack
2011-07-23 17:08:15 +02:00
Petr Mrázek
caf6f881df
Minimize notes module.
2011-07-23 03:25:42 +02:00
Petr Mrázek
35cf108040
Fix up material color names and basic flag array type in Materials.
2011-07-22 03:54:09 +02:00
Petr Mrázek
e00a4e8888
Fix ore/gem sorting.
2011-07-22 03:00:56 +02:00
Petr Mrázek
7325808c98
Fixes to materials.
2011-07-22 02:44:36 +02:00
Petr Mrázek
131c32494a
Added DF material structs reversed by Quietust
2011-07-21 22:37:02 +02:00
Matthew Cline
86577d4f8a
Notes module
...
Gets a vector of pointers to note structs
2011-07-20 18:26:52 -07:00
Matthew Cline
6631f97a6a
More info on inorganic materials
...
Get value, wall tile, boulder tile, smelting info and strand extraction
info for inorganic materials. Prospector uses this to separete out vein
materials into ores, gems and other.
Offsets provided for both Linux and Windows, but only tested on Linux.
2011-07-20 06:18: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
zilpin
4eb13800cd
-WriteVein(), and some convenience functions for the vein bitmaps.
2011-07-18 15:55:41 -04:00
Petr Mrázek
00cf7bc39e
Merge branch 'dfapi' of github.com:peterix/dfhack into dfapi
2011-07-18 16:28:06 +02:00
Petr Mrázek
84f74bc091
Added plugin loading/unloading/reloading. Many locks. Too many damn locks.
2011-07-18 16:22:49 +02:00
Petr Mrázek
e021199178
Merge pull request #106 from matthew-cline/TOPIC-folder
...
Get game's current world save folder
2011-07-17 02:26:06 -07:00
Petr Mrázek
fdb5397a1d
Safer console shutdown.
2011-07-17 11:06:45 +02:00
Matthew Cline
a923d19f76
Get game's current world save folder
...
Use World::ReadWorldFolder() to get "region1" (or whatever it currently
is). Only have offset for Linux.
2011-07-16 16:00:50 -07:00
Petr Mrázek
9f822af45a
Process: added a method for getting the main module base (windows). Returns 0 on linux.
2011-07-16 23:00:28 +02:00
Petr Mrázek
d6d108dd34
Qt plugin fixes for windows, renamed interface to df_interface in Gui.
2011-07-16 18:10:08 +02:00
Petr Mrázek
fd418cd2dc
cmake cleanup in library/
2011-07-16 07:59:36 +02:00
Petr Mrázek
459d48d75a
Made the linux console super awesome. The dfhack script won't LD_PRELOAD dfhack for gdb.
2011-07-15 15:55:01 +02:00
Petr Mrázek
d21b196766
Error printing call for Console, the NYAN CAT!
2011-07-14 11:15:23 +02:00
Petr Mrázek
96153a7b05
Merge branch 'dfapi' of github.com:peterix/dfhack into dfapi
2011-07-14 04:06:12 +02:00
Petr Mrázek
792d272fbf
Windows side of the Console rewrite
2011-07-14 04:05:27 +02:00
Petr Mrázek
a40153a8e1
Merge pull request #98 from matthew-cline/TOPIC-vermin
...
Vermin module and colonies plugin
2011-07-13 04:24:38 -07:00
Petr Mrázek
630b746cfe
Integrate linenoise into Console - Linux part
2011-07-13 11:45:30 +02:00
Matthew Cline
d1170d54c3
Vermin module and colonies plugin
...
This is the start of the vermin module. Right now it just gets a list
of the positions at which vermin are created (spawn points). Most
spawn points are invisible and transient, but colonies (ant hills and
such) are permanent and visible. The address of the spawn points vector
is only provided for Linux 0.31.25
The colonies plugin uses the vermin module to list the location and
species of colonies, and can either wipe them all out or turn them all
into honey bee colonies.
2011-07-12 23:17:51 -07:00
Petr Mrázek
4015586d89
Eliminated the core suspend latency, possibly added a heap of race conditions. Added vdig.
2011-07-11 22:23:13 +02:00
Matthew Cline
5c1526d6d9
creatures: read and write pregnancy counter
...
Also change creaturemanger to print out the ticks-until-birth for
pregnant creatures.
2011-07-11 02:48:10 -07:00
Petr Mrázek
3850954449
Hotkey input works on windows/under wine. Added skeleton for the veindigger plugin.
2011-07-10 21:07:14 +02:00
Matthew Cline
cb9c9aae7c
Deal with third flag group in creatures
...
Added support for reading and writing the third creature flag group,
t_creaturflags3 (the offest already exists in Memory.xml). So far I've
only figured out three of the flags (out of an apparent 13):
1) announce_titan, which causes the creature to be announced as if
it was a titan or FB which had just arrived.
2) scuttle, which causes the creature to be die like it had been
killed in the game. That is, it leaves behind a corpse, and
will generate unhappy thoughts in dwarves if approriate.
3) ghostly, for creatures which are the ghosts of dead dwarves.
I updated creaturemanager to use scuttle for --kill, and added the
action --erase to kill in the old way which doesn't leave a corpse or
creatre unhappy thoughts.
2011-07-10 04:00:52 -07:00
Petr Mrázek
07c11c704d
Fix Windows build (untested, expect explosions).
2011-07-09 16:05:40 +02:00
Petr Mrázek
d894ef0ffa
Hotkey UI for linux.
2011-07-09 11:33:58 +02:00
Petr Mrázek
65d7278f53
Added a bunch of butchered SDL headers, catching SDL events on linux.
2011-07-08 03:55:37 +02:00
Petr Mrázek
367d79bcfa
Weather plugin to mirror the weather tool.
2011-07-07 10:57:57 +02:00
Petr Mrázek
8b298f8d91
More maps tweaks, function for block event removal, added cleanmap version that nukes spatter objects instead of rewriting their
...
bitmaps.
2011-07-07 09:49:58 +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
74ab0f94aa
Added std namespace use for stl types in MapExtras.h
2011-07-06 12:26:18 +02:00
Petr Mrázek
56a409d9a4
sync, some map data structures, commented out some dead code
2011-07-06 11:13:36 +02:00
Petr Mrázek
b1d4163095
Fixed prospector, added the command list back, removed the plugin init console spam.
2011-06-27 04:49:56 +02:00
Petr Mrázek
00ddb45dbd
Added optional plugin_onupdate function, called each Core update.
2011-06-27 02:13:01 +02:00
Petr Mrázek
722531f590
Added destructor code for PluginManager, console color reset funstion.
2011-06-25 08:05:17 +02:00
Petr Mrázek
6fd7d42f00
Plugin manager, reworked kittens and reveal.
2011-06-25 05:35:29 +02:00
Petr Mrázek
8f27966540
Console revamp - windows part
2011-06-22 14:25:39 +02:00
Petr Mrázek
f8cdd95b09
Console revamp - linux part.
2011-06-22 08:14:21 +02:00
Petr Mrázek
c6dc4900d2
Very basic plugin system.
2011-06-20 04:29:38 +02:00
Petr Mrázek
f2b91d3269
Making ready for adding plugins. Fixes all over the place, more removal of obsolete parts.
2011-06-20 01:12:07 +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
7136ac7aa4
Get rid of the stdint.h garbage and use the real header.
2011-06-15 17:35:47 +02:00
Petr Mrázek
b29871cb8c
Fixed tick count offset, hotkey support is back from the dead (untested)
2011-06-15 06:09:24 +02:00
Petr Mrázek
22b79bb46e
Now works on Windows again, some more cleanups, added a singleton Core object for holding all the globals.
2011-06-14 16:13:28 +02:00
Petr Mrázek
0a428b509e
Vegetation module becomes rather skeletal.
2011-06-13 21:11:02 +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
6e00dc4c8e
Update version numbers, readme file. Adding a lot of batch scripts for the windows versions of new tools.
2011-05-27 08:20:52 +02:00
Petr Mrázek
0661248d1f
Cleanmap filters on matter state. Anything non-solid is removed (including mud and water). Solid mud and snow stay.
2011-05-26 02:14:42 +02:00
Petr Mrázek
6d32802dd4
Vegetation update order is a 16bit integer!
2011-05-26 02:13:29 +02:00
Petr Mrázek
608b0f9f56
Better document Items module
2011-05-26 02:10:23 +02:00
Petr Mrázek
e7d9bc6f91
matter states for tile coverings, pig iron watch in dfstatus
2011-05-25 05:13:24 +02:00
Petr Mrázek
d2e01ec579
Fix many warnings from MSVC builds.
2011-05-23 21:30:51 +02:00
Petr Mrázek
040b5be290
Reformat stopwatch.h for readability
2011-05-23 04:19:17 +02:00
Petr Mrázek
e5e0391d76
stop dfstatus from wasting time. added 'stopwatch.h' to extras for getting accurate unix time in milliseconds
2011-05-21 21:54:53 +02:00
Petr Mrázek
bb99924b24
Curses support across platforms!
2011-05-21 20:32:53 +02:00
Petr Mrázek
909cd8b60b
Move termutil to a globally accessible area.
2011-05-17 08:36:38 +02:00
Petr Mrázek
61dea59e29
Fix a big heap of warnings.
2011-05-15 22:24:40 +02:00
Petr Mrázek
515f4952a9
Merge https://github.com/angavrilov/dfhack
...
Conflicts:
library/include/dfhack/DFProcess.h
2011-05-15 21:50:20 +02:00
Petr Mrázek
fe6eb4b70a
Fix for MSVC build, added prototype cmd.exe detection on windows.
2011-05-15 05:19:51 +02:00
Petr Mrázek
4d3f4c2c23
Unknown 3 was update order.
2011-05-15 02:21:24 +02:00
Petr Mrázek
d9e9fae7a0
Unknown 1 was the grow counter. Added the immolate and grow tools.
2011-05-15 01:53:43 +02:00
Petr Mrázek
43fc15476a
Added ability to set trees on fire.
2011-05-15 00:26:44 +02:00
Petr Mrázek
b65c4ed55b
New vegetation variables, fixed vegetation vector for 31.25 linux
2011-05-14 15:51:11 +02:00
Petr Mrázek
7dbb41cc66
Add method for writing block/map feature indexes
2011-05-13 05:00:29 +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
Alexander Gavrilov
77dda6faea
Support overwriting and removing values in STL vectors.
2011-05-12 21:10:20 +04: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
97af676bdb
Fix color variable naming in t_descriptor_color
2011-05-07 03:48:41 +02:00
Petr Mrázek
7ad83c80b8
added modified getopt (c++-ized) with BSD license, vegetation flags clarified, prospector lists trees and plants separately,
...
prospector pretty-prints
2011-05-02 05:03:48 +02:00
Petr Mrázek
456a979244
Fun with tiletypes. Expect explosions.
2011-04-28 23:00:52 +02:00
Petr Mrázek
6e38ce71df
Item flag garbage_collect.
2011-04-28 01:41:59 +02:00
Petr Mrázek
923c8cae9c
Occupancy support in MapCache. Added the item dumper tool mentioned on irc (autodump).
2011-04-28 01:36:31 +02:00
Petr Mrázek
66bb9d448c
Big messy commit...
2011-04-20 01:28:47 +02:00
Petr Mrázek
bc855b296f
Merge branch 'master' of https://github.com/angavrilov/dfhack
2011-04-17 16:08:13 +02:00
Petr Mrázek
cf3534bc42
Fix silly typo.
2011-04-17 13:13:23 +02:00
Petr Mrázek
67ea981dc3
Big ugly deuglyfication of DFTileTypes and its use in the tools.
2011-04-17 13:06:19 +02:00
Petr Mrázek
e255a2cba6
Rename single character member variables from DFTileTypes to something sensible.
2011-04-17 11:37:36 +02:00
Petr Mrázek
b0cb59a3f2
The item designator tool lives again.
2011-04-16 23:57:04 +02:00
Alexander Gavrilov
56b29cf12e
Merge remote-tracking branch 'origin/master'
2011-04-15 10:58:09 +04: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
Alexander Gavrilov
ebc4d21e66
Improve name structure handling, and support duplicating them (on linux).
...
The name structure actually contains additional linguistical data,
ignoring which produces wrong renderings for non-dwarfish names.
This data also obviously has to be copied with the structure.
Copying STL strings works by replicating the shared copy logic
(i.e. incrementing the reference counter), but leaks memory owned
by the string being overwritten.
2011-04-13 20:36:10 +04: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
Petr Mrázek
77f0885d9e
Merge https://github.com/angavrilov/dfhack into items
2011-04-11 12:48:28 +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
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
Petr Mrázek
b0b76f6d7c
Tool for resetting hidden tile status after botched reveals.
2011-04-10 18:41:49 +02:00
Petr Mrázek
b630e93c5a
Added base layer material support to map cache, material display to dfprobe.
2011-04-10 17:01:58 +02:00
Petr Mrázek
7876a42258
The C test tool doesn't compile as a plain C program!
2011-04-10 15:36:01 +02:00
Alexander Gavrilov
cfc1dad4b6
Fix the item flag bitfield & set the item vector ptr.
2011-04-10 16:55:22 +04:00
Petr Mrázek
1d35044db3
Started removing C++-isms from C wrapper. Removed DFGlobal.h
2011-04-10 13:12:28 +02:00
Petr Mrázek
c1deee768e
Add missing files, wix build on windows.
2011-04-10 11:03:24 +02:00
Petr Mrázek
d4e2850768
Make C-wrapper compile times less ridiculous.
2011-04-10 10:50:32 +02:00
Petr Mrázek
bb04aa1a32
Linux header cleanups. Windows side will follow.
2011-04-10 10:19:15 +02:00
Petr Mrázek
4547c8c0aa
Use MapExtras more.
2011-04-10 06:17:11 +02:00
Petr Mrázek
5465890b34
Added more direction flags to engravings.
2011-04-04 11:57:09 +02:00
Petr Mrázek
fcc23149db
Engravings: 3 byte padding after the display character.
2011-04-03 03:25:12 +02:00
Petr Mrázek
46c5041bea
Direction flags for engravings.
2011-04-03 03:19:34 +02:00
Petr Mrázek
a68702000d
hexdump accepts length in bytes, hopefully fixed engravings struct
2011-04-03 02:49:03 +02:00
Petr Mrázek
e18ade4ea6
Engravings are 0x28 bytes long.
2011-04-03 02:00:56 +02:00
Petr Mrázek
4cfc12b52b
Engravings module.
2011-04-03 00:15:47 +02:00
doomchild
84494e873c
added readClassName
2011-04-01 14:42:03 -05:00
doomchild
3ef6893bc7
removed getPosition prototype (since the Position module doesn't exist anymore)
2011-04-01 14:41:26 -05:00
doomchild
695303d0c6
added memrange buffer callback
2011-03-31 13:54:36 -05:00
doomchild
5e67ee2970
removed unneeded memrange wrapper struct
...
renamed some stuff to match the C++ version
added read, write, readSTLVector, readString, getPath, getMemranges, and getPID
2011-03-31 13:47:17 -05:00
doomchild
9b6f5d2ac1
first commit
2011-03-31 09:45:53 -05:00
Petr Mrázek
837ea52c22
Fix windows/wine version information bugs related to processes without a PE header.
2011-03-31 05:39:12 +02:00
doomchild
cf59b7802d
added getPosition
2011-03-29 10:23:04 -05:00
doomchild
e34831a354
added getters/setters for cursor/view coords, window size, and screen tiles added ReadHotkeys
2011-03-29 09:59:12 -05:00
Petr Mrázek
b3455b0192
MSVC is a pile of fail that can't even align variables in a struct.
2011-03-28 11:22:21 +02:00
Petr Mrázek
cfd309bf70
fix C string idiocy.
2011-03-28 02:09:13 +02:00
Petr Mrázek
8ef1ef1985
31.23 Windows support, tiny little tweaks to liquids tool.
2011-03-27 00:02:23 +01:00
Petr Mrázek
635e1998ee
Stop DFVector from accessing VersionInfo in the constructor (slight optimization).
2011-03-25 06:40:33 +01:00
Petr Mrázek
4c030e7cc1
Some linux 31.22 offsets, slight tweaks to Materials
2011-03-25 02:31:27 +01:00
Petr Mrázek
754647fe96
The mysterious variable is mysterious, 31.22 support, needs testing
2011-03-24 23:21:50 +01:00
Petr Mrázek
7c971cd8f1
World coords for dfposition
2011-03-24 06:13:21 +01:00
Petr Mrázek
d0a171a350
Add a form of ReadFeature applicable to already read blocks.
2011-03-24 04:39:38 +01:00
Petr Mrázek
4090a378c1
Remove message spam, make sure the old methods act the same.
2011-03-24 04:20:34 +01:00
Petr Mrázek
64a578b204
Added cache for map features inside the Maps module along with convenience feature getter for blocks. Adamantine vein refiller tool.
2011-03-24 04:00:23 +01:00
Petr Mrázek
34a687b95a
Make sure things build with playground turned on.
2011-03-21 21:29:54 +01:00
Petr Mrázek
e8ee9b7cab
dflair tool to match what the dfusion people have. minor tweaks to playground
2011-03-21 21:14:07 +01:00
Petr Mrázek
fe92edfb4e
No more generated config files.
2011-03-20 06:20:23 +01:00
Petr Mrázek
2bc7aacb79
Remove precompiled garbage, fix dfcleanmap for real
2011-03-19 20:17:04 +01:00
Petr Mrázek
a7f3258018
Get rid of SHM in modules.
2011-03-18 17:58:48 +01:00
Petr Mrázek
7809ed6cd5
Small fixes to documentation and build scripts.
2011-03-18 16:47:55 +01:00