1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-23 22:37:55 +02:00
Commit Graph

35 Commits

Author SHA1 Message Date
Laserlicht
da2b565225 code review 2025-10-25 13:21:58 +02:00
Laserlicht
5a650a8f2f Merge branch 'develop' into battleonly 2025-10-24 01:01:42 +02:00
Laserlicht
4d37fe631b battle only basic implementation 2025-10-24 00:54:22 +02:00
Michał Zaremba
e14f7deca1 Fix empty modscopes 2025-10-17 19:11:40 +02:00
Laserlicht
f7adb39551 Fix crash if ID not exists 2025-08-17 16:55:03 +02:00
Laserlicht
70c84910bd code review 2025-07-31 00:46:43 +02:00
Laserlicht
3975cc3ada case insensitive cheat identifier 2025-07-20 13:56:14 +02:00
Ivan Savenko
f58d08e563 Support for banned game entities in random map templates
The following entities can now be banned in a random map template
definition:
- Hero
- Artifact
- Spell
- Secondary skill

The ban follows the same rules as banning via the map settings in the
map editor.

It is also now possible to bypass dependencies and access identifiers
from mods that are not dependencies when defining:
- Banned entities in random map templates
- the chance of a hero class appearing in a tavern of a specific faction
- the chance of a spell appearing in a mage guild of a specific faction
- the chance of a hero class receiving a secondary skill

For this to work, the identifier must be specified in full, e.g.
`modName:objectName`. If the specified mod is not active, the game will
silently ignore this entry.

This behaviour is not affected by mod load order. It is possible to use
this format to access a mod that has not yet been loaded.
2025-07-14 00:18:11 +03:00
Ivan Savenko
2b43d415a9 Fix docs, update spell immunity usage of addinfo, fix sonar 2025-06-15 14:37:18 +03:00
Ivan Savenko
f5c037137b Fix translations, fix Sonar 2025-06-15 14:37:17 +03:00
Ivan Savenko
bc48337445 Implement async requests for bonus types 2025-06-15 14:36:29 +03:00
Ivan Savenko
4e47894e7a Somewhat configurable spell schools 2025-06-15 14:36:29 +03:00
Ivan Savenko
645b95ba02 Renamed LibClasses * VLC to GameLibrary * LIBRARY 2025-02-21 16:54:56 +00:00
Ivan Savenko
3d56375ec0 Fix possible crash on loading game with broken mods active 2025-01-18 19:50:25 +00:00
Ivan Savenko
cfac768b6e Fix possible crash on corrupted h3 data / vcmi config 2025-01-07 15:05:57 +00:00
Ivan Savenko
485361939a Added information on mod loading failure to inform player on broken mods 2025-01-01 20:59:32 +00:00
Ivan Savenko
36c1ed670f Support for configurable town fortifications
Removed most of hardcoded checks for fort level or for presence of fort/
citadel/castle buildings.

It is now possible to define which parts of town fortifications are
provided by town buildings

Configuration for H3-like fortifications is provided in
buildingsLibrary.json and will be used automatically by mods as long as
mods have buidings named "fort", "citadel" and "castle".

Alternatively, mods can separately define:
- hitpoints of walls (shared value for all sections)
- hitpoints of central, upper and lower towers (separate values)
- presence of moat
- shooters for each tower (separate values)
2024-08-28 19:42:14 +00:00
Alexander Wilms
02e429e973 Fix typos using https://github.com/crate-ci/typos
Changes were reviewed manually
2024-06-24 03:47:19 +02:00
Ivan Savenko
65f63e862c Tweaks to modding docs & error reporting based on discovered issues 2024-05-16 15:14:36 +00:00
Ivan Savenko
ea48976fba Disable failing assertion 2024-04-16 18:54:25 +03:00
godric3
acceca0139 map editor: Allow to customize hero spells 2024-03-24 10:01:20 +01:00
Ivan Savenko
922966dcf8 Renamed JsonNode::meta to more logical modScope. Member is now private 2024-02-26 12:55:49 +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
bb670cfb82 Merged accurate shot bonus into death stare bonus 2024-01-13 15:55:07 +02:00
Ivan Savenko
6c8a587ac9 Better diagnostics of ID requests that require type, such as addInfo 2024-01-08 21:32:10 +02:00
Ivan Savenko
18227cba00 Implemented better error-reporting for issues commonly encountered by
modders
2024-01-07 22:35:22 +02:00
Ivan Savenko
13763cad8e Remove few more implicit conversions 2023-11-15 15:55:19 +02:00
Ivan Savenko
31cf3442af Update docs 2023-10-22 16:55:19 +03:00
Ivan Savenko
36a1d6c415 Removed remaining integer bonus subtypes from configs 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
8210a2cafd Added list of all identifiers from base game 2023-09-26 15:55:27 +03:00
Ivan Savenko
12c4f8d18c Fixed serialization of PlayerColor in json 2023-09-04 22:22:24 +03:00
Ivan Savenko
7e27ac7073 IdentifierStorage is now separate handler in VLC 2023-09-04 18:56:16 +03:00
Ivan Savenko
c8a6cd74cc Additional checks for invalid access to IdentifierStorage 2023-09-04 18:56:16 +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