Ivan Savenko
01396b62b7
Extracted handling of type ID's from serializer into a separate class
2024-08-26 19:48:46 +00:00
Ivan Savenko
85f6030c7c
Merge pull request #4318 from IvanSavenko/upscaled_render
...
Support for xBRZ upscaling filter
2024-08-20 14:23:30 +03:00
Ivan Savenko
2f3f3c21df
Rename town building types to more clear names
2024-08-19 11:47:13 +00:00
Ivan Savenko
f0448acaa3
TBB is now a dependency of lib. Implemented multithreaded xBRZ scale
2024-08-17 15:25:26 +00:00
Ivan Savenko
2a05fbdd50
Unified handling of battle sides ID's
...
- Replaced BattleSide namespace-enum with enum class
- Merged two different BattleSide enum's into one
- Merged BattlePerspective enum into BattleSide enum
- Changed all places that use integers to represent battle side to use
BattleSide enum
- Added BattleSideArray convenience wrapper for std::array that is
always 2-elements in size and allows access to its elements using
BattleSide enum
2024-08-11 20:54:44 +00:00
Laserlicht
9ceb1c567d
highscore refactoring
2024-08-02 19:37:46 +02:00
Laserlicht
fb171ab3a2
statisic basic
2024-08-01 21:36:00 +02:00
Laserlicht
53c0d20a57
fix campaign highscores
2024-07-26 20:36:52 +02:00
Ivan Savenko
4aa73b40c9
Split CTownHandler into smaller chunks
2024-07-21 18:21:48 +00:00
Ivan Savenko
1aa391fdf8
Split CGeneralTextHandler file into 1 file per class form
...
All text processing code is now located in lib/texts.
No changes other than code being moved around and adjustment of includes
Moved without changes:
Languages.h -> texts/Languages.h
MetaString.* -> texts/MetaString.*
TextOperations.* -> texts/TextOperations.*
Split into parts:
CGeneralTextHandler.* -> texts/CGeneralTextHandler.*
-> texts/CLegacyConfigParser.*
-> texts/TextLocalizationContainer.*
-> texts/TextIdentifier.h
2024-07-20 12:55:17 +00:00
Ivan Savenko
d2839c8e52
Rewardable object randomization is now always server-sided
2024-07-16 13:13:39 +00:00
Ivan Savenko
5178e4842e
Moved generation of new rumors to server
2024-07-16 13:13:39 +00:00
Ivan Savenko
df83fa33a1
Merge branch 'vcmi/master' into 'vcmi/develop'
2024-05-31 09:34:21 +00:00
Ivan Savenko
9bfe000724
Added semi-workaround method for network thread shutdown:
...
Currently closing game while network thread is waiting for something is
very bug-prone, since network thread may resume during shutdown and
access partially destroyed client state.
Now if exit has been requested, the very first step would be semi-
graceful shutdown of network thread (via exception throwing). This may
in theory skip some cleanup in non-RAII code, but since game is shutting
down this does not matters much.
This logic applies to:
- shutting down while network thread is waiting for dialogs
- shuttind down while network thread waiting for animations in combat
2024-05-18 11:04:10 +00:00
Ivan Savenko
84bc6c42db
Added 'Serializeable' base class for classes serializeable by pointer
2024-05-16 18:40:59 +00:00
Ivan Savenko
95d761bbb8
Handle corrupted H3 data - show message box instead of silent crash
2024-05-13 15:41:47 +00:00
Ivan Savenko
6ba6e0d55b
Moved serialization of ModCompatibilityInfo from MapFormat
2024-04-23 17:15:59 +03:00
Tomasz Zieliński
b1a5693612
Proof of concept with OH3 obstacles
2024-04-04 21:39:01 +02:00
Ivan Savenko
675e7c3110
Move files that are not needed for lobby to main part of vcmi_lib
2024-03-29 15:02:14 +02:00
Ivan Savenko
39da7b3e32
Added option to build minimal vcmi library as needed by lobby
2024-03-28 12:07:49 +02:00
Ivan Savenko
dd785d71c9
Fix linking when using static libraries without client
2024-03-28 12:07:49 +02:00
Andrii Danylchenko
047e076d05
NKAI: visual logger
2024-03-02 15:54:05 +02:00
Ivan Savenko
41493d6f67
Implemented 'strict' json support
2024-02-26 12:55:49 +02:00
Ivan Savenko
3740f8b02f
Moved bonus parsing to a new file
2024-02-14 15:48:06 +02:00
Ivan Savenko
c3957c2c2a
Moved json files to new directory, split on per-class basis
2024-02-14 13:08:24 +02:00
Ivan Savenko
763e18d202
Fix symlink target - use absolute path
2024-02-12 16:35:18 +02:00
Ivan Savenko
a909d7ddde
Removed cmake_modules/VCMI_lib macro, use it directly in place
2024-02-11 20:38:24 +02:00
Ivan Savenko
f08c9f4d59
Renamed ENABLE_STATIC_AI_LIBS option to match its actual effect
2024-02-11 17:55:02 +02:00
Ivan Savenko
0d263c5571
Implemented option to run server as a thread with shared VLC
2024-02-11 17:55:02 +02:00
Ivan Savenko
c2286e5126
Server now consists from library and separate executable projects
2024-02-11 17:55:02 +02:00
Andrey Filipenkov
0294a8b063
enable StupidAI and EmptyAI for static AI
2023-03-02 12:09:49 +03:00
Andrey Filipenkov
71d51beab2
change static AI approach to use static libvcmi
...
- now links to static AI lib targets
- solves uncaught boost exception on closing server
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
b0c109d5f7
use target from variable
2023-02-22 14:00:52 +03:00
Ivan Savenko
fa23965d0b
Renamed for consistency BUILD_SINGLE_APP -> ENABLE_SINGLE_APP_BUILD
2022-12-06 00:00:56 +02:00
Ivan Savenko
5e37ad6836
Changes to single-app build
...
- client version of library is now always called vcmi, like in regular
builds (e.g. libvcmi.so)
- server version of library keeps its separate name
2022-12-05 22:57:43 +02:00
Andrey Filipenkov
2d3002bc1d
add standard lib target back
...
- the moved CMakeLists.txt is turned into a macro (adds whitespace difference)
- now uses absolute paths to the lib and include dirs
- refactors iOS install section to use "early continue" in the foreach loop
2022-09-24 15:55:21 +03:00
Andrey Filipenkov
267e8df7db
move lib/CMakeLists.txt to cmake_modules/VCMI_lib.cmake
...
preparation to be able to duplicate the lib target
2022-09-24 15:55:21 +03:00
Andrey Filipenkov
27551a9eae
fix using local minizip after rebase
2022-09-24 15:55:20 +03:00
Andrey Filipenkov
3388583089
use component-based install to copy only what's needed for every app
2022-09-24 15:55:20 +03:00
Andrey Filipenkov
cfa22c33ad
use rpath properly
2022-09-24 15:55:17 +03:00
Andrey Filipenkov
8249171066
implement VCMIDirs
2022-09-24 15:55:16 +03:00
Nordsoft91
e4ac0d4370
Editor prerequisites [part 2] ( #889 )
2022-09-17 14:04:01 +03:00
Nordsoft91
ad01c7ffce
Vlc obstacles [part 1] ( #888 )
...
* obstacles content handler, entity service and VLC integration
2022-09-15 11:06:54 +03:00
Nordsoft91
4bd0ff680a
Random map generator refactoring ( #762 )
...
random map generator refactoring and improvements
2022-09-11 11:31:27 +03:00
Andrii Danylchenko
4b4cc3cf4b
battlefields in VLC and custom bonuses for terrain patches
2022-09-11 11:31:27 +03:00
Nordsoft91
aaa07e4d2e
New terrain support - part 1 ( #755 )
...
Initial support of new terrains
2022-09-11 11:31:26 +03:00
Andrey Filipenkov
d7650ce9c0
use Conan to make macOS CI builds for both Intel and ARM ( #782 )
...
* [CI] append platform to output artifact name if it's given
2022-08-30 17:29:00 +03:00
Soar Qin
188607b05f
Replace cotire with CMake builtin precompiled headers support (Requires CMake version >= 3.16)
2022-06-17 17:20:08 +03:00
Nordsoft91
5c1a66ab69
Rmg water support ( #745 )
...
* RMG: water support and refactoring
* Fix seers hut bug
2022-06-11 18:40:24 +03:00