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
SoundSSGood
670999d40e
BattleResultAccepted fixed
2023-07-01 14:59:16 +03:00
SoundSSGood
060aecc61c
CArtifact refactoring
2023-06-30 19:41:26 +03:00
SoundSSGood
07c811dd67
CCombinedArtifactInstance refactoring
2023-06-30 19:40:57 +03:00
Ivan Savenko
6493922f9b
Reverted debug changes
2023-06-27 16:27:46 +03:00
Ivan Savenko
48ac84110b
Replaced hero crossover logic with one that actually matches H3
2023-06-26 17:15:59 +03:00
Ivan Savenko
f6b2f58da9
Use inheritance instead of composition for campaign header
2023-06-26 17:15:59 +03:00
Ivan Savenko
a08fe09517
Added encapsulation for CampaignState class
2023-06-26 17:15:59 +03:00
Ivan Savenko
8420a90aa4
Reorganization of campaigns code
2023-06-26 17:15:59 +03:00
Ivan Savenko
d1e5a347ff
Refactoring of campaign handler: rename types and use strong typing
2023-06-26 17:15:59 +03:00
Ivan Savenko
85262cf4f5
Moved CGameState files into a separate directory
2023-06-26 17:15:59 +03:00
Ivan Savenko
08cfbe79cf
Added encapsulation for movement points access
2023-06-25 17:42:36 +03:00
Ivan Savenko
f7b27da00e
Implemented support for "coast visitable" objects:
...
- objects marked as coast visitable can be visited from land even when
placed in water
- added isBlockedVisitable and isCoastVisitable method to
CGObjectInstance
- implemented json config for these properties in banks
2023-06-25 17:42:33 +03:00
Ivan Savenko
ce3e150d59
Minor formatting
2023-06-23 13:55:52 +03:00
Ivan Savenko
6a08a96d0c
Added createObject call as wrapper around NewObject netpack
2023-06-23 13:42:08 +03:00
Ivan Savenko
d8879f1e53
NewObject pack now receives visitable position instead of h3m position
2023-06-23 13:34:51 +03:00
Ivan Savenko
69dc95c3c8
Merge pull request #2235 from IvanSavenko/hota_h3m_support
...
Hota h3m support
2023-06-23 13:32:10 +03:00
Ivan Savenko
bd4d2788ed
Split pathfinder into multiple smaller files
2023-06-21 13:46:09 +03:00
Ivan Savenko
87fcfa4add
Removed excessive pathfinder includes
2023-06-21 12:00:44 +03:00
Ivan Savenko
3913b8e98c
Heroes placed on water in map will be automatically given boat
2023-06-20 19:37:27 +03:00
Ivan Savenko
a84666edf6
MetaString can be serialized in json
2023-06-20 19:37:27 +03:00
Ivan Savenko
d51fe62804
Win/loss condition texts use MetaString
2023-06-20 19:37:27 +03:00
Ivan Savenko
56d69e790b
Renamed MetaString methods to more logical names
2023-06-20 19:37:27 +03:00
Ivan Savenko
f35b3a0dc3
Replace MetaString operator << with member function
2023-06-20 19:37:27 +03:00
Ivan Savenko
6ed0fbe579
Fix excessive warning - neutral town with Portal is perfectly legal
2023-06-20 19:37:27 +03:00
Ivan Savenko
ece9982ca0
Fix build
2023-06-16 18:11:45 +03:00
Ivan Savenko
6aedb99117
Cleaned up IShipyard interface
2023-06-16 17:59:10 +03:00
Tomasz Zieliński
adec58f5bf
- Set fixed boat type for Tavern / Prison
...
- Move magical boat offset to static function
2023-06-15 17:53:18 +02:00
Tomasz Zieliński
351d596bdc
Handle water Prisons and Taverns.
2023-06-08 09:17:08 +02:00
Tomasz Zieliński
db917ae435
Fix #1140
2023-06-07 17:29:07 +02:00
Ivan Savenko
1e9eea30e1
Merge remote-tracking branch 'soundsgood/CArtHandler-rework' into develop
2023-06-05 18:53:17 +03:00
Ivan Savenko
acac42291e
Remove excessive CMap.h includes
2023-05-31 23:18:38 +03:00
Michael
70bdec41a3
case-insensitive cheats
2023-05-20 01:14:06 +02:00
SoundSSGood
021f94a579
artifact utils
2023-05-17 17:00:31 +03:00
SoundSSGood
a10279e1cc
Grail fix
2023-05-16 16:51:45 +03:00
Ivan Savenko
79982c4ad4
Fix broken bonuses due to calling PutArtifact before NewArtifact
2023-05-09 16:48:52 +03:00
nordsoft
ce80c83ca2
Merge remote-tracking branch 'upstream/develop' into town-buildings
...
# Conflicts:
# lib/CTownHandler.cpp
# lib/rewardable/Interface.cpp
2023-05-04 22:23:44 +04:00
Konstantin
05eccbc2bb
vcmi: split bonus to enumerator and HeroBonus.h
2023-05-03 18:01:06 +03:00
nordsoft
92dcfd1f68
Fix garrisons hero
2023-05-02 15:09:02 +04:00
nordsoft
96420bfc05
Fix configurable reward for non-query scenrio
2023-05-02 14:45:42 +04:00
Konstantin
fbc05c70ac
vcmi: camelCase methods of new classes
...
Also use EGameSettings for clamping morale and luck
2023-05-02 12:09:13 +03:00
Konstantin
a6de9097be
vcmi: rename HeroBonus.h to Bonus.h
2023-05-02 11:20:58 +03:00
nordsoft
c4cf2a100b
Fix behavior for hero bought in town tavern
2023-05-02 04:44:09 +04:00
Ivan Savenko
916b41d9a7
Merge pull request #2078 from IvanSavenko/shortcuts
...
Basic shortcuts system
2023-05-01 21:45:52 +03:00
nordsoft
59bc9326e9
Remove excess pointer from market interface
2023-05-01 21:49:37 +04:00
Ivan Savenko
a654cc2391
Removed vstd::advance. Added vstd::next to handle similar cases.
2023-05-01 17:58:18 +03:00
Ivan Savenko
ac09f78c67
Merge pull request #2109 from IvanSavenko/server_fix
...
Fix potential nullptr-to-reference conversion
2023-05-01 16:36:51 +03:00
Ivan Savenko
c7bee037d2
Fix potential nullptr-to-reference conversion
2023-05-01 14:44:52 +03:00
Ivan Savenko
4aa232a60a
Merge pull request #2055 from SoundSSGood/cartifactholder-rework
...
Artifact related code refactoring part2 (client CArtifactHolder)
2023-05-01 02:33:08 +03:00
Konstantin
86f5d6de69
vcmi: modernize headers
2023-04-30 13:35:54 +03:00
Ivan Savenko
d985ac90d3
Merge master -> develop
2023-04-28 22:57:25 +03:00
Ivan Savenko
c55f52e84f
Fixed disabled special weeks
2023-04-28 16:54:00 +03:00
Konstantin P
b472c89276
vcmi: make some CStack properties private
...
There is a getters for this properties already available
2023-04-27 20:58:49 +03:00
Ivan Savenko
fb739e7186
Merge beta -> develop
2023-04-26 22:48:08 +03:00
Ivan Savenko
9296306fa3
Merge pull request #2041 from IvanSavenko/bugfixing_for_hotfix
...
Fixes for 1.2.1
2023-04-24 18:13:00 +03:00
Ivan Savenko
48abf46824
Merge pull request #2005 from IvanSavenko/advmap_refactor
...
Refactoring of adventure map interface
2023-04-24 17:19:22 +03:00
Andrii Danylchenko
eff158a9a8
Fix killing hero with grail
2023-04-23 16:17:27 +03:00
SoundSSGood
c86af54ce1
arts move condition fix
2023-04-23 14:18:55 +03:00
Nordsoft91
a553a4aa66
Merge pull request #2030 from Nordsoft91/boats
2023-04-22 03:27:00 +04:00
Ivan Savenko
7db67a3101
int3 now has proper hasher function
2023-04-20 22:04:24 +03:00
nordsoft
de159df481
Rename boats
2023-04-20 21:20:51 +04:00
Ivan Savenko
9882c37ce3
Good morale can no longer happen after battle is over
2023-04-20 13:10:03 +03:00
Ivan Savenko
d9939f0918
Bad morale can no longer happen after waiting
2023-04-20 13:08:55 +03:00
Ivan Savenko
4bb4d7e7a5
Merge pull request #1989 from SoundSSGood/refactoring-arts-p1
...
Artifact related code refactoring part1 (initial)
2023-04-19 15:31:11 +03:00
nordsoft
0a28262c15
Merge remote-tracking branch 'upstream/develop' into boats
...
# Conflicts:
# AI/VCAI/Pathfinding/AINodeStorage.cpp
2023-04-19 02:22:19 +04:00
nordsoft
008db447e7
Minor changes
2023-04-19 02:11:24 +04:00
nordsoft
22da7a931d
Boat as bonus system node
2023-04-19 01:11:51 +04:00
nordsoft
1c66cd221d
Polish transport mechanics
2023-04-18 19:18:44 +04:00
nordsoft
3ff99a1a15
Mechanic for air and land transport
2023-04-18 18:33:28 +04:00
nordsoft
ddcdfb643a
Try to enable air/land movement
2023-04-18 17:36:42 +04:00
nordsoft
ed798b06da
Prepare transport enum
2023-04-18 13:04:49 +04:00
Konstantin
7a5775a9f9
vcmi: use std::optional
2023-04-17 00:43:13 +03:00
Konstantin
0d35606a44
vcmi: use std::variant
2023-04-17 00:43:13 +03:00
Ivan Savenko
e3ed728193
Merge pull request #1932 from rilian-la-te/proper-teleport
...
VCMI: teleport redesign
2023-04-16 22:52:01 +03:00
SoundSSGood
9a838598a6
arts refactoring part1
2023-04-15 00:10:39 +03:00
Konstantin P
f11fa8f0c8
Teleport: can trigger obstacles now
2023-04-13 11:24:19 +03:00
Konstantin
bc1aad3b26
vcmi: remove deprecated CStack::getCreature()
...
Function battle::Unit::unitType() does the same.
2023-04-13 11:24:19 +03:00
Ivan Savenko
506c3d29bc
Replaced vstd clamp with std version
2023-04-12 01:03:14 +03:00
Ivan Savenko
63b197b78a
Converted attributes to use c++17 functionality
2023-04-12 01:03:14 +03:00
Nordsoft91
3951bbb395
Merge pull request #1108 from Nordsoft91/battle-dialog
...
[HDMod features] Quick combat
2023-04-11 21:18:04 +04:00
Ivan Savenko
dfa2e2a349
Merge beta into develop
2023-04-11 19:37:35 +03:00
nordsoft
8e77b833d9
Merge remote-tracking branch 'upstream/develop' into battle-dialog
2023-04-11 15:54:08 +04:00
Ivan Savenko
ff66592fad
Merge pull request #1882 from rilian-la-te/native-terrain-refactor
...
Native terrain refactor
2023-04-11 02:14:37 +03:00
nordsoft
bfc75ccd39
Merge remote-tracking branch 'upstream/develop' into battle-dialog
2023-04-11 02:22:42 +04:00
Nordsoft91
ebd17c9e4a
Merge pull request #1928 from Nordsoft91/cast-reward
...
Spell cast reward
2023-04-10 22:49:36 +04:00
Konstantin
fedf7d377c
vcmi: remove TFaction
...
This is a huge change and will break save compatibility
2023-04-10 19:28:16 +03:00
Ivan Savenko
42b2be4bbb
Merge pull request #1908 from SoundSSGood/art-client-server-fixes
...
Artifact related fixes
2023-04-10 18:26:49 +03:00
Konstantin
2eaecfd1ae
ObstacleCasterProxy: beta branch
2023-04-10 15:41:58 +03:00
nordsoft
464ad63749
Implement behavior
2023-04-10 05:46:45 +04:00
nordsoft
c0b90432cb
Change callback interface
2023-04-10 05:40:03 +04:00
nordsoft
e440343921
Bypass initial version of spell callback
2023-04-10 04:34:24 +04:00
SoundSSGood
e58be8e7f7
vcmiartifacts fixed
2023-04-08 12:28:53 +03:00
SoundSSGood
ea7dd14d8b
client is able to erase artifact
2023-04-08 00:41:55 +03:00
Ivan Savenko
f3aed901fd
Merge pull request #1883 from rilian-la-te/fixup-healing-destination
...
CGameHandler: fixup healing destination
2023-04-07 12:42:52 +03:00
nordsoft
b1d06b6141
Complete quick combat feature
2023-04-06 22:49:38 +04:00
nordsoft
e85593dbb3
Save & restore mana
2023-04-06 21:19:46 +04:00
nordsoft
3e28b58c80
Fixes
2023-04-06 19:59:22 +04:00
nordsoft
ece8a2a41f
Merge branch 'battle-dialog' into battle-dialog2
...
# Conflicts:
# AI/BattleAI/BattleAI.h
# AI/StupidAI/StupidAI.h
# client/CPlayerInterface.cpp
# client/CPlayerInterface.h
# client/Client.cpp
# client/NetPacksClient.cpp
# client/battle/CBattleInterface.cpp
# client/battle/CBattleInterface.h
# client/battle/CBattleInterfaceClasses.cpp
# client/battle/CBattleInterfaceClasses.h
# config/schemas/settings.json
# lib/CGameInterface.h
# lib/IGameEventsReceiver.h
# lib/NetPacks.h
# lib/NetPacksLib.cpp
# lib/battle/BattleInfo.cpp
# server/CGameHandler.cpp
# server/CQuery.h
2023-04-06 19:53:52 +04:00
nordsoft
ce3028bd73
Intermediate commit
2023-04-06 19:34:07 +04:00
Konstantin
dc7d0297a7
CGameHandler: fixup healing destination
...
If it contains hex, not unit, server complains.
Add actual unit there.
2023-04-06 00:21:21 +03:00
Konstantin
11b237a23c
vcmi: massive refactoring v1
2023-04-05 22:33:12 +03:00
Konstantin
e0715a76c8
vcmi: reduce CStack usage a little bit
2023-04-04 23:02:54 +03:00
Konstantin
e946ddcfeb
CGameHandler: obstacle trigger does not use CStack
2023-04-04 23:02:54 +03:00
Konstantin
4259d116e1
vcmi: move ServerSpellCastEnvironment in separate file
...
In theory, it should not know about CGameHandler
2023-04-04 23:02:54 +03:00
Ivan Savenko
307065a633
Merge beta into develop
2023-04-04 16:06:20 +03:00
Ivan Savenko
c661419897
Merge pull request #1700 from rilian-la-te/resource-array
...
Modernize resourceSet.
2023-04-02 20:12:45 +03:00
Ivan Savenko
2b1def4ef1
Merge pull request #1813 from Laserlicht/patch-1
...
hide messages from AI
2023-04-02 20:08:45 +03:00
Ivan Savenko
f471d1b23a
Merge pull request #1816 from krs0/feature/all_cheats_should_have_lotr_equivalent
...
Added LotR alternatives for vcmiarmy and vcmiexp
2023-04-02 20:08:33 +03:00
Ivan Savenko
efbc5cf581
Merge pull request #1815 from IvanSavenko/beta_fixes
...
Beta fixes
2023-04-02 20:02:41 +03:00
krs
28486a0b40
In the Silmarillion, Gandalf is referred to as "Olórin"
2023-04-02 10:58:20 +03:00
krs
7bec5bf606
Added LotR alternatives for vcmiarmy and vcmiexp
2023-04-02 10:58:20 +03:00
Ivan Savenko
63d0e437a9
Merge pull request #1820 from rilian-la-te/fix-magogs
...
GGameHandler: fix spell-like attack targeting
2023-04-01 23:09:08 +03:00
Konstantin
05cc7fbf67
GGameHandler: fix spell-like attack targeting
2023-04-01 01:06:26 +03:00
Ivan Savenko
56e1866db9
Remove final path node when directly attacking guards
2023-03-31 23:18:45 +03:00
Ivan Savenko
820c9be61b
Use own resources when buying boat in allied shipyard
2023-03-31 23:18:45 +03:00
Michael
f7feeacc1f
hide messages from AI
2023-03-31 22:10:48 +02:00
Konstantin
6d17b9342d
ResourceSet: resolve .at troubles
2023-03-31 14:12:38 +03:00
Konstantin
d8a237ba46
vcmi: add getTrigger method to obstacles
...
Fixes advanced remove obstacle spell
2023-03-31 01:01:26 +03:00
Konstantin
d5e2933bee
CGameHandler: slightly rework obstacle caster
2023-03-31 01:01:26 +03:00
Konstantin
53a6fb2836
CGameHandler: do not open-code toInfo
...
There is an obstacle function which is doing exactly this.
2023-03-31 01:01:25 +03:00
Konstantin
f704a17e1a
vcmi: add a last hex setting
...
I consider this behaviour as H3 bug, but this is H3.
So, added a setting to disable this behaviour.
2023-03-31 01:01:25 +03:00
Konstantin
a8478a012b
vcmi: check long bridge by moat
...
If moat is on GATE_BRIDGE hex, then it is a long bridge.
No need to check town type.
2023-03-31 01:01:25 +03:00
Konstantin
aab5b47038
vcmi: setup moats using MoatAbility
...
Setup moats using moat ability, need playtest for now.
-3 to defence not added for now.
2023-03-31 01:01:25 +03:00
Ivan Savenko
46ccd65080
Removed largely unused signal handling, fixes build with musl c library
2023-03-30 14:56:13 +03:00
Konstantin
cd1730b1fb
vcmi: remove obstacle caster logic
...
It is possible now to cast something via obstacle
Immune creatures should not trigger an obstacle trigger now
and should not reveal it.
2023-03-30 14:41:40 +03:00
Konstantin
5716925b47
NetPacks: change GiveBonus enum to enum class.
2023-03-30 12:41:17 +03:00
Ivan Savenko
484f0a175a
Blocked movement of war machines in tactics phase
2023-03-30 12:20:13 +03:00
Ivan Savenko
8a3e1b0230
Merge pull request #1789 from IvanSavenko/beta_fixes
...
Fixes for 1.2 release
2023-03-30 00:09:51 +03:00
Ivan Savenko
3e1506dba3
Merge pull request #1767 from Adriankhl/fix_battle_thread_shutdown
...
Properly shutdown battle thread
2023-03-29 14:40:15 +03:00
Ivan Savenko
0c7dae0913
Allow formation change while in hero exchange query
2023-03-28 19:12:35 +03:00
Ivan Savenko
b2f5042942
Merge pull request #1783 from vcmi/beta
...
Merge beta -> develop
2023-03-27 21:21:25 +03:00
Ivan Savenko
11088100a0
Merge pull request #1782 from korli/haiku
...
Haiku patch
2023-03-27 18:42:22 +03:00
Ivan Savenko
b875da108b
Merge pull request #1717 from SoundSSGood/backpack-limit-size
...
Introducing backpack size limit functionality
2023-03-27 17:17:49 +03:00
Ivan Savenko
e3b5db0ade
Merge pull request #1778 from rilian-la-te/fix-obstacle-removal-mechanincs
...
Fix landmines staying on battlefield after trigger
2023-03-27 17:17:14 +03:00
Konstantin
9a229d6e48
vcmi: really correct obstacle trigger
...
Now obstacle trigger really matches H3
2023-03-27 16:11:17 +03:00
Jerome Duval
518f8d69e5
Haiku patch
2023-03-27 10:10:09 +02:00
Konstantin
5b50191af7
NetPacksLib: remove obstacle ACTIVATE* actions
...
Actually these actions was not working anyway.
2023-03-26 22:59:34 +03:00
Adriankhl
21a4113fc1
Properly shutdown battle thread in CGameHandler destructor
2023-03-25 20:29:33 +01:00
Ivan Savenko
5288e3761e
Merge pull request #1764 from IvanSavenko/selectable_spellcaster
...
Implemented support for multi-spell casters
2023-03-25 20:08:47 +02:00
Ivan Savenko
dc099b2a35
Implemented support for multi-spell casters
2023-03-25 00:48:14 +02:00
Ivan Savenko
970981cfc9
Show information on potential kills in attack tooltip
2023-03-24 17:18:47 +02:00
SoundSSGood
19096f39f0
Backpack limit. Amount of fixes.
2023-03-21 22:11:42 +02:00
Ivan Savenko
575fb29a22
Merge pull request #1534 from kambala-decapitator/pathfinder-fly
...
fix movement cost with Fly
2023-03-21 14:32:56 +02:00
SoundSSGood
f0f9eecf97
Backpack limit part5. End of battle. Other stuff
2023-03-21 12:14:33 +02:00
SoundSSGood
9f8aa25297
Backpack limit part4 (Using cheats, buying)
2023-03-21 12:14:33 +02:00
SoundSSGood
e23766280f
Backpack limit part2 (Pick up, Dig up, Object rewards)
2023-03-21 12:14:33 +02:00
SoundSSGood
96e8a1f21c
Backpack limit part1 (move, disassemble)
2023-03-21 12:14:33 +02:00
SoundSSGood
72122fb433
CArtifact, CArtifactInstance, CCombinedArtifactInstance reorganization
2023-03-21 12:14:33 +02:00
Adriankhl
8d549bf030
Fix town portal query when it calls level up query
2023-03-20 16:08:18 +01:00
Andrey Filipenkov
aae9e70771
remove duplicate call
...
already performed in CPathfinderHelper constructor
2023-03-20 11:35:19 +03:00
Ivan Savenko
a0e9e01b48
Renamed & reorganized all game mechanics settings names
2023-03-16 18:11:35 +02:00
Ivan Savenko
383387ef29
Integrated defaultMods into mod system
2023-03-16 17:55:09 +02:00
Konstantin
ebbc8cf208
vcmi: remove BLOCK_LUCK bonus
...
To block a luck, just set both INDEPENDENT_MAX and INDEPENDENT_MIN
to 0 of LUCK bonus
2023-03-16 16:46:42 +03:00
Konstantin
c07e74250b
vcmi: remove BLOCKS_MORALE bonus
...
To block morale, just set INDEPENDENT_MAX and INDEPENDENT_MIN
to 0, there is no need for separate bonus.
2023-03-16 16:46:42 +03:00
Konstantin
20a9332a3f
vcmi: translate wisdom
...
Make wisdom as separate bonus. It will be enough for now. But
next is should be done as IsLearnable for each spell.
2023-03-16 16:46:41 +03:00
Konstantin
64ad7558c6
vcmi: skill-agnostic artillery
...
Now it should work for any creature and with any damage percentage.
2023-03-16 16:46:41 +03:00
Konstantin
9205ef2c91
vcmi: skill-agnostic ballistics
...
Made ballistics by using spell action and more code is shared now.
2023-03-16 16:46:41 +03:00
Konstantin
84f53485e2
vcmi: skill-agnostic first aid
...
Now first aid is passive battle spell, and skill just bumps
specific spell power for this spell. Everything about healing
is handled into Heal spell effect.
2023-03-16 16:46:41 +03:00
Konstantin
300a8a15ba
vcmi: remove estates bonus
...
Now it is handled by GENERATE_RESOURCE::GOLD.
2023-03-16 16:46:41 +03:00
Konstantin
43f09dd2e4
vcmi: convert scholar to new bonus
...
Convert scholar to new skill-agnostic bonus. Now works only for any
school (not from specific). In all schools form identical to
past's SECONDARY_SKILL_PREMY::SCHOLAR
2023-03-16 16:46:41 +03:00
Konstantin
4a89418ada
vcmi: replace SecondarySkillPremy:EAGLE_EYE
...
Replace this bonus to new ArcaneIntuition bonus, which
will work independently from the rest of skill bonuses.
Proof of concept for other skills.
2023-03-16 16:46:41 +03:00
Konstantin
496c1def12
vcmi: remove FULL_HP_REGENERATION bonus
...
Just set HP_REGENERATION to high number
(in OH3 doubled stack health is sufficient)
2023-03-16 16:46:41 +03:00
Ivan Savenko
865f9f7d2b
Merge pull request #1511 from IvanSavenko/launcher_welcome_page
...
Add welcome/setup page to Laucher
2023-03-16 15:04:49 +02:00
Ivan Savenko
2a2af34788
Merge pull request #1650 from SoundSSGood/arts-swap-regression-fix
...
Arts swap regression fixed
2023-03-16 14:47:31 +02:00
Ivan Savenko
369e925af8
Loading of translation mods is now skipped on language mismatch
2023-03-14 16:02:16 +02:00
Konstantin
4c31db52be
vcmi: add artifact component to second grail msg
2023-03-11 21:41:57 +03:00
Konstantin
bc228a938a
vcmi: use enum class for EComponentType
...
There is really no reason not to use it
2023-03-11 21:41:57 +03:00
Konstantin
716dd9a43b
vcmi: remove a bunch of duplicated showInfoDialog
...
These methods duplicated in almost every map object
Just replace it by one such method
2023-03-11 21:41:57 +03:00
Konstantin
8edba4fb06
vcmi: use MODAL by default
...
Convert only some objects to AUTO, need futher testing
than no non-adventure objects will not use AUTO or INFO
2023-03-11 21:41:57 +03:00
Konstantin
4617ce10e5
vcmi: allow showing more than one components in infobar
...
Up to 8, AFAIK. So, we can show multi-reward in infobox now.
One issue remain - cannot dynamically choose components size
based on text size.
2023-03-11 21:41:57 +03:00
Konstantin
5366f9190e
vcmi: reduce boost::lexical_cast usage
2023-03-09 16:36:46 +03:00
SoundSSGood
e24eb6cc12
regression fixed
2023-03-08 17:20:38 +02:00
Ivan Savenko
7ef5163d9d
Merge pull request #1581 from IvanSavenko/map_render_rewrite
...
Adventure Map - rendering rewrite
2023-03-05 19:51:07 +02:00
Ivan Savenko
5905dd6111
Grail digging check is now in library
2023-03-05 17:48:02 +02:00
Ivan Savenko
4501036a04
Basic version of hero movement on map. Removed old code.
2023-03-05 17:48:02 +02:00
Ivan Savenko
8b3309b47d
Fixed custom hero names text ID's
2023-03-05 17:39:27 +02:00
Andrey Filipenkov
fd56f86a84
introduce VCMI_MOBILE macro
2023-03-02 12:09:49 +03:00
Andrey Filipenkov
313d479d42
fix using JNI from server in single process build
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
c4e7e91850
fix single process build for Android
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
4c19d8794d
add option to compile AI code into libvcmi directly
...
- used on Android by default
- AI sources and libs are propagated to upper level with set(... PARENT_SCOPE)
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
2a28109f2d
fix indentation
2023-03-02 12:09:47 +03:00
Andrey Filipenkov
970bd6ed34
adjust project for Android (except AI)
2023-03-02 12:09:47 +03:00
Andrii Danylchenko
9f55666931
rework netpacks to avoid double typeinfo
2023-02-13 20:26:39 +02:00
Andrii Danylchenko
8855829527
Andorid: remove server main
2023-02-13 20:26:39 +02:00
Andrii Danylchenko
14d27c788f
hide AI cheating message
2023-02-05 11:00:58 +02:00
Ivan Savenko
dbbbba5f2d
Fix typo
2023-02-02 13:25:55 +02:00
Ivan Savenko
f1ea88ae9a
Merge pull request #1505 from dydzio0614/cheats-improvements
...
Cheats improvements
2023-02-02 12:21:19 +02:00
Ivan Savenko
57ee9a9bf3
Merge vcmi/beta into vcmi/develop
2023-01-29 18:21:55 +02:00
Dydzio
5b8e8e60fb
Change vcmiarmy handling a bit
2023-01-25 12:50:18 +01:00
Dydzio
3d9f04c6e0
Minor cheats code changes
2023-01-25 12:10:48 +01:00
Andrii Danylchenko
4cfc93d2da
Somehow it works but JNI signatures were incorrect
2023-01-25 08:59:59 +02:00
Dydzio
583f1ce911
Implemented vcmiexp cheat
2023-01-23 23:12:41 +01:00
Dydzio
75e0bfa80c
Add vcmiarmy cheat
2023-01-23 21:18:43 +01:00
Dydzio
d5b02f8dc2
Add sane aliases for cheat names + "vcmiazure" "vcmifaerie" cheats
2023-01-23 18:56:00 +01:00
Ivan Savenko
05a1d7c6e3
All text for factions/towns/building are passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
388ed88b5d
All artifact strings now pass through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
d2b837b116
All creature-related texts go through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
fa6f7513e8
All heroes-related strings are passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
b86969909a
Fixes compilation due to changes in callback interface
2023-01-20 15:18:10 +02:00
Ivan Savenko
17fc9d8d8f
Merge with vcmi/develop
2023-01-18 01:04:34 +02:00
Ivan Savenko
05ac217b0f
Merge with vcmi/develop
2023-01-17 23:02:25 +02:00
nordsoft
c0c1be2645
Fix invalid host connection
2023-01-16 20:58:19 +04:00
Ivan Savenko
246281e62a
Merged vcmi/beta with vcmi/develop
2023-01-15 17:46:42 +02:00
Ivan Savenko
6ea7add4bb
Merge pull request #1394 from SoundSSGood/art-move-fix
...
Artifact movement refactoring
2023-01-15 17:29:36 +02:00
Ivan Savenko
ccc6ebee0d
Cleared up gate blocking, Force Field can now block gates
2023-01-13 15:44:42 +02:00
Ivan Savenko
1d7f004658
Implemented reinforced walls in towns with Castle
2023-01-13 01:09:24 +02:00
Ivan Savenko
500cf7f15d
EWallPart & EWallState are now enum class
2023-01-13 00:35:58 +02:00
Ivan Savenko
b86704bece
Ballistics mechanics should now match H3
2023-01-12 23:53:29 +02:00
Ivan Savenko
e188060480
Fix server shutdown on transferring artifact to commander
2023-01-12 16:27:59 +02:00
SoundSSGood
a0568823a9
swap contitutient
2023-01-11 13:17:33 +02:00
Ivan Savenko
4f3ea0d1d9
Renamed Terrain.h/cpp -> TerrainHandler.h/cpp
2023-01-10 00:01:35 +02:00
Ivan Savenko
7c7ae26e67
Map/Road/River identifiers are now private members
2023-01-10 00:01:35 +02:00
Ivan Savenko
e1799379dd
Terrain/Road/River handler are now in compileable state
2023-01-10 00:01:35 +02:00
Ivan Savenko
1468f6aded
Converted terrainTypeHandler into proper handler class
2023-01-10 00:01:35 +02:00
Ivan Savenko
1fece0ce18
Merge pull request #1229 from IvanSavenko/battle_improvements
...
Battle: Fixing bugs & Implementation of missing features
2023-01-09 22:07:13 +02:00
Ivan Savenko
bde988ca43
Merge pull request #1329 from IvanSavenko/translate_game
...
Translations support - base functionality for main game texts
2023-01-09 20:33:56 +02:00
SoundSSGood
4005b48360
Regressions fixed
2023-01-08 23:31:12 +02:00
SoundSSGood
6b7ce798d0
artifactTransitionPos created
2023-01-08 23:24:13 +02:00
SoundSSGood
d5cef0c069
end of battle art assembling fix
2023-01-05 17:37:14 +02:00
Ivan Savenko
a1eaf4d9c8
Do not apply Fire Shield effect that deals 0 damage
2023-01-04 17:55:19 +02:00
Ivan Savenko
85d7b470d4
Access to quests texts is now processed via translator
2023-01-01 14:56:45 +02:00
Ivan Savenko
bdb8e0ee5c
Introduced string identifiers for H3 texts, still WIP
2023-01-01 14:56:44 +02:00
Ivan Savenko
5d80457eda
Merge with vcmi/develop branch
2022-12-30 00:52:23 +02:00
Ivan Savenko
7a35bcc812
Merge pull request #1221 from IvanSavenko/warnings_fix
...
Fix remaining compiler warnings
2022-12-29 21:51:55 +02:00
Ivan Savenko
bb65246aa3
Merge remote-tracking branch 'vcmi/develop' into battle_improvements
2022-12-26 01:15:44 +02:00
Ivan Savenko
405b2976d5
Renamed getUpgradeInfo -> fillUpgradeInfo
2022-12-25 14:03:43 +02:00
Nordsoft91
64fb4a744e
Merge pull request #1269 from vcmi/beta
...
Merge android fix into develop
2022-12-24 22:07:04 +04:00
nordsoft
2953b8fe9d
Fix android build
2022-12-23 19:12:48 +04:00
Ivan Savenko
325c29da0d
Merge remote-tracking branch 'vcmi/develop' into battle_improvements
2022-12-23 14:51:34 +02:00
nordsoft
1250f67771
Fix android build
2022-12-23 16:42:32 +04:00
Ivan Savenko
eb20a4b208
Merge remote-tracking branch 'vcmi/develop' into warnings_fix
2022-12-23 14:40:45 +02:00
Ivan Savenko
f073c676f9
Merge 1.1 release into develop
2022-12-23 14:17:18 +02:00
Ivan Savenko
9248e06ae0
Demon summon is now a spell. DEMON_SUMMONING bonus has been removed
2022-12-22 23:11:55 +02:00
Ivan Savenko
b2279484fc
Merge pull request #1227 from Shatur/opendingux
...
Port to OpenDingux handhelds
2022-12-22 16:56:55 +02:00
Ivan Savenko
b423b3fa6b
Fix dragon breath & fire shield
2022-12-21 18:04:54 +02:00
nordsoft
12d4204334
Fix closing server on ios
2022-12-19 01:37:38 +04:00
Ivan Savenko
52fc5b3c39
Exploded mines now send ACTIVATE flag to client to play effect
2022-12-17 19:37:00 +02:00
Ivan Savenko
deffba01b9
All battle effects are now fully client sided
2022-12-17 17:35:15 +02:00
Ivan Savenko
ced2ece954
Fixes #809 - do not print error message after stepping onto mine
2022-12-17 14:40:54 +02:00
Ivan Savenko
a1ab90fb05
Creatures with double strike will not hit 2nd time after blinding
2022-12-16 21:52:46 +02:00
Andrii Danylchenko
56bf8ec2c4
#1228 - prevent second AI activation on AI defeat due to wrong EndTurn packet
2022-12-14 22:13:26 +02:00
Ivan Savenko
60a00b450e
Multiple fixes & improvements to animation ordering
2022-12-13 21:31:49 +02:00
Ivan Savenko
c79634b6a7
Moved all animation ordering logic to callers
...
Previously, CBattleAnimation & inheritors were controlling animation
ordering - e.g. which animations should play after which.
Now, this is controlled by caller, e.g. BattleInterface & its
controllers.
H3 animations are fairly linear and can be split in stages which are
already somewhat implemented via waitForAnims
2022-12-13 21:31:49 +02:00
Ivan Savenko
b3deea24e0
Earthquake spell: do not target already destroyed sections
2022-12-13 21:31:49 +02:00
Hennadii Chernyshchyk
de33eb44f9
Port to OpenDingux handhelds
2022-12-13 03:55:54 +02:00
Ivan Savenko
25bceda4ea
Added convertToVisitablePos/convertFromVisitablePos to CGHeroInstance
...
This method replaces old convertPosition, but with more clear names and
without hardcoded magic constants.
2022-12-09 14:42:47 +02:00
Ivan Savenko
facf77b3ae
vstd::unique -> std::unique
2022-12-07 23:36:20 +02:00
Ivan Savenko
d85ee019ec
Removed CGHeroInstance::convertPosition method
2022-12-07 22:51:32 +02:00
Ivan Savenko
49cbd5adc9
CGHeroInstance::convertPosition is no longer static method
2022-12-07 22:34:08 +02:00
Ivan Savenko
908e6892f3
Removed CGHeroInstance::getPosition pseudo-override
...
Now access to hero visible position is always done via visitablePos
2022-12-07 22:10:08 +02:00
Ivan Savenko
2855606a88
Enabled & fixed -Woverloaded-virtual warning from gcc/cland
...
- fixed almost all instances of overloaded-virtual warning
- cleared up inheritance & method overrides in code affected by warning
2022-12-07 21:50:45 +02:00
Ivan Savenko
fd97b51183
Yet another attempt to fix Windows compile:
...
when building vcmi_lib statically (or linking against static vcmi_lib)
do not place dllexport/dllimport tags
2022-12-06 18:35:24 +02:00
Ivan Savenko
fa23965d0b
Renamed for consistency BUILD_SINGLE_APP -> ENABLE_SINGLE_APP_BUILD
2022-12-06 00:00:56 +02:00
Ivan Savenko
6463e906d5
vcmi can be compiled as single app on Linux
...
TODO: check compilation on Win/Mac using Github Actions
2022-12-05 21:36:02 +02:00
Ivan Savenko
848454d48a
Check for end-of-battle after opening spells are cast, fixes potentially
...
infinite battle
2022-12-02 21:38:59 +02:00
nordsoft
b7cab0e01d
Merge remote-tracking branch 'upstream/develop' into battle-dialog
2022-11-30 01:03:57 +04:00
nordsoft
e865f484ff
Fix some problems with network game
2022-11-30 00:10:40 +04:00
Nordsoft91
89b8b87a6b
Merge pull request #1156 from vcmi/features/online
...
Online mode
2022-11-29 20:43:39 +04:00
nordsoft
e9e172164c
Implemented correct logic for battle queries
2022-11-25 03:02:34 +04:00
nordsoft
52375468e4
Remove unused variable
2022-11-23 01:02:17 +04:00