SoundSSGood
fd9c7352a0
suggested changes
2023-07-03 22:54:03 +03:00
Ivan Savenko
4a5c1556a1
Always use std::vector<uint8_t> to store binary map
2023-06-27 16:27:35 +03:00
Ivan Savenko
cc91be3518
Added workaround for loading spellbook existance status
2023-06-27 13:58:45 +03:00
Ivan Savenko
7fc66c2797
Fix loading of experience for predefined heroes
2023-06-26 20:02:43 +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
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
2882e2d248
Added loading of reserved heroes from H3M
2023-06-26 17:15:59 +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
c4772ae59d
Load new hota quests as empty quests, to avoid unexpected behavior
2023-06-20 19:37:27 +03:00
Ivan Savenko
6564502a0e
Implemented mapping of hero portraits
2023-06-20 19:37:27 +03:00
Ivan Savenko
d4728f78ce
Support for hota victory conditions
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
f35b3a0dc3
Replace MetaString operator << with member function
2023-06-20 19:37:27 +03:00
Ivan Savenko
c43783db58
Use string ID's instead of raw strings for win/loss conditions
2023-06-20 19:37:27 +03:00
Ivan Savenko
6f743916db
Moved CGCreature to a new file
2023-06-20 19:37:27 +03:00
Ivan Savenko
7c88bb7e4f
Detect mirror maps
2023-06-20 19:37:27 +03:00
Ivan Savenko
636b2ea856
Removed no longer used code - moved to hota mod
2023-06-20 19:37:27 +03:00
Ivan Savenko
d742b6b809
Fix mapping of map objects linked to game entities
2023-06-20 19:37:27 +03:00
Ivan Savenko
4d947be287
Adventure map shipyard nwo has configurable boat type
2023-06-16 17:59:50 +03:00
Ivan Savenko
0901c8feaf
Use boost::multiarray instead of manual memory management in CMap
2023-06-16 17:59:10 +03:00
Ivan Savenko
1e9eea30e1
Merge remote-tracking branch 'soundsgood/CArtHandler-rework' into develop
2023-06-05 18:53:17 +03:00
Ivan Savenko
d6a357fd17
Split some map object files into smaller files. Reduced includes usage.
2023-06-02 21:47:37 +03:00
Ivan Savenko
2f9073e13a
Fix assertion
2023-06-01 16:03:37 +03:00
Ivan Savenko
fce5f9f907
Fix buildings loading
2023-05-31 23:18:39 +03:00
Ivan Savenko
312b703a78
Fixed mapping of hota objects
2023-05-31 23:18:39 +03:00
Ivan Savenko
952708e865
Basic version of object templates mapping
2023-05-31 23:18:39 +03:00
Ivan Savenko
b3ca6c8cee
Fixed detection of campaign format
2023-05-31 23:18:39 +03:00
Ivan Savenko
e1c01ca636
Fix CI build
2023-05-31 23:18:39 +03:00
Ivan Savenko
acac42291e
Remove excessive CMap.h includes
2023-05-31 23:18:38 +03:00
Ivan Savenko
62595cb039
Split massive CMap.h a bit
2023-05-31 23:01:57 +03:00
Ivan Savenko
bf720200f9
Implemented identifiers remapping for game entities
2023-05-31 23:01:57 +03:00
Ivan Savenko
c51e0ef052
Added information on Heroes Chronicles map ID's
2023-05-31 23:01:57 +03:00
Ivan Savenko
8d0dcd6ad7
All h3m bitsets are now loaded inside mapReader
2023-05-31 23:01:57 +03:00
Ivan Savenko
5fe5d0c045
Fix loading of buildings of random town
2023-05-31 23:01:57 +03:00
Ivan Savenko
ffd7144df8
Implemented identifiers mapping for town buildings
2023-05-31 23:01:57 +03:00
Ivan Savenko
de769a04d6
Remove unnecessary includes from headers
2023-05-31 23:01:57 +03:00
Ivan Savenko
daaaf84392
Icon index for map format is now defined in config
2023-05-31 23:01:57 +03:00
Ivan Savenko
402823e3d5
Fix loading of some user-made maps
2023-05-31 23:01:57 +03:00
Tomasz Zieliński
edf47f5769
Fix StdInc.h
2023-05-21 07:26:36 +02:00
Tomasz Zieliński
5ffbdb10ef
Another build fix
2023-05-20 14:07:16 +02:00
Tomasz Zieliński
c7f4fe8243
Another compile fix.
2023-05-20 13:47:36 +02:00
Tomasz Zieliński
a1531b58db
More fixes
2023-05-20 13:38:14 +02:00
Tomasz Zieliński
ae97912b1e
Fix warning
2023-05-20 13:23:27 +02:00
Tomasz Zieliński
219e897db0
Added missing files.
2023-05-20 12:02:30 +02:00
SoundSSGood
021f94a579
artifact utils
2023-05-17 17:00:31 +03:00
Konstantin
05eccbc2bb
vcmi: split bonus to enumerator and HeroBonus.h
2023-05-03 18:01:06 +03:00
Konstantin
86f5d6de69
vcmi: modernize headers
2023-04-30 13:35:54 +03:00
Konstantin P
e5f78a8997
vcmi: fix tests with latest develop
2023-04-27 20:59:55 +03:00
Konstantin
bcf8ca1268
vcmi: fix map format for teams number
2023-04-27 20:59:55 +03:00
nordsoft
de22132cdf
Fix loading
2023-04-20 19:46:27 +04:00
nordsoft
db33558abc
Load custom campaigns from gzip
2023-04-20 19:22:27 +04:00
nordsoft
9ecf16ca23
Fix minor bugs
2023-04-20 03:20:00 +04:00
nordsoft
5cf9fbbe02
Fix compiling
2023-04-19 03:11:13 +04:00
nordsoft
f464ca3560
Merge remote-tracking branch 'upstream/develop' into vcmi-campaign
...
# Conflicts:
# lib/mapping/CCampaignHandler.cpp
2023-04-19 02:45:49 +04:00
nordsoft
ecf8b9934b
Further refactoring
2023-04-17 23:19:56 +04:00
nordsoft
80220fda5b
Merge remote-tracking branch 'upstream/develop' into vcmi-campaign
...
# Conflicts:
# lib/mapping/CMap.h
2023-04-17 04:54:57 +04:00
nordsoft
91b4782a2f
Refactor more fields from campaign header
2023-04-17 04:47:54 +04:00
nordsoft
70f4cc5e0f
Refactor campaign regions
2023-04-17 04:26:35 +04:00
Konstantin
7a5775a9f9
vcmi: use std::optional
2023-04-17 00:43:13 +03:00
nordsoft
0c87d0a26c
Add a comment
2023-04-16 21:49:43 +04:00
nordsoft
954a2abb71
Verifying mods before starting map
2023-04-16 15:38:13 +04:00
nordsoft
67e1b48d47
Remove unused interface
2023-04-16 14:00:01 +04:00
Ivan Savenko
65e4ce9ffe
Update to c++17
2023-04-15 17:20:38 +03:00
Ivan Savenko
5589e973a8
Fixed parsing of hota 'arena' map format hacks
2023-04-15 17:20:38 +03:00
Ivan Savenko
22558551bf
Fix parsing of invalid data from h3m
2023-04-15 17:20:38 +03:00
Ivan Savenko
2c2c2c8fe0
Slight tweaking of logging of h3m edge cases
2023-04-15 17:20:38 +03:00
Ivan Savenko
f84665b5ec
Fixed loading of maps with objects owned by non-existing players
2023-04-15 17:20:38 +03:00
Ivan Savenko
f997241da1
Throw exception on loading not supported hota duel/arena maps
2023-04-15 17:20:38 +03:00
Ivan Savenko
d6a3c0e666
Cleaned up handling of hota map format versioning
2023-04-15 17:20:38 +03:00
Ivan Savenko
5b658462a1
Renamed army formation enum value
2023-04-15 17:20:38 +03:00
Ivan Savenko
b1e7774bbd
Fixed parsing of hota format '0'
2023-04-15 17:20:38 +03:00
Ivan Savenko
1b6ece1367
Formatting and renames of H3M readers, no functionality changes
2023-04-15 17:20:38 +03:00
Ivan Savenko
de855085f0
Added information on banks, seer hut and monster properties
2023-04-15 17:20:38 +03:00
Ivan Savenko
ea8aeef8c0
Implemeted parsing of HotA Seer Huts
2023-04-15 17:20:38 +03:00
Ivan Savenko
88096de7e4
Fixed parsing of HotA H3M format, including Seer Huts
2023-04-15 17:20:38 +03:00
Ivan Savenko
46239215af
Implemented parsing of HotA map objects (except for Seer Hut)
2023-04-15 17:20:38 +03:00
Ivan Savenko
3790661fa6
Refactored loadObject() monstrocity into set of smaller methods.
2023-04-15 17:20:38 +03:00
Ivan Savenko
c0e9eb6eb1
HotA maps up to objects block can be parsed
2023-04-15 17:20:38 +03:00
Ivan Savenko
838d45b32c
Implemented parsing of HotA h3m header
2023-04-15 17:20:38 +03:00
Ivan Savenko
f93335d678
Cleanup and formatting of H3M loader code
2023-04-15 17:20:38 +03:00
Ivan Savenko
3738171b21
Refactoring of H3M loader to make HotA format support easier
...
- extracted low-level reader from MapFormatH3M class
- added separate structure to define version-specific values
- cleared up some H3M format edge cases
- replaced witch hut skill vector with set
- converted several fields to enum type
2023-04-15 17:20:38 +03:00
Ivan Savenko
b354f99cc3
Merge pull request #1936 from IvanSavenko/cpp_17_upgrade
...
Upgrade c++ standard to c++17
2023-04-14 19:21:17 +03:00
Ivan Savenko
44b83b2e11
Merge master -> develop
2023-04-14 16:51:35 +03:00
Ivan Savenko
2dc48496ef
Fix generation of roads and rivers near map edge
2023-04-13 16:26:03 +03:00
nordsoft
d244702abc
Read and write mods into map
2023-04-12 02:59:55 +04:00
nordsoft
617a4385a2
Add mods fields into map header
2023-04-12 02:14:22 +04:00
Ivan Savenko
644f0f4b32
Removed ARRAY_COUNT in favor of std::size
2023-04-12 01:04:26 +03:00
nordsoft
30281d5991
Merge remote-tracking branch 'upstream/develop' into vcmi-campaign
2023-04-11 21:44:31 +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
nordsoft
3166fd05f4
Handle array exceed limit potential crash
2023-04-09 14:43:51 +04:00
nordsoft
23e411cacd
Adding logging and error handling
2023-04-09 13:29:07 +04:00
nordsoft
7c13246851
Keep creatures and arts
2023-04-09 05:02:34 +04:00
nordsoft
08809f1cdc
String building id
2023-04-09 04:53:06 +04:00
nordsoft
6ed8f748b3
Use string ids for most of bonuses
2023-04-09 04:26:04 +04:00
nordsoft
307fb071a2
VCMI campaign format support prototype
2023-04-09 03:24:40 +04: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