1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-28 23:06:24 +02:00
Commit Graph

195 Commits

Author SHA1 Message Date
Michał W. Urbańczyk
608a080971 Partial support for serializing std::shared_ptr. Should fix #1281. 2013-05-30 10:44:39 +00:00
Michał W. Urbańczyk
79026bdfde Introduced strongly typed QueryID.
Exchange between heroes is now a proper first-class query. Fixes #1269. #66 should also be finally fully fixed.
VC projects: /Zm flag to fix compilation issues with recent Boost.
2013-05-27 10:53:28 +00:00
beegee1
5328beb8e7 - Fixed some bugs when starting a RMG map - Checks if there is a template for the chosen options(rejects if not) - Added a few templates for development(2 to 4 players, medium maps are supported) - Refactoring 2013-05-21 19:08:06 +00:00
Michał W. Urbańczyk
fc6e72dc75 * Fixed enchantments (#1265). Their effects were not properly added when reading config. Battle interface will be little less likely to block itself after corrupted spell cast.
* Fail gracefully when the file from which game is started is in invalid version.
* Bumped versions.
2013-05-19 15:14:23 +00:00
Michał W. Urbańczyk
be7c2bd07f CGHeroInstance* can be serialized over network even when hero has been defeated. Strongly typed hero type ID introduced.
Should fix #1260.
2013-05-18 22:30:48 +00:00
Michał W. Urbańczyk
5c2473d436 Support for saving/loading in player interfaces, including VCAI.
Minor changes.
2013-05-09 11:09:23 +00:00
beegee1
feea589648 - Bug-fixing for last commit - Moved CMapGenOptions to CMapGenerator 2013-04-15 17:18:04 +00:00
beegee1
f10ba48c77 - Fully integrated new logging API(ERM, Editor, missing parts) - Removed old logger 2013-04-11 15:58:01 +00:00
beegee1
c7c2686379 - Integrated the logging API into the client and the lib - Remove some more comments and switched to /// style - Fixed recursive locks - Added Global.h to CMakeLists(now visible in qt-creator) - Removed usage of shared_mutex - Added unique_ptr to CLogger targets 2013-04-09 14:31:36 +00:00
beegee1
ee51c5beb5 - Renamed /lib subfolders to lowercase 2013-04-07 10:48:07 +00:00
mateuszb
dbec99ffc7 * PlayerColor and TeamID refactoring 2013-03-03 17:06:03 +00:00
Michał W. Urbańczyk
a9fd7b806c Fixed crash on the new month when there are no creatures that can get double growth. (#1219, possibly #1217)
The list of double growth creatures will be serialized.
Bumped format.
MSVC: silenced that stupid C4275 warning. (senseless when using STL)
2013-02-27 03:11:45 +00:00
Ivan Savenko
74ac44662c - a bit less memory usage during compilation with gcc, new file - RegisterTypes.cpp
- fixed several issues related to visiting town by ally
- fixed #1215
2013-02-23 12:22:23 +00:00
Michał W. Urbańczyk
d45a554fec Significant changes to saving system. Now both client and server store their lib part.
Desync detection upon loading. Fixed many desyncs. (more remain)
Monsters won't have creature count 0 even if that is set as creature properties.
2013-02-18 22:37:22 +00:00
Ivan Savenko
a75d237e93 compile fix 2013-02-16 19:53:57 +00:00
mateuszb
560315bc48 * SlotID refactoring 2013-02-16 14:03:47 +00:00
Michał W. Urbańczyk
d23a5dcfdf Fixed #1208. 2013-02-14 15:19:35 +00:00
Michał W. Urbańczyk
827d7b8681 Fixes for previous rev. 2013-02-14 02:17:46 +00:00
mateuszb
86dc9386d6 * refactoring, including a generic solution for IDs 2013-02-10 23:24:57 +00:00
Michał W. Urbańczyk
13b3d23b26 Finally working hero crossover in campaigns.
Uncovered new secrets of h3m.
2013-02-09 18:18:55 +00:00
Michał W. Urbańczyk
e31f5062f9 Fixed crashes when VCAI cannot find hero to recruit.
Bumped format version.
2013-02-09 17:37:38 +00:00
mateuszb
043c7c52a3 * very important bugfix 2013-02-07 20:53:21 +00:00
mateuszb
f1c78e3260 * creature ID refactoring
* double week creatures are configurable now
2013-02-07 17:34:50 +00:00
mateuszb
169cf3558d * changes in campaign handling 2013-02-06 19:48:09 +00:00
Michał W. Urbańczyk
f8d7473f9a * fixed vector<bool> serialization
* fixed issue with loading castle event
2013-02-05 14:32:59 +00:00
mateuszb
25663ce7af * fixed vector<bool> serialization
* refactoring
2013-02-04 19:43:16 +00:00
mateuszb
3c5d6dd79a * vector<bool> serialization 2013-02-04 16:58:31 +00:00
mateuszb
8769f67c5d * JsonReader can convert to enums
* refactoring
2013-02-03 21:05:44 +00:00
mateuszb
ba3075317f * proper bool serialization
* refactoring towards more enums/typedefs
2013-02-02 19:28:39 +00:00
mateuszb
c4e03ef0de * enum serialization/deserialization (si32 as basetype ought to be enough for anybody)
* some fields in classes refactored to use appropriate enums (not yet finished)
2013-02-01 22:04:25 +00:00
DjWarmonger
d325528aa5 For 0.91 release. 2013-02-01 08:44:20 +00:00
alexvins
4bc2fd5519 [c::b] renamed map subfolder to workaround dependency tracking bug 2013-01-03 12:19:20 +00:00
beegee1
53169abea7 - Foundation for starting a random map is done - Moved StdInc.h to header file in some /Map and /RMG compilation units(better syntax highlighting, should have no negative impact) 2012-11-20 17:53:45 +00:00
beegee1
a878f5f79a * Separated map loading from the map object * Moved map classes to lib/Map * Renamed map.h/cpp to CMap.h/cpp * Profiling of map loading is now optional * Updated CMemoryStream 2012-11-03 13:30:47 +00:00
Michał W. Urbańczyk
f8a27a9fdb * Moved CConfigHandler from client to lib, CMake/Makefile need updating. I believe other projects besides client also need access to settings. (surprisingly there was a "server" category used only by client... and now VCAI.)
* It is possible to set the battle ai that'll be used by neutrals by typing in VCMI console:
setBattleAI <AIName>
VCAI also respects that setting and uses given AI as its battle back-end.
2012-09-29 10:59:43 +00:00
Michał W. Urbańczyk
ecd8947d8e Crashes on starting next campaign mission should be fixed. 2012-09-25 18:00:55 +00:00
mateuszb
8e3de98059 * restoring campaign features
* minor improvements
2012-09-21 17:59:54 +00:00
mateuszb
fb2f19b4c5 * some work on campaigns 2012-09-18 17:47:52 +00:00
alexvins
369f0ae9c6 [PLATFORM] MinGW support added
* disabled features unsupported by MinGW
* fixed issues with DLL_LINKAGE
! BOOST_THREAD_VERSION in now 3 workaround for existing code added, consider refactoring.
* some small tweaks ("-fpedantic" warnings)
2012-09-15 19:16:16 +00:00
Michał W. Urbańczyk
e6ebf42308 #994 should not crash anymore. 2012-06-09 19:58:17 +00:00
Michał W. Urbańczyk
e7d82a9702 Rewritten CLoadFile::openNextFile to be cleaner and not leak. Desperate messing around for #989. 2012-06-08 00:12:31 +00:00
Michał W. Urbańczyk
4cd77a0192 Naive solution for endianess issues. Seems to allow loading a big-endian save on little-endian build.
Fixed compile issues with CEmptyAI. Removed unnecessary methods from its.
2012-06-01 15:59:26 +00:00
Michał W. Urbańczyk
401d6816d1 Workaround for serializer allowing sending CStackInstance* pointing to commander. (and only CStackInstance*) 2012-05-21 23:39:35 +00:00
Michał W. Urbańczyk
017013a5a4 Throwing runtime_errors instead of string (or even char*) objects. 2012-04-22 07:32:45 +00:00
Ivan Savenko
66f5b5e2d7 - gcc compile fixes 2012-04-14 16:28:36 +00:00
Michał W. Urbańczyk
722ec55384 Redid stack artifacts. Broken save compatibility. Added serializer support for boost::variant and sending CStackInstace* over network by implicitly passing IDs. Moved seeds and checksum to StartInfo. Various minor changes. 2012-04-14 02:20:22 +00:00
Ivan Savenko
f426a48d09 - fixes for gcc-4.7
- added missing virtual destructors (new warning from gcc)
2012-04-08 10:34:23 +00:00
Michał W. Urbańczyk
3bf76cb719 Fixed #216 and #907.
* CTRL+T will open marketplace window
* T in adventure map will switch to next town
* T in castle window will open a tavern window (if available)
* G will open thieves guild window if player owns at least one town with tavern
* various minor changes
2012-04-08 01:15:18 +00:00
Michał W. Urbańczyk
13f26fc3cb * Client is able to await for answers for multiple queries at the same time
* Hackish solution allowing AI undertaking actions from event-handling thread
* Fixed crash when death stare or acid breath activated on stack that was just killed
* minor fixes
2012-03-25 22:46:14 +00:00
Michał W. Urbańczyk
d0e259864e * Replaced boost::shared_ptr with std::shared_ptr.
* Brought shared_ptr and unique_ptr and their factories (make_shared, make_unique) to the global scope. 
* Removed excessive usage of shared_ptr in bonus system interface. 
* Fixed bonus system limiters/caching interactions. That covers #823, #859 and a number of rare edge-cases. 
* Implemented multiple-step limiters applying, fixing hasAnotherBonusLimiter  and allowing transitional dependencies between bonuses. 
* Bonus system should be slightly faster, since we cache limited bonuses. Some rare usages (limiting query against a foreign node) however can't use caching.
2012-03-06 16:59:55 +00:00
Michał W. Urbańczyk
e7603a1fee One more thing for dev release — bump save format (so the old saves won't crash us). 2012-02-22 22:32:23 +00:00
Ivan Savenko
dbc603b7d7 - fixed crash on opening spellbook during enemy turn
- fixed last known localization issue (bank configs)
- diplomacy and new weeks\month mechanics should be identical to H3
- minor fixes
2012-01-19 14:33:22 +00:00
Michał W. Urbańczyk
046e54563c * fixed project files for RD configuration
* fixed crash when creature is casting Hypnosis (ie. exped Vampire Lords)
* fixed crash when creature is casting Cure before attack (ie. exped Unicorns)
* fixed crash when creature is summoning elemental (TODO fix it)
* fixed crash when doing a bonus system operation with a hero liberated from prison (ie. entering town or battle)
* fixed deadlock when StupidAI tried to assault the turrets
* fixed never ending siege when StupidAI has to use catapult (no more deadlocks on AI-AI siege)
* fixed deadlock when a hero received a level during another player's turn (ie. when he successfully defended)
* AI can win the game by defeating all enemies if there is a specific victory condition applying only to human players
* added options to help testing adventure map AI (--onlyAI, --autoSkip and --oneGoodAI).
* many minor changes
2012-01-03 01:55:26 +00:00
beegee1
7f04ed990b Major refactoring. First part: BattleInterface
Introduction of pre compiled headers,...
2011-12-13 21:23:17 +00:00
Frank Zago
c4b8039c1e Added a missing rturn in CGameHandler::isAllowedExchangeForQuery. Fixed several typos. 2011-09-24 01:15:36 +00:00
Michał W. Urbańczyk
e3db348304 Bump save format. Release date in changelog. 2011-09-01 09:10:49 +00:00
Michał W. Urbańczyk
3152e6d540 Fixed #771, #772 and #787.
Some minor changes and fixes.
2011-08-25 15:24:37 +00:00
Michał W. Urbańczyk
79f5b29196 Various player/AI interface related fixes and improvements. 2011-07-17 18:49:05 +00:00
Michał W. Urbańczyk
c32242b4e9 For 0.84b dev build. 2011-05-25 23:52:27 +00:00
Michał W. Urbańczyk
91d0ea64de Version to be released as dev release 0.83b 2011-02-24 14:54:18 +00:00
mateuszb
b4edd10e6c * beegee's comments patch
* very minor changes
2011-02-22 11:52:36 +00:00
Michał W. Urbańczyk
a46ad0b7ef Next set of fixes, mostly for deserialization. 2011-02-22 09:47:25 +00:00
Michał W. Urbańczyk
c6db92c0be More development around bonus system: building hierarchy, managing morale bonuses. Fully functional Spell Scroll and Angelic Alliance artifacts. Fixed recruiting hero and moving hero to garrison. 2011-02-04 14:58:14 +00:00
mateuszb
2451c0dea6 * a bit better stack reversing
* FoWChange uses unordered_set instead of set
2011-01-20 17:25:15 +00:00
Michał W. Urbańczyk
471c23ba71 Compile fixes, more work on new artifact system. 2010-12-26 14:34:11 +00:00
mateuszb
5806976a9a * towards ConstTranssitivePointers in CGI 2010-12-18 22:11:28 +00:00
mateuszb
23c501b79e some changes 2010-12-17 18:47:07 +00:00
Michał W. Urbańczyk
27f83ea8c3 Further work on bonus system. 2010-11-20 00:03:31 +00:00
Frank Zago
dbe38a7062 A few bug fixes and arious warning fixes: unused code/variables, out of order initializations, ... 2010-10-30 21:53:41 +00:00
Michał W. Urbańczyk
daeb3af67a Early changes towards MP support.
It's possible to connect several clients (running on localhost) and enter MP pregame. The actual MP game still not playable. (though it can be started)
2010-10-24 11:35:14 +00:00
Ivan Savenko
c10dac929d - New animation system:
-- New files: hch/CAnimation.h/cpp
-- Class CAnimation capable to load file partially and/or keep data in compressed state
-- Buttons now use CAnimation instead of CDefHandler

- build system regenerated to include new files
- fixed several gcc warnings
- updated README.linux
2010-10-18 15:08:59 +00:00
Frank Zago
4b8be22fb6 Several compile/link fixes. 2010-09-04 14:47:39 +00:00
mateuszb
4ba3c68ced Chenges (networking for PG, minor fixes) 2010-09-03 18:42:54 +00:00
Michał W. Urbańczyk
c6653949e1 Fixed #90, #581, #567.
Broken #87
2010-08-01 14:04:48 +00:00
Michał W. Urbańczyk
aba655f200 Saveformat bump.
Final rev for 0.81d
2010-07-28 23:10:12 +00:00
Michał W. Urbańczyk
e507f8300b REAL base for dev build 0.81b
(saveformat version bump)
2010-07-24 12:27:08 +00:00
Michał W. Urbańczyk
d69ae9aa4c More logging for #520 2010-07-14 02:53:21 +00:00
Frank Zago
9544b5c13e Include assert.h since assert is used. 2010-06-29 01:48:12 +00:00
Michał W. Urbańczyk
ec6342d9a7 Serializer will now smartly send over network CArtifact* and CHero*. Unified handling of items stored in vector.
Started making support for Black Market / Artifact merchant.
2010-06-26 16:02:10 +00:00
Michał W. Urbańczyk
43c289cdd4 Fixed #468. 2010-06-01 19:02:40 +00:00
Michał W. Urbańczyk
abf54deaa3 Fixed #459 and #465.
Fixed crash on closing creature info window when upgrade was possible ( http://forum.vcmi.eu/viewtopic.php?p=4669#4669 ).
2010-05-30 11:48:24 +00:00
Michał W. Urbańczyk
88fab9c669 Fixed handling cyclic pointers in serializer. 2010-05-15 02:26:49 +00:00
Michał W. Urbańczyk
bb80d4bc02 * support for build grail victory condition
* improved formula for necromancy to match better OH3
* Support for new town structures:
- Lighthouse
- Colossus
- Guardian Spirit
- Necromancy Amplifier
- Soul Prison
2010-05-14 02:18:37 +00:00
mateuszb
adbc142ff0 * a bit of campaign support 2010-05-08 18:56:38 +00:00
Michał W. Urbańczyk
a14606f32d New bonus system. Unified HeroBonus and StackFeature. Still early version, will need improvements and development.
If you encounter any new crashes / bugs / unacceptable slowdowns, please PM me.
2010-05-02 18:20:26 +00:00
Michał W. Urbańczyk
9588e39e84 To be released as 0.75d. Fixed town list with hotseat. Fixed colouring hero window. Minor fixes. 2010-02-26 11:18:09 +00:00
Michał W. Urbańczyk
0a950c508b Grail digging and construction.
Minor fixes.
2010-02-24 13:03:36 +00:00
Michał W. Urbańczyk
d7a1898676 Many fixes, mostly related to hot-seat. 2010-02-22 13:30:46 +00:00
mateuszb
4d9d54735f * campaigns, part 1
* minor changes
2010-02-08 14:38:06 +00:00
Michał W. Urbańczyk
94fa59cf45 * Compilation fix (missing includes, do not remove)
* New settings.txt file (needed for kingdom overview to work)
* Last remainings of h3m format: hero placeholders parsing
* Minor improvements
2010-02-01 17:07:46 +00:00
Michał W. Urbańczyk
5279e2e9fc First part of support for victory & loss conditions.
Implemented and tested are
victory:
Defeat hero
Capture town
Defeat monster
Flag dwellings
Flag mines

Lose:
Loss hero
Time expire

**

Some others may work but not has been tested yet.
I've added a new page in VCMI Status spreadsheet with status of various victory/loss conditions.
2010-01-29 20:52:45 +00:00
Michał W. Urbańczyk
5be449b6ca Fixed crash on closing. Fixed #326. Max movement points values follow H3 more closely. Minor fixes. 2009-12-31 11:04:29 +00:00
Michał W. Urbańczyk
eb6f7fffc9 Support for smart pointer serialization. Fixed creature banks serialization. Minor fixes. 2009-12-29 01:07:17 +00:00
Michał W. Urbańczyk
df3ef1c330 Incremented versions. Updated changelog. 2009-12-01 22:14:25 +00:00
Michał W. Urbańczyk
7f97a56a28 Fixed crash on casting spell. Fixed giving resources from towns. Version set to 0.74c. Incremented save format version.
Disabled adventure AI. Will be released as dev build.
2009-11-28 01:42:08 +00:00
Michał W. Urbańczyk
a6f61e33bd * restored 0.74 savegames compatibility (for easier reproducing reported issues)
* Fixed #184 and #189
* minor fixes
2009-11-13 19:04:36 +00:00
Frank Zago
21f574f5ee Added a destuctor to CISer to fix some memory leaks. 2009-10-24 15:54:08 +00:00
Frank Zago
77812c8e36 Added missing is_base_of header. 2009-10-06 14:02:47 +00:00
Michał W. Urbańczyk
fe7ef6bbe1 Smart map object serialization over net.
Fixed doubling click sound on map selection.
2009-10-06 00:32:33 +00:00
Michał W. Urbańczyk
3d4db35df0 Added icon to the MSVC project, minor fixes, version bumped to 0.74. 2009-10-01 20:00:21 +00:00