Dydzio
2e976dc0f1
Add TODO comment for possible minor logic deviation from WoG
2023-12-23 20:35:40 +01:00
Dydzio
6fd4b2bddd
Fix commander bonus from damage ability
2023-12-23 20:33:15 +01:00
Dydzio
9e9849b741
Fix commander ability accumulation, change commander ability bonus
2023-12-23 20:16:29 +01:00
Ivan Savenko
12c69f8e04
Fix crash on accessing non-existing player ID
2023-12-23 18:11:48 +02:00
Ivan Savenko
cd526a5e15
Send notifications when simultaneous turns end
2023-12-23 18:11:25 +02:00
Dydzio
bcda68abef
Fix crash on giving WoG experience - quantity 0 unit on army transfer
2023-12-23 15:32:21 +01:00
Ivan Savenko
4986b9031d
Use timers for turns only if turn timer is set and for pvp battles -
...
only if unit timer is set to avoid "bad" edge case where player can
completely run out of time
2023-12-22 18:40:28 +02:00
Ivan Savenko
fc595c5d84
propagate turn timer state every second to ensure correct UI
2023-12-22 18:40:28 +02:00
Ivan Savenko
f834cb3d99
Display different timers separately when applicable
2023-12-22 18:40:28 +02:00
Ivan Savenko
f40e711721
Merge pull request #3340 from IvanSavenko/crashfixes3
...
Crashfixes
2023-12-18 13:40:13 +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
dd88220b7c
Fixed potentially uninitialized class member
2023-12-17 19:44:45 +02:00
Ivan Savenko
a3adfcf7a7
Do not attempt to start a new turn on game end
2023-12-13 16:53:02 +02:00
Ivan Savenko
e23cddac8c
Fix AI movement
2023-12-10 19:18:15 +02:00
Ivan Savenko
a7c838036d
Workaround to avoid crash on invalid bonus
2023-12-10 16:32:43 +02:00
Ivan Savenko
9a52131c82
Use battle side instead of player color for fire shield damage formula
2023-12-09 18:48:53 +02:00
Laserlicht
22a6eff28f
add alias
2023-12-09 15:07:27 +01:00
Laserlicht
a24e78a210
real unlimited movement (like in OH3)
2023-12-09 13:42:09 +01:00
Laserlicht
584bb32f53
add nwctheone
2023-12-09 00:44:53 +01:00
Laserlicht
d58c99b47d
flag all team members as cheaters
2023-12-08 20:13:32 +01:00
Laserlicht
1cfbe66460
fix crash if no hero is selected
2023-12-08 19:37:34 +01:00
Laserlicht
4bad88f141
implement luck and morale cheats from OH3
2023-12-08 19:20:53 +01:00
Laserlicht
13673335a0
puzzle map cheat
2023-12-08 17:30:23 +01:00
Ivan Savenko
861c53059e
Added callbacks for preset dropdowns
2023-12-07 13:57:16 +02:00
Ivan Savenko
653304b004
Implemented accumulating timers, rename creature timer to unit timer
2023-12-07 13:57:16 +02:00
Ivan Savenko
80b82cc026
Remove invalid assert - may trigger on human player defeat
2023-12-03 15:58:23 +02:00
Ivan Savenko
5df98f3eca
Allow timer pause pack on opening settings menu in battle
2023-11-27 20:27:10 +02:00
Ivan Savenko
e979fb7056
Better fix for allowed heroes in h3m - allow all heroes from mods
2023-11-22 19:11:22 +02:00
Ivan Savenko
e9ac8c67c1
Reworked and fixed selection of secondary skills:
...
- Fixed off-by-one error when checking for obligatory skills
- If both wisdom and magic school must be offered in the same slot, magic
school will be correctly offered on next levelup
- Obligatory skill can now be proposed for upgrade
- Obligatory skills are now offered using hero class weight instead of
simple random
- If hero has multiple skills not available to his class game will
select random skill instead of first one
- Moved storage of random seed to server instead of mutable member
2023-11-20 18:46:24 +02:00
Ivan Savenko
cc71651ee4
Show proper error message if player attempts to load save with missing
...
identifiers instead of silent crash to main menu
2023-11-19 19:30:55 +02:00
Ivan Savenko
76956cfe3a
Merge pull request #3188 from IvanSavenko/remove_identifier_implicit_int_conversion2
...
Remove implicit conversion of identifier to integer
2023-11-16 17:26:32 +02:00
Ivan Savenko
10e110320b
Remove std::vector<boo> from Json Serializer, simplify affected code
2023-11-15 15:55:18 +02:00
Ivan Savenko
a6f37b7cd7
Fixed few more memory leaks in client
2023-11-13 16:27:15 +02:00
Ivan Savenko
20ef3a69e7
Fix most of memleaks discovered by valgrind
2023-11-13 16:27:15 +02:00
Ivan Savenko
bc51d9c772
Merge pull request #3161 from SoundSSGood/art-swap-optimization
...
Artifacts swap optimization
2023-11-12 19:37:25 +02:00
Ivan Savenko
07472d3b05
Merge pull request #3147 from IvanSavenko/serialization_refactor
...
Serialization refactor - remove VLC from saved games
2023-11-11 17:35:01 +02:00
Ivan Savenko
5c810df36f
Reorganized types registration code
2023-11-11 00:39:08 +02:00
SoundSSGood
e1a9763ae4
fix test, throwing exception fix
2023-11-09 12:38:50 +02:00
Ivan Savenko
18c0217679
Relaxed ordering requirements - player can start turn even if players
...
before him are waiting to act. E.g. green can start turn even if blue
and red are in contact and blue is yet to start his turn
2023-11-09 00:08:13 +02:00
Ivan Savenko
4a7fa9bf8c
Simplified CTypeList class
2023-11-08 22:05:36 +02:00
SoundSSGood
57e3abc548
ask assemble regression fixed
2023-11-08 21:59:55 +02:00
SoundSSGood
ce3d407396
artifacts swap optimization
2023-11-08 21:58:48 +02:00
Ivan Savenko
0691dfef3b
Moved stateful artifact randomization logic to gamestate from handler
2023-11-08 21:27:05 +02:00
Ivan Savenko
6b81012f31
Use variant identifier in netpacks where applicable
2023-11-08 14:00:23 +02:00
Ivan Savenko
86a3806bec
MetaString refactor to eliminate integer usage for identifiers
...
- entity names are now stored and serialized as text ID's
- added helper methods for convenience to get entities names to
metastring
2023-11-07 22:47:10 +02:00
Ivan Savenko
184f5a72cc
Use toEntity/toXXX methods in Identifier instead VLC objects access
2023-11-03 16:03:29 +02:00
Ivan Savenko
10e50548e7
Converted Component class to use VariantIdentifier instead of int
2023-11-02 12:00:04 +02:00
Ivan Savenko
8346d71c98
Remove more subID access
2023-11-01 14:44:05 +02:00
Ivan Savenko
7107b3202f
Merge pull request #3069 from SoundSSGood/artifact-location-id
...
ArtifactLocation now use ID for artHolder identification
2023-11-01 14:41:36 +02:00
SoundSSGood
7e6ab5e87b
fix test & fix build & suggested changes
2023-10-29 17:46:14 +02:00
SoundSSGood
c2f658d638
Bulk move artifacts. id
2023-10-29 17:46:13 +02:00
SoundSSGood
3c5527a222
ArtifactLocation now use ID for artHolder identification part3
2023-10-29 17:46:13 +02:00
SoundSSGood
ab2f6abb87
ArtifactLocation now use ID for artHolder identification part2
2023-10-29 17:46:13 +02:00
Alexander Wilms
5cbc75d3b7
Merge remote-tracking branch 'upstream/develop' into develop
2023-10-29 13:35:37 +00:00
Ivan Savenko
e2cffd4c7b
Merge pull request #3118 from rilian-la-te/glamor-slight-bonus-fixes
...
Small bonus fixes
2023-10-29 15:23:07 +02:00
Ivan Savenko
720a404e20
Merge pull request #3121 from vcmi/fix-fight-in-dwelling
...
BattleAI: fix freeze fighting in dwelling
2023-10-29 15:22:47 +02:00
Andrii Danylchenko
3025785839
BattleAI: fix freeze fighting in dwelling
2023-10-29 09:29:57 +02:00
Konstantin
f6b03201db
BattleAction: handle obstacle for standing units
2023-10-28 18:34:11 +03:00
Alexander Wilms
cc8cc11da3
server/battles/BattleFlowProcessor.cpp: Called C++ object pointer is null
...
Null pointers should not be dereferenced
2023-10-27 23:40:55 +00:00
Alexander Wilms
f01ec55d21
Use the "nullptr" literal.
...
"nullptr" should be used to denote the null pointer
2023-10-27 18:18:59 +00:00
Ivan Savenko
5cbf5031ea
move SetStackEffect to a separate file
2023-10-24 01:27:52 +03:00
Ivan Savenko
5523f05284
Moved ArtifactLocation to a separate file
2023-10-23 19:02:28 +03:00
Ivan Savenko
b88a8da4e8
Split off some netpack structures into separate files
2023-10-23 13:59:15 +03:00
Ivan Savenko
3880ea58b9
Merge branch 'josch/dos2unix' into develop
2023-10-22 18:39:03 +03:00
Ivan Savenko
ac925bb786
Renamed new types for consistency with code style
2023-10-22 16:55:19 +03:00
Ivan Savenko
80e6485965
MetaIdentifier now uses std::variant internally
2023-10-22 16:55:19 +03:00
Ivan Savenko
b394158dc9
Bonus Source ID now uses metaidentifier
2023-10-22 16:55:18 +03:00
Ivan Savenko
77facf9387
Implement missing functions, fixes linking errors
2023-10-22 16:54:56 +03:00
Ivan Savenko
910ad50417
Fix client & server compilation
2023-10-22 16:54:48 +03:00
Ivan Savenko
454ba44ac5
Merge pull request #2988 from IvanSavenko/configurable_extensions
...
Extension of configurable object functionality
2023-10-22 16:24:47 +03:00
Johannes Schauer Marin Rodrigues
a1a5bc28c2
convert line endings from CRLF (Windows) to LF (Linux/Unix)
...
Mixed line endings cause problems when exporting patches with
git-format-patch and then trying to "git am" a patch with mixed and
non-matching line endings. In such a situation git will fail to apply
the patch.
This commit runs the dos2unix tools on the remaining files with CRLF
(\r\n) line endings to convert them to line-feeds (\n) only.
Files that are Windows specific like *.vcxproj and *.props files were
not converted.
Closes : #3073
2023-10-19 16:23:21 +02:00
Nordsoft91
1ffc246c8b
Merge pull request #3051 from Laserlicht/name_change
...
possibility to change name in lobby
2023-10-16 22:28:31 +02:00
Laserlicht
0a1578b797
Apply suggestions from code review
...
Co-authored-by: Nordsoft91 <nordsoft@yahoo.com>
2023-10-16 21:24:59 +02:00
Ivan Savenko
dd841bdaa7
Use enum instead of mix of bool's and int's for tile reveal
2023-10-16 00:12:38 +03:00
Ivan Savenko
98fd939ed6
Cartographer/Observatory is now configurable object
2023-10-16 00:12:38 +03:00
Ivan Savenko
aa0b064154
Fixed randomization of artifacts on some custom maps
2023-10-16 00:12:38 +03:00
Nordsoft91
3906217ef5
Merge pull request #3049 from Warzyw647/fix-morale-chance-lookup
...
Fixed morale and luck chance lookup.
2023-10-14 21:39:57 +02:00
Laserlicht
785c6507a6
code review
2023-10-13 23:50:01 +02:00
Laserlicht
0c6b1ca3c8
possibility to change name
2023-10-13 23:04:35 +02:00
Warzyw647
8058efb3bd
Fixed morale and luck chance lookup.
2023-10-13 20:43:15 +02:00
nordsoft
9108f7e3e5
Remove assert triggered while flying
2023-10-12 13:40:28 +02:00
nordsoft
d7d435dcb7
Add game pause
2023-10-08 16:03:57 +02:00
Ivan Savenko
b75a67ef7c
Merge pull request #2973 from IvanSavenko/identifier_explicit_constructor
...
Improvements to type safety of Identifier class
2023-10-05 00:33:07 +03:00
Ivan Savenko
037efdf5fc
Improvements to type safety of Identifier class
...
- Constructor of Identifier from integer is now explicit
- Lobby hero/town selection now uses Identifiers instead of int's
- Removed serialization workaround for hero portraits
- Added dummy objects for custom heroes portraits for ID resolver to use
- HeroInstance now stores portrait ID only in case of custom portrait
- Fixed loading of campaign heroes portraits on RoE maps
2023-10-04 18:05:23 +03:00
Ivan Savenko
39a92cdde3
Add query for dwellings dialog
2023-10-04 17:47:12 +03:00
Ivan Savenko
3cb489e9bd
Fix University and Altar
2023-10-04 17:47:12 +03:00
Ivan Savenko
898733eed7
Added Query to track visit duration for Taverns and Markets
2023-10-04 17:47:12 +03:00
Laserlicht
ec8580b99e
Merge branch 'develop' into patch-4map_overview_rework
2023-10-02 21:03:16 +02:00
Nordsoft91
4620d2c96d
Merge pull request #2980 from Nordsoft91/proxy-reconnect
...
Allow to reconnect to proxy server
2023-10-02 20:42:11 +02:00
Nordsoft91
c57d5545c2
Merge pull request #2971 from Nordsoft91/translations
...
Multi-language support for network game and for VMAPs
2023-10-02 20:41:42 +02:00
Ivan Savenko
b21a361b99
Merge pull request #2814 from SoundSSGood/arts-counter-impovements
...
Artifacts counter impovements
2023-10-01 17:53:51 +03:00
Laserlicht
8b835c9253
load game support
2023-09-30 20:03:33 +02:00
nordsoft
f3fa0f8652
Allow to reconnect to proxy server
2023-09-29 19:49:18 +02:00
nordsoft
5b97c323d3
Rename hero strings to text id
2023-09-28 00:04:05 +02:00
nordsoft
00c8c2eb82
Event message meta string
2023-09-27 23:28:17 +02:00
Ivan Savenko
16424d2fc0
Fixed boat boarding
2023-09-27 21:25:04 +03:00
Ivan Savenko
97097c20ad
Merge pull request #2874 from SoundSSGood/exchange-window-update
...
Exchange window update
2023-09-27 15:50:52 +03:00
Ivan Savenko
71a1ed816a
Merge pull request #2892 from Laserlicht/highscore_menu
...
Highscore Menu & end video
2023-09-27 15:48:47 +03:00
Ivan Savenko
94dbde05a0
Merge pull request #2868 from IvanSavenko/simultaneous_turns
...
Simultaneous turns
2023-09-27 15:45:02 +03:00
Nordsoft91
c803b57c33
Merge pull request #2889 from Nordsoft91/mod-compatibility-check
...
Proper mod compatibility check logic
2023-09-26 19:29:46 +02:00
Ivan Savenko
0a0c01d639
Replaced 'isVisitActiveFor' methods with single 'getVisitingHero'
2023-09-26 15:55:07 +03:00
Ivan Savenko
5b21a5ffbc
Simturn duration is now part of StartInfo
2023-09-26 13:42:20 +03:00
Ivan Savenko
3ea807fb8d
Fixed movement through teleporters by AI
2023-09-26 13:42:20 +03:00
Ivan Savenko
a9dbd08dec
Compute player contacts only once on turn start
2023-09-26 13:42:20 +03:00
Ivan Savenko
623fb2a63e
Do not allow visiting objects blocked by visit of another player
2023-09-26 13:42:20 +03:00
Ivan Savenko
b807c3855b
Add proper visitation checks for netpacks
2023-09-26 13:42:20 +03:00
Ivan Savenko
d257fb37f0
Use optional instead of Json for queries
2023-09-26 13:42:20 +03:00
Ivan Savenko
541f7590c5
Add simple detection of player-player contact
2023-09-26 13:42:20 +03:00
Ivan Savenko
64c43c91dc
Added hardcoded min/max simturns duration
2023-09-26 13:42:20 +03:00
Ivan Savenko
b2f30f78fa
Allow one AI and human to act simultaneously
2023-09-26 13:42:20 +03:00
Laserlicht
02c82cb35b
order
2023-09-26 12:01:16 +02:00
Laserlicht
c3373ea34c
code review
2023-09-25 18:06:40 +02:00
Laserlicht
f3e1943aaf
Merge branch 'develop' into highscore_menu
2023-09-23 21:38:17 +02:00
Laserlicht
c49d38b855
cheats + grail in town
2023-09-23 21:37:40 +02:00
Nordsoft91
a36450e2d1
Merge pull request #2882 from Nordsoft91/ai-cheating
...
Add basic system to give more advantages for ai player
2023-09-23 03:21:19 +02:00
nordsoft
dce1ac1538
Redesign mod incompatibility message
2023-09-23 00:32:48 +02:00
nordsoft
099109b7d2
Minor fixes
2023-09-22 00:52:19 +02:00
Ivan Savenko
42d9ba6c82
Merge pull request #2877 from IvanSavenko/simturn_fixes
...
Changes for simturns support
2023-09-20 22:09:25 +03:00
nordsoft
0de912e67b
Add basic system to add more advantages for ai player
2023-09-20 03:50:35 +02:00
Ivan Savenko
7b37c2353a
Merge pull request #2865 from IvanSavenko/market_ownership_check_fix
...
Cleaned up and fixed ownership checks for market netpack
2023-09-19 23:43:33 +03:00
Ivan Savenko
8c0d78f1d9
Added initiator-player to packs that add/remove/move objects
2023-09-19 19:24:34 +03:00
Ivan Savenko
3cdc3daa2c
Fix crash on handling invalid player request
2023-09-19 19:21:23 +03:00
SoundSSGood
48ec2d7e2a
Merge branch 'vcmi:develop' into exchange-window-update
2023-09-19 16:22:00 +03:00
SoundSSGood
9cc623c981
Fixed move checks. Backpack buttons.
2023-09-19 13:31:59 +03:00
SoundSSGood
a83f290e13
bulk move artifacts only equipped, only backpack
2023-09-19 13:31:42 +03:00
Ivan Savenko
219f81d28b
Added explicit "PlayerEndsTurn" netpack
...
- PlayerEndsTurn pack is now sent when player ends turn
- YourTurn pack has been renamed to PlayerStartsTurn for consistency
- PlayerStartsTurn will no longer replace list of acting players
- PlayerEndsGame and PlayerEndsTurn will remove player from acting list
2023-09-18 20:55:01 +03:00
Ivan Savenko
f1c40466d3
Changes according to review
2023-09-18 18:17:26 +03:00
Ivan Savenko
3d04e9c9ed
Cleaned up and fixed ownership checks for market netpack
2023-09-18 17:22:30 +03:00
Ivan Savenko
b7de685483
Fixed paths through teleport, formatting cleanup
2023-09-16 20:35:04 +03:00
Ivan Savenko
c8e6a7cd27
Fixed most common cases of movement actions
2023-09-16 20:07:26 +03:00
Ivan Savenko
f8541d0ae4
Merge branch 'vcmi/master' into 'vcmi/develop'
2023-09-15 13:59:02 +03:00
Dydzio
e79c707cf7
Fix wrong condition
2023-09-14 12:54:07 +02:00
Dydzio
56c969be4f
Fix commanders requirements for special skills to match WoG
2023-09-13 23:08:22 +02:00
Dydzio
6435217a8c
Quick-fix for transmutation skill - same as in SUMMON_GUARDIANS
2023-09-13 19:36:58 +02:00
Krisztián Szabó
b9b51334eb
Award 500 experience for towns conquered during a battle.
2023-09-12 21:30:30 +03:00
SoundSSGood
89409da0c0
Reduced number of assembling asks
2023-09-12 19:17:37 +03:00
SoundSSGood
82eb2f8a2b
Artifact assembling changes
2023-09-12 19:17:35 +03:00
Krisztián Szabó
cb3cc84c61
Give bonus experience for capturing a town even if the enemy hero escaped.
2023-09-11 19:51:23 +02:00
Krisztián Szabó
6a5e71aa63
Award 500 experience for towns conquered during a battle.
2023-09-11 09:37:48 +02:00
Ivan Savenko
e8453916cf
Merge remote-tracking branch 'vcmi/beta' into develop
2023-09-08 18:49:06 +03:00
Ivan Savenko
587be4c7d5
Merge pull request #2767 from IvanSavenko/dwelling_recruit_fix
...
Fixes ownership checks for creature recruitment
2023-09-07 15:09:55 +03:00
Ivan Savenko
bef97889e9
Merge pull request #2773 from wb180/blindedStackMoraleFix
...
Blinded stack should not be able to get morale
2023-09-07 10:54:51 +03:00
Ivan Savenko
f39fbe5151
Merge pull request #2757 from IvanSavenko/filesystem_refactor
...
Filesystem refactor - part 1
2023-09-07 10:51:02 +03:00
Ivan Savenko
e5719daf11
Added "vcmiartifacts angelWings" form to cheat
2023-09-06 22:44:41 +03:00
Ivan Savenko
1f1f978328
Fixed battle replay
2023-09-06 16:03:47 +03:00
Ivan Savenko
8bdddd1324
Fix tests compilation
2023-09-06 16:03:47 +03:00
Ivan Savenko
9fa7a93fb0
Properly pass battleID in all battle netpack's
2023-09-06 16:03:47 +03:00
Ivan Savenko
747e28947a
Fix build
2023-09-06 16:03:47 +03:00
Ivan Savenko
3a88180494
Separated game and battle callback (server & client only)
2023-09-06 16:03:39 +03:00
Ivan Savenko
fc4dfda00f
Added support for concurrent battles to gamestate and server
2023-09-06 16:03:02 +03:00
Evgeniy Meshcheryakov
e9c2d4e857
Blinded stack should not be able to get morale
2023-09-06 12:40:05 +03:00
Ivan Savenko
ad25bfb4bb
Fixed invisible creatures from SUMMON_GUARDIANS bonus
2023-09-06 11:29:28 +03:00
Ivan Savenko
b159d8a028
Fixes ownership checks for creature recruitment
2023-09-05 23:12:57 +03:00
Ivan Savenko
86a7f5f5cd
Removed getStr(bool), replaced with similar toString()
2023-09-04 22:21:02 +03:00
Ivan Savenko
6a260a60cf
Fix resource creation
2023-09-04 18:22:34 +03:00
Ivan Savenko
6f0108e462
Use ResourcePath for referencing texts and json's
2023-09-04 18:22:34 +03:00
Ivan Savenko
823ffa7a07
Always use ResourcePath for referencing images and animations
2023-09-04 18:22:34 +03:00
nordsoft
e85eb36bbd
Battle timer fix
2023-09-02 13:14:24 +04:00
nordsoft
48fb167fef
Fix timer end turn while standing on obstacles/water
2023-09-02 03:27:46 +04:00
nordsoft
0fc6e2b316
rollback query blocking
2023-09-02 03:17:51 +04:00
nordsoft
9cd3b537ad
Add turn timer allowed option
2023-09-02 03:17:32 +04:00
Nordsoft91
c45ab07d0b
Merge pull request #2698 from Nordsoft91/turn-timer
...
Turn timer fixes
2023-09-01 00:31:52 +04:00
Ivan Savenko
0f4f9b3233
Fix handling of opening spells when tactics is present
2023-08-31 01:32:32 +03:00
nordsoft
00216168bf
Timer works as designed
2023-08-30 03:44:09 +04:00
nordsoft
cc3ca9a41e
Timers fixes
2023-08-30 03:33:59 +04:00
nordsoft
9a42abe2a7
Extended timer info to exhange between client and server
2023-08-30 03:11:46 +04:00
nordsoft
f30f00faa0
Timer pausing while waiting for player accept turn
2023-08-30 02:18:44 +04:00
nordsoft
b4c20734f3
Support timer logic for pve and pvp
2023-08-30 02:17:29 +04:00
nordsoft
03496e6738
Code review fixes
2023-08-29 15:48:42 +04:00
nordsoft
883c68b151
Remove unused variable
2023-08-28 19:57:42 +04:00
nordsoft
21af69e0b7
Fix timer synchornization
2023-08-28 19:45:15 +04:00
nordsoft
68b11dbe38
Fix no-base turn timer
2023-08-28 19:45:15 +04:00
nordsoft
15f57a0817
Timer enabler
2023-08-28 19:45:15 +04:00
nordsoft
2c61d1b23f
Use precision clocks for timer
2023-08-28 19:45:15 +04:00
nordsoft
7dc1717ec6
Handle timer for tactic phase
2023-08-28 19:45:15 +04:00
nordsoft
4ee47b01ae
Make possible to play with different timers independently
2023-08-28 19:45:15 +04:00
nordsoft
6226ddf4a7
Fix potential concurrenccy issues
2023-08-28 19:45:15 +04:00
nordsoft
98f7ed9dfd
Implement player start turn query
2023-08-28 18:56:36 +04:00
nordsoft
084122bc80
Fix compiling
2023-08-28 17:26:16 +04:00
nordsoft
86ab97c64f
Fix stop on flight for timer
2023-08-28 17:21:38 +04:00
nordsoft
0bb352565a
Fix creature timer update
2023-08-28 17:12:08 +04:00
nordsoft
0bc2302f1f
Fix battle timer logic
2023-08-28 17:12:08 +04:00
Nordsoft91
1586c6c6a0
Merge pull request #2668 from IvanSavenko/remove_current_player
...
Remove "currentPlayer" from gamestate
2023-08-28 17:10:28 +04:00
Ivan Savenko
ce20d913e0
Fix checking PlayerColor's for validness
2023-08-27 01:35:38 +03:00
Ivan Savenko
edd029c79c
Replace "currentPlayer" from gamestate with "activePlayers"
...
- Allows multiple active players at once, e.g. simturns
- Cleared up validation of netpacks by server, e.g. always check for
pack sender
2023-08-25 18:56:15 +03:00
Ivan Savenko
e54287ea5d
Converted remaining identifier to new system
2023-08-25 13:38:02 +03:00
Ivan Savenko
0240ee886d
Converted (almost) all namespace enum's to enum classes
2023-08-25 13:38:02 +03:00
Ivan Savenko
62cd8b12d4
Converted several namespace enums to enum class
2023-08-25 13:38:02 +03:00
Ivan Savenko
17d3d663ee
Converted creature ID and spell ID to new form
2023-08-25 13:38:02 +03:00
Ivan Savenko
ec8d31bbfc
First step at unifying game identifiers code
2023-08-25 13:38:01 +03:00
Ivan Savenko
b0eec85aca
Merge pull request #2632 from rilian-la-te/resist-rework-pt1
...
Spell resistance rework: part 1
2023-08-25 01:13:57 +03:00
Ivan Savenko
940bdcee3e
Fixes according to review
2023-08-24 23:34:33 +03:00
Ivan Savenko
97ba7df152
Fix handling of map turn/day limit
2023-08-24 23:34:33 +03:00
Ivan Savenko
f9410145d6
Fix handling of "7 days without town" loss condition
2023-08-24 23:34:33 +03:00
Ivan Savenko
66f555f1f7
Fix error messages on bad morale
2023-08-24 23:34:33 +03:00
Ivan Savenko
ee8adbe85f
Update tavern on end of 7th turn of player in question
...
Allows removal of "retreat after 7th day" workaround and as result -
more straightforward code
2023-08-24 23:34:33 +03:00
Ivan Savenko
b6d8c7d4a5
Fix retreating in player-with-player battles
2023-08-24 23:34:33 +03:00
Ivan Savenko
a19cdb57ba
Fix handling of turn order in case of player defeat
2023-08-24 23:34:33 +03:00
Ivan Savenko
f451c15932
Fix handling of retreating of AI's
2023-08-24 23:34:33 +03:00
Ivan Savenko
d83aa828f6
Fix turn ending
2023-08-24 23:34:33 +03:00
Ivan Savenko
c4bc6840ea
Moved management of turn order into a new class
2023-08-24 23:34:33 +03:00
Nordsoft91
979cf129bc
Merge pull request #2637 from Laserlicht/autosave
2023-08-25 00:09:49 +04:00
Nordsoft91
db542d2710
Merge pull request #2664 from Nordsoft91/fix-ai-movement-freeze
2023-08-25 00:08:40 +04:00
nordsoft
596b98e1c1
Fix AI freeze regression
2023-08-24 16:42:47 +04:00
Ivan Savenko
a84c5fa371
Fix battle replaying
2023-08-23 22:46:42 +03:00
Michael
b22a9ff2d0
Merge branch 'develop' into autosave
2023-08-23 21:39:04 +02:00
Michael
1586b9fbd1
possibility to restart
2023-08-23 21:37:44 +02:00
Michael
4784ae94b5
revert uuid
2023-08-23 20:03:40 +02:00
Ivan Savenko
81242d3500
Fixed ending of battles due to retreat/surrender
2023-08-23 18:46:56 +03:00
Konstantin
344593e891
vcmi: made some CSpell properties private
...
There are getters for it.
2023-08-23 17:53:08 +03:00
Konstantin
8724181a0f
vcmi: spell resistance rework
...
Now instead of XXX_IMMUNITY bonuses we have 2 bonuses with spellSchool
subtype: SPELL_SCHOOL_IMMUNITY and NEGATIVE_EFFECT_IMMUNITY.
All previous bonuses of subtype 0 is covered by SPELL_SCHOOL_IMMUNITY,
and all previous bonuses of subtype 1 is covered by
NEGATIVE_EFFECT_IMMUNITY. Unit tests are updated accordingly.
2023-08-23 17:52:16 +03:00
Ivan Savenko
a44c08a847
Slightly better thread names
2023-08-23 16:32:29 +03:00
Ivan Savenko
44d16b32fe
Use API identical to std classes where possible
2023-08-23 16:32:29 +03:00
Nordsoft91
1bad0e96ef
Merge pull request #2635 from Nordsoft91/loading-bar
...
Loading progress bar
2023-08-23 17:28:19 +04:00
nordsoft
cda4ae84aa
Don't send loading updates too frequently
2023-08-23 15:45:00 +04:00
Michael
fed9ae5157
Merge branch 'develop' into autosave
2023-08-23 00:37:15 +02:00
Michael
51ba22a631
code review
2023-08-23 00:35:44 +02:00
nordsoft
dfaf778d16
Redesign loading solution
2023-08-22 20:10:20 +04:00
nordsoft
fb21620c60
Fix battle timer reset after refactoring
2023-08-22 14:14:50 +04:00
nordsoft
dd3e9f102b
Fix game crash at AI turn
2023-08-22 02:08:42 +04:00
nordsoft
7b4b01a280
Adopt turn timer to battle refactoring
2023-08-22 01:49:50 +04:00
nordsoft
d50edc28ab
Merge remote-tracking branch 'upstream/develop' into turn-timer
...
# Conflicts:
# server/CGameHandler.cpp
# server/CGameHandler.h
2023-08-22 00:54:38 +04:00
nordsoft
dbc3a93013
Merge remote-tracking branch 'upstream/develop' into loading-bar
...
# Conflicts:
# server/CGameHandler.h
2023-08-22 00:46:54 +04:00
nordsoft
4cf28fe00e
Fix linux clang compiling
2023-08-22 00:40:03 +04:00
nordsoft
45f13c7964
Progress update on client side
2023-08-21 19:21:27 +04:00
nordsoft
584dd20943
Progress on server side for rmg
2023-08-21 19:21:22 +04:00
Ivan Savenko
8154e84825
Fix tactics usage
2023-08-21 17:55:49 +03:00
Ivan Savenko
276c00b284
Removed excessive includes
2023-08-21 17:55:49 +03:00
Ivan Savenko
2be9664d26
Remove no longer used code
2023-08-21 17:55:49 +03:00
Ivan Savenko
67eaef3520
Fixed few more discovered regressions
2023-08-21 17:55:49 +03:00
Ivan Savenko
013417fb7e
Code cleanup
2023-08-21 17:55:49 +03:00
Ivan Savenko
c516b5a64e
Fixes for several discovered edge cases
2023-08-21 17:55:49 +03:00
Ivan Savenko
a1092e0f3f
Fix battle ending
2023-08-21 17:55:49 +03:00
Ivan Savenko
a1d3181a98
Unified spellcasting handling with other actions
2023-08-21 17:55:49 +03:00
Ivan Savenko
6297140bf5
Start of stabilization - battles now start correctly
2023-08-21 17:55:49 +03:00
Ivan Savenko
44832f3797
Split BattleProcessor into few more parts
2023-08-21 17:55:49 +03:00
Ivan Savenko
5c78060a07
Moved battle netpack validation to battle processor
2023-08-21 17:55:48 +03:00
Ivan Savenko
323772fc2e
Split CQuery file into multiple files
2023-08-21 17:55:07 +03:00
Ivan Savenko
629ca3f13e
Created directory structure for server files
2023-08-21 17:55:07 +03:00
Ivan Savenko
c217d7717a
server queries is now stored as unique_ptr
2023-08-21 17:55:07 +03:00
Ivan Savenko
e8e6c02a4a
Moved all battle-related functionality of server into a new class
2023-08-21 17:55:06 +03:00
Nordsoft91
ef4fddd0c4
Merge pull request #2570 from Laserlicht/town_selection_window
...
Town selection window
2023-08-20 17:37:45 +04:00
nordsoft
a09cb23a85
Better handling other players for turn timer
2023-08-20 04:06:52 +04:00
nordsoft
d4ab3087cb
Disable timer for AI players
2023-08-19 19:00:08 +04:00
Ivan Savenko
d0b3319f6a
Merge remote-tracking branch 'vcmi/beta' into develop
2023-08-18 15:08:23 +03:00
Ivan Savenko
daa8a494fc
Merge branch 'release_131' into master
2023-08-17 16:19:20 +03:00
Ivan Savenko
6e7b7932a0
Fixed recruitment of hero from towns located on map border
2023-08-17 10:26:01 +03:00
Ivan Savenko
00ac8eb306
Attempt to fix crash on quitApplication on Android
2023-08-15 00:17:59 +03:00
nordsoft
d26fdaefe4
Battle timer
2023-08-14 23:31:44 +04:00
nordsoft
23aaa72dfe
No error on hero move when timer is expired
2023-08-14 05:21:57 +04:00
nordsoft
a8e5b32b6a
Fix compiling
2023-08-14 04:55:45 +04:00
nordsoft
380ee41fba
Fix finishing turn while flying over object
2023-08-14 04:33:41 +04:00
nordsoft
e414af221b
Move turn timer logic from GameHandler class
2023-08-14 03:20:27 +04:00
nordsoft
3c9c302fd2
TurnTimerInfo
2023-08-14 02:16:25 +04:00
Michael
1d76f456ad
change servercode to make it more robust
2023-08-14 00:08:48 +02:00
nordsoft
4b1224ec8c
Implement turn timer feature
2023-08-13 14:07:48 +04:00
Ivan Savenko
f13a53c1d9
Merge remote-tracking branch 'vcmi/beta' into develop
2023-08-12 17:28:47 +03:00
Ivan Savenko
92ce97bbc7
Merge remote-tracking branch 'vcmi/master' into beta
2023-08-12 16:20:06 +03:00
Ivan Savenko
8cbc52364a
Merge pull request #2496 from IvanSavenko/saves_in_mods
...
Allowed loading saves from inside mods
2023-08-12 11:27:15 +03:00
Ivan Savenko
4b307dc0e4
More locks to avoid data races on server
2023-08-11 18:50:39 +03:00
Ivan Savenko
775e5948ec
Preserve chosen campaign bonus on scenario restart request
2023-08-11 16:55:20 +03:00
Ivan Savenko
88b23cdce1
Merge pull request #2511 from IvanSavenko/fix_starting_army
...
Fix starting army
2023-08-11 11:36:30 +03:00
Ivan Savenko
e57f8742cd
Rename ambiguos 'clear' to 'clearSlots'
...
A lot of map objects inherit from CCreatureSet and as result - get
clean() method that resets object army
2023-08-07 19:13:02 +03:00
Ivan Savenko
d7cbe4ecde
Attempt to fix data raced in battle on server
2023-08-07 17:28:21 +03:00
Ivan Savenko
9bd27c50a0
Allowed loading saves from inside mods
2023-08-06 19:39:55 +03:00
Ivan Savenko
ed927de12e
Added more informative error messages for battle action errors
2023-08-04 21:41:11 +03:00
Tomasz Zieliński
6e7a02702d
Fix crash in naval combat
2023-08-04 10:46:04 +03:00
Ivan Savenko
537f9fa048
Merged master into develop
2023-08-03 23:38:32 +03:00
Tomasz Zieliński
f6247164ad
Fix crash, fix invisible boat blocking the tile
2023-08-01 18:51:33 +02:00
Ivan Savenko
62fddca21e
Split massive CModHandler class/file into multiple parts:
...
- IdentifierStorage is now a separate handler in VLC
- Renamed ModHandler::Incompatibility exception to ModIncompatibility
- Extracted ModScope namespace from ModHandler
- Extracted ModUtilities namespace from ModHandler
- Split CModHandler.cpp on per-class basis
- Replaced some direct members with unique_ptr to reduce header includes
2023-07-30 22:17:47 +03:00
Ivan Savenko
7f72f7a82c
Cleanup server connection code a bit
2023-07-30 20:15:32 +03:00
Ivan Savenko
593b82d178
Removed all references to boost::interprocess library
2023-07-30 20:14:57 +03:00
Tomasz Zieliński
943e3e888c
Merge remote-tracking branch 'origin/beta' into fix-freeze-ai-attacking-dwelling
...
# Conflicts:
# server/CGameHandler.cpp
2023-07-29 08:11:27 +02:00
Andrii Danylchenko
8e1dc785eb
Wrong player was engaged for 5lvl dwelling
2023-07-28 14:19:12 +03:00
Ivan Savenko
aed8c411fc
Minor rework & cleanup of combat replays
2023-07-27 19:25:55 +03:00
Ivan Savenko
b8110218c0
Silence unnecessary warning on flagging guarded garrison
2023-07-27 18:39:05 +03:00
Ivan Savenko
e733b55c90
Removed buggy and poorly designed fromString method
...
Use VLC->modh directly with proper parameters instead
2023-07-25 22:36:45 +03:00
Ivan Savenko
705cdb846d
Merge pull request #2403 from IvanSavenko/error_detection_fix
...
Attempt to fix & improve error reporting
2023-07-25 18:15:28 +03:00
Andrii Danylchenko
ec8898a0e7
#1965 - treat dwelling defenders as neutrals
2023-07-25 10:13:41 +03:00
Ivan Savenko
21e794268b
Attempt to fix & improve error detection:
...
- use std::fstream instead of boost::iostreams for properly working flush
- removed some catch-all blocks
- reduce catch scope of some try/catch blocks to clearly indicate intent
2023-07-24 18:48:56 +03:00
Ivan Savenko
280085b95d
Merge pull request #2308 from IvanSavenko/remove_client_savegame
...
Remove client savegames
2023-07-19 14:46:46 +03:00
Ivan Savenko
b94de1b799
Fixed amount of gold given by resource cheat - x1000 instead of x100
2023-07-17 16:15:49 +03:00
Ivan Savenko
b193f832a5
Fix regression
2023-07-15 21:01:14 +03:00
Ivan Savenko
fcb13771f3
Store cheater state per player
2023-07-15 21:01:14 +03:00
Ivan Savenko
baa865d857
Extracted message-related functionality of CGameHandler to separate file
2023-07-15 21:01:13 +03:00
Ivan Savenko
463efea7bb
Fix hero retreating handling & code cleanup
2023-07-15 19:55:30 +03:00
Ivan Savenko
cb16636fce
Implemented preserving hero on retreat on 7th day after end of turn
2023-07-15 19:55:30 +03:00
Ivan Savenko
9a38d8ea97
Implemented tavern slot selection using rules similar to H3
2023-07-15 19:55:30 +03:00
Ivan Savenko
ec7e046617
Fix hero pool persistency between saves
2023-07-15 19:55:30 +03:00
Ivan Savenko
539c508870
Implemented persistent random seed for hero pool
2023-07-15 19:55:30 +03:00
Ivan Savenko
a2d2ecc96f
Roll first for hero class, and then - for actual hero for tavern
2023-07-15 19:55:30 +03:00
Ivan Savenko
f8187ce1d8
Fix regressions
2023-07-15 19:55:30 +03:00
Ivan Savenko
19ace6a849
Moved hero pool logic to the separate files
2023-07-15 19:55:29 +03:00
Dydzio
afb9bfc180
Revert apparently broken changes from commits 96420bf
, 92dcfd1
, c4cf2a1
2023-07-11 21:22:24 +02:00
Ivan Savenko
9acab48bc3
Merge pull request #2268 from SoundSSGood/CArtifactInstance-rework
...
CArtifact CArtifactInstance refactoring
2023-07-11 14:36:08 +03:00
Ivan Savenko
8750aa2c5b
Merged server savegame and (broken and unused) client savegame files
2023-07-09 15:30:47 +03:00
Andrii Danylchenko
b1ef0f6301
#1912 Some logging and fix for allied garrison
2023-07-09 10:21:58 +03:00
SoundSSGood
9b5f6ec7cf
CArtifact getters setters
2023-07-05 15:48:08 +03:00
SoundSSGood
fd9c7352a0
suggested changes
2023-07-03 22:54:03 +03:00
Ivan Savenko
48eb8ab54f
Play sound when receiving message, not just on sending ours
2023-07-03 17:12:31 +03:00