Commit Graph

246 Commits (860131cf963c89d10101e232d8b161647ff060ba)

Author SHA1 Message Date
Quietust 2b862655b7 Allow compiling RelWithDebInfo on Windows 2012-05-23 13:38:16 -05:00
Alexander Gavrilov 3bd44e5367 Move some things that won't work in dfhack-client to a separate file. 2012-05-05 21:07:18 +04:00
Alexander Gavrilov d4d6349f48 Expose builtin commands to dfhack-run, and add lua script support.
Move builtin command implementation to Core methods, and fall
back to hack/scripts/*.lua for otherwise unrecognized commands.
2012-05-04 19:47:18 +04:00
Alexander Gavrilov 16ee049664 Split off the burrows api from Maps and Units. 2012-04-26 12:56:28 +04:00
Alexander Gavrilov 2640addf49 Split LuaTools.cpp to separate core utils from general dfhack api. 2012-04-06 18:00:54 +04:00
Petr Mrázek 209b261284 Get rid of MALLOC_FILL build option 2012-04-01 00:30:42 +02:00
Alexander Gavrilov 0f41608ed4 Pull console output support and REPL out of dfusion into core lib. 2012-03-31 15:40:54 +04:00
Alexander Gavrilov 17ff235c81 Use codegen.out.xml instead of static.inc in cmake code generation rules.
Now only that file is guaranteed to always be overwritten.
2012-03-29 10:59:54 +04:00
Alexander Gavrilov 517b2ffadb Merge remote-tracking branch 'peterix/master' 2012-03-24 16:30:07 +04:00
Petr Mrázek 8a847dbaba Tweaks and cleanups
Removed t_virtual.
Made lua use C++ compiler
Removed many silly exception types from Error.h and renamed the rest.
Removed Brush classes from tiletypes plugin.
2012-03-24 12:13:51 +01:00
Alexander Gavrilov d865d54a90 Split LuaWrapper.cpp into two files. 2012-03-24 13:25:10 +04:00
Alexander Gavrilov 73e138c9fd Support ordinary struct and class fields. 2012-03-20 21:34:27 +04:00
Alexander Gavrilov dbbd9acfad Export the type tree with enum keys to lua. 2012-03-19 20:12:27 +04:00
Alexander Gavrilov 296d3a0af3 Skeleton type metadata for future use in lua bindings. 2012-03-19 16:59:11 +04:00
Alexander Gavrilov 15ccfbb086 Add a ListMaterials remote call for bulk download of basic material info. 2012-03-17 15:36:42 +04:00
Alexander Gavrilov 14d6a62e1d Move CoreService to a separate file. 2012-03-17 12:09:30 +04:00
Alexander Gavrilov 605ee9669a Plugin-exported functions now actually work. 2012-03-15 14:06:50 +04:00
Alexander Gavrilov e7851f5abd Improve support for void RPC functions, dfhack-run, etc. 2012-03-15 11:07:43 +04:00
Alexander Gavrilov 560e977f05 Implement trivial RPC interface for dfhack via TCP & protobufs.
Use it to make an executable capable of calling commands remotely.
2012-03-14 19:57:29 +04:00
Petr Mrázek 9079ffa4ff Add clsocket as a dependency for dfhack lib. 2012-03-13 17:10:46 +01:00
Petr Mrázek eb4757043b Move depends out of main library, make them (static) libraries. 2012-03-13 14:46:48 +01:00
Alexander Gavrilov b2737e2bed Pull out a colored text output interface out of the Console class. 2012-03-10 13:29:33 +04:00
Alexander Gavrilov 75c569b097 Add some experimental message definitions to the main library. 2012-03-09 21:42:22 +04:00
Alexander Gavrilov edf77cf270 Link protobuf to dfhack core as a shared library.
- Change protobuf libraries to build as DLLs.
- Move some stream features to the lite library.
- Install the lite library and use it from dfhack.

Note that:

- A couple of protobuf headers had to be tweaked.
- The lite library is used because the full one is
  absolutely incompatible with reloading plugins.
- Shutting down protobuf also can't be allowed.
2012-03-09 19:46:21 +04:00
Petr Mrázek a45fc82743 First pass at windowing, track df2mc, stonesense 2012-03-05 01:34:04 +01:00
Petr Mrázek 731472a478 Add eggy hooks (linux only for now) 2012-02-28 03:37:56 +01:00
Petr Mrázek 8afafd0430 Get rid of ntdll, update stonesense 2012-02-25 22:59:32 +01:00
Petr Mrázek 2b761e450f Add the init file to builds, mention it in readme. 2012-02-23 08:57:11 +01:00
Petr Mrázek ed53ee7031 Update to use the new symbols file. 2012-02-11 19:24:44 +01:00
Petr Mrázek 8f680dcf94 Make it build and run on linux (no stonesense, df2mc, dfusion) 2012-02-09 03:07:26 +01:00
Petr Mrázek 2ff994c18f Make perl executable tweakable. 2012-02-04 03:43:14 +01:00
Petr Mrázek 22aeb6e2ac Added linkage to libdl, fix for mode. 2012-02-01 04:12:15 +01:00
Mike Stewart 494a4202df Added Google Protocol Buffers to the library dependencies folder (though nothing yet depends on it). This definitely works in Linux, but needs checking in Windows. 2012-01-19 14:44:01 -08:00
Alexander Gavrilov f5e121a196 Move a bunch of stuff from the jobutils plugin into the core. 2012-01-07 19:21:07 +04:00
Petr Mrázek 86464b99cc Remove DfVector, break MSVC builds until further notice. 2012-01-04 01:45:11 +01:00
Petr Mrázek 9db20bd84d Header changes/cleanup. 2011-12-31 12:48:42 +01:00
Alexander Gavrilov d513e75365 Use the updated code generator with support for vtables & constructors. 2011-12-29 16:46:01 +04:00
Alexander Gavrilov 79ac2a781a Add infrastructure necessary to use the generated headers.
As a usage example, allow toggling water level display and idlers,
and implement a ui tweak for easily copying stockpiles.

Also disable df2mc by default - default options shouldn't
require anything not in the base package.
2011-12-24 14:51:58 +04:00
Alexander Gavrilov 0b5a470a38 Add header generation from xml. 2011-12-24 14:38:28 +04:00
Petr Mrázek 647916e109 Graphic module 2011-12-07 20:37:09 +01:00
Petr Mrázek f7d78539d3 Renaming Creatures to Units 2011-12-02 10:56:40 +01:00
Petr Mrázek 2c27119d85 Set CXXFLAGS properly to ensure compatibility with i686 systems. 2011-11-06 21:16:16 +01:00
Petr Mrázek a29bb4578f Move kitchen exclusion module methods to a source file. 2011-10-30 03:20:54 +01:00
Petr Mrázek 83ae8d6c12 Creature likes (at least the structures are back), malloc wrapper that sets memory to 0xCC. 2011-09-25 01:29:55 +02:00
Petr Mrázek d2d4ce898d Added weather plugin info to readme, option to make the console not catch 'CTRL+C' on linux. 2011-08-18 22:09:30 +02:00
Petr Mrázek a0f99ef707 Many tweaks to plugins, reorganized the build system and removed more cruft. 2011-08-14 08:42:21 +02:00
Petr Mrázek 262e915b93 Make building DFusion optional. 2011-07-30 22:08:24 +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 2470e564a9 Linux-side of threading function rewrite. Windows=broken. 2011-07-27 05:59:09 +02:00
Matthew Cline 86577d4f8a Notes module
Gets a vector of pointers to note structs
2011-07-20 18:26:52 -07:00
Petr Mrázek 9025066a2b Added SDLreal.dll on windows. 2011-07-16 10:32:18 +02:00
Petr Mrázek fd418cd2dc cmake cleanup in library/ 2011-07-16 07:59:36 +02:00
Petr Mrázek 0af631aaa3 And nuke the rest of linenoise... 2011-07-14 12:28:41 +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
Matthew Cline a30a4a2720 CMake linux: copy LD_PRELOAD script
Copy package/linux/dfhack to the games directory; it's the same as the
normal df script, but sets LD_PRELOAD properly.

Also, CMAkeLists.txt now checks to see that the output directory is set
to the game directory, and fatally fails if it isn't.
2011-07-12 17:25:27 -07:00
Petr Mrázek 3a67a4d3c7 Added linenoise library to allow line editing in the terminal. 2011-07-12 12:13:14 +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 6fd7d42f00 Plugin manager, reworked kittens and reveal. 2011-06-25 05:35:29 +02:00
Petr Mrázek 857decbcce Plugins go into a folder, disabled console close button on windows because of bugs. 2011-06-22 18:04:22 +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 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 81d648dfa7 First 'working' DFHack inside DF, for 'some' values of 'working'. 2011-06-12 23:17:40 +02:00
Petr Mrázek 07bb0408c1 Fix memory.xml and pdcurses.dll copy problems for good. 2011-05-26 12:33:38 +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 d4e2850768 Make C-wrapper compile times less ridiculous. 2011-04-10 10:50:32 +02:00
Petr Mrázek 4cfc12b52b Engravings module. 2011-04-03 00:15:47 +02:00
doomchild cb88d59358 uncommented C process wrappers 2011-03-31 13:56:12 -05:00
doomchild fea7d56c32 added DFProcess_C stuff to project lists (although they're commented out, since it's not done yet) 2011-03-31 09:46:34 -05:00
Petr Mrázek d6bd4d47fb Revert "Hide depend headers better, upgraded tinyxml"
This reverts commit 54a580ac68.

Conflicts:

	CMakeLists.txt
	library/CMakeLists.txt

Signed-off-by: Petr Mrázek <peterix@gmail.com>
2011-03-31 01:12:50 +02: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 7f0ba3b1ff Fix header install rule. 2011-03-20 17:24:34 +01:00
Petr Mrázek 0a35afb16a Use proper paths in build system. 2011-03-20 17:17:33 +01:00
Petr Mrázek fe92edfb4e No more generated config files. 2011-03-20 06:20:23 +01:00
Petr Mrázek c06df18ea7 Fix linux builds not installing the header files 2011-03-20 02:06:50 +01:00
Petr Mrázek 7809ed6cd5 Small fixes to documentation and build scripts. 2011-03-18 16:47:55 +01:00
Petr Mrázek d75c940958 Kill Position module everywhere. 2011-03-18 11:45:37 +01:00
Petr Mrázek a6c724bfb5 Module rearrangement and doxygen documentification. API break. 2011-03-18 11:09:26 +01:00
Petr Mrázek 2911b203ce DFHack. Now with more packaging fun. 2011-03-18 00:07:40 +01:00
Petr Mrázek 557d6733e2 Make the build system sane, pt. 1 - no install or packages yet 2011-03-16 07:35:08 +01:00
Petr Mrázek 54a580ac68 Hide depend headers better, upgraded tinyxml 2011-03-01 07:50:56 +01:00
Petr Mrázek b1061d0f94 Game mode reading, removed some include paths 2011-03-01 06:59:23 +01:00
Tom Prince 4806318494 Factor out microsoft string handling functions. 2011-02-23 15:55:07 -05:00
Tom Prince 63ab8672d3 Add create*Process functions to create process instances.
This allows us to remove friendship of DFProcessEnumerator for Process
subclasses.
2011-02-23 06:13:10 -05:00
Tom Prince b3c490857c Refactor DFProcess-linux-{,wine}.cpp into DFProcess-linux-base.cpp. 2011-02-23 06:11:28 -05:00
Tom Prince c287e54793 Merge much of DFProcess-*-SHM.cpp into DFProcess-SHM.cpp. 2011-02-23 04:02:14 -05:00
Petr Mrázek 1c8249c55a Mingw32 fixes 2011-02-18 01:14:16 +01:00
Petr Mrázek 3835ba0f75 Search tools run on windows and moved to supported, some windows segment/heap/PE section enumeration work.
New windows dependency: ntdll.lib
2011-02-14 03:58:32 +01:00
Petr Mrázek ac91f46b6c Merged patches from Rainer Keller 2010-11-17 20:50:50 +01:00
Petr Mrázek a3870bb5a1 Constructions, buildings, base 31.13 windows entry on DF2010 instead of 31.12. 2010-09-22 18:20:55 +02:00
Petr Mrázek a46422d2a6 Merge branch 'master' of http://github.com/doomchild/dfhack 2010-09-01 20:30:25 +02:00
Petr Mrázek 9bcdc78d00 name of GUI offset group was wrong in its module 2010-08-31 05:32:40 +02:00
doomchild c5c1d52047 fixed spelling of BUILD_DFHACK_C_BINDINGS 2010-08-30 12:36:40 -05:00
Petr Mrázek f2dea86819 Seemingly working VersionInfo loading parts. The offset names are now all wrong in the modules. DO NOT USE 2010-08-28 03:57:56 +02:00
Petr Mrázek 143f30f64b Merge branch 'master' of http://github.com/sizeak/dfhack
Conflicts:
	library/VersionInfo.cpp
2010-08-23 16:16:58 +02:00
Petr Mrázek 1bceac2343 Rename memory_info and its factory class. 2010-08-20 14:10:05 +02:00
Petr Mrázek 3b29fddf7b unify build system, start on the new offset file format 2010-08-16 00:45:02 +02:00
Petr Mrázek 7fbdd6c69a Cleartask tool, updated docs. 2010-08-13 23:25:14 +02:00
Petr Mrázek bae7b88be0 Make sure the compatible memory.xml is used. 2010-08-13 21:44:17 +02:00
Petr Mrázek 8fa3d0811c Make building C bindings optional. 2010-08-13 02:35:10 +02:00
Petr Mrázek 21f7f8e703 Moved memory defs to /data. Memory.xml is copied into the right folder at build time (works even with MSVC). 2010-08-13 02:23:38 +02:00
Petr Mrázek ec35663b62 Common base for all modules 2010-06-25 07:11:26 +02:00
Petr Mrázek 115e969530 Build fixes, made precompiled SHM libs 2010-06-04 03:05:38 +02:00
Petr Mrázek fa0d881e16 Merge branch 'master' of http://github.com/doomchild/dfhack 2010-05-29 23:39:59 +02:00
Petr Mrázek ab40868b29 ProcessEnumerator tracks processes properly now. 2010-05-28 05:18:32 +02:00
doomchild 6e91b7c9de updated to include WindowIO_C and World_C 2010-05-26 14:51:39 -05: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
Petr Mrázek c26da9b84c More DF 2010 reorganization 2010-04-02 16:46:33 +02:00
Petr Mrázek dbeb342c6a Make the python wrapper compile again 2010-03-25 22:13:56 +01:00
Petr Mrázek 822265443c Make the API a bit saner about the used data types and structures 2010-03-25 21:37:09 +01:00
Petr Mrázek f4f566e7c4 Fixed exceptions on GCC
Fixed dfbauxte tool - no longer includes internal headers
Moved part of DFVector into a .cpp file
2010-02-28 05:35:54 +01:00
Petr Mrázek 029f1a6cf8 Merge branch 'errorhandling' of git://github.com/mizipzor/dfhack 2010-02-28 04:26:10 +01:00
Petr Mrázek 7c73c7abe6 CMake swig integration 2010-02-28 04:11:06 +01:00
mizipzor 4f85f37b01 added some exceptions to handle errors 2010-02-28 01:13:34 +01:00
Petr Mrázek 626d266e27 Added GCC visibility support 2010-02-25 23:43:37 +01:00
mizipzor adbf4b81b4 updated cmakelists 2010-02-19 20:55:11 +01:00
mizipzor 3def16e85f added gopt to CMakeLists.txt 2010-02-18 18:31:18 +01:00
Petr Mrázek 56969fb977 Added std::string read/write by belal. Extremely volatile. 2010-02-16 00:04:15 +01:00
Petr Mrázek 7c784bce32 deadlock-filled windows SHM version 2010-01-11 06:27:59 +00:00
Petr Mrázek 242bf47143 some rearrangement of the shm server part, preparing for the windows port 2010-01-04 05:20:28 +00:00
Petr Mrázek efce0ab21b merge in shm branch 2009-12-22 21:19:39 +00:00
Petr Mrázek 3888d0fc06 fixed tons of warnings, removed dependency on xtest 2009-12-13 21:03:19 +00:00
Petr Mrázek 58986ef838 cleanup #2 2009-12-13 00:20:25 +00:00
Petr Mrázek 337d42e15a merged input injection patch by belal 2009-12-12 19:52:30 +00:00
Petr Mrázek 29c0932ff7 split out memory.xml reading functionality out of the processenumerator 2009-11-18 02:33:17 +00:00
Petr Mrázek 6975661733 massive refactors of process, processmanager is now processenumerator, better split between windows and linux code, finalized suspend/resume 2009-11-17 03:19:13 +00:00
Petr Mrázek 4f279680b5 using D pointer, a proper interface 2009-11-11 03:37:28 +00:00
Petr Mrázek 88771ab973 merged another big creature patch from belal, moved C API to unmaintained, starting a big cleanup of the new code 2009-11-09 23:18:20 +00:00
Petr Mrázek 0853ce83ff update 2009-10-31 18:18:59 +00:00
Petr Mrázek 759783e501 linux install target for dfhack, ability to set data path 2009-10-30 00:56:40 +00:00
Petr Mrázek 42e5cdc361 preparing for debugging 2009-10-28 22:40:21 +00:00
Petr Mrázek db2e98a404 including headers in cmakelists - great idea suggested by Nexii Malthus 2009-10-26 21:50:08 +00:00
Petr Mrázek a09f45df71 resolved some problems 2009-10-23 18:05:42 +00:00
Petr Mrázek b5137240dc merged C API patch from Jifodus 2009-10-22 00:18:49 +00:00
Petr Mrázek fac88478bd code moved from khazad 2009-09-14 00:02:46 +00:00