1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-26 22:57:00 +02:00
Commit Graph

577 Commits

Author SHA1 Message Date
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