Ivan Savenko
8f25f1fd4b
Serialize identifiers without implicit conversion to int
2023-11-03 16:03:29 +02: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
8df39c43a0
Fix game loading
2023-10-22 17:04:14 +03:00
Ivan Savenko
b2c336de0d
JsonNode now uses std::variant internally. Fixes crash on deserialize
2023-10-21 20:41:58 +03:00
nordsoft
2960895041
Issues fixed
2023-09-17 22:19:45 +02: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
b6a1a8f0da
Json Serializer should now use identifers storage properly
2023-09-04 22:23:20 +03:00
Ivan Savenko
a30e7ba321
Remove bitmasks of PlayerColor's. Add encode/decode methods
2023-09-04 18:56:16 +03:00
Ivan Savenko
3f921fa771
Serialization version bump
2023-09-04 18:22:34 +03:00
Ivan Savenko
e54287ea5d
Converted remaining identifier to new system
2023-08-25 13:38:02 +03:00
Michael
68a1b883eb
autosave folders
2023-08-22 20:43:44 +02:00
Ivan Savenko
537f9fa048
Merged master into develop
2023-08-03 23:38:32 +03: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
4d08a131d3
Reorganization of boost filesystem usage
...
- Removed (most of) boost filesystem namespace usings
- Replaced boost::filesystem::fstream with std::fstream and different
constructor that should be available on any plaftorm
2023-07-28 19:12:04 +03:00
Ivan Savenko
21a39f0b01
Removed boost::iostreams in favor of std::stream / boost::filesystem
2023-07-28 19:12:04 +03:00
Ivan Savenko
aed8c411fc
Minor rework & cleanup of combat replays
2023-07-27 19:25:55 +03: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
fa4a0004b2
Merge pull request #2291 from IvanSavenko/terrain_animations_config
...
Moved hardcoded terrain palette-cycling animations to config
2023-07-07 14:28:39 +03:00
Tomasz Zieliński
06449ce7b0
Another compile fix
2023-07-05 21:18:30 +02:00
Tomasz Zieliński
506a0cdda0
- Better name as suggested in PR
...
- Compile fix
2023-07-05 21:08:32 +02:00
Ivan Savenko
3bce245780
Moved hardcoded terrain palette-cycling animations to config
2023-07-05 22:07:20 +03:00
Tomasz Zieliński
9f2bfbc1d8
Improve serialization of IDs from mods, so they are resolved correctly after all mods are loaded.
2023-07-05 20:53:00 +02:00
SoundSSGood
9b5f6ec7cf
CArtifact getters setters
2023-07-05 15:48:08 +03:00
SoundSSGood
aa90433418
bump serialization version
2023-07-01 14:59:23 +03:00
Ivan Savenko
85262cf4f5
Moved CGameState files into a separate directory
2023-06-26 17:15:59 +03:00
Ivan Savenko
acac42291e
Remove excessive CMap.h includes
2023-05-31 23:18:38 +03:00
Konstantin P
f2827834c0
vcmi: bump serialization version
2023-05-05 21:30:45 +03:00
Konstantin P
e9a90a8cbf
Serializer: serialize small bitsets (32 bits)
2023-05-05 21:30:45 +03:00
Konstantin
a6de9097be
vcmi: rename HeroBonus.h to Bonus.h
2023-05-02 11:20:58 +03:00
Konstantin
1d34c73c2d
vcmi: split CBonusSystemNode, BonusParams and prop
...
More splitting of HeroBonus.h
2023-05-02 00:54:53 +03:00
Konstantin
6fa1b2b19f
vcmi: move bonuses to its own folder
2023-05-02 00:53:50 +03:00
Konstantin
86f5d6de69
vcmi: modernize headers
2023-04-30 13:35:54 +03:00
Konstantin P
7c4badc890
CSerializer: fix debug assertion
...
Fix compilation in debug mode
2023-04-19 13:00:51 +03:00
Konstantin
4a79e2ccd9
CSerializer: fix any_cast
2023-04-18 23:29:47 +03:00
Konstantin
54eb550eb9
vcmi: remove unused functions now
2023-04-17 00:43:13 +03: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
Konstantin
8dcb041917
vcmi: use std::any
2023-04-17 00:43:13 +03:00
Konstantin
25783066e8
vcmi: use std::any_cast
2023-04-17 00:43:13 +03:00
Ivan Savenko
2c2c2c8fe0
Slight tweaking of logging of h3m edge cases
2023-04-15 17:20:38 +03:00
Ivan Savenko
644f0f4b32
Removed ARRAY_COUNT in favor of std::size
2023-04-12 01:04:26 +03:00
Konstantin
7b9e281f7d
vcmi: bump serialization version
2023-04-10 19:28:16 +03:00
Konstantin
11b237a23c
vcmi: massive refactoring v1
2023-04-05 22:33:12 +03:00
Ivan Savenko
307065a633
Merge beta into develop
2023-04-04 16:06:20 +03:00
Ivan Savenko
ea1d177c9b
Fixed false error messages on game startup
2023-03-31 01:28:56 +03:00
Konstantin
25956e3f37
vcmi: bump serializer version
2023-03-31 01:01:25 +03:00
Ivan Savenko
a0e9e01b48
Renamed & reorganized all game mechanics settings names
2023-03-16 18:11:35 +02:00
Konstantin
4eb248b5e2
vcmi: bump serialization version
...
Saves from this branch are incompatible with generic ones
2023-03-16 16:47:05 +03:00
Adriankhl
626721cbba
Fix serialization of ObjectClass
2023-03-12 21:41:46 +01:00
Konstantin
fafe352f93
vcmi: bump max serialization version
...
And also - now we can choose between 3 states for rewardables
actually.
2023-03-11 21:41:57 +03:00
Ivan Savenko
0c847c85cc
Fix serialization of rewardable objects
2023-03-07 00:06:58 +02:00
Ivan Savenko
84fa19dadf
Merge pull request #1547 from dydzio0614/game-start-unrandomization
...
Hardcoded features for HotA-like starting conditions
2023-03-05 17:29:49 +02:00
Konstantin
8661496f6c
vcmi: modernize lib/serializer
2023-02-12 21:23:00 +03:00
Dydzio
981c23cafa
Bump serialization - not sure if necessary
2023-02-05 01:01:11 +01:00
Ivan Savenko
c3a2dee45a
Code cleanup
2023-01-31 15:00:46 +02:00
Ivan Savenko
4a8d1d9b5e
Serialization version bump
2023-01-25 12:36:03 +02:00
Ivan Savenko
5a9ffb8e95
Serialization version bump
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
fa6f7513e8
All heroes-related strings are passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
e436b4425f
Serialization version bump
2023-01-17 22:59:32 +02:00
Ivan Savenko
5d80457eda
Merge with vcmi/develop branch
2022-12-30 00:52:23 +02:00
Ivan Savenko
b8b1e07621
Fix serialization
2022-12-30 00:36:10 +02:00
Ivan Savenko
b275d9de72
merge beta branch into develop
2022-12-29 22:08:53 +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
Andrii Danylchenko
a954cc08fb
Made intermediate class to hide some implementation details from header.
2022-12-27 12:55:31 +02:00
Andrii Danylchenko
c271f9187f
Connection buffered read cpack.
2022-12-26 21:49:53 +02:00
Andrii Danylchenko
cb13064a62
Socket buffered write. Write full cpack at once
2022-12-26 20:17:53 +02:00
Ivan Savenko
063b8732ff
Save compatibility with main branch
2022-12-25 18:07:08 +02:00
nordsoft
f27a40dd34
Support roads and teams customization in engine
2022-12-17 03:52:40 +04:00
Ivan Savenko
facf77b3ae
vstd::unique -> std::unique
2022-12-07 23:36:20 +02:00
lainon
7fdad4e0f6
Code refactor following C++ standard and condition fixes
2022-11-15 03:20:55 +03:00
Tomasz Zieliński
8c481dff46
Fix incorrect templates for mines in HoTA
2022-10-08 12:42:10 +03:00
Andrey Filipenkov
35e1b86683
remove no longer needed adjustments
2022-09-24 15:55:24 +03:00
Andrey Filipenkov
ff635edc0b
wrap all library code into namespace if VCMI_LIB_NAMESPACE is defined
...
preparation for having client and server in a single process
2022-09-24 15:55:21 +03:00
Andrey Filipenkov
dde9a5d5d2
todo updates
2022-09-24 15:55:17 +03:00
Andrey Filipenkov
2e18299897
make server a static lib, run it in a separate thread
...
issues to solve:
- dynamic_cast error 2: One or more of the following type_info's has hidden visibility or is defined in more than one translation unit. They should all have public visibility. 13CPackForLobby, 20LobbyClientConnected, 20LobbyClientConnected.
- error setting socket option: set_option: No buffer space available
2022-09-24 15:55:16 +03:00
DjWarmonger
7ba271edf1
Rotation rebase2 ( #912 )
...
* Instead of [x][y][z] coordinates, map will be stored as [z][x][y].
* Nullkiller AI can get it too.
* Use boost::multi_array instead of nested vectors
* In MapHandler too
* Rotate foreach algorithms, too
* VCAI gets rotated, too
2022-09-18 17:39:10 +03:00
Nordsoft91
e4ac0d4370
Editor prerequisites [part 2] ( #889 )
2022-09-17 14:04:01 +03:00
DjWarmonger
3d2dc2335b
Switch ObjectTemplate to shared_ptr<const> ( #870 )
2022-09-11 16:13:53 +03:00
Nordsoft91
c4035134e5
New battlegrounds ( #758 )
2022-09-11 11:31:26 +03:00
Nordsoft91
aaa07e4d2e
New terrain support - part 1 ( #755 )
...
Initial support of new terrains
2022-09-11 11:31:26 +03:00
Andrii Danylchenko
c4dec67acc
Fix movement freeze after battle in teleport
2022-06-20 09:05:05 +03:00
Konstantin
c6b198ce14
Warning fix (I moved C++17 and CI to another branch) ( #739 )
...
* clang warning fixes
* use CMake 3.10 due to MXE CI does not have 3.13 yet
Co-authored-by: Konstantin <rilian@niisi.ras.ru>
2022-05-19 15:14:50 +03:00
Dmitry Orlov
2a39c401b8
Feature: Opposite Side Limiter. Added: Old saves support.
2021-09-04 14:15:38 +03:00
AlexVinS
ecaa9f5d0b
Entities redesign and a few ERM features
...
* Made most Handlers derived from CHandlerBase and moved service API there.
* Declared existing Entity APIs.
* Added basic script context caching
* Started Lua script module
* Started Lua spell effect API
* Started script state persistence
* Started battle info callback binding
* CommitPackage removed
* Extracted spells::Caster to own header; Expanded Spell API.
* implemented !!MC:S, !!FU:E, !!FU:P, !!MA, !!VR:H, !!VR:C
* !!BU:C, !!BU:E, !!BU:G, !!BU:M implemented
* Allow use of "MC:S@varName@" to declare normal variable (technically v-variable with string key)
* Re-enabled VERM macros.
* !?GM0 added
* !?TM implemented
* Added !!MF:N
* Started !?OB, !!BM, !!HE, !!OW, !!UN
* Added basic support of w-variables
* Added support for ERM indirect variables
* Made !?FU regular trigger
* !!re (ERA loop receiver) implemented
* Fixed ERM receivers with zero args.
2021-02-14 19:05:43 +03:00
Dmitry Orlov
854a2e6c39
Feature: Mods system improvement, Part III. Bunusing buildings customization.
2021-01-14 01:02:13 +03:00
Dmitry Orlov
ef6220ebec
Fix: Creature resolution failed when mod is in the custom directory
2020-12-13 03:33:28 +03:00
Dmitry Orlov
d6a4767865
Mod system improvement: Patch 2
2020-10-25 01:04:34 +03:00
Dmitry Orlov
f4816b0824
Mod system improvement Part I : Special buildings should work in the modders towns
2020-10-07 12:35:11 +03:00
John Bolton
a05ae78e67
Fixed lots of warnings.
...
Disabled the following (for MSVC only) that couldn't (or shouldn't) be fixed.
4003: not enough actual parameters for macro 'identifier'
4250: 'class1' : inherits 'class2::member' via dominance
4251: 'type' : class 'type1' needs to have dll-interface to be used by clients of class 'type2'
4275: non dll-interface class 'type1' used as base for dll-interface class 'type2'
2020-10-04 02:20:18 -07:00
krkos
ac81d0f7b4
Fix build with Boost versioni >= 1.70 ( #615 )
2020-01-21 11:55:28 +03:00
Dydzio
36cb9f11c4
Hardcoded feature: no random week/month effects
2019-03-17 18:27:05 +01:00
Mikko
a77cbc311e
Update JsonSerializer.cpp
2019-01-24 14:49:30 +00:00
Alexander Shishkin
b00e935e4d
Warnings fixes ( #538 )
...
Warnings fixes
* Suppress `missing-braces` for Clang
* Fixed many C4275 warnings
* Fixed almost all Clang/GCC warnings
* Silence most frequent MSVC warning.
* Fixed some pessimizing-move warnings
* Fixed some unused capture warnings
2019-01-19 13:52:02 +03:00
Fior.in
47ba3b2476
Hero scheme: allow each hero to have a unique battle animation ( #480 )
...
* attribute for battle image added on hero class, allowing on hero schemes each hero have a unique battle .def in 'images' structures sided with portraits and specialties images
2018-08-27 09:42:36 +03:00
Konstantin Vukolov
96215233bc
macOS: fix packet deserialization ( #479 )
2018-08-14 01:03:45 +03:00
Dydzio
393b25eb7f
Minor tweaks/fixes
2018-07-29 19:31:01 +02:00
Dydzio
b37ba8e046
Initial version of AI object value config
2018-07-28 00:43:56 +02:00
Karlis Senko
224ea28433
Fix various memory errors related to server and connections.
...
* keep connection when restarting scenario
* wrong double free in Connection
* multiple use after free when stopping server
* double free of StartInfo
2018-05-01 00:04:20 +03:00