AlexVinS
66cfc2fef9
CSpell::canBeCast tweaks
2017-06-05 21:30:25 +03:00
AlexVinS
c82afe7156
switch CMapService API to ResourceID
2017-06-04 22:42:48 +03:00
Alexander Shishkin
7e1b0d71c5
Added option for saving generated maps on client side ( #307 )
...
* new configuration option 'general.saveRandomMaps'
* maps being saved to 'userCachePath/RandomMaps'
* no deletion of old random maps
* map filename generated based on template name and random seed
2017-06-04 20:33:28 +03:00
Arseniy Shestakov
d84f61fc96
CConnection: use std::static for port conversion
...
Apperantly boost::lexical on Windows will add commas into output.
2017-06-04 16:48:04 +03:00
Arseniy Shestakov
6642816b1e
Client: server port and testing options cleanup
...
Now we only pass port as ui16 instead of std::string
2017-06-04 08:49:23 +03:00
ArseniyShestakov
5b0a0d5959
Merge pull request #305 from vcmi/networkImprovements
...
Network and multiplayer improvements
2017-06-02 15:27:08 +03:00
Arseniy Shestakov
bc6f65af04
PlayerCheated: new netpack to apply losing / winning cheat code
2017-06-02 03:34:50 +03:00
Arseniy Shestakov
4b0f702e7e
Add LeaveGame netpack and avoid replying on it and CloseServer
2017-06-02 02:51:44 +03:00
Arseniy Shestakov
cc163c4e05
Refactoring of networking code on server and client
...
* Avoid server crash on dummy connect / disconnect.
* Avoid server crash when host left from PreGame.
* Server print it's state with name when it's waiting for connection or in pregame.
* Server will use random port if specified port is busy.
2017-06-02 02:44:39 +03:00
Piotr
9d5d291e6b
Do not show whether Witch Hut is visited by hero, if was not visited by player yet, fixes #2604 ( #304 )
2017-06-01 23:36:46 +03:00
Arseniy Shestakov
db5a52a0f8
Multiplayer: gracefully handle player loss unless it's a host
...
We don't want server to shutdown after just one of players lost the game.
2017-05-31 08:04:26 +03:00
AlexVinS
c66c66c5ae
Fixed https://bugs.vcmi.eu/view.php?id=2686
2017-05-29 12:42:23 +03:00
FeniksFire
039e3842fc
Aesthetic changes in BattleHex ( #303 )
2017-05-29 10:33:34 +03:00
AlexVinS
8a494b7820
fix
2017-05-28 18:42:36 +03:00
AlexVinS
9718ef1543
Fix
2017-05-28 18:40:13 +03:00
AlexVinS
70a092f58c
[Refactoring] use virtual method for object specific actions when new map object is created
...
* --TODO
* fixes CID 1366291, CID 1366297
2017-05-28 16:23:42 +03:00
AlexVinS
fc55efb72d
Fixed CID 1375681
2017-05-28 15:16:40 +03:00
AlexVinS
a7ed27c73f
Fixed CID 1375705, CID 1375709, CID 1375708
2017-05-28 14:40:35 +03:00
AlexVinS
7a1dd7bd7d
Fixed CID 1375707
2017-05-28 14:40:34 +03:00
FeniksFire
1f215d2306
Fix http://bugs.vcmi.eu/view.php?id=2677 .
2017-05-28 12:23:03 +02:00
DJWarmonger
4d1fb67594
Sanity check for Coverity #1366290 .
...
(Vector should never be empty, especially for chosen zone).
2017-05-27 21:37:05 +02:00
DJWarmonger
346d2ac588
Possible fix for #2681 .
2017-05-27 14:57:45 +02:00
AlexVinS
a85b4cf2a5
* WIP on event condition format
...
* Hero portrait serialization
* Fix town spells serialization
* Added support for float exponential part in Json
* Added support for int64 in Json
* Added basic Hero definitions serialization
* Added rumors serialization
* Advanced player info serialization.
* Added Disposed heroes serialization, (!) not covered with tests yet
* Added Local event serialization
* Added Pandoras box serialization
* Added Seer hut reward serialization
* Added CQuest serialization
* Added API for map object instance names serialization.
* Added random dwelling options serialization
* Advanced town options serialization
* Advanced hero options serialization
* More map format tests
* A lot of fixes, cleanup and refactoring
2017-05-27 00:23:19 +03:00
Dydzio
5127061e28
Commander skill description support ( #266 )
...
* Added commander skill description support
* Add support for ZNPC00.txt not found
2017-05-26 22:58:33 +03:00
Fay
b5daa24982
Android support ( #299 )
...
* AI libs registering shenanigans on android;
* Fixed resolution aspect + mouse event scaling;
* Proper server init/deinit (through android IPC);
Enabled threaded init in CMT;
* Prevented a deadlock in logger on some devices;
* Fixed frozen intro frame after interrupting the video;
Added android progressbar displaying during initial data loading;
* Hacky fix for choppy animations during heroes movement (should look better now, but it's definitely not a good solution);
* Changes/fixes for new android launcher building process;
* Fixed app hang after getting SDL_QUIT when activity was destroyed;
* Functioanal, configurable advmap swiping support;
* VCMI changes cleanup;
Added few missing VCMI_ANDROID guards on swipe mechanics;
* Removed unneeded sleep in server startup code for android;
* Removed android ioapi hack (fixed in newest ndk);
* Removed unused android's library loading logic;
* Added android's swipe option to settings schema;
* Moved NO_STD_TOSTRING to be defined in global.h instead of build files;
2017-05-25 20:57:20 +03:00
Piotr Wójcik
e3992de50e
Give hero move points at day of visiting stable, fixes #2598
2017-05-11 20:52:10 +02:00
AlexVinS
3c893a6bec
Few spell-related tweaks
2017-03-18 14:08:02 +03:00
AlexVinS
9bf4b2a1b0
[C::B] projects updated
2017-03-18 13:21:23 +03:00
DjWarmonger
b06e20bba3
Compilation fixes for MSVS
2017-03-17 19:55:52 +01:00
FeniksFire
3de891b4b4
Moving/dividing classes from BattleState to separate files.
2017-03-17 16:48:44 +01:00
dydzio
7ef7711a47
Cleanup after last MSVS compilation fixes
2017-03-15 22:58:25 +01:00
FeniksFire
450075bec2
Fill a gap in lib/CMakeLists.txt
2017-03-10 17:39:11 +01:00
DjWarmonger
84bdc5c994
Compilation fixes for MSVS.
...
Apparently it doesn't like structs converted to class, needs more investigation.
2017-03-02 10:58:14 +01:00
Alexander Shishkin
0af7ee393b
Merge pull request #270 from FeniksFire/develop
...
Making unit tests for BattleHex and some estetic improvements.
2017-02-21 23:56:26 +03:00
FeniksFire
873cee5adf
Small fix.
2017-02-10 19:31:50 +01:00
FeniksFire
e3ffdca65f
During the unit tests I saw that hex can take from occupiedHex() signed
...
values and then he get stupid value. So changing from ui16 to si16.
2017-02-09 20:08:34 +01:00
dydzio
21f4a0ba60
Implement ranged counterattack
2017-02-04 10:33:45 +01:00
Dydzio
6c8ef79727
Merge branch 'develop' into MakeWOGGreatAgain
2017-02-01 23:14:36 +01:00
DjWarmonger
6d37c8bceb
Merge pull request #272 from dydzio0614/bug2600
...
Nice, thanks :)
2017-02-01 17:57:58 +01:00
dydzio
4c4539b00e
Rename ADVANCED_CATAPULT bonus to reflect the purpose better
2017-02-01 15:05:46 +01:00
dydzio
a8f04aede7
Extend creature siege support. Fix bug #2600
2017-02-01 11:25:57 +01:00
FeniksFire
de7184d68d
Making unit tests for BattleHex and some estetic improvements.
2017-01-29 16:38:13 +01:00
dydzio
2f1f725ae6
Code improvements, minor fixes
2017-01-29 11:50:37 +01:00
dydzio
f5b5fa149f
Build #1
2017-01-28 12:28:30 +01:00
dydzio
3e285c2004
Add santa gremlin missing creature ability, fix shooter init bug
2017-01-26 20:53:28 +01:00
AlexVinS
c86304ac3b
Fixed http://bugs.vcmi.eu/view.php?id=2634
2017-01-26 10:52:19 +03:00
AlexVinS
0b3c1c7185
Fixed http://bugs.vcmi.eu/view.php?id=2639
2017-01-26 10:44:30 +03:00
dydzio
daec6d933c
Add "WoG werewolf"-like ability support
2017-01-22 20:28:08 +01:00
dydzio
c310138fc3
Add WoG ghost ability support
2017-01-20 15:48:45 +01:00
DjWarmonger
73c62f1b4c
Restore cut ring around main town.
2016-12-21 22:23:55 +01:00
DjWarmonger
4b3a878c00
Fix for passability.
2016-12-21 13:37:19 +01:00
DjWarmonger
a0596ebecf
Add clearance under town to ensure passability.
2016-12-21 10:43:24 +01:00
DjWarmonger
cc452bdfa9
Improved road routing so they can go under any passable object.
2016-12-21 10:10:37 +01:00
DjWarmonger
f78b524731
- Remove obstacle in front of player-owned towns
...
- Allow obstacles to touch town object
2016-12-20 15:23:47 +01:00
DjWarmonger
e37c35e439
Zone guard will cause object be placed as far away from it as possible in both zones.
2016-12-20 11:58:39 +01:00
DjWarmonger
ee3aec55f2
Correct implementations of A* algorithm. Seemingly fixes #2496 , it's also faster.
2016-12-15 16:29:23 +01:00
DjWarmonger
63d33a1e7c
Extract priority queue construction for reuse.
2016-12-15 12:58:16 +01:00
DjWarmonger
4102546977
Corrected road generation - they will be straight whenever possible.
2016-12-15 12:36:47 +01:00
DjWarmonger
27ff9efd4b
Fixed #1713
2016-12-12 21:38:12 +01:00
DjWarmonger
80d5f7b4a4
Updated project files to MVS 2015 (in fact, it's trivial).
2016-12-12 19:14:45 +01:00
dydzio
c45a256816
Further fix for mantis #2599
2016-12-10 13:34:58 +01:00
AlexVinS
7126bd61a4
Fixed CID 1197343
2016-12-05 03:12:11 +03:00
AlexVinS
478890df5f
Fixed CID 1366431, CID 1366430
2016-12-05 02:55:05 +03:00
Dydzio
a77863145a
Regression fix - enemy hero info crash
2016-12-03 09:52:19 +01:00
AlexVinS
36598d8695
Fixed CID 1197474, CID 1366358
2016-11-28 19:35:33 +03:00
AlexVinS
394d6e0677
Fixed random crash on resurrection
2016-11-28 19:35:31 +03:00
AlexVinS
c23d3ac83c
Fixed CID 1366432
2016-11-28 03:59:03 +03:00
AlexVinS
60bd54c9b3
Changed playerToSide return type to signed
2016-11-28 03:33:39 +03:00
AlexVinS
2a62ca9522
Fixed CID 1197353
2016-11-28 02:50:43 +03:00
AlexVinS
609c6f81bd
Fixed a few CWE-457
2016-11-27 22:37:41 +03:00
AlexVinS
3216422307
Fixed a few CWE-457
2016-11-27 22:07:01 +03:00
AlexVinS
abe4beebc6
Fixed CID 1197516
2016-11-27 19:13:40 +03:00
AlexVinS
c4ab962cc0
Fixed a few CWE-457
2016-11-27 17:48:18 +03:00
AlexVinS
8b4f1fc938
Fixed CID 1288850
2016-11-26 22:24:16 +03:00
AlexVinS
30663f15ea
Fixed CID 1288863
2016-11-26 22:12:52 +03:00
AlexVinS
96bc191480
Fixed CID 1366296
2016-11-26 21:45:58 +03:00
AlexVinS
c9e564bed8
Fixed CID 1366332
2016-11-26 21:14:21 +03:00
AlexVinS
7d2874bf12
Fixed CID 1366292
2016-11-26 21:11:21 +03:00
AlexVinS
121dd6c63a
Fixed CID 1366333
2016-11-26 21:06:34 +03:00
AlexVinS
0a4e5fcdca
Fixed CID 1366337
2016-11-26 20:54:07 +03:00
AlexVinS
7793a57b0a
Fixed remaining CWE-457 in NetPacks.h
2016-11-26 20:50:07 +03:00
AlexVinS
86e33a4c45
[Refactoring] Unified SetResources NetPack API.
2016-11-26 15:14:43 +03:00
DjWarmonger
5058d5771e
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2016-11-25 20:54:53 +01:00
AlexVinS
47085e8d78
Fixed CID 1366361
2016-11-25 22:20:40 +03:00
DjWarmonger
4789262200
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2016-11-25 19:54:44 +01:00
AlexVinS
dc1015fac9
Fixed CID 1197411
2016-11-25 21:51:27 +03:00
DjWarmonger
2ac72bf75b
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2016-11-25 19:37:29 +01:00
AlexVinS
d81c611ad7
Fixed CID 1197423, CID 1197567
2016-11-25 21:35:47 +03:00
DjWarmonger
56b201e7e8
Fixed CID 1366289 and 1366290.
2016-11-25 19:32:54 +01:00
AlexVinS
a8cadfe25c
Fixed a few CWE-457 in NetPacks.h
2016-11-25 21:04:38 +03:00
AlexVinS
384c5827ae
Fixed CID 1197490, CID 1197491
2016-11-25 17:21:27 +03:00
AlexVinS
ca13bb8412
Fixed CID 1366375, CID 1197633
2016-11-25 17:04:30 +03:00
AlexVinS
5a3854a8de
Fixed CID 1288852, CID 1243202
2016-11-25 16:51:31 +03:00
AlexVinS
4ba3c6fecc
Fixed CID 1288855
2016-11-25 16:40:11 +03:00
AlexVinS
6d3259909e
Fixed CID 1288858
2016-11-25 16:17:38 +03:00
AlexVinS
fa4e00573f
Fixed CID 1366350
2016-11-25 15:34:38 +03:00
AlexVinS
692d23e580
Fixed CID 1366376
2016-11-25 13:38:26 +03:00
AlexVinS
bd4040245f
Fixed CID 1288859
2016-11-24 22:34:42 +03:00
AlexVinS
db40e125eb
Fixed CID 1243181, CID 1197449, CID 1366374, CID 1366377, CID 1366359
2016-11-24 21:56:30 +03:00
AlexVinS
52c610bbb0
Silence "X doesn't have a base stack!" warning (fixed version)
2016-11-18 18:35:05 +03:00
AlexVinS
2af7331088
Revert "Silence "X doesn't have a base stack!" warning"
...
This reverts commit 6d13c8938c
.
2016-11-18 17:49:55 +03:00
AlexVinS
dc39fb2d14
Removed useless CPack::type field.
...
* it was an ancient network protocol artifact
2016-11-18 17:45:59 +03:00
AlexVinS
ebb88f4133
There no point for struct MetaString and struct Component to have CPack as base
2016-11-18 16:58:22 +03:00
AlexVinS
6d13c8938c
Silence "X doesn't have a base stack!" warning
2016-11-18 15:52:45 +03:00
AlexVinS
931656f24a
possible fix for http://bugs.vcmi.eu/view.php?id=2612
2016-11-18 14:27:20 +03:00
AlexVinS
f8bf2c3746
Fixed http://bugs.vcmi.eu/view.php?id=2611
2016-11-18 12:56:58 +03:00
AlexVinS
713403a0e4
Cleanup
2016-11-13 13:15:36 +03:00
AlexVinS
4ff4e41e81
fixed typo
2016-11-13 13:13:41 +03:00
AlexVinS
2aa8c79a2c
fixed boost::optional load, regression from https://github.com/vcmi/vcmi/pull/212
2016-11-13 11:46:26 +03:00
Alexander Shishkin
a73ca79ed1
Merge pull request #257 from vcmi/mapHandlerRefactoring2
...
Map handler refactoring, part 2.
2016-11-12 09:20:45 +03:00
dydzio
5c07e1c432
Minor typo fixes
2016-11-10 11:51:47 +01:00
AlexVinS
a8a661b159
Map handler refactoring, part 2.
2016-11-08 00:19:53 +03:00
AlexVinS
aad675a7c4
Revert "Merge branch 'p254_4' into develop"
...
This reverts commit 37f68713a7
, reversing
changes made to 4477b7c35d
.
2016-11-08 00:17:20 +03:00
AlexVinS
46196daa07
cleanup
2016-11-06 05:27:56 +03:00
AlexVinS
f538aae95e
Partial fix for http://bugs.vcmi.eu/view.php?id=2590
2016-11-02 14:52:02 +03:00
DjWarmonger
db13d7a708
Version 0.99 updates.
2016-11-01 18:25:09 +01:00
DjWarmonger
9db3bfcbf2
Merge pull request #212 from vcmi/refactoring/serialization2
...
Apparently it works - both new and old saves load at least.
2016-11-01 17:25:39 +01:00
DjWarmonger
aa0c745202
Compile fixes for MSVS.
2016-11-01 16:48:34 +01:00
AlexVinS
dad0569bc7
Relaxed cast requirements for Quicksand
2016-10-31 15:38:53 +03:00
Arseniy Shestakov
e79c522c4b
Serializer refactoring: fix FileStream usage for game loading
...
Miss this one rebase. Without this one non-English characters in paths to saves cause issues.
2016-10-30 15:46:44 +03:00
Ivan Savenko
a1cca251ec
Possible fix for selection of incorrect method for serialization of vector<bool>
2016-10-30 11:42:53 +02:00
Vadim Markovtsev
99a3a58cbb
Add commander resurrection info window upon entering town
2016-10-29 21:55:00 +02:00
Arseniy Shestakov
e13f98e38e
Compilation fix for VS2015 suggested by Ivan and tested by @dydzio0614
...
It's compiled without it by Clang / GCC, but not MSVC++
2016-10-29 21:29:25 +03:00
Ivan Savenko
256f43f467
Fixes zero-initialized fileVersion member in deserializer
2016-10-29 19:52:19 +03:00
Vadim Markovtsev
9f967b4d7a
Fix formatting
2016-10-29 17:00:12 +02:00
Arseniy Shestakov
ba5ad286cd
Serializer refactoring: fix paths to work in Visual Studio
2016-10-28 13:52:42 +03:00
Vadim Markovtsev
c696746017
Fix some compilation warnings
2016-10-28 08:07:05 +02:00
AlexVinS
3a040c1730
Updated project files
2016-10-27 19:18:52 +03:00
Arseniy Shestakov
ba1929728a
Drop old now unused serializer files
2016-10-27 18:44:00 +03:00
Arseniy Shestakov
5f1254a29e
Apply some of Vadim's changes
...
I intentionally didn't transfer changes in CLoadIntegrityValidator since not really agree with them.
2016-10-27 18:39:17 +03:00
AlexVinS
8f349b5105
CTypeList: Apply changes from a50a32405d
...
Use weak_ptr for TypeDescriptor cross-links. Fixed total TypeDescriptor memory leak.
2016-10-27 18:12:30 +03:00
Ivan Savenko
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
Ivan Savenko
3d1b1f4ba8
Add files for rebased serializer refactoring done by Ivan
2016-10-27 17:26:22 +03:00
AlexVinS
1ccb0d98be
Disabled git version of C::B projects
2016-10-27 16:27:10 +03:00
Vadim Markovtsev
da1c9cf249
Fix rebuilding everything on HEAD change
2016-10-23 16:56:53 +02:00
Vadim Markovtsev
d0beb27197
Add git commit hash into the version string
2016-10-23 15:45:47 +02:00
Vadim Markovtsev
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
Vadim Markovtsev
baa7a84db3
Fix memory corruption during loading artifacts from mods
2016-10-22 10:00:55 +02:00
Alexander Shishkin
4876cc178d
Merge pull request #240 from vcmi/spellWindowRewrite
...
Spell window rewrite
2016-10-17 07:58:56 +03:00
AlexVinS
bc2f0ba6f1
fixed spell school ordering http://bugs.vcmi.eu/view.php?id=91
2016-10-17 03:33:29 +03:00
Vadim Markovtsev
89f506658e
Fix issue #2068 - maps list update
2016-10-16 22:15:37 +02:00
AlexVinS
153af6e07b
cleanup
2016-10-16 02:47:03 +03:00
AlexVinS
f760e22707
Fixed two recursive infinite loops in case of alternate buildings.
...
* introduced in https://github.com/vcmi/vcmi/pull/211
2016-10-15 04:19:47 +03:00
AlexVinS
cf143cd257
Hack-fix crash in CGTownInstance::genBuildingRequirements related to alternate town buildings
...
* this disables features of #211 , but actual problem may be deeper inside logical expressions
2016-10-14 23:46:24 +03:00
Vadim Markovtsev
76ac9991ed
Format code
2016-10-12 17:22:35 +02:00
AlexVinS
552f28c10b
fix
2016-10-11 21:25:22 +03:00
AlexVinS
ef9bff9006
fixes related to http://bugs.vcmi.eu/view.php?id=2520
2016-10-11 20:04:30 +03:00
AlexVinS
9834db1b7d
simplified CGScholar::onHeroVisit
2016-10-11 20:04:28 +03:00
AlexVinS
4173a5064c
Fixed http://bugs.vcmi.eu/view.php?id=2545
2016-10-11 20:04:27 +03:00
AlexVinS
24585cde87
complete fix for http://bugs.vcmi.eu/view.php?id=2507
2016-10-11 18:19:42 +03:00
AlexVinS
5c3f84138b
fixed random reward generation in CGVisitableOPW
2016-10-11 18:00:54 +03:00
AlexVinS
7db7ece143
Do not send netpack inside netpack handler.
2016-10-09 19:38:13 +03:00
Piotr Wójcik
bb890098df
Fix regression for week-visitable objects
2016-10-09 18:51:41 +03:00
Hao Hu
9ec9cffe9b
Bug fix for berserk: fixed the issue that the berserk affected stack
...
won't attack the nearest live stack.
2016-10-07 23:50:34 -04:00
Vadim Markovtsev
34cf92cb9b
Change logging style
2016-10-03 20:32:01 +02:00
Vadim Markovtsev
eac5aab396
Survive client<->server ABI mismatch
2016-10-02 22:45:00 +02:00
Vadim Markovtsev
a4e550e3cf
Add log levels report
2016-10-02 22:45:00 +02:00
ArseniyShestakov
6f82dc3e15
Merge pull request #230 from dydzio0614/CommanderExperience
...
Some repair for WoG commanders
2016-10-02 19:29:55 +03:00
Dydzio
b84e680f57
Revert changing class structure
2016-10-02 16:57:26 +02:00
dydzio
02e795d508
Fix commander appearing in battles while dead
2016-10-02 16:25:20 +02:00
AlexVinS
5fa9d64d78
Do not allow cast if it affects only "wrong" targets
2016-10-02 16:46:04 +03:00
AlexVinS
cd5c0b3297
Style tweaks.
2016-10-02 15:22:55 +03:00
AlexVinS
34a494ade0
hack-fixed http://bugs.vcmi.eu/view.php?id=2533
2016-10-02 12:39:25 +03:00
AlexVinS
affbc71c56
cleanup
2016-10-02 11:58:53 +03:00
Arseniy Shestakov
04eb0e3787
CGameState::battleGetBattlefieldType: avoid crash on tile 0,0,0
...
Fix issue 2524
2016-10-02 08:39:01 +03:00
AlexVinS
c5440a1c6c
Fixed http://bugs.vcmi.eu/view.php?id=2541
2016-10-02 01:32:28 +03:00
AlexVinS
8aa57f0cbc
fix
2016-10-02 01:07:13 +03:00
AlexVinS
799b8519e0
Allow cast avdmap spells without spellbook
...
* fixes http://bugs.vcmi.eu/view.php?id=1898
* partial fix for http://bugs.vcmi.eu/view.php?id=482
* fixes http://bugs.vcmi.eu/view.php?id=2155
2016-10-01 17:21:39 +03:00
AlexVinS
f124db9f61
Get rid of Bonus::sourceSpell()
...
* now bonus API looks more or less clean
2016-10-01 14:47:21 +03:00
AlexVinS
c2a6c268c0
Cleanup terrain overlay bonuses, fixed CURSED_GROUND
2016-10-01 14:10:09 +03:00
AlexVinS
b6368e23ab
cleanup
2016-10-01 11:05:58 +03:00
AlexVinS
f6bfba0ced
Unified Dispell-related bonus selectors
2016-10-01 10:31:59 +03:00
AlexVinS
96c17505ae
get rid of IBonusBearer::getSpellBonuses & Selector::anyRange
2016-10-01 09:07:18 +03:00
AlexVinS
c243ae6f3e
Get rid of IBonusBearer::getEffect
2016-10-01 08:28:33 +03:00
AlexVinS
a1ff409080
Tweak
...
* handle BIND_EFFECT by bonus type
2016-10-01 08:04:39 +03:00
AlexVinS
04f7b4f951
Cleanup
2016-10-01 07:47:39 +03:00
AlexVinS
730e3b6d0f
Explicit use of limit selector in CBattleInfoCallback::getRandomBeneficialSpell
...
* reverted changes in IBonusBearer::hasBonusFrom just in case
2016-10-01 07:28:03 +03:00
AlexVinS
902117d812
Get rid of IBonusBearer::getBonusesCount it had only one usage
2016-10-01 06:51:12 +03:00
AlexVinS
2f7e10a06f
Use range limit selector when modifying bonus lists and checking for spell bonuses
...
* fixes http://bugs.vcmi.eu/view.php?id=2532
2016-09-30 17:12:28 +03:00
AlexVinS
887794e88b
Remove UNTIL_BEING_ATTACKED bonuses after any received damage.
...
* fixes http://bugs.vcmi.eu/view.php?id=2528
2016-09-30 02:09:02 +03:00
AlexVinS
245d17a9e9
Fixed typo bonus duration enum. Mod compatibility retained.
2016-09-30 01:57:33 +03:00
AlexVinS
8aa31f4073
Fixed http://bugs.vcmi.eu/view.php?id=2529
2016-09-30 01:54:40 +03:00
AlexVinS
72461c5c2e
Fixed http://bugs.vcmi.eu/view.php?id=2268
2016-09-29 23:14:22 +03:00
AlexVinS
9097ffbd8a
Handle HYPNOTIZE effect in case of FEAR and ENCHANTED effects
2016-09-29 22:26:28 +03:00
AlexVinS
83b3c700dd
Handle HYPNOTIZE effect in case of mana drain
2016-09-29 21:47:41 +03:00
AlexVinS
688dc4c189
tweaks
2016-09-29 19:37:59 +03:00
AlexVinS
d195bfb62d
Possibly fixed http://bugs.vcmi.eu/view.php?id=2291
2016-09-29 18:55:07 +03:00
AlexVinS
fed26e1ac9
Merge remote-tracking branch 'remotes/vmarkovtsev/BonusList-shared_ptr' into develop
...
# Conflicts:
# lib/spells/CDefaultSpellMechanics.cpp
2016-09-29 17:12:05 +03:00
AlexVinS
7ce33bc07a
Dispell fixes
2016-09-29 16:50:33 +03:00
Vadim Markovtsev
2c1dddde33
Fix memory problems with BonusList
...
Bonus * -> std::shared_ptr<Bonus>
This cures the following problems:
1) Memory corruption at exit. Some Bonus-es were deleted twice (mods?).
2) Memory leaks. Some Bonuses were not deleted.
3) Reduce the number of "Orphaned child" messages.
Valgrind reports 0 leaked memory now and no invalid reads/writes.
2016-09-29 15:08:00 +02:00
AlexVinS
d79e336e4b
Reworked SetStackEffect::applyGs
...
* fixed applying different duration effects from spells (f.e. Blind)
* reduced code duplication
2016-09-29 15:23:28 +03:00
AlexVinS
34b8b2c91b
Fixed Berserk spell effect aka Bonus::ATTACKS_NEAREST_CREATURE
...
* issue http://bugs.vcmi.eu/view.php?id=2513
* fix is not retroactive
2016-09-29 14:11:15 +03:00
AlexVinS
e91a6d45e8
Probably fixed http://bugs.vcmi.eu/view.php?id=2523
2016-09-29 10:45:22 +03:00
DjWarmonger
e77d408e92
Merge pull request #222 from dydzio0614/HeroBattleWindow
...
Looks OK to me, thanks! :)
2016-09-28 21:06:59 +02:00
dydzio
68af6a0c19
Refactoring InfoAboutHero + GetHeroInfo
2016-09-28 13:22:33 +02:00
AlexVinS
30aa379a9d
Fixed http://bugs.vcmi.eu/view.php?id=2521
...
* show icons at visitable position
* do not duplicate visible objects icons
2016-09-28 07:58:15 +03:00
dydzio
f9b5ca3374
Remove max mana info leak + tiny refactor
2016-09-28 00:20:45 +02:00
dydzio
d831c087d9
Extending hero info callback
...
Allow to check battle enemy hero details + adding max spell points to available data
2016-09-27 22:47:24 +02:00
AlexVinS
a03419e7d9
Fixed http://bugs.vcmi.eu/view.php?id=2269
2016-09-24 11:25:29 +03:00
AlexVinS
7874dffa7d
fixed http://bugs.vcmi.eu/view.php?id=2282
2016-09-24 10:06:24 +03:00
AlexVinS
849e3fc04e
Fixed http://bugs.vcmi.eu/view.php?id=2506
2016-09-24 09:27:58 +03:00
ArseniyShestakov
6c63041d1a
Merge pull request #198 from vcmi/SpellsRefactoring8
...
No reason to not merge this now.
2016-09-24 05:29:55 +03:00
AlexVinS
7618e294c2
More fixes to not place obstacles on wall parts
2016-09-24 04:55:48 +03:00
AlexVinS
cffc4b2ab5
fixed patch obstacle placement inside walls
2016-09-23 20:27:55 +03:00
AlexVinS
bac0b026e5
Do not place obstacles on wall parts
2016-09-23 13:14:12 +03:00
AlexVinS
44753866ec
Fixed Clone links cleanup.
2016-09-23 12:20:41 +03:00
Arseniy Shestakov
bb05db90e5
CRewardableObject::onHeroVisit: avoid crash on pickable objects
...
Missed this problem when tested #214
2016-09-23 11:47:07 +03:00
ArseniyShestakov
50b271393c
Merge pull request #214 from Chocimier/iss1975
...
Properly check if corpse was visited
2016-09-23 06:26:10 +03:00
AlexVinS
ea2e336f54
Merge branch 'develop' into SpellsRefactoring8
2016-09-22 16:40:32 +03:00
Piotr Wójcik
97d358b70f
Marking visited for team
...
Also no longer gives reward every player
2016-09-20 22:05:44 +02:00
Dydzio
bd651ec5ef
Improve pandora box secondary skill handling
2016-09-20 12:40:58 +02:00
Dydzio
563a5d53c0
Update secondary skill handling. Fix issue 2307
...
Also making secondary skill icon display behavior same as in H3 during popup message.
2016-09-19 20:05:57 +02:00
Dydzio
8b0c62e10e
Block surrender via escape tunnel. Fix issue 2389
2016-09-18 22:05:05 +02:00
AlexVinS
7e85154946
Unify battleCanCastSpell parameters
2016-09-18 18:12:07 +03:00
AlexVinS
ef34d21941
Passive cast can be blocked by spell level limit.
2016-09-18 17:21:56 +03:00
AlexVinS
374e30c972
Added a few safety checks
2016-09-18 16:30:03 +03:00
AlexVinS
73c7b49eb7
Hide effectValue calculation inside BattleSpellCastParameters
2016-09-18 15:27:22 +03:00
AlexVinS
1fd87ecc4a
Simplified offensive spell damage calculation
2016-09-18 14:54:17 +03:00
Arseniy Shestakov
635c48f889
CGHeroInstance::setType: fix to give proper subID to random heroes
...
Hero class id is used to determine hero object appearance, but after than we use subID to store it's unique id.
This change should fix issues 2127 and 2277 since random heroes not going to override others in heroesPool.
2016-09-18 10:01:09 +03:00
Arseniy Shestakov
f6df107a55
Replace more magic subIDs with readable enums
2016-09-18 00:53:37 +03:00
Dydzio
beae354536
Correcting random amount of gold in gold piles
...
In original H3 allowed amounts of gold in treasure piles are multipliers of 100. Before this fix gold amount can be any value from range 500-1000.
2016-09-17 23:22:13 +02:00
AlexVinS
53fbf88316
Spell cast logging refactored.
2016-09-17 23:04:23 +03:00
AlexVinS
d993710f8e
Merge branch 'develop' into SpellsRefactoring8
2016-09-17 20:29:44 +03:00
Piotr Wójcik
28d859419c
Revert the old code
2016-09-16 22:01:21 +02:00
Piotr Wójcik
29d6fb0f04
Properly check if corpse was visited
...
Fixes two issues:
- corpse without loot couldn't be marked as visited
- taking loot from once visitable objects marked them as visited for all players
2016-09-16 20:59:07 +02:00
Arseniy Shestakov
84137dcaa5
Add DLL_LINKAGE to getStr and fix player id logging in VCAI
2016-09-16 05:45:00 +03:00
Arseniy Shestakov
c8090c78ec
CGameState::updateRumor: fix infinite loop with only one map rumor
2016-09-15 23:22:25 +03:00
Arseniy Shestakov
fdca75b4b0
PlayerColor: add getStr and getStrCap functions with optional L10n
2016-09-15 18:22:54 +03:00
ArseniyShestakov
b5fa97b697
Merge pull request #211 from Chocimier/iss2321
...
Tested. Everthing looks fine so merging.
2016-09-14 00:37:17 +03:00
Piotr Wójcik
c5e4eaf9c1
Check if hero knows spell even without wisdom
2016-09-13 22:28:21 +02:00
Arseniy Shestakov
1e60ba6516
Only delete CQuest in CMap destructor and not with IQuestObject
...
Quest information must remain accessible even if map object removed. Fix issue 2472
2016-09-13 01:30:47 +03:00
Piotr Wójcik
e1a1bc89c0
Extract PossibilityVisitor
2016-09-12 22:28:11 +02:00
AlexVinS
505e53c17d
Merge remote-tracking branch 'remotes/origin/develop' into SpellsRefactoring8
...
# Conflicts:
# client/battle/CBattleInterface.cpp
# lib/spells/BattleSpellMechanics.cpp
2016-09-12 10:13:40 +03:00
ArseniyShestakov
2543e068ac
Merge pull request #209 from vcmi/fix/saveDesyncs
...
Think I tested it enough to merge it
2016-09-11 21:36:42 +03:00
AlexVinS
33d1895d21
Merge branch 'develop' into SpellsRefactoring8
2016-09-11 18:34:18 +03:00
AlexVinS
49e2bde3c0
Mostly complete fix for http://bugs.vcmi.eu/view.php?id=2429
2016-09-11 16:02:45 +03:00
AlexVinS
3fa62beb6d
Do not allow to cast Cure if there is nothing to cure.
2016-09-11 13:48:14 +03:00
Arseniy Shestakov
fe6c0cf89b
Use RandomGeneratorUtil::randomShuffle for reproducible gameplay
2016-09-11 00:10:52 +03:00
Arseniy Shestakov
c8faca8f39
Refactoring: only use RNGs explicitly to avoid bug prone code in future
...
Now server-side code should always use CRandomGenerator::getDefault which is serialized in GH.
CGameState::getRandomGenerator should be only used from GS code and CPackForClient-based applyGs.
2016-09-11 00:10:46 +03:00
AlexVinS
5e0a9d7966
hackfix for commander spells
2016-09-10 22:41:50 +03:00
AlexVinS
4a9978c642
Disabled massive spells fore creatures as they are not fully supported yet.
...
* (WoG) commanders now cast spells properly.
2016-09-10 21:07:36 +03:00
Piotr Wójcik
40003460ca
Check if building's dependencies are allowed
2016-09-10 19:38:49 +02:00
AlexVinS
62abde6c46
Prepare battle log for spell-cast on server side.
2016-09-10 18:23:55 +03:00
AlexVinS
f8767a6380
cleanup
2016-09-10 09:37:18 +03:00
Arseniy Shestakov
70abae9b51
CGameState::battleGetBattlefieldType: use RNG by ref
...
For now I not sure about proper place for battleGetBattlefieldType so I left it in GS
2016-09-09 23:16:43 +03:00
Arseniy Shestakov
ea63497b19
Move CGameState::setupBattle code to CGameHandler::setupBattle
...
No reason to keep this code in GS.
2016-09-09 23:16:43 +03:00
Arseniy Shestakov
53502e84e3
Add PrepareHeroLevelUp netpack to keep secondary skills RNG in sync
2016-09-09 23:16:43 +03:00
Arseniy Shestakov
ca819b3cda
CGHeroInstance::nextPrimarySkill: don't use GS RNG directly
...
Code used from both GS and CGameHandler.
2016-09-09 23:16:42 +03:00
Arseniy Shestakov
c8bcb14d34
CCallbackBase: add CRandomGenerator to all callbacks
...
This is easiest way to make server RNG available to CBattleInfoCallback.
Now server, client and gamestate have own RNG instance.
Only server and gamestate RNGs are serialized.
2016-09-09 23:16:42 +03:00
Arseniy Shestakov
85f49bc968
CGHeroInstance::initArmy: don't use GS RNG. Get RNG through a ref
...
This function used by both server-side and gamestate so it's must use appropriate random source.
2016-09-09 23:16:42 +03:00
Arseniy Shestakov
2ba3b20928
Multiple changes to RNG usage to both client and server
...
Server should never use RNG from CGameState directly.
Instead server get's own RNG that's state is secret for client.
2016-09-09 23:16:42 +03:00
Arseniy Shestakov
960d93ff5f
CGameState: don't use RNG directly for easier desync debugging
...
Only access random generator via CGameState::getRandomGenerator
2016-09-09 23:16:42 +03:00
Arseniy Shestakov
9296382bc6
More fixes for clang warning...
2016-09-08 19:58:01 +03:00
Arseniy Shestakov
02f70464fb
Fix mismatched-tags Clang warnings
...
They're not important at all, but sicne there only few of them left just fix them.
2016-09-08 19:42:59 +03:00
Arseniy Shestakov
d06d07a39b
Add ChangeFormation netpack to avoid MP desyncs
...
Previous code was working fine for single client, but would cause desync in multiplayer. Fix issue 2460.
2016-09-08 19:29:15 +03:00
AlexVinS
a109580b91
Use const for ObjectTemplate
2016-09-08 18:06:28 +03:00
AlexVinS
114dac7e81
Added ObjectTemplate copy constructor and assignment operator
2016-09-08 17:02:59 +03:00
AlexVinS
42e7128acc
Fixed possible use-after-free crash with artifacts registration in RMG.
2016-09-08 14:48:48 +03:00
AlexVinS
6dc47a2de0
Fixed use-after-free crash with quests registration in RMG.
...
* code taken from PR #200
2016-09-08 14:48:46 +03:00
AlexVinS
f39e619304
More tweaks
2016-09-06 13:51:53 +03:00
AlexVinS
1ce4675df6
Tweaks
2016-09-06 13:33:11 +03:00
AlexVinS
838717dfc1
Magic mirror unified again with normal cast.
2016-09-06 13:05:33 +03:00
AlexVinS
686cd00c68
Cleanup.
2016-09-06 12:26:01 +03:00
AlexVinS
cc4362211c
Extracted MagicMirror handling
2016-09-06 11:03:36 +03:00
AlexVinS
f3d9e718bf
Handle AcidBreathDamage immunity in standard way.
2016-09-06 10:52:54 +03:00
AlexVinS
0241c6e843
Improved spell range calculation.
...
* should now support smart custom range AOE spells
2016-09-06 08:56:31 +03:00
AlexVinS
1e32c71e47
Make sure that there is no unwanted stack affect by spells.
2016-09-06 08:20:17 +03:00
AlexVinS
39c2c6cde7
Ensure no immunity to AcidBreathDamage
2016-09-06 07:16:32 +03:00
AlexVinS
f1d0bede11
Moved all affected stacks calculations to mechanics
2016-09-06 07:05:55 +03:00
AlexVinS
18fc94d709
WIP on SpellCastContext
2016-09-06 06:40:23 +03:00
AlexVinS
9ee954edcc
WIP on SpellCastContext
2016-09-06 05:11:32 +03:00
AlexVinS
1d840a33a5
Started SpellCastContext rework
2016-09-06 04:11:30 +03:00
AlexVinS
82ac035340
OO design for obstacle spells.
2016-09-05 13:34:48 +03:00
AlexVinS
f3b7fe947c
Reworked spell target existence check.
...
* related to 2269
2016-09-05 11:36:25 +03:00
AlexVinS
22f729a3fe
CPlayerState serialize fix.
2016-09-04 13:43:09 +03:00
AlexVinS
948a339463
Merge branch 'develop' into SpellsRefactoring8
2016-09-04 11:27:15 +03:00
ArseniyShestakov
f4f170bf92
Merge pull request #202 from vcmi/noncopyableBonusSystemNode2
...
Didn't manage to find any crashes in newly created games. Merging.
Keep in mind that even if most of old saves will load properly some of them still corrupted beyond repair and after some turns they might eventually crash.
2016-09-04 11:06:05 +03:00
ArseniyShestakov
5fc1fd4daf
Merge pull request #206 from Chocimier/fixes
...
genBuildingRequirements is tricky one, but in tests it's seems everything is okay
2016-09-04 09:02:34 +03:00
AlexVinS
a23144b361
Extracted adventure spell mechanics to distinct class hierarchy.
2016-09-04 08:19:28 +03:00
AlexVinS
eb128a0207
More style tweaks
2016-09-04 05:15:37 +03:00
AlexVinS
c0cf5d6956
Style tweaks
2016-09-04 04:59:30 +03:00
AlexVinS
437eadf1ed
do not leak scenarioOpts in CMapInfo
2016-08-31 06:18:01 +03:00
Piotr Wójcik
044e2b9e51
Properly calculate building requirements
...
In OH3 you can't build Capitol when Tavern is not builded.
In VCMI up to now you could.
2016-08-30 22:15:24 +02:00
Piotr Wójcik
326be61ecb
Show atrifact's name in message of Warrior's tomb
2016-08-30 20:50:03 +02:00
Piotr Wójcik
52797082aa
Do not show whether Shrine is visited by hero, if was not visited by player yet
2016-08-30 20:48:03 +02:00
AlexVinS
1e7e7a7006
Fixed http://bugs.vcmi.eu/view.php?id=2419
2016-08-30 12:20:17 +03:00
AlexVinS
5d329b40a4
Factored spell action selection for location target.
2016-08-30 12:20:15 +03:00
AlexVinS
d1579ea620
Simplify spell action selection for creature target.
2016-08-30 12:20:13 +03:00
AlexVinS
b09f150e7b
Factored out battleCanCastThisSpellHere
2016-08-30 12:20:11 +03:00
AlexVinS
0d5eaa1183
Proper fix for http://bugs.vcmi.eu/view.php?id=2422
2016-08-30 12:20:09 +03:00
AlexVinS
b634482bb0
Fix http://bugs.vcmi.eu/view.php?id=2422
2016-08-30 12:20:07 +03:00
AlexVinS
22d885af22
Fixed http://bugs.vcmi.eu/view.php?id=2302
2016-08-30 12:20:05 +03:00
AlexVinS
be67faad90
Drafts
2016-08-30 12:20:03 +03:00
AlexVinS
f053754653
Advance REMOVE_OBSTACLE mechanics
2016-08-30 12:20:01 +03:00
AlexVinS
40e6e0c143
Move REMOVE_OBSTACLE-related code from callback to where it should be.
2016-08-30 12:19:59 +03:00
AlexVinS
750c114648
Drafts
2016-08-30 12:19:57 +03:00
AlexVinS
3b2a45c8dc
Get rid of battleGetPossibleTargets.
2016-08-30 12:19:52 +03:00
AlexVinS
d4a35c6839
Simplify getAffectedStacks arguments. casterColor not needed anymore.
2016-08-30 12:14:08 +03:00
AlexVinS
f6715ad787
Use ISpellCaster in CSpell::canBeCast.
...
* -2 todo notes
2016-08-30 12:12:46 +03:00
AlexVinS
cf1d5d0bc9
tweaks
2016-08-30 11:45:05 +03:00
AlexVinS
a50a32405d
Use weak_ptr for TypeDescriptor cross-links. Fixed total TypeDescriptor memory leak.
2016-08-30 09:48:12 +03:00
AlexVinS
c6d257f328
Fixed CQuest leak
2016-08-30 09:48:10 +03:00
DjWarmonger
6791350975
Compile fix (operator = is ambiguous).
2016-08-30 07:50:38 +02:00
AlexVinS
ef05a56e49
cleanup
2016-08-30 05:13:45 +03:00
Arseniy Shestakov
668cd83ee5
More work on static variable desyncs
2016-08-29 23:07:52 +03:00
Alexander Shishkin
5e5ce0bb09
Merge pull request #203 from vcmi/logFormat
...
boost::format support for CLogger
2016-08-29 17:32:44 +04:00
Arseniy Shestakov
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
Arseniy Shestakov
94bb5b9901
CGKeys::wasMyColorVisited: fix to not change playerKeyMap on client
2016-08-25 16:47:52 +03:00
Arseniy Shestakov
a90b657b86
Add reset to some static variables on client
2016-08-25 15:52:20 +03:00
Arseniy Shestakov
5a387cdaf1
Town: update appearance in applyGs to avoid desyncs. Fix issue 2464
...
Netpacks NewStructures and RazeStructures
2016-08-24 05:15:04 +03:00
Arseniy Shestakov
abad3cfb17
PlayerState::daysWithoutCastle: change in netpacks only. Fix issue 2462
...
Moving code from CGameHandler to NetPacksLib without changes.
2016-08-23 08:02:04 +03:00
Arseniy Shestakov
355f0a74ab
CGSeerHut: add initialization to constructor
2016-08-23 01:19:03 +03:00
Arseniy Shestakov
52e660f087
CQuest: add proper constructor to avoid uninitialized fields
2016-08-22 20:41:37 +03:00
AlexVinS
111f080639
Fixed memory leak in CCreatureHandler
2016-08-22 13:27:25 +03:00
AlexVinS
63500042e8
Fixed memory leak in CCompressedStream
2016-08-22 12:56:05 +03:00
Arseniy Shestakov
206c5699cf
CGHeroInstance::SecondarySkillsInfo: always set rand seed
...
Seed will always be set again on hero initialization, but for save sync it's must be same before that. Related to issue 2459
2016-08-19 23:31:54 +03:00
Arseniy Shestakov
ec22da4412
CMap: fix objects memory leak on exit
2016-08-19 16:56:26 +03:00
Arseniy Shestakov
bf6ad4e783
More fixes for uninitialized fields part 2
2016-08-19 14:58:04 +03:00
Arseniy Shestakov
ab06cfd586
More fixes for uninitialized fields
2016-08-18 18:53:28 +03:00
AlexVinS
69395d4c78
Fix bonus tree on node move
2016-08-18 15:04:07 +03:00
AlexVinS
d42947f109
Added move constructor for BonusList
2016-08-18 15:04:05 +03:00
AlexVinS
55e27a6334
Important fix
2016-08-18 15:04:03 +03:00
AlexVinS
681b3c7078
reduced code duplication
2016-08-18 15:04:01 +03:00
AlexVinS
629922f43e
Added move constructors for minimum required Bonus system`s classes
2016-08-18 15:03:59 +03:00
DjWarmonger
d188b86a50
As suggested by AVS, I made CBonusYSstemNode noncopyable. However, it is copied somewhere in the code, but I can't find it with MVS:
...
http://stackoverflow.com/questions/3757219/how-to-locate-boostnoncopyable-errors
2016-08-18 15:03:57 +03:00
AlexVinS
b3e7e2e04a
[WiP] Fix one case of bonus node copying.
2016-08-18 15:03:55 +03:00
AlexVinS
89ce1a4509
Fixed uninitialized field
2016-08-18 15:03:20 +03:00
AlexVinS
439aeecc8b
[c::b] re-enabled PCH, tested with GCC 5.3. (Older versions may not work)
2016-08-18 13:40:35 +03:00
Arseniy Shestakov
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
AlexVinS
e26384062f
Fixed memory leak in CObjectClassesHandler
2016-08-17 09:24:01 +03:00
Arseniy Shestakov
b0045fa357
Fix TurnInfo memory leaks
2016-08-16 15:47:21 +03:00
Arseniy Shestakov
b4a35f9c62
CPathfinderHelper: fix memory leak
2016-08-16 14:59:16 +03:00
DjWarmonger
dea39b8497
Complete solution for Subterranean Gate placement.
2016-08-15 21:37:38 +02:00
DjWarmonger
7600f8cf08
Quick fix - stop spawning Subterranean Gates at the edge of the map.
2016-08-14 08:36:15 +02:00
DjWarmonger
f995756973
First part of Subterranean Gates rework. Fixes # http://bugs.vcmi.eu/view.php?id=2450
2016-08-13 19:48:44 +02:00
AlexVinS
74a82c4c9d
Moved boost:format log proxy to CLoggerBase
2016-08-13 16:57:18 +03:00
AlexVinS
599f4cfb55
extracted base logger class to vstd
2016-08-13 16:57:16 +03:00
AlexVinS
efee250e49
Few more usages of logFormat
2016-08-13 16:57:14 +03:00
AlexVinS
d6178d0bb5
Implemented boost::format based log proxy.
2016-08-13 16:57:13 +03:00
AlexVinS
36c44c2ce7
projects update
2016-08-13 16:57:11 +03:00
AlexVinS
72f79a3ad7
Draft boost::format based log proxy.
2016-08-13 16:57:09 +03:00
DjWarmonger
8186fcae99
Removed some legacy code, work in progress.
2016-08-13 12:42:45 +02:00
DjWarmonger
2a9ddadedd
Fixes. Everything works now.
2016-08-12 21:40:22 +02:00
DjWarmonger
9b58450cb0
Part 3 - first working draft, cut generation time by half.
2016-08-12 19:16:21 +02:00
DjWarmonger
d1255f0d67
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2016-08-12 17:52:17 +02:00
AlexVinS
1c292205df
More logging cleanup
2016-08-12 12:14:10 +03:00
DjWarmonger
452027cd8d
Handle ObjectInfo via pointer to avoid expensive copy.
2016-08-11 10:49:19 +02:00
DjWarmonger
19ea46a6d2
Part 2.
2016-08-11 09:20:50 +02:00
DjWarmonger
2410f0af61
- WeightedRule optimization - part 1
...
- comments, style
2016-08-11 07:49:08 +02:00
DjWarmonger
2bffd4e5c1
Moar optimization!
2016-08-09 13:40:46 +02:00
DjWarmonger
7f0b852449
Huge optimization based on profiling - cut generation time by almost half (Jebus XL+U).
2016-08-09 10:12:13 +02:00
DjWarmonger
08dccb4cc3
Use binary search for roulette wheel. TODO: implement in other places.
2016-08-08 22:16:31 +02:00
DjWarmonger
7db2fc6d25
Fixes. Works correctly only for player factions configured in RMG options.
2016-08-06 12:16:13 +02:00
DjWarmonger
f980de7107
Place starting zones on surface/underground depending on player faction - first draft.
2016-08-06 10:04:03 +02:00
AlexVinS
57e588cba1
attempt to fix travis build
2016-07-28 13:15:19 +03:00
DjWarmonger
5a1383fea8
Correct implementation for previous fix.
2016-07-25 18:37:42 +02:00
DjWarmonger
d9556332e1
Hopefully fixed zone guards misplaced due to paths connecting at acute angles.
2016-07-24 18:15:23 +02:00
DjWarmonger
40f28778c2
Minor optimization, saves few seconds.
2016-07-14 14:24:11 +02:00
DjWarmonger
7d7b51d0db
Generated zones can now have different sizes depending on template.
2016-07-13 10:35:31 +02:00
DjWarmonger
1d8fb01f46
More even distribution of surface / underground zones + refactoring.
2016-07-13 07:54:52 +02:00
DjWarmonger
ac68dca328
Fixed zone placer so it now correctly evaluates found solution.
2016-07-12 21:23:45 +02:00
DjWarmonger
aecf834cc1
Fixed placing of close objects #2447 . Some additional refactoring.
2016-07-12 11:42:03 +02:00
DjWarmonger
e1e520f0a2
Removed "growing" zones which don't fit the rest of algorithm. Zones are now better connected on complex maps.
2016-07-11 15:44:24 +02:00
DjWarmonger
c3cbe89e2a
Last improvement: attract zones and push them bakc in separate steps.
2016-07-10 18:16:32 +02:00
DjWarmonger
87ef3701aa
Probably better fitness function.
2016-07-10 16:37:54 +02:00
DjWarmonger
8ceceb897e
Fixed zones falling into negative cordinates. Should fix "assert(size)" crashes.
2016-07-10 14:32:45 +02:00
DjWarmonger
fb3adf762a
Improved zone placer - zones on different levels are allowed to overlap completely.
2016-07-10 13:32:33 +02:00
DjWarmonger
f139b70279
Changed Subterranean Gate placement algorithm - now they are meant to be equidistant from both zone centers.
2016-07-10 12:29:48 +02:00
DjWarmonger
a66893af28
Fixed bug with Subterranean Gates:
...
Failed to connect (-1,-1,-1) with center of teh zone.
2016-07-10 10:11:29 +02:00
DjWarmonger
cfacd1adc3
Random template format change:
...
Tempaltes now can have optional "name" parameter for different names than identifier.
2016-06-06 11:30:51 +02:00
DjWarmonger
201ed26795
Fixed #1213
2016-06-06 09:30:45 +02:00
DjWarmonger
4101cabc22
Hidden unnecessary log.
2016-06-05 10:25:52 +02:00
DjWarmonger
053b342721
Minor optimization for object selection.
2016-06-05 10:18:10 +02:00
Arseniy Shestakov
2e70d29479
CGameHandler::applyBattleEffects: improve Fire Shield support
...
Now damage is limited to total health of defending stack and clone have no file shield damage. In same time damage calculation is likely remain incorrect.
2016-03-14 15:28:17 +03:00
Arseniy Shestakov
10dbbead2d
Fix indentation of logging code and around it
...
That wouldn't be as big issue if problem affected few files, but it everywhere in codebase.
Fixed it everywhere since in most files that is the only code with wrong indentation.
2016-03-12 04:46:21 +03:00
DjWarmonger
fe4d871fe7
Version bump.
2016-03-01 19:42:40 +01:00
ArseniyShestakov
7886e8986e
Merge pull request #197 from vcmi/issue/2304_2418
...
Issues/2304/2418/2293
2016-03-01 15:20:59 +03:00
AlexVinS
3873e5047e
Attempt to fix 2293
2016-03-01 13:24:46 +03:00
DjWarmonger
8f1fba9551
Merge pull request #146 from vcmi/feature/VCMIMapFormat1
...
Ok let's try it.
2016-03-01 07:49:54 +01:00
AlexVinS
4bf9036c7b
Ensure that ghost stacks are created only by BattleStacksRemoved packet.
...
This will allow client to receive notification.
2016-03-01 05:24:35 +03:00
AlexVinS
277211e569
Fix summoning block by clones.
2016-03-01 04:16:51 +03:00
DjWarmonger
772bc9e6c1
Updated MSVS project files.
2016-02-29 16:32:29 +01:00
AlexVinS
f890037008
Fixes
2016-02-29 04:42:15 +03:00
AlexVinS
97504364e4
Rtmoved unused method BattleInfo::getStackT
2016-02-28 19:00:37 +03:00
AlexVinS
5df8d1cbd0
Update low level battle stacks accessor for ghost selection support.
2016-02-28 05:10:20 +03:00
AlexVinS
47b619a543
Centralize GHOST state handling
2016-02-28 01:35:23 +03:00
AlexVinS
9036d39241
Do not remove battle stacks, make them ghosts instead.
...
* exclude ghost stacks from (hopefully all) get* results for now
2016-02-28 01:08:56 +03:00
AlexVinS
5d5ad99436
Rename DEAD_CLONE -> GHOST, as this will be possible for any stack
2016-02-28 00:13:34 +03:00
AlexVinS
d2a5e64542
Remove clone of killed or removed creature. Treat summoned creature as clone when killed.
2016-02-27 18:39:37 +03:00
Arseniy Shestakov
30189a386f
CPathfinder: fix and improve sail-land transition checks
2016-02-26 21:43:43 +03:00
AlexVinS
5408b6c1ff
Formatting
2016-02-26 18:19:41 +03:00
AlexVinS
66d8408130
Fix creature set loading
2016-02-26 02:35:30 +03:00
AlexVinS
8e3e574900
Fix map object appearance serialization
2016-02-26 02:03:14 +03:00
AlexVinS
0de1a37d65
Fix missing template zIndex saving
2016-02-26 01:01:07 +03:00
AlexVinS
4a37ed99ea
Fix duplicated block-visit regression
2016-02-26 00:42:49 +03:00
AlexVinS
2021decb91
Serialize town spells
2016-02-25 22:59:17 +03:00
AlexVinS
8b6cf82a01
Fix
2016-02-24 02:59:34 +03:00
AlexVinS
d2f04332d0
Load object appearance and pos before addNewObject call, it is required for block-visit calculation.
...
Added a test for tile block-visit.
2016-02-24 00:44:17 +03:00
AlexVinS
c3775486db
Serizlize main town info
2016-02-23 23:23:39 +03:00
AlexVinS
17e557be17
Advance Logical identifier condition
2016-02-23 16:36:21 +03:00
DjWarmonger
fba1e86091
An experiment - instead of hard limit function use modulo wrap-around for zone placement. Should be more logical and give zones more space.
2016-02-23 12:11:25 +01:00
AlexVinS
8ed6aa762b
fix
2016-02-23 01:14:06 +03:00
AlexVinS
4bcfb8c27d
Draft of new Event conditions
2016-02-22 23:43:57 +03:00
AlexVinS
dc5ad7d7b3
Make string instance names persistent
2016-02-22 19:26:42 +03:00
AlexVinS
ac281f3fec
Tweaks
2016-02-22 04:53:14 +03:00
Arseniy Shestakov
9428f865d3
CGTownInstance: erase all stacks when town is captured by enemy
2016-02-22 03:33:15 +03:00
AlexVinS
64cb0267a3
Do not save "visitableFrom" if object do not have active tiles.
2016-02-22 03:22:10 +03:00
AlexVinS
51bee1000b
Implemented CGWitchHut::serializeJsonOptions
2016-02-22 03:16:33 +03:00
AlexVinS
939e0128fd
Do not save default json values
2016-02-22 02:50:06 +03:00
Arseniy Shestakov
d15106bf63
CGTownInstance: implement armies merging on siege. Fix issue 169
...
Merging algorithm is replicate one from original game.
2016-02-22 02:46:31 +03:00
AlexVinS
dd1aabbe23
Use JsonSerializeFormat for map objects
2016-02-22 02:37:19 +03:00
AlexVinS
a4b6d34ebe
Advance map header serialization
2016-02-21 22:13:20 +03:00
AlexVinS
4ebafa17b4
Remove unused placeholdedHeroes field
2016-02-21 22:12:58 +03:00
AlexVinS
53b5587c2e
Advance map header serialization
2016-02-21 21:21:22 +03:00
AlexVinS
7eb8dbe0e9
Fix serializer backward compatibility in CPointerLoader
2016-02-18 18:45:42 +03:00
AlexVinS
b6103167f7
Fix serializer backward compatibility in CPointerLoader
2016-02-18 18:08:05 +03:00
AlexVinS
36121696ca
Clenaup
2016-02-18 17:48:04 +03:00
Arseniy Shestakov
07961766ca
CGPandoraBox: don't use giveCreatures object removal feature
...
For pandora box there's own removal function and for CGEvent based on it we sometimes don't want to remove object at all.
2016-02-17 11:28:54 +03:00
AlexVinS
5a8ee32f89
Tweaks
2016-02-15 18:16:45 +03:00
AlexVinS
150fcc9422
Merge remote-tracking branch 'remotes/origin/develop' into feature/VCMIMapFormat1
2016-02-15 13:39:00 +03:00
AlexVinS
4d9058e412
Whitespace cleanup. (No code changes.)
2016-02-15 13:34:37 +03:00
AlexVinS
ec760632a6
Advance Json serializer
...
* added bool, numeric and string support
* added some enum support
* PoC implementation of logical id condition
* Refactoring
2016-02-15 12:21:39 +03:00
ArseniyShestakov
c550484613
Merge pull request #181 from vcmi/feature/drawbridgeMechanics
...
Feature/drawbridge mechanics
2016-02-14 16:32:24 +03:00
Arseniy Shestakov
2cfdfca7e5
Battles: fix more cases where invalid wall hex position present
2016-02-14 14:38:24 +03:00
AlexVinS
67b03b9658
Fixed remaining tempOwner testsю
2016-02-14 12:25:49 +03:00
AlexVinS
fb322b41bc
Merge remote-tracking branch 'remotes/origin/develop' into feature/VCMIMapFormat1
2016-02-14 12:14:57 +03:00
AlexVinS
800f32c4cb
Fix few cases of tempOwner initialization.
2016-02-14 12:13:30 +03:00
AlexVinS
709dd833d5
Added hacks for hero identification.
2016-02-14 11:25:01 +03:00
AlexVinS
e0af4a665a
Added hacks fot spell scroll support.
2016-02-13 19:43:05 +03:00
AlexVinS
7106c5d1af
Fix loading of spell identifier
2016-02-13 19:41:28 +03:00
Arseniy Shestakov
d4524c2fbd
CGDwelling: dont set owner for Refugee Camp. Fix issue 2029
2016-02-13 19:26:47 +03:00
Arseniy Shestakov
c5cfc8467f
Battles: change naming from drawbridge to gate for everything
...
This way code is shorter and cleaner while in future we may support towns with gate only.
2016-02-13 17:40:31 +03:00
AlexVinS
a59f0c23ce
Dedug tweaks
2016-02-13 17:16:00 +03:00
AlexVinS
5a92e0de2b
Small redesign
2016-02-13 16:28:07 +03:00
AlexVinS
22b93106c8
Experimental drafts of Json serializer
2016-02-13 15:04:32 +03:00
AlexVinS
a307d3ca40
tweaks
2016-02-10 13:24:03 +03:00
AlexVinS
fb17914ae5
Debug tweaks
2016-02-10 08:59:24 +03:00
AlexVinS
3c78f960cd
Complete json map format integration
2016-02-10 07:28:00 +03:00
Arseniy Shestakov
422d5cabdf
CBattleInterface: first pass on client drawbridge visualization
2016-02-10 07:10:32 +03:00
AlexVinS
0c21efb202
Start integration of map format into engine
2016-02-09 20:20:03 +03:00
Arseniy Shestakov
11dc428b1e
Battles: move hexes enum to GameConstants and fix wall position
...
Before we had hex 62 marked as destructible wall while actually it's must be 78.
2016-02-09 17:38:59 +03:00
DjWarmonger
4de0f0f973
Compile fixes for MSVS.
2016-02-09 11:08:20 +01:00
Arseniy Shestakov
a07761b608
Battles: readable identifiers enum for drawbridge and gate hexes
...
Dont like to locate them in BattleHex, but it's best place I can see so far.
2016-02-09 12:25:13 +03:00
AlexVinS
6db94ab74c
Explicit army serialization - too much CArmedInstance descendants
2016-02-09 10:11:59 +03:00
AlexVinS
53dc49e92a
CGShipyard, CGShrine serialization
2016-02-09 09:17:20 +03:00
AlexVinS
401ba48257
CGScholar serialization
2016-02-09 09:02:34 +03:00
AlexVinS
a00dbd3dd1
Merge remote-tracking branch 'remotes/origin/develop' into feature/VCMIMapFormat1
...
Conflicts:
lib/CMakeLists.txt
lib/VCMI_lib.cbp
lib/filesystem/CFileInputStream.cpp
lib/filesystem/CZipLoader.cpp
lib/rmg/CRmgTemplateZone.cpp
vcmi.workspace
2016-02-08 10:17:25 +03:00
ArseniyShestakov
890ae43f55
Merge pull request #180 from Zyx-2000/FileInfo
...
Refactored CFileInfo & ResourceID
2016-02-08 04:55:39 +03:00
Arseniy Shestakov
a13aec4fd7
Aplly some fix for merge and explicitly specify type for std::max
2016-02-08 04:09:02 +03:00
DjWarmonger
441c94d56c
Remove log for Seer Huts.
2016-02-06 15:11:56 +01:00
DjWarmonger
6f5706352d
Possible fix for #2371
2016-02-06 12:36:56 +01:00
AlexVinS
081a20d047
Fix a crash.
2016-02-05 09:40:20 +03:00
AlexVinS
a3f0d1a94e
More post-merge fixes
2016-02-05 09:28:36 +03:00
DjWarmonger
b98a83f743
Added string identifiers for terrain types.
2016-02-04 17:57:51 +01:00
AlexVinS
483276b128
Merge fixes
2016-02-04 12:28:12 +03:00
AlexVinS
6e205a58b4
Merge remote-tracking branch 'remotes/origin/develop' into feature/VCMIMapFormat1
...
Conflicts:
lib/VCMI_lib.cbp
lib/filesystem/CZipLoader.cpp
lib/filesystem/CZipLoader.h
lib/mapObjects/CGTownInstance.cpp
2016-02-04 10:27:51 +03:00
AlexVinS
97f19b5176
CGResource serialization
2016-02-04 09:22:14 +03:00
AlexVinS
d8d574ed84
CGSignBottle serialization
2016-02-04 08:50:46 +03:00
AlexVinS
a6c719ee11
CGCreature serialization. Added rewardResources.
2016-02-04 08:44:46 +03:00
DjWarmonger
e7b639898e
Final compilation fix suggested by AVS.
2016-02-03 14:26:25 +01:00
AlexVinS
1bc41b3ba3
Merge commit '3c844002626f48007a888d4dd8b0b45ec867fc9a' into feature/VCMIMapFormat1
...
Conflicts:
lib/mapObjects/CGHeroInstance.cpp
2016-02-03 05:04:44 +03:00
AlexVinS
b176734418
CGCreature serialization
2016-02-03 04:18:03 +03:00
DjWarmonger
0c82419fb0
Final compile fix, unfortunatelly game fails to launch now due to missing fill_fopen64_filefunc in minizip.dll :(
2016-02-02 19:16:12 +01:00
DjWarmonger
51183228f2
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2016-02-02 18:48:42 +01:00
DjWarmonger
7cf2d79584
Final compile fix.
2016-02-02 18:48:20 +01:00
Alexander Shishkin
20fd7cf916
Merge pull request #190 from vmarkovtsev/feature/fix_uf_warning
...
Fix unused function warning in release mode
2016-02-02 15:23:37 +03:00
DjWarmonger
97117491ae
Merge pull request #191 from vmarkovtsev/feature/psychic_elementals
...
I think we could implement general bonus that reduces damage depending on arbitrary immunity (or other bonus), but it's beyond the scope of this PR.
2016-02-02 13:02:13 +01:00
DjWarmonger
afd5b8807d
Compile fix #2
2016-02-02 12:46:58 +01:00
Vadim Markovtsev
eb10433535
Implement psychic elementals vs mind immune units
2016-02-02 14:30:37 +03:00
DjWarmonger
6865f70ab8
Compile fix #1
2016-02-02 12:19:33 +01:00
DjWarmonger
c78d2469c5
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2016-02-02 12:03:16 +01:00
Vadim Markovtsev
bdd87be10d
Try to fix http://bugs.vcmi.eu/view.php?id=2362
2016-02-02 11:46:33 +03:00
Vadim Markovtsev
8d7629bdab
Fix unused function warning in release mode
2016-02-02 11:12:28 +03:00
Vadim Markovtsev
88bc21952b
Make stables message appear if hero has cavaliers but visited stables before
2016-02-01 09:41:15 +03:00
Vadim Markovtsev
c30a6f2ff3
Fix 1989 cavaliers -> champions in stables
2016-01-31 21:09:11 +03:00
ArseniyShestakov
7f68124b97
Merge pull request #136 from vcmi/issue/1372-2
...
issue/1372
2016-01-31 20:28:54 +03:00
Vadim Markovtsev
3926920103
Rename radious -> radius
...
There is no such English word, "radious"
Some files get new lines in the end - BSD sed bug + best practices
2016-01-31 18:01:58 +03:00
Vadim Markovtsev
e18b21b78e
Fix 2264 learning stone & Learning skill
2016-01-31 10:12:01 +03:00
Vadim Markovtsev
eb4331baf6
Fix 1916 water wheel reward
2016-01-30 19:11:22 +03:00
Vadim Markovtsev
918fbd8530
Refactor hero's mana regain
2016-01-30 13:51:07 +03:00
Vadim Markovtsev
22fc4fd3e9
Fix 2406 reset potentially available heroes
2016-01-30 10:02:33 +03:00
AlexVinS
16e0d18880
Added special slots for war machines and arrow towers
2016-01-30 00:53:53 +03:00
Arseniy Shestakov
57328bdc83
Battles: implement basic drawbridge mechanics
...
Movement to blocking hex 94 not yet properly handled as stack movement code need to be rewritten first.
Also gate destruction not immidiately affect drawbridge state.
2016-01-29 22:43:35 +03:00
Arseniy Shestakov
1e008b9756
SiegeInfo: add foundation for drawbridge mechanics support
...
EDrawbridgeState enum represent current state of drawbridge.
BattleDrawbridgeStateChanged netpack to pass bridge state changes to client.
2016-01-29 22:35:11 +03:00
AlexVinS
ba017c443d
Start from diff of pull request #124 from vcmi/issue/1372
2016-01-29 21:05:17 +03:00
DjWarmonger
ca4e13b2dc
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2016-01-29 18:21:56 +01:00
DjWarmonger
9ce6f874f0
Local fixes.
2016-01-29 18:21:19 +01:00
ArseniyShestakov
a534fe1cfe
Merge pull request #152 from vcmi/feature/moatHexesConfig
...
Configurable moat hexes positions
2016-01-29 20:07:22 +03:00
Arseniy Shestakov
75f278b913
moatHexes: use initializer list and update comment
2016-01-29 19:25:25 +03:00
Zyx-2000
7fbd5479e2
alignment & makefile fix
2016-01-29 16:08:44 +01:00
Zyx-2000
2b88de8e24
added new files
2016-01-29 15:39:44 +01:00
Zyx-2000
29faa9ce06
...and project updated
2016-01-29 15:33:07 +01:00
Zyx-2000
523bc22a30
removed old files
2016-01-29 15:32:37 +01:00
Zyx-2000
8aefdb0b7b
small project file fix
2016-01-29 15:30:22 +01:00
Zyx-2000
3a1a8e3d47
further refactoring-related changes
2016-01-29 15:16:14 +01:00
ArseniyShestakov
94fa25d56d
Merge pull request #179 from vmarkovtsev/issue/2405
...
Fix 2405 quest timeout mechanics
2016-01-29 12:19:31 +03:00
Vadim Markovtsev
30d64e3e3c
Fix 2405 quest timeout mechanics
2016-01-29 09:28:37 +03:00
AlexVinS
0011507e42
wipe constexpr on @DjWarmonger request
2016-01-29 00:34:54 +03:00
Arseniy Shestakov
8c39ecf538
moatHexes: add saves and mods compatability
2016-01-28 01:35:01 +03:00
Arseniy Shestakov
48aedaef47
Merge branch 'develop' into feature/moatHexesConfig
2016-01-28 01:15:08 +03:00
Arseniy Shestakov
b7fbbfdebe
CQuest: add missing completedOption initialization for CGQuestGuard
2016-01-27 23:24:17 +03:00
DjWarmonger
fdfe7b6b06
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2016-01-27 21:08:18 +01:00
DjWarmonger
327e95407e
- Compile fixes part 1
...
- Project settings for MSVS
2016-01-27 21:08:08 +01:00
Zyx-2000
c3e8c8bc1c
Merge branch 'develop' into FileInfo
2016-01-27 19:21:43 +01:00
ArseniyShestakov
4e8486da7b
Merge pull request #160 from vmarkovtsev/issue/2388
...
Fix 2388 obelisks puzzle revealing
2016-01-27 20:49:03 +03:00
Vadim Markovtsev
0ac833cca4
Fix 2377 "Seer Empty Text"
2016-01-27 19:52:45 +03:00
AlexVinS
048e22dbe6
Fix build.
2016-01-27 19:32:59 +03:00
AlexVinS
d7c0c3759a
Merge branch 'Zyx-develop' into develop
...
Conflicts:
lib/filesystem/AdapterLoaders.h
2016-01-27 18:53:41 +03:00
ArseniyShestakov
3c84400262
Merge pull request #175 from vmarkovtsev/feature/switch_retreat_no_troops
...
Feature/switch retreat no troops
2016-01-27 18:49:29 +03:00
Alexander Shishkin
1472ed970d
Merge pull request #176 from vmarkovtsev/issue/2160
...
Fix 2160 dismissing a VIP hero.
2016-01-27 18:28:57 +03:00
Vadim Markovtsev
9f3313524e
Fix 2160 dismissing a VIP hero
2016-01-27 17:10:19 +03:00
Vadim Markovtsev
36eaa399e7
Add hardcodedFeature to switch winner's retreating with no troops
2016-01-27 16:42:17 +03:00
AlexVinS
bffdc2813d
revert some project changes
2016-01-27 15:21:29 +03:00
DjWarmonger
94ecc3f520
Compilation fix. MVS 2013 doesn't support constexpr and it's not needed either.
2016-01-27 10:13:33 +01:00
DjWarmonger
fc62cabb68
Merge pull request #174 from vmarkovtsev/issue/981
...
Fix CGHeroInstance::isInitialized implementation
2016-01-27 09:43:53 +01:00
Vadim Markovtsev
f6679bba50
Fix CGHeroInstance::isInitialized implementation
2016-01-27 09:44:23 +03:00
Zyx-2000
92dd194c97
logger now supports unicode file paths
2016-01-26 22:42:15 +01:00
DjWarmonger
f626c0f9ed
Merge pull request #173 from vmarkovtsev/issue/981
...
Fix 981 reset hero on hiring after retreat/surrender
2016-01-26 21:24:22 +01:00
Vadim Markovtsev
7772b6de74
Fix 981 reset hero on hiring after retreat/surrender
2016-01-26 22:48:31 +03:00
Zyx-2000
70e3c81b9f
Replaced CFileInfo with more correct and efficient alternative
2016-01-26 14:51:38 +01:00
Vadim Markovtsev
40cb48d65e
Replace std::remove_if with vstd::erase_if
2016-01-26 10:19:58 +03:00
ArseniyShestakov
6a7b1a1737
Merge pull request #161 from vmarkovtsev/issue/2076
...
Fix 2076 Grail removal
2016-01-26 09:01:43 +03:00
Arseniy Shestakov
97a8874ed7
CGCreature: fix crash on draw
...
Also according to H3 behaviour if there artifact monster guarded it's will be lost on draw.
2016-01-26 08:41:09 +03:00
Vadim Markovtsev
22eb71de03
Remove this-> occurrences in new code
2016-01-25 14:14:32 +03:00
Vadim Markovtsev
a74fbff34f
Fix 2076 Grail removal
2016-01-25 12:38:11 +03:00
Vadim Markovtsev
afa95312ba
Fix 2139 captured spell scroll descriptions
2016-01-25 08:49:26 +03:00
AlexVinS
0ec07b38ac
fix build
2016-01-24 16:58:24 +03:00
AlexVinS
89d986fc6a
Merge remote-tracking branch 'remotes/origin/develop' into feature/VCMIMapFormat1
...
Conflicts:
lib/CArtHandler.h
lib/mapObjects/MiscObjects.cpp
2016-01-24 15:39:41 +03:00
AlexVinS
408f346541
Drafts for hero serialization
2016-01-24 15:35:08 +03:00
AlexVinS
3eb9de0c0b
Grail options serialization
2016-01-24 02:26:32 +03:00
ArseniyShestakov
b19e082f37
Merge pull request #166 from vmarkovtsev/issue/1723
...
Fix 1723 quest crash on combined arts
2016-01-23 23:23:07 +03:00
AlexVinS
f9d0b20234
CGMine, CGArtifact, CGGarrison serialization
2016-01-23 19:53:02 +03:00
AlexVinS
b0c4ea5947
Fix.
2016-01-23 17:43:20 +03:00
Vadim Markovtsev
a266154b26
Fix 2014 cursor must disappear during movement and Magi's Eye
2016-01-23 00:35:41 +03:00
Vadim Markovtsev
11bce2908d
Fix 1723 quest crash on combined arts
2016-01-22 12:56:25 +03:00
Vadim Markovtsev
e8db456beb
Reset obelisks upon game end
...
Otherwise, the static variables are preserved and lead to wrong values in next new game.
2016-01-20 13:02:52 +03:00
Vadim Markovtsev
1a2cd36df8
Initialize obelisks count to 0
...
Otherwise every time player starts with a random number.
2016-01-20 12:43:07 +03:00
Vadim Markovtsev
bb3a31f3ff
Mark obelisk visited for all players in the team
2016-01-20 11:14:03 +03:00
Vadim Markovtsev
10f888a483
Fix obelisks puzzle revealing
...
Teams and players were messed up in lib; hardcoded constants were refactored.
2016-01-20 10:44:13 +03:00
Zyx-2000
c385c8757b
TAB instead of spaces
2016-01-19 20:53:29 +01:00
Zyx-2000
2a55d5f85e
added copyright info
2016-01-19 14:26:18 +01:00
Zyx-2000
64365fa294
additional polishing
2016-01-19 11:56:03 +01:00
Zyx-2000
170e4283ae
Small improvements to FileStream
2016-01-18 21:30:06 +01:00
Vadim Markovtsev
92e011429f
Fix crash on unknown map objects
...
If getHandlerFor() fails to find the handler, it returns a nullptr
shared pointer, which is later dereferenced unconditionally.
How to reproduce:
Download map "Happy time Dragons!!!" from http://heroesportal.net/maps.php?type=H3AB-XL&sort=r
=>
Failed to find object of type 5:144
SIGSEGV
2016-01-18 21:16:55 +03:00
Zyx-2000
a50a702073
switched to -std=gnu++11
2016-01-18 17:49:07 +01:00
Arseniy Shestakov
575a68d78b
CRewardableObject: fix onVisited message duplication for Idol of Fortune
2016-01-17 15:16:35 +03:00
Zyx-2000
cf61837ced
replaced std::string with boost::filesystem::path in several places
2016-01-16 16:36:16 +01:00
Arseniy Shestakov
18b2f866c9
CGPickable: add missing break for flotsam. Fix issue 1956
2016-01-16 09:45:30 +03:00
Arseniy Shestakov
725cce368f
CGameState::initStartingBonus: fix amounts for wood and ore bonus
...
In original game when wood and ore bonus is choosen you always get same amount of both resources.
2016-01-15 20:36:16 +03:00
AlexVinS
a638d0cd51
Creature set serialization
2016-01-15 20:24:17 +03:00
Arseniy Shestakov
b84d7bd288
CGCreature: add reward granting. Fix issue 2372
2016-01-15 04:29:46 +03:00
DjWarmonger
ac730a591c
Fixed large treasure piles sometimes being uncovered.
2016-01-13 20:03:25 +01:00
DjWarmonger
8c5f93dd8f
Little refactoring for object placement.
2016-01-13 19:17:12 +01:00
Zyx-2000
933b7c1f5e
some modernization of CFileInputStream implementation code
2016-01-12 23:40:24 +01:00
Zyx-2000
f9b255c896
Cleaner code & MSVC compatibility
2016-01-12 22:40:05 +01:00
Zyx-2000
1f4bc0f2e4
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2016-01-11 22:38:47 +01:00
Zyx-2000
99cf8069d7
FileStream files
2016-01-09 21:24:20 +01:00
Zyx-2000
203b2dccc3
hopefully fixed things
2016-01-09 21:23:55 +01:00
DjWarmonger
676f078b2e
RMG will now multiply Monolith defs to ensure there are at least 100 pairs avaiable for connections.
2016-01-09 09:03:40 +01:00
DjWarmonger
dd1fc47c93
Workaround for Seer Hut offset. They seem to work fine now.
2016-01-08 21:51:55 +01:00
DjWarmonger
d840fb40eb
Fixed crashes with RMG Seer Huts. Now they are functional.
2016-01-08 21:14:57 +01:00
Arseniy Shestakov
383f754ed1
Starting gold bonuses must be always multiples of 100
2016-01-07 20:51:37 +03:00
Arseniy Shestakov
c93f8fea48
moatHexes: implement reading moat hexes from configuration files
...
This also fix Fortess moat that previously used wrong hexes
2016-01-06 12:53:40 +03:00
DjWarmonger
cdd50b1603
Version bump.
2016-01-01 20:06:38 +01:00
AlexVinS
37d0dad70a
Merge branch 'develop' into feature/VCMIMapFormat1
...
Conflicts:
lib/CArtHandler.cpp
2016-01-01 20:28:52 +03:00
Arseniy Shestakov
9fd1cff090
Refactoring: always use std prefix for shared_ptr, unique_ptr and make_shared
...
Long time ago it's was used without prefix to make future switch from boost to std version easier.
I discusses this with Ivan and decide to drop these using from Global.h now.
This change wouldn't break anything because there was already code with prefix for each of three cases.
2015-12-29 05:43:33 +03:00
Arseniy Shestakov
29a7934a99
Refactoring: avoid using namespace when it's not absolutely needed
2015-12-29 02:14:08 +03:00
Arseniy Shestakov
66e6f15e67
NewTurn::applyGs: update bonuses in beginning. Fix issue 2083
...
Before bonuses was removed after hero get movement points and mana so affected hero one day more than intended.
2015-12-25 01:48:53 +03:00
Arseniy Shestakov
6f5c52a229
Refactoring: use cleaner CCreatureSet::stacksCount everywhere
2015-12-24 21:30:57 +03:00
Arseniy Shestakov
62bab27e7e
CGArtifact: show yes/no dialog for guarded artifacts. Fix issue 2095
...
Also fix hover text for CGMine
2015-12-24 21:05:02 +03:00
Arseniy Shestakov
75ca020890
CCeatureSet: add getArmyDescription for hover and InfoWindow texts
2015-12-24 21:03:51 +03:00
DjWarmonger
be50d699fb
Compile fixes for MSVS
2015-12-23 15:23:56 +01:00
ArseniyShestakov
48be566050
Dimension Door: fix movement points cost for expert level
2015-12-21 18:46:52 +03:00
Ivan Savenko
a051a08a46
Merge remote-tracking branch 'origin/issue/2306' into develop
2015-12-18 22:21:11 +02:00
ArseniyShestakov
b6176649ec
CGMonolith: avoid crash when all exits are blocked by friendly heroes
2015-12-18 01:08:19 +03:00
ArseniyShestakov
9490a5d66d
CPathfinder: deny transit to land blockvis objs from water layer
...
When hero is in water walking layer he can only exit to accessible or visitable land tiles, but not objects that have blocking visit and leave hero standing on water.
This is different than default flying behaviour because hero in air layer can only transit into accessible land layer without any blocking or visitable objects on them.
2015-12-16 20:14:36 +03:00
ArseniyShestakov
bf9ac7318a
CPathfinder: change cost calculation sequence for embark / disembark
...
With old embark cost calculation pathfinder may end up thinking that hero can embark/disembark while have less movement points than base movement cost is. Now hero would be only able to embark / disembark if we have enough movement points to step on that tile. This rule is also valid for situation when hero have Admiral's Hat as in H3 even if hero don't have embark penalty he still use move points for embark and disembark.
Problem was found as it's was causing infitite loop in AI. Server of course rejected attempt to embark with less than 100 movement points while pathfinder tell AI that it's can still embark with 93 movement points.
2015-12-15 20:08:52 +03:00
ArseniyShestakov
2724a67a27
CPathfinder: add border gate support and use passableFor
2015-12-14 14:33:50 +03:00
ArseniyShestakov
9f565b81e9
CBankInfo: fix huge memory leak that appear in long run
2015-12-14 11:29:24 +03:00
ArseniyShestakov
59199ccdbd
Bonus system: add treeHasChanged call where bonus objects changed
2015-12-11 16:13:18 +03:00
ArseniyShestakov
1730a31471
HeroBonus: get rid of code that used getBonusList
2015-12-11 16:01:51 +03:00
ArseniyShestakov
8fb5dacba2
CBonusSystemNode: get rid of non-const getBonusList
2015-12-11 15:02:36 +03:00
ArseniyShestakov
ab92123da3
CPathfinder: improve support for visits and battles in teleports
...
Related movement code for client and AI is plumbed as well. Though at moment code still not finished because it's not teleport hero to the exit tile if he won battle.
2015-12-11 09:42:30 +03:00
ArseniyShestakov
a430769b44
CPathfinder: fix possible crash when using invisible teleport exit
...
This one is similar with FoW bug when hero was covered by FoW while one tile around wasn't.
2015-12-11 04:10:30 +03:00
ArseniyShestakov
c3e5231146
CPathfinder: avoid pathing through hero standing on Subterranean Gate
...
Subterranean Gates unlike Monolith allow to visit hero standing on other exit. So of course pathfinder allowed that, but it's also allowed future movement through that hero which caused infinite loop for AI.
2015-12-10 16:51:19 +03:00
ArseniyShestakov
2be6818e33
FoWChange::applyGs: correct copy-paste error. Fix issue 2345
2015-12-09 10:02:33 +03:00
ArseniyShestakov
1c0d4e3f6f
Fix filenames in file headers
2015-12-08 09:53:14 +03:00
ArseniyShestakov
07807fb044
Client: slience visibility error on shipyard in non-coastal town
2015-12-08 07:33:13 +03:00
ArseniyShestakov
03e9dd3bab
Add hero gold cost to GameConstants
2015-12-07 00:13:58 +03:00
ArseniyShestakov
e872b400b7
Comments save format backward compatability code as Ivan suggested
...
Also we should always handle RumorState::TYPE_NONE in getTavernRumor properly anyway.
2015-12-06 02:51:54 +03:00
ArseniyShestakov
05a34fb417
Use "Favorable" instead of "Favourable" everywhere for consistency
...
Original game of course used american english version so we stick to it.
2015-12-06 02:23:41 +03:00
AlexVinS
f33bcee84c
post-merge fixes
2015-12-05 13:56:38 +03:00
AlexVinS
947edc0693
Merge branch 'develop' into feature/VCMIMapFormat1
2015-12-05 13:04:04 +03:00
AlexVinS
0fab319c73
Merge remote-tracking branch 'remotes/origin/develop' into issue/2306
...
s reverts commit fa8a282696
.
Conflicts:
AI/VCAI/VCAI.cpp
Conflicts:
AI/VCAI/VCAI.cpp
client/windows/CAdvmapInterface.cpp
lib/CPathfinder.cpp
lib/CPathfinder.h
2015-12-05 12:56:12 +03:00
AlexVinS
3bf9696b13
Tweaks
2015-12-05 12:38:37 +03:00
AlexVinS
3f79d001c1
Fix subObject identification
2015-12-05 12:38:36 +03:00
AlexVinS
b56b7017ba
Added stubs for some Map objects serialization
2015-12-05 12:38:35 +03:00
AlexVinS
6977fc3a14
Move test filesystem creation to global fixture
2015-12-05 12:37:37 +03:00
AlexVinS
e7359c9a36
Serialize tempOwner
2015-12-05 12:37:35 +03:00
AlexVinS
8a979d016f
ObjectTemplate serialization
...
(+) generated map displayed correctly in editor
2015-12-05 12:36:44 +03:00