Ivan Savenko
8273f323b1
- it is possible to edit data of another mod or H3 data via mods
...
- mods can access only ID's from dependenies, virtual "core" mod and itself (optional for some mods compatibility)
- metadata field for JsonNode, used to track source mod
- moved wog creatures into wog mod
- (linux) convertMP3 option for vcmibuilder for systems where SDL_Mixer can't play mp3's
2013-04-25 14:03:35 +00:00
DjWarmonger
57ea1ed1b8
Fixed crash at month of double population.
...
doublingCreatures vector was never properly initialized.
2013-04-23 17:29:16 +00:00
Ivan Savenko
3285f1910b
- finally, solution for imageIndex fields. All image lists will be generated in runtime
...
- iconIndex fields from json are no longer used
- simple check for missing icons on startup
2013-04-22 19:51:22 +00:00
Ivan Savenko
4db13ba845
- proper destructors for handlers and lib objects
2013-04-21 16:38:31 +00:00
Ivan Savenko
c6cc6e6301
Large changeset, first part of editing H3 objects via mods feature. Changes:
...
- loading of all objects (including H3 objects) will be directed by mod handlers
- common base for all handlers accessible from mod system (IHanderBase)
- json format changes: use struct with string ID's instead of vector
- fixed some gcc/clang errors and warnings
- fixed several cases of memory leaks and invalid memory access (mostly related to usage of bonus system and/or identifiers resolution)
Note that right now loading is much slower than before due to excessive json validation (or not fast enough validator)
2013-04-21 12:49:26 +00:00
Ivan Savenko
0cf969d508
- console logger by default uses same format as previously (no extra data)
...
- a lot of changes in configs;
- - update to creature format - abilities are now json structure
- - multiple bugfixes revealed by validation
- made schemas a bit more strict
- creatures data can be replaced via mods
- it is possible to validate vcmi configs using schemas (disabled)
2013-04-11 19:24:14 +00:00
beegee1
c7c2686379
- Integrated the logging API into the client and the lib - Remove some more comments and switched to /// style - Fixed recursive locks - Added Global.h to CMakeLists(now visible in qt-creator) - Removed usage of shared_mutex - Added unique_ptr to CLogger targets
2013-04-09 14:31:36 +00:00
beegee1
ee51c5beb5
- Renamed /lib subfolders to lowercase
2013-04-07 10:48:07 +00:00
Ivan Savenko
619a07da03
- projectile blitting should be closer to original H3. But still not perfect.
...
- removed no longer needed field "projectile spins"
2013-04-04 13:18:38 +00:00
Ivan Savenko
c4c592b773
- bugfixing: #1243 , #1227 , #1241 , #1236 , #1233
2013-03-14 20:44:00 +00:00
alexvins
9e7fe4d011
Fix duplication in zcrtraits load
2013-03-14 11:39:29 +00:00
alexvins
2eb8263e51
Basic Configuration for bonus types
...
* introduced new handler BonusTypeHandler
* config\bonusnames.json converted to common format and splitted info main and localizable parts
* hanlders initialization refactored
2013-03-06 18:49:56 +00:00
DjWarmonger
ae7f3560a3
Moved phoenix immunity to .json. This fixes #978
2013-03-04 19:38:09 +00:00
Ivan Savenko
b4e54f76ea
- split heroes.json in manner similar to creatures\factions
...
- string ID's for H3 heroes
- data in vcmi configs for heroes will replace data in h3 txt's
2013-03-03 18:00:37 +00:00
Ivan Savenko
f306d7bb70
some changes towards editing H3 objects via mods. Should be stable, report if not.
...
- removed duplicated json loading code in handlers
- simpler and mod-friendly handling of combined artifacts
- reorganized CCreature to avoid huge number of fields in one structure
2013-03-02 16:55:51 +00:00
DjWarmonger
28d3574b0b
Compile fix - do it the old way.
2013-02-25 13:28:31 +00:00
alexvins
2cb86d84fa
[refactor]
...
+ crexp parser: parse mind immunity
2013-02-25 12:18:45 +00:00
alexvins
856c7feeba
[refactor]
...
* creature config use string ids now
+ support string subtype id in short bonus format
* crexp parser: less magic nombers
2013-02-23 22:48:22 +00:00
mateuszb
560315bc48
* SlotID refactoring
2013-02-16 14:03:47 +00:00
alexvins
ceea466f54
[refactor] spell handling
...
* more config options for spells
+ mind immunity handled by config
+ direct damage immunity handled by config
+ immunity icon configurable
- removed mind_spell flag
* more use of new spell identifacation
2013-02-13 19:35:43 +00:00
mateuszb
86dc9386d6
* refactoring, including a generic solution for IDs
2013-02-10 23:24:57 +00:00
DjWarmonger
140786a04b
- Drain Life now has % effect depending on bonus value
...
- Stack can use more than 2 attacks. Additional attacks can now be seperated as "ONLY_MELEE_FIGHT and "ONLY_DISTANCE_FIGHT".
2013-02-08 09:22:10 +00:00
mateuszb
f1c78e3260
* creature ID refactoring
...
* double week creatures are configurable now
2013-02-07 17:34:50 +00:00
DjWarmonger
e63747d2d2
Fixed #860 and #1169
...
Imprisoned heroes as well as their commanders will get full level ups, with updated specialty, mana and movement.
2013-02-04 12:32:53 +00:00
Ivan Savenko
5deb499e7e
Last breaking change into mod system (will explain on forum)
...
- paths in "filesystem" node are now relative to mod directory
- "filesystem" entry in mod.json is now optional
- made "register object" log messages visible only in log
- minor fixes, including #1173
2013-01-16 14:28:49 +00:00
Ivan Savenko
da6cb0ae12
- trade windows work with new creatures\artifacts
...
- removed some duplicated code in creature loading
2012-12-23 10:23:41 +00:00
Ivan Savenko
8824f5e2d5
- H3 creatures use subset of mod creature format (todo - unify code)
...
- creatures configs moved into confg/creatures files, similar to factions.
- creatures ID's use same camelCase format as the rest of the game
2012-12-22 16:47:12 +00:00
Ivan Savenko
b5ebf443fc
- all fonts handling is now in new file, UIFramework/Fonts.cpp/h
...
- common base class for H3 bmp and ttf fonts
- replaced fonts.txt with fonts.json
2012-12-19 17:24:53 +00:00
DjWarmonger
0e06ac15ad
- Commanders are now a part of faction config
...
- Support for external dwellings for new towns
2012-12-19 16:35:58 +00:00
DjWarmonger
cff758cfba
Moved artifact-related text to CArtifact class.
2012-12-06 19:03:47 +00:00
Ivan Savenko
85a23e298c
- generic string ID -> numeric ID resolution system
...
- - hero army and creature upgrade names are resolved using new system
- - faction names and creatures in towns are resolved using new system
- (linux) replaced build_data.sh with hopefully better vcmibuilder script
- minor fixes
2012-12-03 16:00:17 +00:00
Ivan Savenko
c9dd80ea6d
- moved json-related functions (e.g. ParseBonus) into JsonUtils namespace
...
- replaced JsonNode::toStdVector with more universal convertTo
- some renaming in StartInfo
2012-12-02 12:21:44 +00:00
DjWarmonger
ca9033d0e4
- Support for "Enchanted" WoG ability.
...
- Precision will not be cast on non-shooters
2012-12-01 18:30:03 +00:00
DjWarmonger
13a5a820d0
- Fixed #1032
...
- Fixed upgrades not working after recent changes. Now all upgrades will be handled by creature names.
2012-11-14 15:26:33 +00:00
Ivan Savenko
f7915d9e61
- removed creature-related code from ModHandler
...
- new towns can be loaded as mods
- removed separate DefInfos for towns\capitals
- a bit simpler handling of adventure map def's
2012-11-13 11:52:23 +00:00
Ivan Savenko
c071a03a8a
- fix for #1135
...
- merged wall_pos.json into town config
- removed tower_shooter field from creatures.json
2012-10-05 18:03:49 +00:00
Ivan Savenko
306d64b0c4
- it is possible to read json file with vector
...
- town configuration:
- - all town-related texts are now in TownHandler
- - alignments are now part of faction
- - removed CTown::bonus field
2012-10-05 13:11:26 +00:00
Ivan Savenko
b1557bc6c4
- fixes #1105
...
- minor improvement to resolution selection dialog
- removed (hopefully) all cases where neutral faction uses id -1
2012-09-29 15:10:56 +00:00
DjWarmonger
b6a20b6e99
Fixed teleporting animation ( #818 ). Flying ability with subtype "1" will cause movement animation to skip (teleport).
2012-09-29 12:40:12 +00:00
DjWarmonger
906fa04a60
Tweaks for creature bonuses.
2012-09-26 19:02:44 +00:00
Ivan Savenko
15a7f43e11
- fixed #1075 , #1080 , #1081
...
- fixed some warnings from cppcheck
2012-09-26 13:13:39 +00:00
Ivan Savenko
8f936cd34d
- added battleAI to CMake, compile fixes
...
- icons config for towns and creatures
2012-09-22 15:10:15 +00:00
DjWarmonger
e2bfd53c98
- Fixed some issues and crashes
...
- Simplified projectile handling. New creatures can now shoot.
2012-09-21 19:49:35 +00:00
DjWarmonger
656cf5ab6a
- New creatures now work in game (more or less)
...
- Parsing of def info for new creatures
- Fixed crash caused by neutral faction vs native terrain check
2012-09-20 18:41:16 +00:00
Michał W. Urbańczyk
62e63d45b1
Work in progress on BattleAI. Related changes:
...
* battle AIs receive ptr to CBattleCallback (not sure why it was CPlayerBattleCallback, likely mistake)
* reworked some battle callback methods to be more generic and able to handle some hypothetic scenarios
* for testing purposes in duel mode the first AI will be taken fro mconfig and the second will remain stupid ai
* minor changes
2012-09-20 16:55:21 +00:00
DjWarmonger
3f95ba8ac8
Parsing & loading for new creatures. A lot of tweaks & improvements. Still needs some work.
2012-09-19 16:10:45 +00:00
DjWarmonger
9438cfc7e2
Moved creature sounds to CCreature. Sound IDs are now stored as strings.
...
Creature parser is complete (untested).
2012-09-17 19:00:26 +00:00
Ivan Savenko
0ca9f64573
Next part of town configuration:
...
- town screen is mostly implemented, has some minor issues
- factions are now separate from towns, neutrals have faction with id=9
- more constants to GameConstants: town-specific buildings, strings for terrains and resources
- replaced most access to builtBuildings with isBuilt() method
- replaced id's with enums for town subtype and buildings id's
2012-09-05 12:49:23 +00:00
DjWarmonger
31f82cade0
- Removed integer parameters from CCreature, all stats are now handled by Bonus System Only
...
- Parsing for creature format http://wiki.vcmi.eu/index.php?title=Creature_Format
Needs rearrangement of some info to work
2012-08-30 14:57:24 +00:00
Ivan Savenko
cf15ca1cf0
- replaced loadToIt with better H3 parser.
...
- moved hero class to heroes.json
2012-08-25 08:44:51 +00:00
DjWarmonger
39d433c1c7
Moved game Modules to config file.
2012-08-24 09:37:52 +00:00
Ivan Savenko
e67f8afdd9
- removed multiple unused files
...
- config folder with all json files is used via new FS API
- fixed campaigns loading. Replaced "detect h3m starts" heuristics with CCompessedStream::getNextBlock()
2012-08-02 11:03:26 +00:00
Ivan Savenko
b3c17d2788
large filesystem update. Filesysytem is now fully functional, everything should work.
...
- completely replaced CLodHandler, removed bitmaph and spriteh
- replaced CLodStream in favour of CCompressedStream (2 new files)
- renamed CResourceLoaderFactory and ResourceIndetifier to shorter names
NOTES:
- campaign loading is currently broken. Will fix.
- I am going to remove several unused files in several days (e.g. LodHandler)
2012-08-01 12:02:54 +00:00
DjWarmonger
cf45239332
Fixed #1035 .
...
Support for commander artifacts that accumulate bonus after battle.
2012-07-16 16:18:02 +00:00
Ivan Savenko
9d2711fb51
- rewrote most of classes from adventure map window
...
-- new files: client/AdventureMapClasses.*
-- implemented all missing details from infobox
- textinput can handle numbers as input
- fixed several bugs caused by CIntObject changes
- fixed #988
2012-06-13 13:04:06 +00:00
Michał W. Urbańczyk
d168f3eac2
* Implemented Moat functionality during siege (stops movement and deals dmg)
...
* Mostly implemented battle spells:
- Fire Wall
- Force Field
- Land Mine
- Quicksands
2012-05-18 20:50:16 +00:00
DjWarmonger
d491bc1c3a
Commanders can level up. It's non-interactive yet.
...
Printing secondary skills for Commanders.
2012-05-18 14:02:27 +00:00
Ivan Savenko
9efe05c90b
- removed usage of Graphics in several places (Components and hero window).
...
minor:
- fixed several deprecation warnings in video player
- config file may have multiple upgrades for creatures
2012-05-13 15:04:21 +00:00
DjWarmonger
9c9301a495
Various fixes.
2012-04-22 19:56:03 +00:00
DjWarmonger
81e74f8c33
- Config settings & parsing for Commanders.
...
- Fix for Regeneration icon
2012-04-22 13:28:46 +00:00
Michał W. Urbańczyk
d0e259864e
* Replaced boost::shared_ptr with std::shared_ptr.
...
* Brought shared_ptr and unique_ptr and their factories (make_shared, make_unique) to the global scope.
* Removed excessive usage of shared_ptr in bonus system interface.
* Fixed bonus system limiters/caching interactions. That covers #823 , #859 and a number of rare edge-cases.
* Implemented multiple-step limiters applying, fixing hasAnotherBonusLimiter and allowing transitional dependencies between bonuses.
* Bonus system should be slightly faster, since we cache limited bonuses. Some rare usages (limiting query against a foreign node) however can't use caching.
2012-03-06 16:59:55 +00:00
DjWarmonger
855cebfe81
- MIND_IMMUNITY bonus replaces separate protectons from various spells
...
- Creature Window can handle descriptions of spellcasting abilities
2012-01-27 07:25:29 +00:00
Ivan Savenko
dbc603b7d7
- fixed crash on opening spellbook during enemy turn
...
- fixed last known localization issue (bank configs)
- diplomacy and new weeks\month mechanics should be identical to H3
- minor fixes
2012-01-19 14:33:22 +00:00
beegee1
7f04ed990b
Major refactoring. First part: BattleInterface
...
Introduction of pre compiled headers,...
2011-12-13 21:23:17 +00:00
Ivan Savenko
29f42aa873
- fixed #834
...
- fixed crash at campaigns loading
- minor fixes
2011-11-25 19:41:23 +00:00
DjWarmonger
10fce0025a
Support for wall penalty & No Wall Penalty ability.
...
All creature abilities should now be more or less working.
2011-10-20 17:41:40 +00:00
DjWarmonger
bdb6db2ab7
Support for Aura of Magic Resistance.
2011-10-20 11:03:04 +00:00
Frank Zago
d8249d007f
Replaced a few iterators with BOOST_FOREACH.
2011-09-01 04:01:54 +00:00
Frank Zago
99000866bc
Moved the notUsedMonsters values into creatures.json.
2011-09-01 03:48:58 +00:00
Frank Zago
2c26b9be96
Merge cr_abils.txt into creatures.json. Force loading of data from ZCRTRAIT.TXT (was controlable before, but switch was in an inconvenient place).
2011-09-01 03:39:53 +00:00
Michał W. Urbańczyk
835bd1fbeb
Reverting r2327
...
http://forum.vcmi.eu/viewtopic.php?t=410
2011-08-30 06:19:07 +00:00
Ivan Savenko
33719696d8
- added default values to JsonNode
...
- small cleanup to heroes.json
2011-08-27 21:17:45 +00:00
Frank Zago
866d1c6e2a
Rewrote CCreature::estimateCreatureCount to fix a compile warning.
2011-08-27 02:15:58 +00:00
Michał W. Urbańczyk
3152e6d540
Fixed #771 , #772 and #787 .
...
Some minor changes and fixes.
2011-08-25 15:24:37 +00:00
Frank Zago
16fcd025a7
Converted bonusnames.txt to a json file.
2011-08-20 22:31:59 +00:00
Frank Zago
b853df76ba
Consolidated crerefnam.txt, monsters.txt, cr_factions.txt, cr_upgrade_list.txt, CREDEFS.TXT, cr_shots.txt and cr_to_turret.txt into creatures.json
2011-08-20 21:53:03 +00:00
DjWarmonger
16e7241fbd
Support for WoG's Defense bonus.
2011-07-16 16:40:38 +00:00
DjWarmonger
79a453f442
Support for WoG "cast before attack" bonus. Minor fixes.
2011-07-16 06:42:44 +00:00
beegee1
55e7959fd9
* Bonus system caching updated, partially rewritten, much more robust, thread-safe
...
* Adjusted projectile speed, trebuchet canon speed
2011-07-13 18:39:02 +00:00
DjWarmonger
a7577ccb6b
More details for Rebirth ability.
2011-07-10 09:03:46 +00:00
DjWarmonger
d4465ec929
Smarter handling of Magic Resistance & Resistance hero skill.
2011-06-18 10:58:46 +00:00
Frank Zago
aca118b613
Fixed creature bonus parser. Fixed several uninitialized variables. Updated data build script to v0.85.
2011-06-03 03:23:50 +00:00
DjWarmonger
c6a69d35cf
More bonuses & graphics handled.
2011-05-28 05:34:40 +00:00
DjWarmonger
3a6b5cbfbb
Various fixes related to spell effects and Creature Window.
2011-05-21 07:07:07 +00:00
DjWarmonger
d4c2e55a00
Fixed #421 & #480 . Some work on animations & sounds. Minor changes.
...
TODO: Interface should check game state before it's changed by triggered abilities of creatures.
2011-05-15 06:37:57 +00:00
DjWarmonger
bc114a89f4
Partial support for immunities & receptive ability.
...
TODO: Immunity to direct damage spells.
2011-05-13 17:51:12 +00:00
Frank Zago
f7a4bb906c
Several minor cleanups.
2011-05-04 02:38:58 +00:00
DjWarmonger
a4d845688a
Support for Poison, Age, Disease
...
Partial support for Stone Gaze, Paralyze, Mana drain
Partial fix for #134 - animation triggers only for our own stacks, not enemy's
Lots of tweaks & fixes.
2011-04-25 09:03:13 +00:00
DjWarmonger
7591d06b05
Support for Death Stare.
...
Some tweaks are still needed. Level 0 spell-like abilities won't work correctly.
2011-04-23 17:10:54 +00:00
DjWarmonger
3c5a0fd4ce
Creatures now use SHOTS Bonus to express their total ammo count. Support for "additional shots" exp premy.
2011-04-12 08:59:18 +00:00
DjWarmonger
8ac7edb04b
Fixed #680
2011-04-07 16:44:24 +00:00
DjWarmonger
869214f44b
Resolved #710 .
...
Minor fixes.
2011-03-08 07:40:14 +00:00
DjWarmonger
b9f301b600
Better implementation of creature window, minor fixes.
...
Check forum for new graphics.
2011-03-06 12:12:22 +00:00
DjWarmonger
dc0eb37da6
New creature window works in general, covering old functionalities and displaying new info. It's far from finished though.
2011-03-03 18:25:48 +00:00
DjWarmonger
9d313d3d2c
Minor fixes and tweaks.
2011-02-22 14:23:09 +00:00
Michał W. Urbańczyk
a46ad0b7ef
Next set of fixes, mostly for deserialization.
2011-02-22 09:47:25 +00:00
Michał W. Urbańczyk
4c9edd3f06
Many fixes around bonus system. Some basic propagation mechanism (not clever but works).
2011-02-21 04:13:00 +00:00
mateuszb
519a4186de
* fixed bugs 470 and 523
...
* minor improvements
2011-02-20 18:32:39 +00:00
DjWarmonger
872c893789
Fixed parsing for Mind Immunity.
2011-02-17 09:06:24 +00:00
DjWarmonger
6db068f506
Fixed stacks speed and general parsing bug.
2011-02-14 21:08:29 +00:00
DjWarmonger
4dc258521b
Various fixes.
2011-02-13 19:46:16 +00:00
DjWarmonger
adb1d9181d
Missing file.
2011-02-13 13:16:41 +00:00
DjWarmonger
7a49240520
Some additional info for Stack Experience, fixes.
2011-02-12 16:21:48 +00:00
mateuszb
fcdc3f0bdd
Various changes, including exprank limiter and development towards Tactics secondary skill support.
2011-02-12 16:12:48 +00:00
Michał W. Urbańczyk
ab20e024c0
Various fixes and improvements around kill hero and kill monster quests. A few minor unrelated fixes.
2011-02-11 12:27:38 +00:00
DjWarmonger
c0f2b3f32b
Now parsing CREXPBON into Bonus System, with limiters. StackExperience class removed.
...
Exp ranks are now calculated, though exp is never set.
2011-02-11 08:20:26 +00:00
Michał W. Urbańczyk
979f77d900
Some preparations towards handling stack experience by the new bonus system. New nodes for controlling premies for creatures of given tier (level). Minor changes.
2011-02-10 13:12:53 +00:00
DjWarmonger
454beba90c
Backup of last modifications in stack experience.
2011-02-09 14:58:15 +00:00
Michał W. Urbańczyk
9f21e4b46f
Minor compile fix, std::copy used that way overwrites original bonuses [but the code won't be needed anyway]
2011-02-09 12:33:58 +00:00
DjWarmonger
72c30df16a
More parsing for CREXPBON.
2011-02-08 11:34:34 +00:00
Michał W. Urbańczyk
31fc8f6db3
Merged Warmonger's changes from trunk
2011-02-06 08:32:05 +00:00
Michał W. Urbańczyk
c9189119b9
Little more work on artifacts.
2010-12-29 21:04:22 +00:00
mateuszb
49083c4e5a
* ConstTransitive CGI more or less done
...
* hch contents distributed to more appropriate folders
2010-12-20 21:22:53 +00:00