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

3866 Commits

Author SHA1 Message Date
Andrii Danylchenko
4a1e676399 3095 - fix campaign transition 2021-06-18 20:57:07 +03:00
Dmitry Orlov
8b08973283 Fix: ID-collisions when processing large mods collections 2021-04-25 15:07:06 +03:00
kdmcser
10dc6922de refactor code: change code style and add some comments 2021-04-10 23:23:58 +08:00
kdmcser
3049c4b70e fix bug: may load mod before dependeny 2021-04-04 21:54:00 +08:00
Andrey Filipenkov
bc1d99431d fix boost.locale crash on macOS-arm64 2021-03-05 21:00:33 +00:00
AlexVinS
483a4689ce Fixes for code review issues 2021-02-20 04:57:50 +03:00
Alexander Shishkin
784f6b973b
Apply suggestions from code review
Co-authored-by: Andrii Danylchenko <danilchenko.andrij@gmail.com>
2021-02-20 02:31:00 +03:00
Alexander Shishkin
d74127cb84
Update lib/ScriptHandler.cpp
Co-authored-by: Andrii Danylchenko <danilchenko.andrij@gmail.com>
2021-02-20 02:04:10 +03:00
AlexVinS
ec6f7b88fe !?OB WIP 2021-02-16 13:32:18 +03:00
AlexVinS
a59e12ca5f tweaks 2021-02-15 15:03:32 +03:00
AlexVinS
ecaa9f5d0b Entities redesign and a few ERM features
* Made most Handlers derived from CHandlerBase and moved service API there.
* Declared existing Entity APIs.
* Added basic script context caching
* Started Lua script module
* Started Lua spell effect API
* Started script state persistence
* Started battle info callback binding
* CommitPackage removed
* Extracted spells::Caster to own header; Expanded Spell API.
* implemented !!MC:S, !!FU:E, !!FU:P, !!MA, !!VR:H, !!VR:C
* !!BU:C, !!BU:E, !!BU:G, !!BU:M implemented
* Allow use of "MC:S@varName@" to declare normal variable (technically v-variable with string key)
* Re-enabled VERM macros.
* !?GM0 added
* !?TM implemented
* Added !!MF:N
* Started !?OB, !!BM, !!HE, !!OW, !!UN
* Added basic support of w-variables
* Added support for ERM indirect variables
* Made !?FU regular trigger
* !!re (ERA loop receiver) implemented
* Fixed ERM receivers with zero args.
2021-02-14 19:05:43 +03:00
Alexander Shishkin
11bb46780a
Merge pull request #678 from MikeLodz/develop
Fixes mantis tickets 2899 and 2984 (bugged hero spell specialties)
2021-02-14 11:22:23 +03:00
MikeLodz
fe9412f845 hero specialty fixes continuation: changes requested during code review 2021-02-13 16:02:42 +01:00
Alexander Shishkin
6055747dc1
Merge pull request #681 from ShubusCorporation/do/fix/hero_classes_initial_values
Fix: Some map objects sometimes do not increment some primary skills of some heroes
2021-02-13 03:51:31 +03:00
Dmitry Orlov
55b3f0b24c Fix: Map objects sometimes do not increment primary skills for some heroes 2021-02-13 00:24:14 +03:00
Dmitry Orlov
2afdd4ed4c Fix: error in mods resolving routine 2021-02-09 23:14:42 +03:00
MikeLodz
38efbb345e Fixes mantis tickets 2899 and 2984 (bugged hero spell specialties)
- stoneskin/haste/prayer/weakness: didnt work because there were 2 bonus objects in buffer and they were filtered out as a possible duplicate (BattleInfo::addOrUpdateUnitBonus). it was fixed by making them a single bonus.
- disrupting-ray and weakness: had opposite effect, because of missing negation
- added a new specialty types: SPECIAL_ADD_VALUE_ENCHANT and SPECIAL_FIXED_VALUE_ENCHANT. this is to make possible specialties like Aenin (fixed specialty value added to spell value) and Melody (fixed value for spell regardless of anything). These specialties can be used in mods with any heroes.
- slayer spell effect calculations was fixed to include hero Coronius-style specialty.
- finally fixed description for Labetha Conflux hero, this is a OH3 bug described here https://heroes.thelazy.net/index.php/Labetha
Changes were tested and work as intended.
commit was made in cooperation with modder Misiokles
2021-02-08 23:58:12 +01:00
Alexander Shishkin
db1f9a15b0
Merge pull request #675 from ShubusCorporation/do/fix/mod_system_and_interface_bugs
Fixed: Mods dependency issues leading to hanging & 'Restart Scenario' button functionality
2021-02-08 07:32:09 +03:00
Andrii Danylchenko
ade84699b0 found a bug in code where AI can change client gamestate directly causing sorting crash 2021-01-30 17:29:49 +02:00
Dmitry Orlov
98fdf909e8 Fix: Hanging on start up if mod dependency is not resolved' 2021-01-20 11:23:58 +03:00
Dmitry Orlov
8cd1af6998 Fix: Siege crashes when creature on the archer's tower is not a shooter 2021-01-17 15:02:58 +03:00
Dmitry Orlov
854a2e6c39 Feature: Mods system improvement, Part III. Bunusing buildings customization. 2021-01-14 01:02:13 +03:00
Dmitry Orlov
ef6220ebec Fix: Creature resolution failed when mod is in the custom directory 2020-12-13 03:33:28 +03:00
Alexander Shishkin
6bf0bea286
Merge pull request #666 from ShubusCorporation/do_feature_lodestar
Lodestar Grail should work.
2020-12-12 13:05:48 +03:00
Dmitry Orlov
8f331dce31 Feature: Lodestar Grail should work. 2020-12-10 04:05:37 +03:00
Andrii Danylchenko
3614330b3d moat bypass when no targets to attack 2020-12-02 19:40:24 +02:00
Andrii Danylchenko
ea073c81d3 2184 - fix battlefield corners unreachable for 2 hex units 2020-11-28 14:14:13 +02:00
Andrii Danylchenko
211a993c44 Fix obstacles escaping for twohex creatures 2020-11-22 08:57:28 +02:00
Andrii Danylchenko
af192b8efe Try fix bypassing destroyed fort drawbridge 2020-11-21 22:09:27 +02:00
Dmitry Orlov
39de2f6435 Fix: Morale bonus should be shown correctly 2020-11-11 22:43:40 +03:00
Dmitry Orlov
d6a4767865 Mod system improvement: Patch 2 2020-10-25 01:04:34 +03:00
Dmitry Orlov
3cb0dfb143 Fix: RMG issues: 1) hota 2) assertions 2020-10-25 01:03:32 +03:00
Dmitry Orlov
b25baf66be Fix level up crashes: 1) Crash on double level up. 2) Crash on custom class level up. 2020-10-19 22:39:57 +03:00
Dmitry Orlov
643cc00db6 Mod system improvement: Special buildings should work in the modders towns. Part II 2020-10-19 22:38:06 +03:00
Dmitry Orlov
934c4e511d Special buildings support : Patch 1 2020-10-15 15:03:01 +03:00
Dmitry Orlov
195fb8ff41 Mod system improvement Part I : Fix content losing after deserialization 2020-10-10 00:31:23 +03:00
Dmitry Orlov
bf07cd0ad9 Mod system improvement Part I : Old saves support & MSVS build fix 2020-10-07 15:12:32 +03:00
Dmitry Orlov
6a7296fbe9 Mod system improvement Part I : Fix redefined content handler assertion 2020-10-07 12:35:12 +03:00
Dmitry Orlov
f4816b0824 Mod system improvement Part I : Special buildings should work in the modders towns 2020-10-07 12:35:11 +03:00
John Bolton
c61bae4060 Fixed RETURN_IF_BATTLE(). Undid disabled warnings. Fixed indentation. 2020-10-05 16:28:28 -07:00
John Bolton
aee51ecc27
Update lib/CCreatureHandler.cpp
Undid change to type.

Co-authored-by: Alexander Shishkin <alexvins@users.noreply.github.com>
2020-10-05 16:15:52 -07:00
John Bolton
d7e82c1087 Fixed a bad fix. Fixed more warnings.
These warnings have not been fixed because the are legitimate and/or I don't know how to fix them:

test\googletest\googletest\include\gtest/gtest-printers.h(888,43): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED.
lib\serializer\JsonSerializeFormat.h(523,26): warning C4244: 'argument': conversion from 'type1' to 'type2', possible loss of data
include\boost/iostreams/positioning.hpp(96,15): warning C4996: 'std::fpos<_Mbstatet>::seekpos': warning STL4019: The member std::fpos::seekpos() is non-Standard, ...
source\lib\filesystem\FileStream.h(39,69): warning C4910: 'boost::iostreams::stream<FileBuf,std::char_traits<char>,std::allocator<char>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation
include\boost/optional/optional.hpp(274,53): warning C4244: 'argument': conversion from 'T' to 'T', possible loss of data
client\widgets\../gui/SDL_Extensions.h(112,14): warning C4244: 'initializing': conversion from 'type1' to 'type2', possible loss of data
client\CServerHandler.cpp(421,24): warning C4834: discarding return value of function with 'nodiscard' attribute (see https://bugs.vcmi.eu/view.php?id=3144)
client\CVideoHandler.cpp(130,25): warning C4996: 'AVStream::codec': was declared deprecated
2020-10-04 16:26:45 -07:00
John Bolton
a05ae78e67 Fixed lots of warnings.
Disabled the following (for MSVC only) that couldn't (or shouldn't) be fixed.

4003: not enough actual parameters for macro 'identifier'
4250: 'class1' : inherits 'class2::member' via dominance
4251: 'type' : class 'type1' needs to have dll-interface to be used by clients of class 'type2'
4275: non dll-interface class 'type1' used as base for dll-interface class 'type2'
2020-10-04 02:20:18 -07:00
John Bolton
6d8f1e4530 Fixed incorrect usage of const std::shared_ptr. Resolves 0003142.
Replaced const TBonusListPtr with TConstBonusListPtr where necessary
Replaced const std::shared_ptr<T> with std::shared_ptr<const T> where necessary.
Removed superfluous use of const.
Replaced const std::shared_ptr<T> with const std::shared_ptr<T> & in function parameters and ranged for-loops.
2020-09-30 22:56:28 -07:00
Sergey Nizovtsev
c7f76e8e0f lib: fix CPathfinder build error on GCC 10.2
CPathfinder constructs boost::fibbonacci_heap handle manually using
private primitives. This stopped working with newer GCC and boost.
Replace this with proper handle_type from container's public typedef.
2020-09-30 00:28:07 +03:00
Dmitry Orlov
ae3b8e4916 Travis errors & warnings fix 2020-09-28 16:39:55 +03:00
Dmitry Orlov
38fd05f655 Minor fix: apply Monday bonuses to heroes who have slept overnight 2020-09-28 01:32:33 +03:00
Dmitry Orlov
30426b6a44 Fix: Random map generator crashes when nativeTerrain is not specified in the mod 2020-09-24 10:10:32 +03:00
Dmitry Orlov
5e0023704b Fix PQ issues while calculating paths 2020-09-22 00:19:40 +03:00
laikh
edc1d06f4e Random Map Generator Option: Allow having more computer only players than human/computer players
Remove unused variable humanPlayersCount and function getHumanOnlyPlayerCount()
2020-07-07 19:45:53 +08:00
Andrii Danylchenko
d782ee39df hacks to optimize a few bonus requests 2020-07-04 17:52:22 +03:00
Alexander Shishkin
cc75b859d4
Merge pull request #609 from viciious/improve_battleai
Improve battle AI
2020-05-25 05:50:40 +03:00
Victor Luchits
f68b449e5e More formatting 2020-05-17 11:21:49 +03:00
Victor Luchits
b4025fa1d6 More formatting 2020-05-16 16:14:58 +03:00
Victor Luchits
618d521407 Fix CMP_stack to follow strict weak ordering of elements 2020-05-11 18:14:36 +03:00
Victor Luchits
be10694b73 Some changes to make the battle AI smarter
- the AI will now consider attacking multiple units
- the preferred strategy now is to minimize collateral damage rather than to maximize damage to enemy units alone
- attacks that block enemy shooters will be prioritized over other attacks in cases when shooters have weaker melee attacks
2020-05-05 17:53:03 +03:00
Victor Luchits
d6e6182e65 Close the target file in CLogFileTarget's destructor 2020-05-05 15:25:02 +03:00
Victor Luchits
0fe71b7c44 Add CBasicLogConfigurator::deconfigure method to clear the global log targets 2020-05-04 18:56:15 +03:00
Toney Sui
dca5d86e7a
Fix bug: LandMine is not exploding to enemies. (#630)
* The reason is,

the mine has attribute hidden=true;
when enemy unit moves, the code in BattleInfo.cpp MoveUnit() (line 817) will update the revealed to true;
then in the CGameHandler.cpp handleDamageFromObstacle() (line 4846) is checking , and the condition battleIsObstacleVisibleForSide() will return true, so the effect will not be triggerred.

Resolution:
1. Remove the "revealed=true" in moveUnit(), and in handleDamageFromObstacle, remove the "const" restrict for obstacle, and then update revealed to true;
2. After the takeDamage function, add a pack "BattleObstaclesChanged" to update the obstacle to be "revealed=true".
2020-02-12 20:12:12 +03:00
Andrii Danylchenko
42cab00c38 Fix quest handling 2020-01-31 00:48:01 +02:00
Alexander Shishkin
00de1fd734
Merge pull request #625 from Toneyisnow/toneyisnow/Battle_Clone_Effect
Implement the Clone Effect in battle.
2020-01-27 13:42:58 +03:00
toneyisnow
0f3dabab9a Initialize the change:
1. Make color shifter for CAnimation, and use that in the clone effect.
2. Update the original position of the cloned object.
2020-01-25 01:21:26 -08:00
krkos
ac81d0f7b4 Fix build with Boost versioni >= 1.70 (#615) 2020-01-21 11:55:28 +03:00
toneyisnow
8bfe510e9c Fix one space issue. 2020-01-19 04:12:59 +00:00
toneyisnow
a1ea72d84a Update according to comments. 2020-01-19 04:12:59 +00:00
toneyisnow
0fe3c0a569 Initialize the change. 2020-01-19 04:12:59 +00:00
Arseniy Shestakov
905d31b8d7 CModHandler: remove hardcoded wog mod integrity check
Now we have unpacked WoG mod version that dont need specific data files.
As far as I can tell only texts for commanders not going through proper mod system
2020-01-15 18:20:51 +00:00
Dydzio
f8c294ad0b Fix attack cursor on guarded visitable object 2019-07-14 13:25:06 +03:00
AlexVinS
e7bced112c Fixed https://bugs.vcmi.eu/view.php?id=3059 2019-06-09 22:46:29 +03:00
Dydzio
54550b50de Update VS files to 2019, partially fix test project 2019-06-09 17:28:55 +02:00
Dydzio
2f15ca9406 Do not build pseudo-buildings explicitly with events 2019-06-04 22:29:07 +02:00
AlexVinS
1f2ee843aa [C::B] Switched to boost shared linkage 2019-05-30 20:55:40 +03:00
Alexander Shishkin
21f74a9968
Merge pull request #590 from Ewilhan/fixCombatOrder
Fixed Battle Creature Ordering
2019-05-29 17:51:52 +03:00
Alexander Shishkin
40d65b40a2
Merge pull request #591 from dydzio0614/ShipyardCrashFix
Spawn ship placed outside map if it has visitable position inside map
2019-05-21 09:47:51 +03:00
Dydzio
cd78779d9c Remove false warning indicating something is wrong 2019-05-19 12:22:41 +02:00
Dydzio
618cb29ae7 Spawn ship placed outside map if it has visitable position inside map 2019-05-18 20:57:33 +02:00
Ewilhan
cba94f8bb3
Code style
Co-Authored-By: Alexander Shishkin <alexvins@users.noreply.github.com>
2019-05-18 18:37:02 +02:00
Ewilhan
023d6c88fd Code style and improved readability 2019-05-17 09:34:59 +01:00
Ewilhan
ab1c598d4e Fixed Battle Creature Order
Fixed the messy creature order. It now follows correctly all creature ordering rules.
2019-05-16 14:41:02 +01:00
Alexander Shishkin
49404bfa24
Merge pull request #579 from vcmi/dydzio0614-patch-1
Hackfix crash on "victory by town capture"
2019-05-04 10:35:13 +03:00
Dydzio
e50efdc279 Creature spellcast refactor (#569)
* Move some logic to lib
* Mouse action priority queue enhancement
* Get rid of siegehandler dependency
* Improve AI offensive spellcasting
* CBattleInterface cleanup
2019-05-04 06:42:55 +03:00
Ewilhan
91177c412c Fixed Crypt/Pyramid double visit sound.
Removed sound call from CBank to avoid two sounds from being launched at same time. Gave priority to JSON files.
2019-05-02 23:46:18 +01:00
Dydzio
4a21841ce2 Check other players startinfo for random hero pick (#580) 2019-04-29 08:45:30 +03:00
Dydzio
a79f11bed2
Hackfix crash on "victory by town capture" 2019-04-23 20:04:07 +02:00
Michał Kalinowski
97a8380d07 Simplification fixes
Return statement fixes
2019-03-31 09:43:14 +03:00
Michał Kalinowski
ac6b477aa2 Simplify statements
-Simplify return statements across the code
2019-03-31 09:43:14 +03:00
Michał Kalinowski
ec536e613c CMake more transitive
-Moving AIs cmake to target focusing code
-Beign explicit when link libraries
2019-03-28 16:56:51 +03:00
Dydzio
df11e851ef Acid breath should have absolute dispel immunity 2019-03-25 02:19:07 +03:00
Alexander Shishkin
34f934370b
Merge pull request #565 from dydzio0614/moralewaitfix
Fix lack of unit action with morale+wait
2019-03-24 10:49:49 +03:00
Alexander Shishkin
87f216ac0d
Merge pull request #560 from dydzio0614/bug2814
Fix for arrow cart at bank fights
2019-03-24 10:20:58 +03:00
Dydzio
9e4619c08d Fix lack of unit action with morale+wait 2019-03-23 23:51:50 +01:00
Dydzio
9e5abeec35 Fix for arrow cart at bank fights 2019-03-22 00:02:32 +01:00
Alexander Shishkin
549d8c97df
Merge pull request #557 from dydzio0614/CrystalDragonAbility
Fix crystal dragon ability to match H3
2019-03-21 17:02:20 +03:00
Dydzio
53f4ba6464 Fix crystal dragon ability to match H3 2019-03-17 19:48:47 +01:00
Dydzio
36cb9f11c4 Hardcoded feature: no random week/month effects 2019-03-17 18:27:05 +01:00
Dydzio
5718048752 Fix magic school gold payment 2019-03-11 18:56:05 +01:00
AlexVinS
1855af9ed3 Fixed error handling in TownPortalMechanics::applyAdventureEffects 2019-02-23 20:51:03 +03:00
AlexVinS
9311966706 [C::B] Switch to MinGW 7.3 2019-02-19 14:59:10 +03:00
Dydzio
aafad18121 Style fixes 2019-02-12 19:47:19 +01:00
AlexVinS
14e294553d Enabled GIF format for images (not GIF-animations) as requested by user. 2019-02-07 03:23:14 +03:00