Ivan Savenko and GitHub
62234fcf92
Merge pull request #5645 from IvanSavenko/changelog_april
...
Updated changelog for 1.7.0
2025-04-27 14:57:04 +03:00
Ivan Savenko
dcdd8f0e85
Updated changelog for 1.7.0
2025-04-27 14:16:39 +03:00
Ivan Savenko and GitHub
4f20bc102b
Merge pull request #5652 from kdmcser/hang_fix
...
Prevent AI from repeatedly swapping the same artifacts
2025-04-27 13:56:11 +03:00
Ivan Savenko and GitHub
3921b9e214
Merge pull request #5650 from kdmcser/limiter
...
fix crash when bonus limiter is empty in OwnerUpdater
2025-04-27 13:38:18 +03:00
Ivan Savenko and GitHub
baae88cf59
Merge pull request #5646 from MichalZr6/necromancy_fix
...
Fix bug when no casualties but 1 skeleton is raised
2025-04-27 13:37:53 +03:00
Ivan Savenko and GitHub
be554f4260
Merge pull request #5641 from kdmcser/chinese_encoding
...
fix Chinese encoding problem in GBK
2025-04-27 13:37:26 +03:00
Ivan Savenko
0b126ebc8b
Merge branch 'vcmi/master' into 'vcmi/develop'
2025-04-25 17:36:11 +03:00
Ivan Savenko and GitHub
a92e29e008
Merge pull request #5647 from vcmi/beta
...
Merge beta -> master
2025-04-24 22:50:03 +03:00
Ivan Savenko and GitHub
a00ec58284
Merge pull request #5644 from IvanSavenko/release_168
...
Release 1.6.8
2025-04-24 20:55:40 +03:00
Ivan Savenko
87975e4ac6
Backport hypnotize fix
2025-04-23 13:09:54 +03:00
Ivan Savenko
4cbc9c4468
Changelog for 1.6.8
2025-04-23 10:50:11 +03:00
Ivan Savenko
883d33b5bf
Version bump to 1.6.8
2025-04-23 10:50:00 +03:00
Ivan Savenko
e0adbb3237
Fix calculating of total cost if hero has non-max amount of points
2025-04-23 10:49:37 +03:00
Ivan Savenko and GitHub
f9c911bd25
Merge pull request #5633 from SoundSSGood/battle-query-fix
...
Fix end of battle for AI
2025-04-17 12:23:35 +03:00
Ivan Savenko and GitHub
a3c0cc9729
Merge pull request #5632 from SoundSSGood/crash-hotfix-visitBattleResultsApplied
...
Hotfix visitBattleResultsApplied
2025-04-16 11:32:01 +03:00
Ivan Savenko and GitHub
ce89a0d21b
Merge pull request #5609 from SoundSSGood/end-of-battle-infowindows
...
End of battle infowindows refactoring
2025-04-15 22:50:35 +03:00
Ivan Savenko and GitHub
204b13fc07
Merge pull request #5608 from Laserlicht/campaigneditor
...
campaign editor
2025-04-15 17:55:13 +03:00
Ivan Savenko and GitHub
74452116d1
Merge pull request #5619 from Laserlicht/commander_health
...
fix health bar for commander
2025-04-15 17:53:42 +03:00
Ivan Savenko and GitHub
8f338db0ec
Merge pull request #5627 from IvanSavenko/bonus_fix
...
Bonus system fixes
2025-04-15 17:50:28 +03:00
Ivan Savenko and GitHub
8400cfcc49
Merge pull request #5628 from GeorgeK1ng/infoWindow_alignFix
...
Info window align fix
2025-04-15 17:50:07 +03:00
Ivan Savenko and GitHub
1b2cd60cc3
Merge pull request #5629 from GeorgeK1ng/haart_munlich
...
Fix Lord Haart vs Sir Mullich
2025-04-15 17:48:59 +03:00
Ivan Savenko
db2e4c5f6d
Include bonus from artifacts to Ballista damage, unify code
2025-04-14 15:50:10 +03:00
Ivan Savenko
1cb5f36ccb
Fix handling of creature-specific limiters in noneOf limiter on hero
...
For example, if hero has specialty that provides primary skill bonuses
with "noneOf" limiter that contains limiter that can only be evaluated
in creature context (such as creature level or native terrain), limiter
itself would evaluate to DISCARD, and then will be inverted to ACCEPT by
noneOf limiter. As result, this would give hero bonus to primary skill
even though it is clearly intended to only target creatures.
This introduces NOT_APPLICABLE limiter decision that is not inverted by
noneOf limiter
2025-04-13 23:31:37 +03:00
Ivan Savenko
83099f9288
Fix crash on initializing off-map hero
2025-04-13 23:15:49 +03:00
Ivan Savenko
38a9dc83ba
Fix bonuses from battlefield not showing up in creature window
2025-04-13 23:15:15 +03:00
Ivan Savenko
6d8bf24f94
Invalidate hero bonuses on moving to another terrain
2025-04-13 22:23:36 +03:00
Ivan Savenko
2b812be9cd
Correctly show results of CreatureTerrainLimiter outside of combat
2025-04-13 22:23:12 +03:00
Ivan Savenko
975d9aedc9
Merge branch 'vcmi/beta' into 'vcmi/develop'
2025-04-13 18:53:54 +03:00
Ivan Savenko and GitHub
3d4ae903d7
Merge pull request #5620 from IvanSavenko/adela_fix
...
Better support for Adela specialty (+new modding functionality for it)
2025-04-13 18:42:23 +03:00
Ivan Savenko
896a7ec88e
Better support for Adela specialty (+new modding functionality for it)
...
Fixes Adela specialty that was apparently broken back in #1518 and
replaced with logic that was clearly not tested - it was neither
functional, nor it was following H3 behavior.
- `HAS_ANOTHER_BONUS_LIMITER` now accepts `null` in place of bonus type,
for cases when limiting is needed by bonus source or bonus subtype. This
allows Adela Bless specialty to always work, irregardless of which
bonuses are provided by Bless.
- Implemented `DIVIDE_STACK_LEVEL` updater that functions same as
`TIMES_STACK_LEVEL`, but it divides bonus value, instead of multiplying
it (to make Adela specialty weaker for high-tier units, as in H3)
- Implemented `TIMES_HERO_LEVEL_DIVIDE_STACK_LEVEL` updater that
combines two existing updaters, to implement `val * heroLevel /
unitLevel` formula needed for Adela specialty
- Removed deprecated `ARMY_MOVEMENT` updater. Its functionality has
already been removed in 1.6.X releases, and it was remaining only as a
placeholder
- Updated modding documentation to account for these changes & to remove
some TODO's
Fixed regression from #777 that could led to either duplicated bonuses
or to multiple application of updaters. It introduced double-recursion -
node parents were gathered recursively, and then bonuses were also
collected recursively within each parent. This created situation where
updater could be applied different number of times. For example, hero
bonus that is propagated to unit in combat could be selected directly,
or via hero->combat unit chain, or via hero->garrison unit->combat unit
chains, leading to different calls to updaters if updater handles
garrison unit node type
2025-04-13 16:24:51 +03:00
Ivan Savenko and GitHub
439c9a7888
Merge pull request #5622 from IvanSavenko/hypno_fix
...
Fix hypnotize spell
2025-04-13 16:21:14 +03:00
Ivan Savenko and GitHub
65fd4d55d9
Merge pull request #5605 from GeorgeK1ng/drag_drop
...
Enable drag & drop for Map Editor
2025-04-12 11:13:22 +03:00
Ivan Savenko and GitHub
f3ca06c3d0
Merge pull request #5593 from kdmcser/limiter
...
make OwnerUpdater not hardcode OppositeSideLimiter
2025-04-12 10:53:31 +03:00
Ivan Savenko and GitHub
56fde609a8
Merge pull request #5616 from IvanSavenko/spellicon_fix
...
Fix loading of spell immunity icons for corresponding bonus
2025-04-12 10:51:02 +03:00
Ivan Savenko and GitHub
0d5e936bc0
Merge pull request #5617 from IvanSavenko/keybinding_fix
...
Use SDL scancodes instead of keycodes for keybindings
2025-04-12 10:50:37 +03:00
Ivan Savenko and GitHub
9f07c13c1e
Merge pull request #5618 from IvanSavenko/battle_fix
...
Fixes for recently reported combat issues
2025-04-12 10:49:48 +03:00
Ivan Savenko
1f70f27b2d
Fix hypnotize spell
...
- Fix testing for Hypnotized status
- Fix handling of three-headed & all-around attack (Cerberi / Hydras)
while hypnotized
2025-04-11 18:01:49 +03:00
Ivan Savenko and GitHub
b518b79505
Merge pull request #5615 from IvanSavenko/locale_fix
...
Fixes to locale/unicode handling
2025-04-11 17:06:11 +03:00
Ivan Savenko
dcb7a9e9f3
Fixes to locale/unicode handling
...
- Fixes crash on opening spellbook (recent regression)
- Fix crash if `haystack` string is shorter than `needle`
- Levenstein distance computation is now case-insensitive
- Text similarity computation now assumes utf-8 strings, not ascii
- Fix corruption of utf-8 string on life drain
2025-04-11 16:27:26 +03:00
Ivan Savenko
b6c341f7c0
Likely fix for inability to shoot if there was adjacent cloned unit
2025-04-11 00:35:11 +03:00
Ivan Savenko
d150b3907d
Fix crash on using life drain with area attacks, like magog w life drain
2025-04-11 00:34:39 +03:00
Ivan Savenko
2f149b59ca
Fix unit spellcasting when defending in a hotseat pvp battle
...
Check interface of player that is currently acting in combat, not player
that is making turn on map
2025-04-11 00:33:21 +03:00
Ivan Savenko
f05dc412f0
Use SDL scancodes instead of keycodes for keybindings
2025-04-10 22:47:43 +03:00
Ivan Savenko
e51ba74214
Fix loading of spell immunity icons for corresponding bonus
2025-04-10 22:24:22 +03:00
Ivan Savenko and GitHub
0b437e8b1d
Merge pull request #5611 from GeorgeK1ng/custom_directories
...
Allow changing default directories in Windows
2025-04-10 17:31:41 +03:00
Ivan Savenko and GitHub
2c8f562182
Merge pull request #5603 from MichalZr6/locale_fix
...
Fix crash when setting up locale on Android
2025-04-09 17:25:28 +03:00
Ivan Savenko and GitHub
6247ed80d2
Merge pull request #5592 from GeorgeK1ng/mod_types
...
Add "Campaigns" mod type
2025-04-09 17:24:32 +03:00
Ivan Savenko and GitHub
fb97891cd3
Merge pull request #5610 from IvanSavenko/beta_crashfixes
...
Beta crashfixes
2025-04-09 17:23:32 +03:00
Ivan Savenko
49e215a7c3
Bump fuzzylite submodule to latest commit
2025-04-06 18:45:30 +03:00
Ivan Savenko
dcbf12ef26
Fix rare crash on merging two stacks in town garrison with stack
...
artifacts equipped
2025-04-06 18:44:44 +03:00
Ivan Savenko
cbfaefd805
Fix rare crash if player selects maximum movement speed and moves hero
...
across event that grants enough XP to level up
2025-04-06 18:43:55 +03:00
Ivan Savenko
87caec6be1
Check for presence of builtin ttf fonts & report on start to avoid
...
strange crashes on font loading
2025-04-06 18:41:20 +03:00
Ivan Savenko
4555b2d228
Increase system RAM for xbrz2 auto-activation to 4Gb due to crashes on
...
Android
2025-04-06 18:40:27 +03:00
Ivan Savenko
6c1cb3ac54
Workaround / debug info for crash on failure to render ttf text
2025-04-06 18:39:53 +03:00
Ivan Savenko
3dd15beede
Fix rare crash if player changes starting hero in MP while another has
...
town right-click popup open
2025-04-06 18:39:29 +03:00
Ivan Savenko and GitHub
e1be9af5e6
Merge pull request #5602 from IvanSavenko/fuzzy_bump
...
Bump fuzzylite submodule to latest commit
2025-04-02 16:01:34 +03:00
Ivan Savenko and GitHub
f2ffe32d5c
Merge pull request #5597 from BenFradet/fix-dwellings
...
Fix dwellings recruitment text
2025-04-02 13:57:12 +03:00
Ivan Savenko and GitHub
549a729e20
Merge pull request #5591 from IvanSavenko/vector_replace
...
Support for replacement of individual entries in json lists
2025-04-02 13:55:19 +03:00
Ivan Savenko and GitHub
dd823d1681
Merge pull request #5560 from GeorgeK1ng/campaigns
...
[1.7] Campaigns configurations improvements
2025-04-02 13:54:50 +03:00
Ivan Savenko and GitHub
76418e7f14
Merge pull request #5522 from XCOM-HUB/patch-2
...
Update swedish.json (beta)
2025-04-02 13:54:39 +03:00
Ivan Savenko
40870d8f64
Bump fuzzylite submodule to latest commit
2025-04-01 17:58:21 +03:00
Ivan Savenko and GitHub
efe2f4e0ba
Merge pull request #5596 from BenFradet/fix-fedora-building
...
Fix fedora building instructions
2025-03-30 21:24:36 +03:00
Ivan Savenko
58a6aabd4c
Switch list patching to more user-friendly 1-based indexing
2025-03-30 17:18:47 +03:00
Ivan Savenko
4dc82284b4
Add docs
2025-03-30 17:12:42 +03:00
Ivan Savenko
aeb6c0be26
Support for replacement of individual entries in json lists
...
It is now possible for mods to modify json lists precisely, without full
replacement. Supported options:
- `append`: appends a single item to end of list
- `appendItems`: appends multiple items to end of list
- `insert@NUM`: inserts a single item *before* item NUM (item counting
is 0-based)
- `modify@NUM`: allows editing of a single item NUM (item counting is 0-
based)
Example - addition of a new item into town hall slots:
```json
"hallSlots":
{
"modify@4" : {
"append" : [ "dwellingLvl7B", "dwellingUpLvl7B" ]
}
},
```
This would modify 4th element (last row) by appending new entry to the
end of last row
```json
{
"modify@4" : {
"insert@1" : [ "dwellingLvl5B", "dwellingUpLvl5B" ]
}
},
```
This would add new slot not in the end of last row, but before 1st item
(between 5th and 6th dwellings)
2025-03-27 19:22:50 +00:00
Ivan Savenko and GitHub
4cf0211600
Merge pull request #5587 from IvanSavenko/crashfixes_beta
...
Fixes for beta
2025-03-27 13:51:34 +02:00
Ivan Savenko and GitHub
4df4438f59
Merge pull request #5588 from IvanSavenko/ci_fix
...
Fix CI failure in develop branch
2025-03-26 22:33:09 +02:00
Ivan Savenko
8771ecdf57
Workaround for crash due to static destruction order
2025-03-26 20:32:55 +00:00
Ivan Savenko
c6a541752e
Fix unused variable on serialization
2025-03-26 19:55:56 +00:00
Ivan Savenko
7d3e59d7d3
Do not track clipboard on mobile systems to avoid permissions prompt
2025-03-26 16:00:31 +00:00
Ivan Savenko
8a0fed7b3a
Temporarily(?) use weak_ptr to reduce ram usage increase during long
...
game sessions
2025-03-26 15:37:38 +00:00
Ivan Savenko
ded12f2df9
Disable auto-selection of xbrz on 32-bit systems
2025-03-26 15:37:38 +00:00
Ivan Savenko
9da598dcaf
Fix possible crash on accessing content rect with nullptr surface
2025-03-26 15:37:38 +00:00
Ivan Savenko and GitHub
1c96489721
Merge pull request #5569 from Laserlicht/configeditor
...
Editor for JSON config in launcher
2025-03-26 17:28:26 +02:00
Ivan Savenko and GitHub
0197d226c9
Merge pull request #5565 from kdmcser/new_morale_luck
...
support setting dice molecule for rolling morale and luck
2025-03-26 16:53:13 +02:00
Ivan Savenko and GitHub
3ca0c7661a
Merge pull request #5584 from kambala-decapitator/macos-launcher-quit
...
[launcher] restore quitting launcher when starting game on Windows and macOS
2025-03-26 16:48:32 +02:00
Ivan Savenko and GitHub
33f708c744
Merge pull request #5577 from GeorgeK1ng/skill_removal
...
Skill removal as reward
2025-03-26 16:47:37 +02:00
Ivan Savenko and GitHub
dfbe6d1965
Merge pull request #5572 from IvanSavenko/old_banks_remove
...
Remove deprecated support for banks in 1.5 format
2025-03-26 16:45:56 +02:00
Ivan Savenko and GitHub
bc07fa2fa3
Merge pull request #5571 from IvanSavenko/boost_old_remove
...
Remove old boost includes and defines
2025-03-26 16:45:39 +02:00
Ivan Savenko and GitHub
356eaae716
Merge pull request #5543 from kambala-decapitator/ios-portrait-mode
...
[iOS] enable portrait mode
2025-03-19 10:09:47 +02:00
Ivan Savenko
c73116a010
Reduce boost includes further
2025-03-19 08:03:56 +00:00
Ivan Savenko
7a3e1409d0
Remove old boost includes and defines
2025-03-19 08:03:56 +00:00
Ivan Savenko
2b286378e8
Remove logic for banks in 1.5 format
2025-03-19 08:02:39 +00:00
Ivan Savenko and GitHub
8e1bd64799
Merge pull request #5570 from IvanSavenko/savecompat_150
...
Remove save compatibility with 1.5.X
2025-03-19 10:01:57 +02:00
Ivan Savenko
ca8dcf30ed
Fix build
2025-03-18 11:56:22 +00:00
Ivan Savenko
eb3b51a6cf
Remove save compatibility with 1.5.X
2025-03-18 11:35:15 +00:00
Ivan Savenko and GitHub
81759143f4
Merge pull request #5436 from MichalZr6/fix_map_sorting
...
Small improvements to map sorting and search mapobjects feature
2025-03-16 19:19:44 +02:00
Ivan Savenko and GitHub
860f65ea62
Merge branch 'develop' into fix_map_sorting
2025-03-16 19:19:27 +02:00
Ivan Savenko and GitHub
134535ee15
Merge pull request #5562 from kambala-decapitator/editorconfig
...
add EditorConfig configuration
2025-03-16 19:09:37 +02:00
Ivan Savenko and GitHub
64aaaf68d5
Merge pull request #5549 from MichalZr6/BattleHexArray_update
...
Fix BattleHexArray::contains() and fix no damage chance for catapult
2025-03-16 19:09:28 +02:00
Ivan Savenko and GitHub
8ed3126a36
Merge pull request #5547 from kambala-decapitator/ios-mute-switch
...
[iOS] add setting to honor mute switch
2025-03-16 19:09:06 +02:00
Ivan Savenko and GitHub
6ed1aad11b
Merge pull request #5545 from Laserlicht/video_skip_harominize
...
optimize skip video keys
2025-03-16 19:08:57 +02:00
Ivan Savenko and GitHub
cb7c2d2f07
Merge pull request #5544 from IvanSavenko/fix_shutdown
...
Fix shutdown
2025-03-16 19:08:41 +02:00
Ivan Savenko
ed4079e83b
Code cleanup, add comments where relevant
2025-03-12 15:57:06 +00:00
Ivan Savenko
6877bbfe3a
Fix issues found by Valgrind
2025-03-12 15:56:52 +00:00
Ivan Savenko
96d691b40c
Fix crash on closing game during background image upscaling
2025-03-12 14:18:44 +00:00
Ivan Savenko
6855b895a0
Fix possible crashes on audio shutdown
2025-03-12 13:33:12 +00:00
Ivan Savenko
4684756c49
Do not create ENGINE in headless mode
2025-03-12 13:33:12 +00:00
Ivan Savenko
eaad6f9ce0
Fix crash on trasferring to next scenario in campaign
2025-03-12 13:33:12 +00:00
Ivan Savenko
e73d05933d
Quick shutdown of ConsoleHandler thread
2025-03-12 13:33:12 +00:00