Ivan Savenko
c2c43602ea
Initial version of global lobby server available in client
2024-01-19 23:49:59 +02:00
Ivan Savenko
d04241b10a
Code cleanup
2024-01-19 23:02:00 +02:00
Ivan Savenko
1f7e53a609
Code style fixes
2024-01-19 21:21:23 +02:00
Ivan Savenko
339fad6e27
Merge pull request #3528 from vcmi/master
...
Merge master -> develop
2024-01-19 21:19:20 +02:00
Ivan Savenko
aa02d5787a
Better solution for rmg crash fix
2024-01-19 17:26:51 +02:00
Ivan Savenko
789c96d9b0
Fixed binding lambda to a reference to a temporary on stack
2024-01-19 16:17:59 +02:00
Ivan Savenko
e50f586d8b
Stabilization
2024-01-19 14:21:13 +02:00
Ivan Savenko
ffd604c114
Removed unnecessary access to IHandler::objects
2024-01-19 13:56:06 +02:00
Ivan Savenko
6e629a6a5f
split getBonusLocalFirst into two distinct method:
...
- const method getFirstBonus that returns single matching bonusToString
- non-const method getLocalBonus that returns bonus from current node
2024-01-19 13:56:06 +02:00
Ivan Savenko
496c13b34a
Stabilization
2024-01-19 13:56:06 +02:00
Ivan Savenko
9af7c63a26
Fix build
2024-01-19 13:56:05 +02:00
Ivan Savenko
ea1f05d15a
Stabilization
2024-01-19 13:55:22 +02:00
Ivan Savenko
60ffb81b33
Replaced remaining placeholder code with callbacks
2024-01-19 13:55:22 +02:00
Ivan Savenko
e67e4430ba
Removed most of non-const static fields in lib. Reduced header includes.
2024-01-19 13:55:22 +02:00
Ivan Savenko
a15366f5a5
Make IObjectInterface::cb non-static
2024-01-19 13:55:21 +02:00
Ivan Savenko
c37ce05d06
Attempt to make constant bonus system nodes (CCreature / CArtifact)
...
fully constant
2024-01-19 13:54:49 +02:00
Ivan Savenko
2c4cad7d9c
Slight simplification of bonus system node class
2024-01-19 13:54:49 +02:00
Ivan Savenko
d5c4478816
Remove most of non-const access to VLC entities
2024-01-19 13:54:49 +02:00
Ivan Savenko
bd5682ecc3
Merge remote-tracking branch 'vcmi/master' into develop
2024-01-19 13:49:54 +02:00
Dydzio
ad8d57f7a4
Merge branch 'beta' into sod-fly
2024-01-18 20:42:22 +01:00
Dydzio
440b468e27
Some partial success on getting fly to work similarly to SoD
2024-01-18 20:42:08 +01:00
Ivan Savenko
c31d52bff6
Added new bonus icon
2024-01-18 17:18:13 +02:00
Ivan Savenko
3e8f110482
Merge pull request #3515 from SoundSSGood/backpack-statusbar
...
Backpack statusbar
2024-01-18 16:05:42 +02:00
Ivan Savenko
b698b6e79d
Merge pull request #3512 from Alexander-Wilms/use-auto-with-template-factory-functions-for-smart-pointers
...
Use auto with template factory functions for smart pointers
2024-01-18 16:05:05 +02:00
Ivan Savenko
9025744cc5
Merge pull request #3510 from Alexander-Wilms/remove-semicolons-from-macros
...
Remove trailing semicolons from more macros
2024-01-18 16:03:55 +02:00
Ivan Savenko
b1bd44de1e
Merge pull request #3298 from vcmi/random_prison_distributor
...
Fixes to hero / prison distribution
2024-01-18 16:03:08 +02:00
SoundSSGood
8d4b74b441
Assembling in backpack fixed
2024-01-18 12:49:08 +02:00
Alexander Wilms
b364f707cd
Fix issues introduced by automated replacement of redundant types
2024-01-17 20:12:57 +00:00
Alexander Wilms
7a1cee1a60
Fix error: 'auto' not allowed in non-static struct member
2024-01-17 14:49:28 +00:00
Alexander Wilms
57c51b62fd
Fix CGameHandler.cpp:1026:4: error: function 'getAllowedSpells' with deduced return type cannot be used before it is defined
2024-01-17 14:41:53 +00:00
Alexander Wilms
271eeca11b
Fix BattleEvaluator.cpp:286:32: error: function 'battleGetAllObstacles' with deduced return type cannot be used before it is defined
2024-01-17 14:41:47 +00:00
Alexander Wilms
f08c6d1ce9
Fix issues created by type replacement script
2024-01-17 14:33:02 +00:00
Alexander Wilms
73019c204d
Replace redundant types with auto
for the lvalues of template factory functions for smart pointers
...
grep -r --include \*.h --include \*.cpp "= std::" * | grep -v auto | grep -Po ".*[^ ]+ [^ ]+ [^ ]*[ ]*=.*;" | grep -v "auto\|int\|char\|bool\|float|\double\|for\|if\|googletest\|fuzzylite\|size_t\|using\|return" | grep -v double | grep -v si64 | grep -v si32 | grep -v ui32 | grep \< | grep -v float | tr -d '\t' | grep -v assert > redundant_types.txt
import re
with open("redundant_types.txt") as f:
for line in f:
line = line.strip()
path = line.split(":", 1)[0]
original_code = ":".join(line.split(":")[1:]).strip()
print()
print(path)
print(original_code)
prefix = "auto "
if original_code.startswith("static"):
static = True
else:
static = False
cpp_type = " ".join(original_code.split("=")[0].strip().split(" ")[0:-1])
print(cpp_type)
if static:
new_code = "static auto "+ " ".join(original_code.split(" ")[2:])
else:
new_code = "auto "+ " ".join(original_code.split(" ")[1:])
print(new_code)
if True:
with open(path, "r") as f:
filedata = f.read()
filedata = filedata.replace(original_code, new_code)
with open(path, "w") as f:
f.write(filedata)
2024-01-17 12:50:00 +00:00
DjWarmonger
4f28cd42b7
Update lib/rmg/modificators/PrisonHeroPlacer.h
...
Co-authored-by: Alexander Wilms <Alexander-Wilms@users.noreply.github.com>
2024-01-17 10:11:55 +01:00
DjWarmonger
91a20c2bfd
Update lib/rmg/CMapGenerator.h
...
Co-authored-by: Alexander Wilms <Alexander-Wilms@users.noreply.github.com>
2024-01-17 10:11:50 +01:00
Tomasz Zieliński
66efb07e52
More
2024-01-17 07:45:53 +01:00
Tomasz Zieliński
a568a9b3fb
Fix lambda capture
2024-01-17 07:26:51 +01:00
Tomasz Zieliński
253f1dc7e6
Refactor duplicated code as suggested by SonarCloud
2024-01-17 07:18:14 +01:00
Alexander Wilms
558ead41fe
Add missing semicolon after macro usage
2024-01-16 20:18:18 +00:00
Ivan Savenko
bf62e47481
Merge pull request #3505 from IvanSavenko/bugfixing
...
[1.4.3] Bugfixing
2024-01-16 22:00:11 +02:00
Alexander Wilms
ccac73fb69
Remove trailing semicolons from more macros
2024-01-16 19:46:21 +00:00
Ivan Savenko
723a95f770
Add assertions to detect invalid calls
2024-01-16 21:12:57 +02:00
Alexander Wilms
cca08e29da
Remove duplicate semicolons
2024-01-16 19:02:39 +00:00
Tomasz Zieliński
afc9bd908c
Unused capture
2024-01-16 17:38:36 +01:00
Tomasz Zieliński
aa5bb27d20
Style
2024-01-16 17:16:15 +01:00
Tomasz Zieliński
71844d4d92
Unban artifacts if RMG fails to place Seer Hut (unlikely)
2024-01-16 17:15:35 +01:00
Ivan Savenko
1194419884
Added option to allow self-casting
2024-01-16 15:13:00 +02:00
Ivan Savenko
c3012105e2
Fix duplicated hero in Song for the Father campaign
2024-01-16 14:45:38 +02:00
Ivan Savenko
bdd649a3be
Merge pull request #3502 from IvanSavenko/campaign_localization_fix
...
Fixed missing translation strings on loading campaign save
2024-01-16 11:49:25 +02:00
Ivan Savenko
c839b397e8
Block self-casting, e.g. Archangels can't resurrect themselves
2024-01-15 23:16:53 +02:00
Ivan Savenko
6e5da6c158
Fixed Coronius specialty applying from two locations in code
2024-01-15 23:16:53 +02:00
Ivan Savenko
c21913f661
Fixed initialization of move points and mana for dismissed heroes
2024-01-15 23:16:48 +02:00
Ivan Savenko
2265890f69
Better detection of invalid mod data to avoid crash and notify modders
2024-01-15 18:19:21 +02:00
Ivan Savenko
a32ef673f7
Merge pull request #3482 from IvanSavenko/extend_hota_bonuses
...
Extend hota bonuses
2024-01-15 13:47:13 +02:00
Ivan Savenko
c7897300c0
Fixed missing translation strings on loading campaign save
...
- campaign header now contains text container and stores campaign texts
- map header now contains text container instead of inheriting it
- moved text container registration logic to a wraper class
- fixed registration of copied text containers (from copied map header)
2024-01-15 13:10:25 +02:00
Ivan Savenko
a582cb554e
Merge pull request #3500 from IvanSavenko/fix_dendroid_bind
...
[1.4.3] Fix handling of Dendroid's Bind ability
2024-01-15 12:02:06 +02:00
Ivan Savenko
b4a1a755a4
Merge pull request #3498 from IvanSavenko/simturns_pathfinder
...
[1.4.3] Fixes for simultaneous turns
2024-01-15 12:00:54 +02:00
Ivan Savenko
8400c27251
Merge pull request #3491 from IvanSavenko/change_default_driver
...
Change default SDL driver name from opengl to empty (autoselection)
2024-01-15 11:57:42 +02:00
Tomasz Zieliński
0273d9c36b
Remove unused variable
2024-01-15 07:59:50 +01:00
Tomasz Zieliński
285bafdbf4
Do not ban heroes in Prisons, they might be rehired after they are defeated.
...
Restore hero to pool if Prison fails to be placed.
2024-01-15 07:41:29 +01:00
Tomasz Zieliński
ee6c331bad
Merge remote-tracking branch 'origin/beta' into random_prison_distributor
2024-01-14 21:56:49 +01:00
DjWarmonger
19765e0e01
Merge pull request #3480 from IvanSavenko/rmg_ban_starting_heroes
...
Ban starting heroes in RMG
2024-01-14 21:56:16 +01:00
Ivan Savenko
0d0d3d8c80
Renamed speed -> getMovementRange, remove misleading default parameter
2024-01-14 17:14:36 +02:00
Ivan Savenko
fd499e318d
Review suggestion
2024-01-14 15:36:29 +02:00
Ivan Savenko
b08462d555
Change default SDL driver name from opengl to empty (autoselection)
2024-01-14 14:29:13 +02:00
Tomasz Zieliński
3e623565a2
Fix redundant class
2024-01-13 21:39:17 +01:00
Tomasz Zieliński
3aa67b3e5f
Merge remote-tracking branch 'origin/beta' into random_prison_distributor
2024-01-13 21:02:08 +01:00
Ivan Savenko
8303ce5d13
Added option to ignore guards in pathfinder
...
Used for simturns contact detection, by default disabled for player
pathfinding
2024-01-13 19:44:37 +02:00
Ivan Savenko
fc6a9924ee
FIRST_STRIKE now supports ranged / melee subtypes, BLOCKS_RETALIATION
...
will properly block FIRST_STRIKE
2024-01-13 16:54:06 +02:00
Ivan Savenko
bb670cfb82
Merged accurate shot bonus into death stare bonus
2024-01-13 15:55:07 +02:00
Ivan Savenko
ca2df49fbb
Block usage of preselected starting heroes for prisons in RMG
2024-01-13 14:08:36 +02:00
Ivan Savenko
f6e0f46040
Merge pull request #3467 from dydzio0614/hota-fixes
...
Fix HotA creature abilities (add bonuses allowing implementing them)
2024-01-12 21:55:18 +02:00
M
9ee526d202
Fixes from code review
2024-01-11 21:10:22 +01:00
Dydzio
250b1b69a8
Update accurate shot translation handling
...
Co-authored-by: Ivan Savenko <saven.ivan@gmail.com>
2024-01-10 23:57:29 +01:00
M
7bf273e01c
Extract revenge calculation to separate method
2024-01-10 22:56:26 +01:00
M
815fa26fb3
Change nix rounding, revert assert comment
2024-01-10 22:18:53 +01:00
Ivan Savenko
206b4a0588
Merge pull request #3454 from IvanSavenko/mod_debug
...
Better error-reporting for modding system errors
2024-01-10 15:50:17 +02:00
Alexander Wilms
5e9f98b15c
Resolve intentionality issues
2024-01-10 00:23:24 +00:00
Alexander Wilms
f3277b7953
Define each identifier in a dedicated statement
2024-01-10 00:22:23 +00:00
M
67f18729fa
REVENGE bonus that matches HotA haspid ability
2024-01-09 19:10:43 +01:00
Ivan Savenko
eae3d806db
Merge pull request #3460 from Laserlicht/changedate_sort
...
add sort for changedate
2024-01-09 12:43:01 +02:00
Dydzio
dbba1164ef
Fix floating point rounding for 5 attack points and unupgraded nix
2024-01-08 20:50:37 +01:00
Ivan Savenko
6c8a587ac9
Better diagnostics of ID requests that require type, such as addInfo
2024-01-08 21:32:10 +02:00
Dydzio
675f9b11fa
Add ENEMY_ATTACK_REDUCTION bonus - fixes HotA Nix
2024-01-08 19:37:04 +01:00
Ivan Savenko
18227cba00
Implemented better error-reporting for issues commonly encountered by
...
modders
2024-01-07 22:35:22 +02:00
Dydzio
3c95f92c59
Update documentation
2024-01-07 21:22:10 +01:00
Ivan Savenko
ae79c5e953
Merge pull request #3397 from Laserlicht/cheat_allow
...
option for disabling cheats
2024-01-07 21:42:02 +02:00
Laserlicht
8b262e49a6
add sort for changedate
2024-01-07 20:17:44 +01:00
Dydzio
bb925e4cb0
First version of sea witch / sorceress ability
2024-01-07 19:27:32 +01:00
Ivan Savenko
a2f603ac02
Fixed some cases of illegal access to std::array::operator[]
2024-01-07 12:45:02 +02:00
Ivan Savenko
cf47fbb729
Merge pull request #3435 from IvanSavenko/bugfixing
...
[1.4.3] Bugfixing
2024-01-06 13:06:07 +02:00
Ivan Savenko
1519de60bf
Remove excessive logging on using Recanter's Cloak in siege of Tower
2024-01-05 18:31:07 +02:00
Ivan Savenko
51b7de4b98
Fix double off-by-one bug with CREATURE_GROWTH bonus
2024-01-05 16:57:44 +02:00
Ivan Savenko
480a0f19c0
Fix missing modded spells in magic guilds for h3m maps
2024-01-05 16:47:23 +02:00
Ivan Savenko
4b5b99aba3
Fix handling of invalid creature damage range (min > max)
2024-01-05 16:12:02 +02:00
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