1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-16 10:19:47 +02:00
Commit Graph

6262 Commits

Author SHA1 Message Date
Ivan Savenko
fbdceb4f71 Fix crash on using two mods that add battlefield with same identifier 2024-01-05 15:58:25 +02:00
Ivan Savenko
2d8692c142 Throw "resource not found" instead of crashing on invalid query 2024-01-04 23:58:28 +02:00
Ivan Savenko
edb2ecd751 Fix possible overflow errors on leveling up beyond int64_t limit
- added separate giveExperience method instead of weird changePrimSkill
- experience is now always used in form of int64_t
- max supported level reduced from 201 to 197 to fit into int64_t
- fixed undefined behavior in experience calculation
2024-01-04 23:57:36 +02:00
Ivan Savenko
ceea341bb0 Fix crash on attempt to dereference invalid subtype in bonus 2024-01-04 23:54:35 +02:00
Ivan Savenko
63a2ed7cf8 Replace vector[] with range-checking vector.at() 2024-01-04 23:52:57 +02:00
Ivan Savenko
3b66701ffe Ignore illegal 'index' entries in mods 2024-01-04 23:52:01 +02:00
Ivan Savenko
ef5686634d Removed no longer used code 2024-01-04 23:48:58 +02:00
Ivan Savenko
55bd164f1c Unified identifiers to entity conversion code 2024-01-04 23:47:44 +02:00
Dydzio
7283a4861e Initial version of ACCURATE_SHOT implementation 2024-01-04 22:27:51 +01:00
Joakim Thorén
30b851da7c Merge branch 'develop' of https://github.com/vcmi/vcmi into windows_mingw_cmake_presets 2024-01-01 22:53:19 +01:00
Dydzio
fbd988df42 Bit better documentation wording 2024-01-01 21:19:25 +01:00
Dydzio
7cf7543747 Configurable ferocity bonus 2024-01-01 21:16:38 +01:00
Dydzio
898b8f3c71 Add initial version of Ferocity ability (for Ayssids) 2024-01-01 19:58:32 +01:00
Joakim Thorén
8846fba1fc Fixes compilation error "ResourceSet.h:33:21: error: function 'ResourceSet::ResourceSet()' definition is marked dllimport" when building with g++ 12.1.0 2023-12-30 00:29:31 +01:00
Laserlicht
cb9c4bbaf0 unlimited replay option 2023-12-28 20:48:19 +01:00
Laserlicht
a3e27b859e extra option tab 2023-12-28 19:41:01 +01:00
Joakim Thorén
01f602ab92 Fixes warning about usage of unused variable 2023-12-27 22:25:29 +01:00
Laserlicht
207b5a2ed0
backwards compatibility 2023-12-27 20:44:32 +01:00
Laserlicht
c471b626a2
code review 2023-12-27 15:26:08 +01:00
Laserlicht
fc4827c89c
option for allowing cheats 2023-12-27 14:39:35 +01:00
Ivan Savenko
bb6179d05e
Merge pull request #3391 from vcmi/master
Merge master -> develop
2023-12-25 13:00:17 +02:00
Ivan Savenko
4835a1f695 Fix possible crash on abandoned mine with no valid resources 2023-12-24 22:05:47 +02:00
Ivan Savenko
e77651d3f3
Merge pull request #3377 from dydzio0614/commander-skills-fix
Commander skills fix
2023-12-24 13:33:48 +02:00
Ivan Savenko
2b495a9679
Merge pull request #3379 from IvanSavenko/fix_genie_spellcasting
Fix genie spellcasting
2023-12-24 13:29:05 +02:00
Ivan Savenko
5fe5d81729
Merge pull request #3376 from IvanSavenko/uninitialized_fixes
Fix uninitialized memory access
2023-12-24 13:19:17 +02:00
Tomasz Zieliński
ebf2055afc - Unban hero if related Prison is destroyed during map generation
- Move prison counter to PrisonHeroPlacer
2023-12-24 09:36:26 +01:00
Andrey Filipenkov
3074f8cb89
fix typo 2023-12-24 09:58:48 +03:00
Tomasz Zieliński
b0f0e9caa8 Merge remote-tracking branch 'origin/beta' into random_prison_distributor 2023-12-24 06:46:18 +01:00
Ivan Savenko
85de3143ff Fixed Genie spellcasting logic to account for spell immunities 2023-12-24 01:13:19 +02:00
Ivan Savenko
08a4b67cd7
Merge pull request #3372 from IvanSavenko/bugfixing
[1.4.2] Bugfixing
2023-12-23 22:05:39 +02:00
Ivan Savenko
3e9133995f Fix uninitialized member 2023-12-23 21:31:29 +02:00
Ivan Savenko
7732f39556 Fix potential uninitialized access - setupSteps depends on not yet
initialized members
2023-12-23 21:31:17 +02:00
Dydzio
9e9849b741 Fix commander ability accumulation, change commander ability bonus 2023-12-23 20:16:29 +01:00
Ivan Savenko
72980a3909 Fix crash on accessing jsonnode with different type in release builds 2023-12-23 18:12:18 +02:00
Ivan Savenko
ec5fcb3e7c Do not ignore 'canRefuse' flag for select mode 'first' and 'random' 2023-12-23 00:35:51 +02:00
Ivan Savenko
20ede710c2
Merge pull request #3362 from IvanSavenko/terrain_decorations
Terrain decorations level
2023-12-22 23:39:32 +02:00
Ivan Savenko
bbbf676d38 spaces -> tabs 2023-12-22 23:22:33 +02:00
Ivan Savenko
9bf1e72a19
Merge pull request #3346 from IvanSavenko/better_timers
[1.4.2] Better timers
2023-12-22 23:19:20 +02:00
Ivan Savenko
fe5918ebf5 Clients will now switch to turn options when host does so 2023-12-22 18:40:28 +02:00
Ivan Savenko
da9c0feebc Reworked timer widget to show timers for all players 2023-12-22 18:40:28 +02:00
Ivan Savenko
8916ae7bcd Fix water generation, try to improve decoration level a bit 2023-12-22 18:35:38 +02:00
Ivan Savenko
19e851ddff Implemented configurable level of decorations for terrains 2023-12-22 17:41:30 +02:00
Ivan Savenko
c8d024ae11
Merge pull request #3354 from dydzio0614/antimagic-garrison
Add missing antimagic functionality to antimagic garrisons
2023-12-22 16:33:39 +02:00
Ivan Savenko
48a8826aa1
Merge pull request #3308 from vcmi/improve_treasure_placement
Improve treasure placement
2023-12-22 16:32:59 +02:00
Ivan Savenko
4ed283a357
Merge pull request #3359 from IvanSavenko/crashfixes
Crashfixes
2023-12-22 15:17:59 +02:00
Ivan Savenko
ec89e7fa62 Move UNLIMITED_MOVEMENT bonus to very end of the list 2023-12-22 14:20:32 +02:00
Ivan Savenko
171044359d Fixed crash on connection to 1.4.1 game 2023-12-22 14:03:05 +02:00
Ivan Savenko
31cef2e7d7 Attempt to fix crash on rewardable configuration 2023-12-22 14:03:05 +02:00
Dydzio
39c3db04f3 Add missing antimagic functionality to antimagic garrisons 2023-12-21 18:09:33 +01:00
Tomasz Zieliński
f9e5d73014 Missed optimization case 2023-12-21 17:56:21 +01:00
Tomasz Zieliński
d6336d7c45 Reverted change that seems to cause regression 2023-12-21 17:55:08 +01:00
Ivan Savenko
27d2fc0a13
Merge pull request #3186 from SoundSSGood/quick-backpack-part1
Quick backpack window
2023-12-21 17:10:15 +02:00
Tomasz Zieliński
d4216a9191 Fixed routing roads behind Sub Gates, Monoliths and Mines 2023-12-21 13:22:23 +01:00
Tomasz Zieliński
d5f9de5beb Definitive solution for Corpse 2023-12-21 12:29:45 +01:00
Tomasz Zieliński
e22f6dd07e Fix for choosing most specific templates. Also seems to fix the Prisons. 2023-12-21 09:58:39 +01:00
SoundSSGood
e5c532beb4 gesture for quick backpack window 2023-12-20 16:55:38 +02:00
Dydzio
fe39faf36c Add UNTIL_OWN_ATTACK bonus duration and use for berserk 2023-12-19 19:52:40 +01:00
SoundSSGood
5099b52a4f Quick backpack. Spells on scrolls view 2023-12-19 19:01:56 +02:00
Tomasz Zieliński
ad82eff225 Final and perfect treasue nd obstacle density 2023-12-19 09:24:43 +01:00
Tomasz Zieliński
916aedb13c Obvious fix 2023-12-19 09:24:01 +01:00
Tomasz Zieliński
bbb3e701ab Reverted incorrect logic. Likely the fix for hota Prison. 2023-12-18 17:18:13 +01:00
Tomasz Zieliński
9b12f54972 Compile fix 2023-12-18 14:49:05 +01:00
Tomasz Zieliński
7f7df93e12 Style fix 2023-12-18 14:25:07 +01:00
Tomasz Zieliński
80ea1826d3 Style fix 2023-12-18 14:02:55 +01:00
Tomasz Zieliński
038bcd32f6 Lightweight int3 hash function 2023-12-18 13:55:54 +01:00
Tomasz Zieliński
c701d42781 Multiple optimizations to avoid copying and allocating tiles for rmg::Area 2023-12-18 13:52:03 +01:00
Ivan Savenko
f40e711721
Merge pull request #3340 from IvanSavenko/crashfixes3
Crashfixes
2023-12-18 13:40:13 +02:00
Ivan Savenko
3f089cce78
Merge pull request #3341 from IvanSavenko/fix_extraction_progress
Fix extraction progress display for mod installation
2023-12-18 13:34:37 +02:00
Ivan Savenko
44a79c1ff4
Merge pull request #3327 from Laserlicht/datetime
date time format
2023-12-18 13:21:01 +02:00
Tomasz Zieliński
985a2682ae Place Monoliths at max distance in Junction zone 2023-12-18 11:12:52 +01:00
Tomasz Zieliński
bd5361a108 Possible fix to https://github.com/vcmi/vcmi/issues/3334 2023-12-18 10:55:40 +01:00
Tomasz Zieliński
24f74875ef Do not fractalize tiles near the edge of the map to avoid paths adjacent to map edge 2023-12-18 08:14:48 +01:00
Ivan Savenko
74dedc4cc5 Converted ZipArchive namespace into stateful class 2023-12-18 00:33:32 +02:00
Ivan Savenko
acc09ee51a
Merge pull request #3266 from Laserlicht/puzzle_cheat
implement missing OH3/HDmod cheats
2023-12-17 22:16:22 +02:00
Ivan Savenko
496bca1a59 Attempt to track down mystery crash on Android 2023-12-17 20:09:28 +02:00
Ivan Savenko
6a357aaea6 Fix empty names for mods without set name (e.g. core mod) 2023-12-17 19:44:45 +02:00
Ivan Savenko
84d9078bd9 Throw exception instead of failing with SIGSEGV 2023-12-17 19:44:45 +02:00
Ivan Savenko
dd88220b7c Fixed potentially uninitialized class member 2023-12-17 19:44:45 +02:00
Laserlicht
9299eaed36
code review 2023-12-16 21:10:27 +01:00
Laserlicht
d91aa8baca
fix russia 2023-12-16 19:26:41 +01:00
Laserlicht
56562ad8dc date time format 2023-12-16 18:57:38 +01:00
Ivan Savenko
b6cc26f853 Fix build 2023-12-16 14:29:49 +02:00
Ivan Savenko
d187309eed Fixed typo - different type was used to select ID and subID 2023-12-16 13:46:29 +02:00
Ivan Savenko
1acab80fdc Use unique_ptr instead of raw pointers to attempt to fix crash on free 2023-12-16 13:46:29 +02:00
Ivan Savenko
aadfde27bc Throw exception instead of crash on accessing non-existing setting 2023-12-16 13:46:29 +02:00
Ivan Savenko
9ff00d75dc Do not crash if Scholar is not a rewardable object 2023-12-16 13:46:29 +02:00
Tomasz Zieliński
339627731c Fixes 2023-12-15 18:26:59 +01:00
kirby1
5888a20920 Add OpenBSD defines 2023-12-14 10:29:42 +03:00
Tomasz Zieliński
99870be24c Tiny optimizations to avoid copies 2023-12-13 22:20:23 +01:00
Tomasz Zieliński
d31789e745 Extra cache for search area 2023-12-13 22:13:42 +01:00
Tomasz Zieliński
bfea30e318 Optimization tweaks 2023-12-13 22:12:16 +01:00
Tomasz Zieliński
8602a14e6f Minor optimizations 2023-12-13 22:10:39 +01:00
Tomasz Zieliński
b9193ecb73 Do not calculate area for invalid positions 2023-12-13 22:06:47 +01:00
Ivan Savenko
3bd85d417e Avoid crash on invalid building identifier 2023-12-13 17:23:45 +02:00
Ivan Savenko
664da58d4f Use MetaString in place of boost::format to avoid exceptions 2023-12-13 17:23:40 +02:00
Ivan Savenko
337e090ee9 Avoid crash in case if Witch Hut or Shrine is not a rewardable object 2023-12-13 16:52:44 +02:00
Tomasz Zieliński
2d3b8ee866 Increased amount of generated treasure piles without increasing density 2023-12-12 12:50:27 +01:00
Tomasz Zieliński
e5f60f063c - Check full object area for minimum distance requirement
- Add option to optimize both for max distance and custom weight
2023-12-12 07:40:54 +01:00
Ivan Savenko
9385ae76c2 Fix reading of dimensions of h3 map objects 2023-12-11 21:15:46 +02:00
Ivan Savenko
543ee597b8 Fix localization-related error messages 2023-12-11 18:23:52 +02:00
Ivan Savenko
a3786f3357
Merge pull request #3304 from IvanSavenko/handle_unknown_objects
Handle unknown objects
2023-12-11 18:23:28 +02:00
Ivan Savenko
afff10aab0
Merge pull request #3303 from IvanSavenko/artifact_randomization_fix
Remove allowed artifacts list from arthandler
2023-12-11 18:23:19 +02:00
Ivan Savenko
828077c18b Added special object "nothing" to handle unknown map objects on some
custom maps
2023-12-11 17:25:19 +02:00
Ivan Savenko
7ffe014d6b Remove allowed artifacts list from arthandler
1. Handlers should not contain non-const game state data
2. This field was duplicating same field in CMap
3. Due to removal of VLC serialization, this field is not updated on map
load leading to issues with artifact randomization
2023-12-11 15:06:04 +02:00
Tomasz Zieliński
493acd9b75 One little fix for inconsistent indexes 2023-12-11 08:28:53 +01:00
Tomasz Zieliński
109139c913 Build fix 2023-12-11 08:27:57 +01:00
Tomasz Zieliński
8a93b1083f Merge remote-tracking branch 'origin/beta' into random_prison_distributor 2023-12-11 07:49:43 +01:00
Tomasz Zieliński
8fe6a103cd - Move Hero / Prison distribution to separate modificator
- Protect rolling and banning hero with mutex
2023-12-11 07:37:23 +01:00
Ivan Savenko
6fe8ed7a03
Merge pull request #3127 from vcmi/fix_random_object_templates
Use the object templates with least terrains allowed
2023-12-10 23:11:20 +02:00
Ivan Savenko
fa11b52a6c
Merge pull request #3287 from vcmi/fix_template_validation
Fix template validation
2023-12-10 22:47:23 +02:00
Ivan Savenko
933598dd91
Merge pull request #3273 from vcmi/fix_passable_hero
Fix passable hero
2023-12-10 22:45:33 +02:00
Ivan Savenko
8bf05a8f77
Merge pull request #3272 from vcmi/fix_rmg_monoliths
Fix rmg monoliths
2023-12-10 22:44:05 +02:00
Ivan Savenko
a1a317aef4
Merge pull request #3280 from IvanSavenko/hotfix
[1.4.1] Hotfixes
2023-12-10 22:43:05 +02:00
Ivan Savenko
7187ba2d79 Fix crash on visiting Seer Hut with no reward 2023-12-10 19:48:44 +02:00
Ivan Savenko
b62e801530 Fix uninitialized variable in Seer Huts 2023-12-10 19:48:27 +02:00
Ivan Savenko
65721123a1 Partial fix for Coronius specialty bug 2023-12-10 19:17:58 +02:00
Ivan Savenko
c0572b061a Fix compile on FreeBSD 2023-12-10 19:17:24 +02:00
Ivan Savenko
3b6d3dee69 Slayer spell should only affect creatures with KING bonus 2023-12-10 19:17:09 +02:00
Andrii Danylchenko
48f0da1fdc #3290 - skip bad teleports (exit in rocks) 2023-12-10 18:38:54 +02:00
Ivan Savenko
999db2ed78 Avoid boost::format that throws exception on invalid format string 2023-12-10 16:37:58 +02:00
Ivan Savenko
ee7bd87b8d Fix crash on losing mission-critical hero in battle 2023-12-10 16:14:01 +02:00
Tomasz Zieliński
d0e100c1bb Fix unused variable 2023-12-10 09:50:25 +01:00
Tomasz Zieliński
91ebac3c2e Fix incorrect check 2023-12-10 09:46:20 +01:00
Ivan Savenko
2de7a3939a Fix text identifier for generic signs without custom text 2023-12-09 18:09:57 +02:00
Ivan Savenko
2261298d09 Revert U-turns block. Actually possible in H3 and has unintended side
effects
2023-12-09 18:09:38 +02:00
Ivan Savenko
df78c9c6f1 Added workaround for crashes with outdated mods 2023-12-09 18:08:22 +02:00
Tomasz Zieliński
d15e9f886c Cleanup 2023-12-09 15:35:32 +01:00
Tomasz Zieliński
134f78113e Remove unneccessary code 2023-12-09 15:20:11 +01:00
Tomasz Zieliński
cef25cca03 Fix for starting hero being passable 2023-12-09 14:59:09 +01:00
Tomasz Zieliński
0f23dde85d Fixed crash due to incorrect monolith id scopes 2023-12-09 14:25:03 +01:00
Laserlicht
a24e78a210 real unlimited movement (like in OH3) 2023-12-09 13:42:09 +01:00
Laserlicht
4bad88f141
implement luck and morale cheats from OH3 2023-12-08 19:20:53 +01:00
Ivan Savenko
c9de10ea74
Merge pull request #3259 from vcmi/fix_corpse
Fix corpse
2023-12-07 23:55:07 +02:00
Ivan Savenko
500f945222
Update lib/mapObjectConstructors/AObjectTypeHandler.cpp 2023-12-07 22:48:51 +02:00
Tomasz Zieliński
c316087950 Distribute objects among zones in random order 2023-12-07 17:41:41 +01:00
Tomasz Zieliński
7fa01a3497 Fix for randomly banning or exceeding limits of zone objects 2023-12-07 17:41:09 +01:00
Ivan Savenko
edbe25b33a Updated layout and localizations 2023-12-07 16:36:44 +02:00
Tomasz Zieliński
f17d8babc5 Do not route road through the Corpse 2023-12-07 12:57:39 +01:00
Ivan Savenko
653304b004 Implemented accumulating timers, rename creature timer to unit timer 2023-12-07 13:57:16 +02:00
Tomasz Zieliński
5ad682048f Fix 2023-12-06 21:47:20 +01:00
Tomasz Zieliński
69ff1734b0 Use reference 2023-12-06 21:05:27 +01:00
Tomasz Zieliński
6cd19b81dd Working fir for Corpse issue:
- Do not place guard next to blockVis object, if possible
- Do not place two blockVis objects next to each other
2023-12-06 20:49:28 +01:00
Tomasz Zieliński
03fa75c51e Some refactoring, commiting current state after tests 2023-12-06 09:49:41 +01:00
Ivan Savenko
cd5d6a8f77 Fix loading of artifact ID for "transport item" victory condition 2023-12-03 19:45:18 +02:00
Ivan Savenko
a1f4748bbc Fix socket shutdown 2023-12-03 19:44:58 +02:00
Ivan Savenko
773071fee3 Fix AI movement through wandering monsters 2023-12-03 15:58:44 +02:00
Ivan Savenko
be9c7f2099
Merge pull request #3239 from IvanSavenko/pathfinder_fixes
Pathfinder fixes
2023-12-02 12:20:44 +02:00
Ivan Savenko
a7d6068bf6 Do not ignore block-visit objects when computing guardian locations 2023-11-28 19:32:03 +02:00
Ivan Savenko
37d81e916e Fix creature appearance on hota maps 2023-11-28 19:31:38 +02:00
Ivan Savenko
0d6bd0c60a Fix assertion failure in RMG 2023-11-28 16:37:21 +02:00