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

1766 Commits

Author SHA1 Message Date
Ivan Savenko
106a3b6c8e Fix self-visiting skipping battle on landing after flying above monster 2024-06-04 14:13:12 +00:00
Ivan Savenko
5ecb527252
Merge pull request #3997 from IvanSavenko/serialization_refactor
[1.6] Serialization refactor
2024-05-30 19:13:21 +03:00
SoundSSGood
7abfa7b42a ArtifactPosition::TRANSITION_POS now is simple ArtSlotInfo 2024-05-17 14:59:51 +03:00
Ivan Savenko
84bc6c42db Added 'Serializeable' base class for classes serializeable by pointer 2024-05-16 18:40:59 +00:00
Ivan Savenko
9049fb738a
Merge pull request #3946 from dydzio0614/mana-vortex-hero-order
Fix "bonusing" town building visiting hero order
2024-05-11 21:58:23 +03:00
Dydzio
f20ef4f1b3 Fix hero order for giving bonuses in town to match H3. 2024-05-11 20:21:02 +02:00
Ivan Savenko
145cd38025 Use sight center for fow reveal actions 2024-05-10 16:48:44 +00:00
Ivan Savenko
880f692762 Slightly better randomization of map template 2024-05-08 17:11:14 +00:00
Ivan Savenko
8b861fc58f Do not check for guards when teleporting using means other than DD 2024-05-07 20:05:23 +00:00
Ivan Savenko
ac11a0e639 Blocked most of incoming network packs during turns of other players 2024-04-30 17:51:31 +03:00
Ivan Savenko
c74d728f5a
Merge pull request #3833 from SoundSSGood/artifacts-costumes
Artifacts costumes
2024-04-28 16:10:24 +03:00
Ivan Savenko
142bbe652a
Merge pull request #3829 from IvanSavenko/goldmaster
Tweaks for public release mode
2024-04-28 13:11:38 +03:00
SoundSSGood
ce68b3f45d class CArtifactsOfHeroMain : public CKeyShortcut 2024-04-27 21:35:38 +03:00
SoundSSGood
ce9d2d8ab8 Switching costume 2024-04-27 21:35:37 +03:00
SoundSSGood
25dea7e364 Saving costume 2024-04-27 21:35:37 +03:00
Ivan Savenko
b8b42978b1 Reduce includes in headers 2024-04-26 13:26:33 +03:00
Ivan Savenko
090a1c7764 TurnTimerHandler is now a unique_ptr 2024-04-26 13:15:39 +03:00
Ivan Savenko
98416acac4 Hide error messages from server in goldmaster mode 2024-04-25 18:52:53 +03:00
Dydzio
b351946afd Add some utility bonuses for player resources boosting 2024-04-15 21:18:45 +02:00
SoundSSGood
e8a6308a15 Artifacts swap check 2024-04-10 23:30:31 +03:00
Ivan Savenko
bcd4a8c961
Merge pull request #3736 from IvanSavenko/fix_server_translations
Do not translate strings on server side
2024-04-10 19:12:34 +03:00
Ivan Savenko
18ece6dcf6 Remove some usages of server-side translations 2024-04-09 16:13:30 +03:00
Dydzio
3f94d316cb Fix cursor & add way to access danger info for HotA-like DD cursor 2024-04-01 20:18:35 +02:00
Dydzio
f51e1a0ba6 Working version of dimension door triggering guards 2024-04-01 19:00:24 +02:00
SoundSSGood
9f688e6fb7 MoveArtifact, BulkMoveArtifacts PlayerColor player field 2024-03-07 22:28:56 +02:00
SoundSSGood
b1f52eec41 ManageBackpackArtifacts 2024-03-07 18:16:22 +02:00
Laserlicht
37f621abbd fix visiting objects other than town 2024-02-28 23:13:51 +01:00
Ivan Savenko
c23953eac5 Remove custom casts 2024-02-14 12:56:37 +02:00
Ivan Savenko
392c360f88 Replaced some usages of void * with more clear CPack * 2024-02-12 12:53:10 +02:00
Ivan Savenko
f2ecd4cf11 Merge branch 'develop' into 'lobby' 2024-02-11 16:13:13 +02:00
Dydzio
fd9810adf4 Working SoD version of fly 2024-02-07 19:27:02 +01:00
Ivan Savenko
80fc2bb695 Merge remote-tracking branch 'vcmi/develop' into lobby 2024-02-03 21:11:34 +02:00
Ivan Savenko
2c2bec791c Fixes and cleanup of game client network shutdown and restart 2024-02-03 19:27:04 +02:00
Ivan Savenko
6eef197cea Removed no longer used mutexes from match server 2024-02-03 17:04:14 +02:00
Ivan Savenko
58ee72f684
Merge pull request #3588 from IvanSavenko/fix_regressions
Fix regressions
2024-02-01 22:27:52 +02:00
Ivan Savenko
b25d4d76a7 Fix Grail digging success message 2024-02-01 18:22:11 +02:00
SoundSSGood
a42b60feb9 suggested changes 2024-02-01 13:28:08 +02:00
SoundSSGood
c6ca6ad835 sacrifice routine 2024-01-27 23:01:57 +02:00
SoundSSGood
f66918ea14 bulk move to altar 2024-01-27 15:28:23 +02:00
SoundSSGood
652f009181 arts altar - arts holder 2024-01-27 15:28:21 +02:00
Ivan Savenko
322c5faf63 Merge remote-tracking branch 'vcmi/develop' into lobby 2024-01-26 16:52:23 +02:00
Ivan Savenko
2a193effcc Merge branch 'master' into 'develop' 2024-01-25 16:23:13 +02:00
Ivan Savenko
fc4ae3bd8c Merge remote-tracking branch 'vcmi/develop' into lobby 2024-01-20 23:01:49 +02:00
Ivan Savenko
0c07384293 Refactoring of serialization versioning handling
- Removed 'version' field from serialize() method
- Handler classes - Binary(De)Serializer now have 'version' field
- Serialization versioning now uses named enum

Save compatibility with 1.4.X saves should be intact
2024-01-20 20:34:51 +02:00
Ivan Savenko
24d25730ad Changed checks for null with checks for hasValue 2024-01-20 16:41:10 +02:00
Ivan Savenko
0a1153e1c6 Switch client-server communication to new API 2024-01-19 23:49:59 +02:00
Ivan Savenko
e50f586d8b Stabilization 2024-01-19 14:21:13 +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
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
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
SoundSSGood
8d4b74b441 Assembling in backpack fixed 2024-01-18 12:49:08 +02:00
Ivan Savenko
4735ad8299 Automatically activate scholar skill on visiting town 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
397da95969 More human-readable messages for simturns contact attempts 2024-01-13 19:40:19 +02:00
Alexander Wilms
f3277b7953 Define each identifier in a dedicated statement 2024-01-10 00:22:23 +00: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
40e423884f Do not attempt to build non-existing buildings via events 2024-01-05 18:51:00 +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
e77651d3f3
Merge pull request #3377 from dydzio0614/commander-skills-fix
Commander skills fix
2023-12-24 13:33:48 +02:00
Ivan Savenko
08a4b67cd7
Merge pull request #3372 from IvanSavenko/bugfixing
[1.4.2] Bugfixing
2023-12-23 22:05:39 +02:00
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
Dydzio
bcda68abef Fix crash on giving WoG experience - quantity 0 unit on army transfer 2023-12-23 15:32:21 +01:00
Ivan Savenko
dd88220b7c Fixed potentially uninitialized class member 2023-12-17 19:44:45 +02:00
Ivan Savenko
e23cddac8c Fix AI movement 2023-12-10 19:18:15 +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
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
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
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
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
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
Ivan Savenko
b88a8da4e8 Split off some netpack structures into separate files 2023-10-23 13:59:15 +03:00
Ivan Savenko
ac925bb786 Renamed new types for consistency with code style 2023-10-22 16:55:19 +03:00
Ivan Savenko
910ad50417 Fix client & server compilation 2023-10-22 16:54:48 +03: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
nordsoft
9108f7e3e5 Remove assert triggered while flying 2023-10-12 13:40:28 +02:00
Ivan Savenko
898733eed7 Added Query to track visit duration for Taverns and Markets 2023-10-04 17:47:12 +03: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
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
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
3ea807fb8d Fixed movement through teleporters by AI 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
b2f30f78fa Allow one AI and human to act simultaneously 2023-09-26 13:42:20 +03:00
nordsoft
dce1ac1538 Redesign mod incompatibility message 2023-09-23 00:32:48 +02: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
a83f290e13 bulk move artifacts only equipped, only backpack 2023-09-19 13:31:42 +03:00
Ivan Savenko
f1c40466d3 Changes according to review 2023-09-18 18:17:26 +03:00
Ivan Savenko
b7de685483 Fixed paths through teleport, formatting cleanup 2023-09-16 20:35:04 +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
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
f39fbe5151
Merge pull request #2757 from IvanSavenko/filesystem_refactor
Filesystem refactor - part 1
2023-09-07 10:51:02 +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
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
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
00216168bf Timer works as designed 2023-08-30 03:44:09 +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
2c61d1b23f Use precision clocks for timer 2023-08-28 19:45:15 +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
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
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
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
97ba7df152 Fix handling of map turn/day limit 2023-08-24 23:34:33 +03:00