1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-28 23:06:24 +02:00
Commit Graph

831 Commits

Author SHA1 Message Date
AlexVinS
83fdce473e Fix mod schema: RMG templates added. 2015-07-27 08:36:19 +03:00
AlexVinS
4e72978abd Add some missing object subtypes, (found on test map VCMI_Tests_2011b.h3m) 2015-06-10 23:59:13 +03:00
AlexVinS
478a1b8dfd Explicitly define garrison subtypes
(!) named subtypes are required for future map format.
2015-06-10 19:58:03 +03:00
AlexVinS
5f8ecc22d5 Introduce configuration option for editor animation of map object and setup it for hero classes. 2015-06-10 14:21:33 +03:00
DjWarmonger
9e7b459882 Partial solution to #2206
TODO: add serialized field that contains custom guard config
2015-06-05 11:28:14 +02:00
DjWarmonger
a68b58d969 - Use straight paths for some connections
- More fixes for template schema
2015-06-02 16:40:32 +02:00
DjWarmonger
d6225f50e1 Fixes for template schema. 2015-06-02 15:26:33 +02:00
DjWarmonger
6890ae9f02 - Fixed improper use of playersCount. Now RMG can generate maps up to 8 players, with CPU players only as well.
- Fixes for template scheme
2015-05-27 11:30:46 +02:00
DjWarmonger
2e70d8a084 - VCMI will now read templates from mods
- Added partial schema for RMG template
2015-05-26 18:19:41 +02:00
DjWarmonger
ff6638b9f9 Rogues now grant expert Vision effect. 2015-05-25 09:53:32 +02:00
AlexVinS
257a1b024d Fix scuttleBoat configuration 2015-04-13 04:42:28 +03:00
AlexVinS
368401ca07 Fix removeObstacle configuration
* fixes 0002165
2015-04-11 14:34:09 +03:00
AlexVinS
724baed55b fix typo 2015-04-11 10:19:35 +03:00
AlexVinS
0a391cd367 Tweak DISPELL config
* make it positive and non-smart on adv and expert level,
  as it should work on ally creatures on basic level and on all for higher levels
2015-04-11 10:19:30 +03:00
DjWarmonger
37f9d898ac Fixed terrain type to "subterra". Updated Object Format on WIki to list all possible terrain types. 2015-04-05 15:38:23 +02:00
DjWarmonger
df80c50106 Added missing Den of Thieves to RMG. Limit set to 1 per zone. 2015-04-05 12:35:26 +02:00
beegee1
e9b7044c9b Fix mantis #1859, unknown pattern in underground 2015-03-28 16:41:26 +01:00
AlexVinS
9600446cf9 +smart target, +hit animation 2015-03-18 17:48:32 +03:00
DjWarmonger
a832b7efee Fixed #2026 2015-03-12 10:08:10 +01:00
DjWarmonger
f894abe494 Unified interface for object template. 2015-03-12 08:31:30 +01:00
DjWarmonger
cf74969603 Fixes, logging for Seer Huts 2015-03-11 22:17:35 +01:00
DjWarmonger
ec879046ca Merge pull request #93 from ArseniyShestakov/feature/pathfindingTeleports
Okay let's do this!
2015-03-10 09:04:25 +01:00
DjWarmonger
f32849a73e Attempt to compile refactored spells in MSVS. 2015-03-09 19:24:45 +01:00
ArseniyShestakov
1c2afc659f Config: replace teleport handler with monolith, subterraneanGate and whirlpool 2015-03-08 16:17:33 +03:00
DjWarmonger
607375a9bc Generate Seer Huts with creature rewards 2015-02-28 21:14:45 +01:00
AlexVinS
b6038240ab Implemented DISGUISE spell. Untested 2015-02-26 08:39:59 +03:00
AlexVinS
b846b717a1 implemented VISIONS spell (partially)
(-) todo: agressivnes
2015-02-26 08:39:56 +03:00
AlexVinS
36cdb2968b Refactoring 2015-02-26 08:39:54 +03:00
AlexVinS
666d7a4f45 Start implementing VISIONS and DISGUISE 2015-02-26 08:39:53 +03:00
AlexVinS
c6c7552efe fix scuttleBoat location type. it should be LOCATION 2015-02-26 08:39:44 +03:00
AlexVinS
08d4f7991e Extract adventure spell mechanics 2015-02-26 08:39:39 +03:00
DjWarmonger
2a082e6c21 Merge pull request #84 from Fayth/test/advMapFading
If no one objects, I will try to merge this.
2015-02-18 09:52:09 +01:00
ArseniyShestakov
ae20499854 Quest Log: implement option to hide complete quests 2015-02-17 05:47:49 +03:00
Fay
cbd3a19987 Merge branch 'develop' of https://github.com/vcmi/vcmi into test/advMapFading
Conflicts:
	client/CPlayerInterface.cpp
2015-02-09 16:09:27 +01:00
ArseniyShestakov
96d57fc954 War Machines: replace immunity with absoluteImmunity
This commit replace SIEGE_WEAPON immunity with absoluteImmunity for following spells: Haste, Slow, Death Ripple, Clone, Teleport
2015-02-07 16:02:15 +03:00
ArseniyShestakov
fbb84624f9 War Machines: add absoluteImmunity to Implosion spell 2015-02-07 16:00:06 +03:00
ArseniyShestakov
20387bd2da War Machines: add absoluteImmunity to some timed spells
This commit add SIEGE_WEAPON to absoluteImmunity of following timed spells: Curse, Bloodlust, Mirth, Sorrow, Frenzy, Counterstrike, Berserk, Hypnotize, Forgetfulness, Blind
2015-02-07 15:57:46 +03:00
Fay
3c3fb0e21d Added advmap config options to enable/disable fading; 2015-02-02 19:38:30 +01:00
Fay
4b248c2762 World view impl -- initial; 2015-01-13 20:57:41 +01:00
DjWarmonger
121c39a994 Fixed Jebus and CoD templates. 2014-12-26 15:14:22 +01:00
AlexVinS
8f84e24aa6 Get rid of mainEffectAnim 2014-11-28 01:03:25 +03:00
AlexVinS
d94f15bdf4 Added configurable animation for SPELL_LIKE_ATTACK 2014-11-28 00:36:14 +03:00
AlexVinS
75b93b070d Implemented configurable hit/affect animation
* need more testing
2014-11-27 16:51:16 +03:00
AlexVinS
16d08b062a First draft of spell animation configuration 2014-11-26 22:25:13 +03:00
AlexVinS
a71c452fc6 Merge branch 'develop' into SpellsRefactoring4 2014-11-24 12:45:34 +03:00
AlexVinS
bddf662178 Few tweaks to bonus descriptions 2014-11-24 12:44:46 +03:00
AlexVinS
752965ff69 Merge branch 'develop' into SpellsRefactoring4
Conflicts:
	lib/CSpellHandler.cpp
2014-11-14 05:28:23 +03:00
AlexVinS
8979de7960 Fix issue #1843 (teleport case) 2014-11-14 03:07:14 +03:00
AlexVinS
ce8fa33efc Introduced new spell configuration options (not used yet) 2014-11-13 13:37:42 +03:00
josch
b962e11bd7 Launcher: add setting allowing not to automatically check remote repositories
- add a button to the launcher which allows manual downloading
 - add a configuration option autoCheckRepositories to launcher settings
 - add ui elements to settings dialog to change autoCheckRepositories
2014-11-10 08:21:47 +01:00
DjWarmonger
530a3e69bf Option to allow / ban certain types of town in a template. 2014-10-30 10:00:29 +01:00
DjWarmonger
7289dbafa9 Fixed #1871 2014-10-29 16:40:52 +01:00
DjWarmonger
b518fd6ea6 Added graphics for GENERAL_DAMAGE_REDUCTION bonus. Files are now in vcmi mod. 2014-10-28 19:04:34 +01:00
Patrick Simmons
ec590b9428 Legion artifact bugfixes 2014-10-25 19:09:21 -04:00
Ivan Savenko
84e2f07c18 Disabled monthly reset of banks. Reasoning:
- workaround for 1896 (still needs a fix)
- to match H3 behaviour
2014-09-23 16:06:21 +03:00
Ivan Savenko
b551bdb725 Final part of the merge
Merging VCMI Dirs refactoring + GUI refactoring with current develop
2014-09-04 20:59:07 +03:00
Ivan Savenko
ecc705c8b7 Fixed guardians of dragon hive, fixes 1871 2014-08-19 12:09:52 +03:00
Ivan Savenko
e692f3f520 Implemnted enemy turn speed selection:
- implemented switch in settings screen
- implemented "0 speed", animation-free. *may* also work for player-owned heroes
- removed no longer used creature window switch
2014-08-11 19:16:39 +03:00
Ivan Savenko
b1285bc506 Merged GUI refactoring into develop, fixed conflicts 2014-08-09 15:01:55 +03:00
Ivan Savenko
05d8fad314 Miscellaneous fixes to banks:
- fixed evaluation of bank thread by AI (1850)
- fixed crash on evaluating bank threat after loading from save (1830)
- fixed typo in bank config. TODO: schema?
2014-08-09 12:31:43 +03:00
Ivan Savenko
33acdc51bb Fixes 1852 - fixed typo in tower config and added check to detect such cases 2014-08-04 14:47:42 +03:00
Ivan Savenko
68e9cbd3a6 Fixes 1856 - Griffin Bastion will be behind Town Hall 2014-08-04 14:47:34 +03:00
Ivan Savenko
00cda400a1 Miscellaneous improvements for Launcher UI:
- Implemented "show intro" toggle in settings
- Install/Update/Enable buttons are now visible even when mod info is hidden
- Fixed behaviour of show mod info switch, added more obvious button to enable it
- Removed no longer used "Enable mods on install" switch
- Added buttons to open data, user data and temporary directories
2014-08-04 14:03:57 +03:00
Ivan Savenko
9841600839 Moved all resolutions but 800x600 into a separate mod 2014-08-03 19:11:54 +03:00
Ivan Savenko
10fc1892a8 Large refactoring of button classes:
- renamed CAdventureMapButton to more expectable CButton
- merged CButtonBase into CButton
- created more generic class for clickable elements
- created more generic class for selectable elements
- renamed CHighlightableButton to CToggleButton
- renamed CHighlightableButtonsGrous to CToggleGroup
- minimized differences between API of all these classes
- removed all but one contructors in buttons, with same parameters across all classes
2014-08-03 14:16:19 +03:00
DjWarmonger
3712b9a48b - Fixed treasure zones touching each other, which sometimes resulted in unguarded paths.
- Fixed some object amounts which seemed wrong.
2014-07-29 16:58:08 +02:00
DjWarmonger
713912574a Fixed duplicated Redwood Observatory on snow and possibly other objects. 2014-07-27 07:37:56 +02:00
DjWarmonger
16aa230dd1 Enchanters, sharpshooters and dragons are not "special" and should normally spawn on the map. 2014-07-26 10:42:12 +02:00
DjWarmonger
9644314c8a Removed map limit cap for objects that probably don't need them and came from H3 engine limitations. 2014-07-23 18:18:06 +02:00
DjWarmonger
1cabc8f7f4 - Implemented map object limit which should also distribute the objects evenly
- Fixed Magic Well limit of 1 per zone
2014-07-23 18:02:17 +02:00
DjWarmonger
173111955e Merge branch 'develop' of https://github.com/vcmi/vcmi into RMG 2014-07-15 12:27:59 +02:00
DjWarmonger
90dcad2db7 Fix typo 2014-07-15 11:17:10 +02:00
Ivan Savenko
92d22bae63 Merge branch 'feature/creatureWindow' into refactoring/guiClasses 2014-07-14 17:23:24 +03:00
DjWarmonger
492b866806 - Fixed crash caused by randomShuffle
- Banned Magic Spring as it has 2 visitable positions
2014-07-09 14:27:12 +02:00
DjWarmonger
cbd2d74292 Generate random Pandora boxes. 2014-07-06 07:15:52 +02:00
DjWarmonger
0782557814 - Place all standard visitable objects
- Fixed some constructors
2014-07-05 19:36:12 +02:00
DjWarmonger
22f811ea52 Integrated and fixed object RMG configs by Kantor. 2014-07-05 15:58:10 +02:00
DjWarmonger
a076277e2b Merge branch 'develop' of https://github.com/vcmi/vcmi into RMG
Conflicts:
	Mods/WoG/mod.json
2014-07-05 15:27:47 +02:00
Ivan Savenko
60e5815014 Implemented stack artifact handling, no tested yet 2014-07-05 01:22:56 +03:00
Ivan Savenko
e4e9d71143 Fixed texts:
- added new texts to translate.json
- implemented texts for abilities

Remaining TODO's:
- handling of stack artifact
- handling of commander artifacts
- stack experience
2014-07-03 21:09:17 +03:00
DjWarmonger
d118fbffe8 Correct placement of subterranean gates. 2014-07-03 17:24:28 +02:00
DjWarmonger
60a5c764b8 Correct zone placement & sizing for underground maps. 2014-07-03 12:28:51 +02:00
AlexVinS
9437bc52c1 Merge remote-tracking branch 'remotes/origin/develop' into SDL2 2014-07-02 22:42:10 +04:00
Ivan Savenko
150933d1a1 Updated WoG files to 0.96
- converted remaining bank configs to object format
- implemented missing dwellings from wog, fixes #1819
2014-07-02 20:57:57 +03:00
AlexVinS
195eae48ca Merge branch 'develop' into SDL2
Conflicts:
	client/CPlayerInterface.cpp
2014-07-02 17:15:12 +04:00
DjWarmonger
bda71bed83 Uploading misc tweaks. 2014-07-01 07:07:40 +02:00
Ivan Savenko
917b1ffca8 Bugfixing:
- Added missing types for serialization
- Fixed possible crash in removable objects (campfire)
- Fixed typo in bank config
2014-06-28 17:21:38 +03:00
DjWarmonger
7aa8213cd5 Tweaked templates to allow all map sizes.
To be released as 0.95c.
2014-06-27 21:48:17 +02:00
Ivan Savenko
0f5826802d Defined templates for objects with incorrect info in objects.txt:
- random arts
- random resources
- random creatures
- spell scroll
2014-06-27 20:36:50 +03:00
Ivan Savenko
52b17334a0 Added object for scrolls and hero placeholders. Typo fix 2014-06-27 19:15:47 +03:00
Ivan Savenko
f01e30a3b1 Added random objects to configs. For now as separate "random handlers", should be merged into main handlers later 2014-06-27 19:15:47 +03:00
Ivan Savenko
955552488e - H3M parser will create objects that don't have data in map file via
object handler.
- Added large number of missing objects to config
2014-06-25 20:26:47 +03:00
Ivan Savenko
6e3eaeee21 Minor fix to schema, server will print visited objects in debug log 2014-06-25 00:23:56 +03:00
AlexVinS
3b8d0e44d4 Merge branch 'develop' into SDL2 2014-06-24 14:09:44 +04:00
Ivan Savenko
1921bd22d6 Fixed banks config 2014-06-22 17:39:56 +03:00
DjWarmonger
3ac306f501 Merge pull request #19 from vcmi/feature/mapObjects
Feature/map objects
2014-06-22 14:49:42 +02:00
Ivan Savenko
ab475195ac Banks now use new scheme as well
- Implemented Bank Constructor object.
- Merged Pyramid object into common Bank class. Banks can now grant
spells as part of their reward.
- Move bank config code to config/objects/creatureBanks.json. Note: WoG
banks are not updated yet, should be moved to WoG mod.
- Updated AI code so it can correctly evaluate bank danger (should be
generic enough for use with other objects)
- New files JsonRandom.* that contain routines for loading random
objects from Json (still WiP but should be stable)
2014-06-22 13:39:40 +03:00
Ivan Savenko
0a71e89f58 Created large number of missing objects in configs
Minor bugfixes in code
2014-06-17 14:57:47 +03:00
Ivan Savenko
09d595e385 - Implemented "mapObject" entry for hero classes
- Updated schemas
- Some bugfixing
2014-06-16 19:27:26 +03:00
DjWarmonger
60df94a3f5 Placing towns according to template. 2014-06-15 21:23:53 +02:00
Ivan Savenko
836c466f81 - Implementation of overrides for towns
- Converted dwellings.json into new format
- Implemented "mapObject" entry in town format
- Removed capital/fort/village fields from town in favor of overrides
2014-06-15 19:43:01 +03:00
DjWarmonger
01355a77d8 Added "monster strength" info to templates. 2014-06-15 11:08:06 +02:00
DjWarmonger
79da7b92ce Templates now contain info about mines. 2014-06-14 20:05:19 +02:00
Ivan Savenko
7cfd9a0903 First part of implementation of some type-specific handlers.
TODO:
- merge dwellings.json into object configs
- proper implementation of overrides for towns
- fully connect new API to RMG/H3M
2014-06-14 18:42:13 +03:00
DjWarmonger
93b44de63c Handling "terrain type" and "match terrain to town" options. 2014-06-14 17:14:59 +02:00
AlexVinS
3db7fb4f63 Still try to fix opengl backend
- no success
+ make backend selection configurable
2014-06-13 07:55:45 +04:00
AlexVinS
1597254399 just a few tweaks and it works!
* enable video again
* set default bpp to 32 - SDL2 dont like 24 bit resolution
* now almost everything looks as expected (some issues are present though)
2014-06-13 07:55:40 +04:00
DjWarmonger
c82bfd0f3e - Fixed guard generation
- Added Jebus template for comparison
2014-06-08 08:42:29 +02:00
DjWarmonger
fed2821a94 Fixed behaviour with extreme treasure values. 2014-06-07 22:27:36 +02:00
DjWarmonger
81a64a8e67 Templates can now use multiple configurations of treasure piles. 2014-06-07 15:51:03 +02:00
DjWarmonger
e4ea6727b7 Treasure piles should always be accessible.
Boosted treasure value for better overview.
2014-06-05 21:37:39 +02:00
Ivan Savenko
1d5d4e3248 Fixed broken in some cases behavior of "base" entries.
Maps with new objects seems to be working correctly now, objects are
correctly initialized with base values even with null input
2014-06-04 22:59:28 +03:00
DjWarmonger
c470b9606b Obstacles won't be generated around unguarded objects. 2014-06-04 20:59:01 +02:00
DjWarmonger
fe05de9aff Fixed copying zone settings. 2014-06-04 15:41:32 +02:00
DjWarmonger
fdb81f4d5c Reading treasure values from config. 2014-06-04 15:16:23 +02:00
Ivan Savenko
7e057b6df8 Bugfixing, game can finally load to main menu without crash 2014-06-04 11:25:13 +03:00
DjWarmonger
62e9f13b08 - Implemented guard generation formula following this post http://forum.vcmi.eu/viewtopic.php?p=12426&sid=09f5fac8992dc880eb6a720615787ca0#12426
- Some primitive way to randomize treasures
2014-06-04 10:16:08 +02:00
Ivan Savenko
32b6568b65 Merged changes from upstream and fixed compilation caused by API changes 2014-06-03 22:45:18 +03:00
Ivan Savenko
dc7f820161 Implemented object schema. Commiting current progress before sync with
upstream.
2014-06-03 21:43:33 +03:00
DjWarmonger
2aa53e9568 Corrected guard calculation to match OH3. 2014-06-02 15:38:42 +02:00
DjWarmonger
3c5a65af3d - Random monsters will have proper strength.
- Fixed blocking of tiles under objects
2014-06-01 14:10:44 +02:00
Ivan Savenko
67f11b1a01 - First part of objects configuration
- split objects into 3 files (for now)
- integrated object class handler into mod handler
2014-05-24 15:45:29 +03:00
Ivan Savenko
7f276185bd Moving files:
- new config for objects (config/objects/generic.json)
- renamed lib/CDefObjectHandler to lib/CObjectClassesHandler
2014-05-24 02:07:54 +03:00
AlexVinS
c22908651c Tweak Earth, Air elemantals immunities. Also fixes #1553 2014-05-19 12:04:49 +04:00
AlexVinS
e90fae9638 More simplification to spell configuration using inheritance semantic. 2014-05-18 21:16:10 +04:00
AlexVinS
b4e702a1d2 Simpify timed.json
* also move Titan bolt to offensive spells
2014-05-18 20:05:29 +04:00
AlexVinS
dca047cb52 Simplify other.json
* also fix CURE: expert cure is massive spell
2014-05-18 19:19:54 +04:00
AlexVinS
3f32218dd8 Simplify offensive.json 2014-05-18 19:09:34 +04:00
AlexVinS
aef5471f3a Simplify adventure.json 2014-05-18 19:05:44 +04:00
AlexVinS
93a440d201 simplify ability.json 2014-05-18 19:03:41 +04:00
AlexVinS
f2b61f7e69 Spell configuration: introduce simplifaction mechanism for level conficuration
* also aviable for other handlers
2014-05-18 18:47:18 +04:00
AlexVinS
950ca1156a Use absoluteLimit
* all "old" limits are now absolute
2014-05-18 17:55:26 +04:00
AlexVinS
3209114393 Spell configuration. Introduce absoluteLimit.
* limit will be made negatable.
* now limit and immunity will look more solid.
* unused ATM
2014-05-18 17:22:02 +04:00
AlexVinS
afd74ff649 Remove more hardcoded immunity handling.
* ANIMATE_DEAD already limited to UNDED
* make DEATH_STARE immunties absolute
2014-05-18 17:03:02 +04:00
AlexVinS
c5ba8b9b4b Tweak death ripple immunity. 2014-05-18 17:03:00 +04:00
AlexVinS
0e3f59294c fix for #1779
"val" of SPELLCASTER bonus = spell level. Set it to expert for archangel.
2014-05-18 16:52:54 +04:00
AlexVinS
0412fe29b0 Tweak absolute immunities for spells accordint to FizMiG 2014-05-18 11:25:09 +04:00
AlexVinS
9dad229440 Fix #1737 2014-05-17 16:07:19 +04:00
DjWarmonger
6ab0039053 Fixed #1600 - incorrect specialty of Saurug 2014-05-16 19:27:01 +02:00
DjWarmonger
a9b3a03bdd Fixed #1670 - Mirth working on immune creatures 2014-05-16 12:47:09 +02:00
AlexVinS
1d7c63da57 Split spell config.
It`s aready large and will grow more.
2014-05-07 03:58:57 +04:00
Macron1Robot
553613a165 Update tower.json
Spaces issue
2014-04-29 22:22:38 +04:00
Macron1Robot
791d8ad436 Update tower.json
Spaces issue
2014-04-29 22:21:06 +04:00
Macron1Robot
a67b3b31b4 Update fortress.json
Tabs issue
2014-04-29 22:19:34 +04:00
Macron1Robot
b642169b81 Update castle.json
Tabs issue
2014-04-29 22:19:01 +04:00
Macron1Robot
70013e709d Update tower.json
Converted spaces to tabs
2014-04-29 22:12:47 +04:00
Macron1Robot
1269cda6ae Update stronghold.json
Converted spaces to tabs
2014-04-29 22:12:07 +04:00
Macron1Robot
4a6c9c8d1d Update rampart.json
Converted spaces to tabs
2014-04-29 22:11:33 +04:00
Macron1Robot
cb0e47ac83 Update necropolis.json
Converted spaces to tabs
2014-04-29 22:10:53 +04:00
Macron1Robot
10c0bfaea9 Update inferno.json
Converted spaces to tabs
2014-04-29 22:10:29 +04:00
Macron1Robot
56109903fc Update fortress.json
Converted spaces to tabs
2014-04-29 22:10:03 +04:00
Macron1Robot
cc4dd6ede8 Update dungeon.json
Converted spaces to tabs
2014-04-29 22:09:37 +04:00
Macron1Robot
72573a23b2 Update conflux.json
Corrected spaces to tabs
2014-04-29 22:09:12 +04:00
Macron1Robot
98718c0e42 Update castle.json
corrected spaces to tabs
2014-04-29 22:08:46 +04:00
Macron1Robot
4a7a952590 Update faction.json
Added videoFile format to tavernVideo property
2014-04-29 21:55:35 +04:00
Macron1Robot
8ec7a9b919 Moved "max heroes on map per player", "max heroes available for player" to "defaultMods.json" 2014-04-27 10:43:46 +04:00
Macron1Robot
907caedb13 Added "produce" section in "building" structure. Changed dailyIncome. 2014-04-26 18:23:35 +04:00
Macron1Robot
b7b890acff Added "tavernVideo","guildBackground" to "faction" JSON config and schema. If "primaryResource" is set to "gold", silo will generate 500 gold per day 2014-04-24 23:36:18 +04:00
alexvins
67450dfed6 config\creatures\neutral.json syntax fix 2014-04-02 04:24:55 +00:00
DjWarmonger
8683c8c0eb - Added and improved some propagators, including Crystal Dragons ability (#1232)
- Minor refactoring in AI
2014-03-29 21:39:19 +00:00
Ivan Savenko
1cec8d4cfc Some bits towards replacements of objects.txt, first step towards
configurable objects support:
- fixes for object template loader
- schema for current object template format
2014-03-23 20:26:18 +00:00
Ivan Savenko
9c0df68cb8 Fixing spelling mistakes. Patch from josch, fixes #1759 2014-03-23 12:59:03 +00:00
Ivan Savenko
9dda194ed3 Support for new fields in mod format including:
- screenshots, repository-only field, will be used by launcher to d/l
screeenshots
- screenshots will be viewed as thumbnails with switch to full view on
click
- changelog that is now visible in launcher
- somewhat better handling of submods by launcher
2014-03-23 12:08:01 +00:00
alexvins
1aff899f5b Hotfix 2
* fix loading range attribute
* fix config for massive spells
2014-03-17 14:39:28 +00:00
alexvins
9cac0af7be [Spells] More spell related refactoring
+ smart target modifier
- CREATURE_EXPERT_MASSIVE target type
* save format changed

spell format changes already documented in http://wiki.vcmi.eu/index.php?title=Spell_Format
2014-03-17 13:11:10 +00:00
alexvins
065b8366fb [Spells] Added basic support for icons and sounds
* few changes in spell format
* save format changed
2014-03-10 16:00:58 +00:00
alexvins
afcb7072eb Implemented #1379
+ added new flag for special spells. Special spells can be obtained only with BONUS::SPELL.
* made Titans` thunder special.
2014-03-07 16:10:20 +00:00
alexvins
4203d69525 Part 2 of new spell configuration
1) spell handler refactored to support modding in general way
2) imunnity icons moved to WoG as they depends on wog`s graphics
3) introduced new class template for handlers (todo: use this in other handlers)
4) save format changed
5) introduced "absolute immunity" - unaffected by "the Orb" etc. (todo: use it in config)
6) new format documented on wiki, added json schema.

* more split of registertypes - fixes 32 mingw build
2014-03-07 13:21:09 +00:00
alexvins
c7f57406eb Fix bonus schema to support array in duration 2014-03-01 18:42:31 +00:00
DjWarmonger
b8b809bd50 Fixed #1667, #1669 2014-02-28 17:49:56 +00:00
Ivan Savenko
48d6e2cd59 - move campaigns description into new config file, campaignSets.json
- campaigns parser uses binary reader, fixes #1711
- fixed description of change resolution button
2014-02-14 22:46:06 +00:00
Ivan Savenko
77946e88f1 - fixed Adriane special. Should make Playing with Fire campaign playable 2014-02-02 12:45:08 +00:00
Ivan Savenko
94a6e02107 - found yet another missing victory condition, fixes 1684 2014-02-02 11:05:05 +00:00
Ivan Savenko
3779a54ddd - probably fixed 1671
- fixed missing loss condition in Birth of Barbarian
- fixed some bugs found by cppcheck
2014-01-30 11:08:37 +00:00
alexvins
16d6292be9 [refactor] extract often used classes from lib\NetPacks.h to separate header - less dependecies on whole packets class tree
[mingw build] fix linking issues with netpacks. 
Mingw build is finally fixed! 

[c::b] update projects

[config] fix and cleanup spell_info.json
2014-01-16 20:24:06 +00:00
Ivan Savenko
cd8a0c01e4 Data for campaign win/loss conditions. All campaigns should now have
correct conditions.
All custom conditions are now validated using schema.

Note that some of scenarios may not work due to instant win/loss, mostly
because some placeholders fail to import (Mantis #1643)
2014-01-01 13:30:31 +00:00
Ivan Savenko
7e02f6b670 Support for overriding victory/defeat conditions from h3m map or
campaign:
- new file MapFormatJson that implements small subset of Json map
format, as described on wiki
- vcmi will read overrides from file config/mapOverrides.json (currently
empty)
- Json writer for logical expressions

TODO: write data for map overrides
2013-12-30 23:09:58 +00:00
DjWarmonger
d2d1a2f544 Restored code from previous commit. 2013-12-28 19:37:35 +00:00
DjWarmonger
14065f8c80 Fixed #1637 - Water and Ice Elementals will now be immune to water damage spells. 2013-12-28 19:27:19 +00:00
Ivan Savenko
f6c1dace6c Minors:
- By default, cmake will keep debug info
- removed warnings from adventure map infobox (part of #1636)
- adventure map infobox will refresh on artifact changes (part of #1636)
- moved terrain music files to terrains.json file
- player should act before AI in all games, not only campaigns
2013-12-28 18:57:08 +00:00
Ivan Savenko
29f4a12814 - fixed some evil memory leaks
- fixed recursive dependency of castles
2013-12-19 19:43:16 +00:00
Ivan Savenko
7d7e65a316 changes in hero class format:
- new property: affinity (might/magic) since in mods it is impossible to
rely on odd/even numeric indexes
- property commander is now part of hero class
2013-12-13 18:27:54 +00:00
beegee1
30b3081ac4 - Fixed castle.json (building structures) 2013-12-07 12:23:43 +00:00
Ivan Savenko
122db9963b More string ID's for buildings:
- town hall slots now use string ID's
- converted building requirements to new format
- "upgrades" property from buildings now uses string ID's
- several fixes for improved support of alternative creatures
- removed no longer needed "id" property from structures

Old mods should still work but will produce error messages during
validation
2013-12-04 10:36:39 +00:00
Ivan Savenko
3d3f93275d Multiple minor fixes:
- fixed starting armies of some heroes, including Bron #1602
- (debian) added vcmi-dbg package with debug information
- proper randomization of hero secondary skills, fixes #1603
- second capitol will show up as disabled immediately #1604
- proper deserialization of boost::variant
- empty file will no longer crash JsonNode parser
- fixed some compiler warnings
2013-12-03 09:03:37 +00:00
Ivan Savenko
ee1b0459e6 Extended building dependencies:
- buiding/structure lists must use object format. This may break some
outdated mods.
- generic support for logical expressions that consist from and/or/not
operators.
- string ID's for buidings are now actually used.
2013-12-02 11:58:02 +00:00
Ivan Savenko
ee6cdbeffe went through the rest of cppcheck warnings, mostly harmless 2013-11-07 12:48:41 +00:00
Ivan Savenko
71d6b0fea9 - Fixed some warnings from cppcheck
- Minor improvements to JSON validation
- Cleanup in SDL_Extensions.cpp
- Implemented new propery for creature format: idle animation duration
- Disabled idle animation of some of conflux creatures (was clearly
broken)
2013-11-06 13:42:58 +00:00
Ivan Savenko
c4716d0a9a - reordered files in cmake so files with long compile times will be
compiled first.
- changed format of modSettings.json, VCMI should properly update file
on the first run.
- implemented property "defaultTavern" that acts as default value for
"tavern" entry in hero class and town formats.
2013-11-03 12:07:23 +00:00
Ivan Savenko
6cb3cb006d Several minor fixes/features
- moved all traslatable strings into one json file, removed threats.txt file
- implemented "spellbook animation" option
- fixed missing central tower when attacking fort
2013-10-27 13:05:01 +00:00
Ivan Savenko
9237e6d97d Improved json validation
- split JsonNode.cpp into JsonNode and JsonDetail files
- validation should be notably faster (at least 10% faster loading)
- support for "format" field, allows checking existance of files.
- minor fixes in schemas
- msk/msg files are now optional
2013-10-26 19:33:34 +00:00
Ivan Savenko
e2c037402c Unicode support.
- boost-locale library is now required (boost 1.48 or higher)
- Unicode namespace that contains UTF-8 handling
- All non-ASCII strings from H3 data will be converted to UTF-8 during loading
- All JSON files MUST use UTF-8. 
- H3 data encoding can be selected via launcher or directly in config file
2013-10-25 21:45:14 +00:00
Ivan Savenko
208df34fc2 bigfixing & new file: launcher/jsonutils.cpp
- launcher uses json parser from vcmi lib instead of one from Qt #1469
- fixed abilities overrides for some creatures #1476
- fixed hero portraits in seer huts #1402
- ttf fonts will render text in utf-8 mode. Not really useful at this point
- new settings entry, available in launcher: encoding. Unused for now.
2013-09-21 18:29:26 +00:00
Ivan Savenko
83440f1149 A bit more text-related work:
- credits screen will use multi-line label instead of hackish usage of text box
- campaign intro movie player now plays voiced intro
- minor fixes to last commit
2013-08-29 16:41:14 +00:00
Ivan Savenko
6bee105d7d Some refactoring of text display widgets:
- renamed some methods/classes with better names + some consistency (no more print, setTxt and setText that do exactly same thing)
- TextBox now contains label widget instead of inheriting it
- smooth scrolling support (up/down buttons still scroll one line)
2013-08-29 13:46:27 +00:00
Ivan Savenko
fb4fb79be2 - by defaut launcher will use repository from vcmi.eu 2013-08-26 10:03:47 +00:00
Ivan Savenko
7cbfdd509c VCMI Launcher/Mod manager. See forum post for details. 2013-08-22 14:22:49 +00:00
Ivan Savenko
cf4b3c91cb - updated wog/vcmi mod.json files
- found situation where JsonNode parser won't report warning: comma after last element in arrays or objects. Fixed this in our config files but parser change is disabled for now due to huge number of warnings from mods.
2013-08-20 19:32:21 +00:00
Ivan Savenko
db1dc1dcc6 - fixed terrain music restarting every tile
- field "contact" for mod.json schema
2013-08-20 10:47:40 +00:00
Ivan Savenko
5654fef901 - ZipArchive namespace for operations with zip archives, located in CZipLoader.h/cpp.
- new fields in mod format, for use with mod manager (check config/shemas/mod.json for details)
- removed some 0.92 compatibility from mods loading
- several compile fixes
2013-08-19 11:50:53 +00:00
Ivan Savenko
c81a31c74a - catapult attacks should be identical to H3
- catapult may miss and attack another part of wall instead (this is how it works in H3)
- minor fixes
2013-08-06 11:20:28 +00:00
Ivan Savenko
b57b14b752 - fixed several bugs with siege graphics, including #1389
- removed "shooterHeight" property - seems to be same in all towns.
2013-07-31 22:24:44 +00:00
DjWarmonger
a20e53acb5 Wyverns will cast Poison instead of Stone Gaze. 2013-07-31 19:38:22 +00:00
Ivan Savenko
ee09c5301e minor fixes:
- vcmi can play music files from archives
- converted resource_reward fields in bank_config into json object, fixes 3000 gems reward in shipwreck
- some compile fixes for minizip
2013-07-31 11:36:42 +00:00
Ivan Savenko
b87897096c Filesystem handling is now more flexible
- removed CResourceLoader class in favor of one that implements resource loader interface
- removed global pool of files, in favour of more dynamic approach
- renamed some files to match current situation
All these changes are needed mostly for future mod manager + .zip support
2013-07-28 14:49:50 +00:00
DjWarmonger
257be7a968 Fixed #1342. Animate Dead won't affect living creatures. 2013-07-28 10:05:37 +00:00
DjWarmonger
abaa5b1c59 Fixed #1352. Implemented correct death stare algorithm. 2013-07-28 08:48:29 +00:00
DjWarmonger
13acb58d55 - Undead and non-living creatures will be now immune to mind spells (should be hardcoded?). It solves #1334.
- Added lots of missing spell immunities from Strategija
- Added stone gaze immunity for Troglodytes (did you know about it?)
2013-07-22 14:12:20 +00:00
DjWarmonger
02cbdf132b Fixed #1374 2013-07-22 11:38:31 +00:00
DjWarmonger
6cb6fcba6c Magic immunity has no mass effect - fixes #1369 2013-07-22 11:08:35 +00:00
DjWarmonger
4fd9bcfedc Fixed #1345 2013-07-22 10:39:11 +00:00
Ivan Savenko
491bd557ef fixed several bugs reported on forum:
- necromancy issues
- fix for lookout tower
- Sir Mullich is unavailable
- first hero is awakened on next turn
- give 500 XP on defeating hero
2013-07-21 18:27:33 +00:00
DjWarmonger
18794af2cb Fixed elemental immunity handling: #1335, #1343, 2013-07-18 17:24:17 +00:00
DjWarmonger
b925a75ecc Tweaked Frenzy spell which now ends at the beginning of stacks turn, not at the end of turn (#1332). 2013-07-17 10:54:07 +00:00
Ivan Savenko
1a77fee7f7 more improvements for battle animations
- synchronized attack/defence animation
- spell animation speed uses game settings
- added logging domain for battle animations

- fixed disrupting ray duration
2013-07-16 18:12:47 +00:00
Ivan Savenko
4ac2a6e8b6 minor refactoring of VCMIDirs, bugfixing
- VCMIDirs represent XDG specification more closely (partial #1310)
- Minor bugfixing, including #1327 #1328 and #1306
2013-07-08 20:55:22 +00:00
Ivan Savenko
410ec92668 Minor fixes:
- removed unused functionality from CCreatureAnimation
- simplified postioning of units in battle, should fix remaining issues with unit positioning
- fixed unit tests compilation
2013-07-07 19:44:08 +00:00
Michał W. Urbańczyk
2a471eeb1a Addec quick combat to system options window.
Compile fixes [I don't know why it has compiled for me before].
2013-06-23 07:54:33 +00:00
Ivan Savenko
0c5a717e08 - fixed crash in town after loading #1291 + extra check just in case.
- disabled intro menu animation for now - different position in different versions (WoG, SoD)
- removed no longer needed entry for Linux video from filesystem
2013-06-02 18:57:58 +00:00
Ivan Savenko
09e2f0f021 minor fixes:
- fixed duplicated bode dragon ability
- fixed enchanter animation
- removed plural ID from wog sorceress
2013-05-25 11:01:27 +00:00
DjWarmonger
5436950119 Fixed abilities of Efreet. 2013-05-25 07:21:02 +00:00
DjWarmonger
c9e95f76df - Fixed Phoenix fire immunity. Again.
- Cheat code with grant all artifacts, including the ones added by mods
- Some clean-up of Berserk effect, however it doesn't work at the moment.
2013-05-25 07:06:00 +00:00
Ivan Savenko
dca8e9fa6f - removed access to one wog file
- removed way to avoid dependency checking in identifiers resolution
- minor fixes
2013-05-21 22:11:44 +00:00
beegee1
5328beb8e7 - Fixed some bugs when starting a RMG map - Checks if there is a template for the chosen options(rejects if not) - Added a few templates for development(2 to 4 players, medium maps are supported) - Refactoring 2013-05-21 19:08:06 +00:00
Michał W. Urbańczyk
c85829a00c * creature window prints morale/luck for actual stack in battle (CStack), not stack as seen in hero screen (CStackInstance), fixes #1264
* creature abilities bonus properties are updated when the creature id is assigned
* removed decrease morale ability from config file (it was duplicating the one from ZCRTRAIT.TXT
2013-05-19 19:53:03 +00:00
beegee1
42c2c29976 - Added support for RMG templates(subset of OH3) - Added template "Small Ring" for testing 2013-05-11 17:36:11 +00:00
Ivan Savenko
b3bbe27089 - ignore wog maps if wog is not present 2013-05-04 19:20:32 +00:00
Ivan Savenko
8be801a6dc - CMappedFileLoader class to remap WoG files to h3 names
- WoG should be optional, all remapped files are listed in WoG/config/wogFileOverrides.json
- fixed several cases of incorrect positioning of creatures in battles
- some missing sounds for battle effects
- negative luck support, disabled by default
- a bit hackish detection of WoG presence, VCMI should work on SoD-only installs
2013-05-04 13:14:23 +00:00
beegee1
298f862d86 - Implemented updating additional terrain types fully(including 2 special cases) 2013-05-03 10:15:59 +00:00
beegee1
9776fa9f18 - Added the last two missing patterns 2013-04-27 08:57:04 +00:00
DjWarmonger
32c87f532f - Added missing abilities for devil & ghost dragon
- Stack affected by Berserk should not try to attack itself

Neither of these can be actually seen in game duo to more general engine bugs :/
2013-04-27 06:39:59 +00:00
beegee1
0f7d175896 - Fixed all unit test failures and a few more bugs - Simplified view generation algorithm 2013-04-26 15:57:47 +00:00
Ivan Savenko
ecb644fce4 - fix to last commit 2013-04-26 07:40:46 +00:00
Ivan Savenko
8297102350 - some groundwork for wog optionality
- moved wog artifacts to wog mod
2013-04-25 21:50:55 +00:00
beegee1
23f7be2a54 - Fixed a few bugs related to the terrain view generation - Updated CMakeLists in /test(copy resources if no source files has been changed too) 2013-04-25 16:09:48 +00:00
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
0dc5a13596 Fixed missing spell effects, root cause of #1257. 2013-04-23 09:54:57 +00:00
DjWarmonger
c9bbf7dfd5 Fixed missing Mirth effects 2013-04-23 07:06:26 +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
beegee1
dd78205ce8 -Added test subfolder and updated CMakeLists for unit testing - Added a test case for the DrawTerrainOperation class(does not pass all tests successfully, 6 failures left to fix) - Fixed a few bugs 2013-04-22 14:49:28 +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
Michał W. Urbańczyk
e8354908c3 Big change: Introduced new mechanism to handle queries. It should not cause any visible changes ATM apart from fixing several long-standing bugs realted to handling post-visit/battle/levelup callback, including infamous creature bank issues: #955, #1053, #1063, #1191. Needs testing.
Minor changes:
* default log level set to trace
* LOG_TRACE raii guardian lifetime will last till the end of block
* compile fixes
* minor refactorings
2013-04-20 11:34:01 +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
de01ea54b0 - Added stream-like logging - Schema refactoring 2013-04-06 17:45:02 +00:00
beegee1
0baa261dfc - Implemented the new logging API(not used currently) - Added lock typedefs to Global.h - Some layout updates to Global.h 2013-04-05 10:29:46 +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
52e56693ea - fixed handling of incorrect configuration in settings.json
- more compact schema for siege node
2013-04-03 13:39:46 +00:00
Ivan Savenko
0307639c32 properly initialize settings when configuration was not found 2013-04-02 21:39:32 +00:00
Ivan Savenko
c927913f5f - Improved json validation. Now it support most of features from latest json schema draft
- Set of schemas in config/schemas directory that are used to validate input from mods.
2013-04-02 17:06:43 +00:00