1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-06-19 00:17:56 +02:00
Commit Graph

550 Commits

Author SHA1 Message Date
324717acbe Spelling fixes: privilaged -> privileged, retreive -> retrieve 2018-02-10 21:52:23 +03:00
0a2b04709f Fixed https://bugs.vcmi.eu/view.php?id=2873 2018-02-09 22:12:21 +03:00
0b70baa95e Spells configuration version 2 (effect-based)
* Indirect spell effects loading
* Json serializer improvements
* spell->canBeCastAt do not allow useless cast for any spell
* Added proxy caster class for spell-created obstacles
* Handle damage from spell-created obstacles inside mechanics
* Experimental GameState integration/regression tests
* Ignore mod settings and load only "vcmi" mod when running tests
* fixed https://bugs.vcmi.eu/view.php?id=2765 (with tests)
* Huge improvements of BattleAI regarding spell casts
* AI can cast almost any combat spell except TELEPORT, SACRIFICE and obstacle placement spells.
* Possible fix for https://bugs.vcmi.eu/view.php?id=1811
* CStack factored out to several classes
* [Battle] Allowed RETURN_AFTER_STRIKE effect on server side to be optional
* [Battle] Allowed BattleAction have multiple destinations
* [Spells] Converted limit|immunity to target condition
* [Spells] Use partial configuration reload for backward compatibility handling
* [Tests] Started tests for CUnitState
* Partial fixes of fire shield effect
* [Battle] Do HP calculations in 64 bits
* [BattleAI] Use threading for spell cast evaluation
* [BattleAI] Made AI be able to evaluate modified turn order (on hypothetical battle state)
* Implemented https://bugs.vcmi.eu/view.php?id=2811
* plug rare freeze when hypnotized unit shots vertically
* Correctly apply ONLY_MELEE_FIGHT / ONLY_DISTANCE_FIGHT for unit damage, attack & defense
* [BattleAI] Try to not waste a cast if battle is actually won already
* Extended JsonSerializeFormat API
* fixed https://bugs.vcmi.eu/view.php?id=2847
* Any unit effect can be now chained (not only damage like Chain Lightning)
** only damage effect for now actually uses "chainFactor"
* Possible quick fix for https://bugs.vcmi.eu/view.php?id=2860
2018-02-08 11:37:21 +03:00
da117e9255 Code style: remove void from constructors without arguments 2018-01-13 11:51:47 +03:00
26a222ac62 Change JsonType to enum class (#393)
Change enum JsonType to enum class JsonType
2017-11-27 00:18:18 +03:00
bf20b165ec Fix. Don't skip usual condition. 2017-11-04 22:50:11 +01:00
3eb5de9534 Fixed AI trying to visit tavern over and over.
TODO: AI still can't use it, anyway.
2017-11-04 22:45:19 +01:00
edc4c01805 Fixed a case when AI could spend all money on army and not build anything in secondary towns. 2017-11-04 22:14:56 +01:00
15138c23de Finished conversion to new logging API
* removed logger streams
* (float3|int3)::operator() -> (float3|int3)::toString(), it was too ugly and confusing.
2017-08-11 23:06:27 +03:00
143ff682bc Logging cleanup 2017-08-10 21:59:55 +03:00
85e952f25f Logging cleanup 3 2017-08-10 20:17:10 +03:00
61e241308d Logging cleanup 2017-08-10 19:52:05 +03:00
b2f74a93cf Code style: add empty parameter list to all lambda expressions (#345) 2017-07-17 15:35:57 +03:00
a4c0ad94b1 Code style: remove default value hints in definitions (#342)
Some are outdated and this is something IDE are useful for.
2017-07-15 14:08:20 +03:00
0cb6515ae8 VCAI tweaks (#311)
* Add extra priority support for town capture evaluation
* Improve building algorithm
* GatherArmy: check free gold instead of total for when hiring heroes
2017-07-15 01:15:08 +03:00
f1e5797834 Code style: move or add licensing information on top of every file 2017-07-14 01:26:03 +03:00
bc626c2446 Fixed race condition 2017-07-12 18:26:20 +03:00
3d1a84875e Queries refactoring
* Moved SUMMON_BOAT special case to mechanics
* Partially moved Town portal logic to mechanics class
* Added generic query reply to CCallback
* Redesigned Queries so that base API do not depends on CGameHandler
* Got rid of CGameHandler::castSpellRequest
* Removed CGameHandler::castSpell
* Added new Query type for town portal dialog (not used yet)
2017-07-03 21:43:04 +03:00
86f9df5f68 Made gamestate lock static 2017-06-14 07:59:41 +03:00
9623f7caf3 - Restored MSVS project files
- Fixed VCAI bu pointed out by Tow
2017-06-11 08:01:41 +02:00
3326bfc067 Naming fix 2017-02-18 21:10:59 +01:00
a4f375d9c0 Make AI able tobuy extra buildings. Fix bug #2640 2017-02-18 18:40:44 +01:00
4d39f652bf Making more detailed options when choosing AI in launcher: http://
bugs.vcmi.eu/view.php?id=2369
2017-01-17 12:34:28 +01:00
6848a52ce1 Fixed heroes not unreserving Teleports, which makes them wander around it endlessly and blocking path.
TODO: properly handle all Teleports as "visited" objects
2016-12-19 21:46:01 +01:00
01730ec98a A little TODO 2016-12-12 22:52:18 +01:00
27ff9efd4b Fixed #1713 2016-12-12 21:38:12 +01:00
4288bb88ae Fixed CID 1197622.
* Coverity says that this line actually unreachable
2016-12-05 03:02:52 +03:00
72a36b92d6 Fixed regression. 2016-11-29 18:11:52 +01:00
67d5cee05e Fixed CID 1366402 2016-11-29 17:19:41 +01:00
81e7164ef2 Fixed CID 1366401 2016-11-29 17:12:10 +01:00
ffc511054e Do not visit Eye of The Magi. 2016-11-28 21:45:41 +01:00
9b5af484b7 Fixed AI getting stuck at blockVisit objects (Tavern, Borderguards/gates etc). 2016-11-28 19:29:11 +01:00
76c4ef32c2 Re-evaluate goal after hero move to make AI more consistent. 2016-11-27 18:10:20 +01:00
86e33a4c45 [Refactoring] Unified SetResources NetPack API. 2016-11-26 15:14:43 +03:00
5b76c3f4eb Rebase of codebase changes for refactored serializer
Some of newer fixes not yet merged there and save compatibility a bit off.
2016-10-27 18:12:20 +03:00
4bcc43d3d0 Fix Mantis #2234
CPlayerInterface instances were removed from CClient::playerint with
clear() and finish() was not called on each. Added multiple insurance.
2016-10-22 16:22:00 +02:00
02a45007e7 VCAI::showGarrisonDialog: don't try to pick army from locked garrison 2016-09-19 03:30:55 +03:00
84137dcaa5 Add DLL_LINKAGE to getStr and fix player id logging in VCAI 2016-09-16 05:45:00 +03:00
30042cac3d VCAI::performTypicalActions: always check that hero is still available
It's weird why this only appear now so if you have ideas check issue 2479.
2016-09-16 04:52:17 +03:00
ca0fe8fdc4 VCAI: do not attempt artefact and army exchange with ally hero
While visits of ally heroes supposedly occur accidentally It's still nice to handle it's gracefully.
No reason to prevent visits completely as they useful if hero have skill like Scholar.
2016-09-14 13:34:22 +03:00
7ec9601acd VCAI: safety checks to avoid crashes with boat objects
Probably we should rewrite boat-related code to make AI boat handling easier.
2016-09-14 03:44:35 +03:00
6dcb9a6068 VCAI: don't remove flagged objects from visitableObjs
This make my new shipyard-related changes work properly and might improve owned dwelling usage.
In case there still some code that might cause useless visits it's better just rewrite it insted of removing objects from visitableObjs.
2016-09-13 23:39:32 +03:00
8e94b1c4d2 VCAI::objectRemoved: handle hero boat removal. Fix issue 2350
Avoid situation when AI attempt to visit boat after it's killed hero who used it.
2016-09-04 15:44:42 +03:00
5e5ce0bb09 Merge pull request #203 from vcmi/logFormat
boost::format support for CLogger
2016-08-29 17:32:44 +04:00
452e28d183 Remove some useless includes found by cppclean
This of course was tested and shouldn't break anything
2016-08-26 04:42:16 +03:00
39fe9472b6 CGameHandler::moveArtifact: check lock status by slot instead of id
This one fix issue 2455. We still need to do something with ArtifactID::ART_LOCK or ids for artifact from mods since they might conflict with each other.
2016-08-18 06:35:29 +03:00
91c298bdaa VCAI::tileHidden: added clearPathsInfo
Sector map likely updated anyway after AI turn starts, but cleaning of heroesUnableToExplore when tile hidden feels reasonable.
2016-08-18 03:51:00 +03:00
c931fa5081 SectorMap::exploreNewSector: only store visible visitable objects
Fix crash that I initially missed. AI unable to access information about hidden objects like events via callbacks so we shouldn't store them here too.
2016-08-18 03:33:23 +03:00
f06e9c8538 VCAI convert logging 2016-08-15 08:30:06 +03:00
22884d9150 AI logging convert 1 2016-08-13 17:44:37 +03:00