Ivan Savenko
b2f5042942
Merge pull request #1783 from vcmi/beta
...
Merge beta -> develop
2023-03-27 21:21:25 +03:00
Ivan Savenko
a4fe11d413
Merge pull request #1766 from vcmi/fix_editor_shortcut
...
Fix editor shortcut
2023-03-27 21:20:14 +03:00
Ivan Savenko
11088100a0
Merge pull request #1782 from korli/haiku
...
Haiku patch
2023-03-27 18:42:22 +03:00
Tomasz Zieliński
b3a457c71a
Skip objects with value too low to be placed in the zone.
2023-03-27 17:29:46 +02:00
Ivan Savenko
b875da108b
Merge pull request #1717 from SoundSSGood/backpack-limit-size
...
Introducing backpack size limit functionality
2023-03-27 17:17:49 +03:00
Ivan Savenko
e3b5db0ade
Merge pull request #1778 from rilian-la-te/fix-obstacle-removal-mechanincs
...
Fix landmines staying on battlefield after trigger
2023-03-27 17:17:14 +03:00
Konstantin
9a229d6e48
vcmi: really correct obstacle trigger
...
Now obstacle trigger really matches H3
2023-03-27 16:11:17 +03:00
Konstantin
8c1d6c8e13
CBattleInfoCallback: use obstacle only once
...
We should not affect creature by obstacle twice.
2023-03-27 15:45:41 +03:00
Konstantin
88a7b3141d
vcmi: really correct BFS
...
AFAIK, all is working as H3.
2023-03-27 15:45:41 +03:00
Jerome Duval
518f8d69e5
Haiku patch
2023-03-27 10:10:09 +02:00
Tomasz Zieliński
511a42f9b9
Oops missed that part.
2023-03-27 09:35:52 +02:00
Tomasz Zieliński
18a87d1ec0
Distribute limited objects evenly in zones with matching terrain
2023-03-27 09:09:58 +02:00
Tomasz Zieliński
a88e1dc1f6
Add only one template per object
2023-03-27 08:44:49 +02:00
Konstantin
5b50191af7
NetPacksLib: remove obstacle ACTIVATE* actions
...
Actually these actions was not working anyway.
2023-03-26 22:59:34 +03:00
Konstantin
26db14b7b4
vcmi: expert dispel now works mechanically correct
2023-03-26 21:25:26 +03:00
Konstantin
edc9812559
obstacle: correct logic as in OH3
...
Obstacle spells should not be cast if they are affected by native
terrain and enemy have at least one stack with native terrain
2023-03-26 21:22:38 +03:00
Konstantin
705afbb898
UnitEffect: it should not always assume smart
...
It is normal than non-smart spell will be cast on our units.
2023-03-26 21:19:49 +03:00
Konstantin
44a625aa6b
vcmi: check spell obstacles by type
2023-03-26 21:17:39 +03:00
Andrii Danylchenko
a0de223901
Merge pull request #1772 from vcmi/fix_invalid_native_terrain
...
Fix the case of invalid native town type
2023-03-26 13:19:01 +03:00
Ivan Savenko
9287d1b837
Merge pull request #1776 from vcmi/beta
...
Merge beta -> develop
2023-03-26 01:48:23 +02:00
Ivan Savenko
7477e4a8cc
Handle mods with "keepDisabled" propertly on client
2023-03-25 23:54:51 +02:00
Ivan Savenko
4eed0b2c9e
Added workaround for Dungeon towers
2023-03-25 23:54:51 +02:00
Ivan Savenko
8fbeff2a02
Fix movement over lowered drawbridge in Fortress
2023-03-25 23:54:51 +02:00
Ivan Savenko
5288e3761e
Merge pull request #1764 from IvanSavenko/selectable_spellcaster
...
Implemented support for multi-spell casters
2023-03-25 20:08:47 +02:00
Ivan Savenko
6f631a0aa7
Merge pull request #1759 from IvanSavenko/kills_in_tooltip
...
Show potential kill amount in attack tooltip
2023-03-25 20:03:27 +02:00
Tomasz Zieliński
00a77e3c5f
Probably found the root cause of terrain problems.
2023-03-25 18:52:18 +01:00
DjWarmonger
2c4cde060a
Merge pull request #1694 from vcmi/extra_rmg_monoliths
...
This could be controversial solution, but since there were no objections, I'll give it a shot.
2023-03-25 18:38:06 +01:00
DjWarmonger
114e7d196b
Merge pull request #1698 from vcmi/object_placement_tweaks
...
No objections, works fine for me as well.
2023-03-25 18:13:15 +01:00
Tomasz Zieliński
68a2bb78a5
Fix the case of invalid native town type :?
2023-03-25 18:08:46 +01:00
Tomasz Zieliński
9d7d4b6a5f
Fixed editor shortcut on Windows
2023-03-25 11:40:44 +01:00
Tomasz Zieliński
392061e97e
Fix loading towns which in OH3 editor have defined horde buildings level 1 - 5 (inluding random town).
2023-03-25 11:17:49 +01:00
Ivan Savenko
9a19feaf4a
Fix spellcasters with massive spells
2023-03-25 01:23:49 +02:00
Ivan Savenko
dc099b2a35
Implemented support for multi-spell casters
2023-03-25 00:48:14 +02:00
Ivan Savenko
970981cfc9
Show information on potential kills in attack tooltip
2023-03-24 17:18:47 +02:00
Ivan Savenko
31147ac83b
refactoring: TDmgRange pair -> DamageRange struct
2023-03-23 17:49:33 +02:00
Konstantin
e40b9c849d
vcmi: no open-code NO_APPROPRIATE_TARGET
2023-03-22 12:04:28 +03:00
SoundSSGood
19096f39f0
Backpack limit. Amount of fixes.
2023-03-21 22:11:42 +02:00
Konstantin
0ffc440b53
vcmi: fix target condition regression
2023-03-21 19:19:34 +03:00
Ivan Savenko
44dc89bdcf
Merge pull request #1736 from rilian-la-te/fix-target-conditions
...
vcmi: fix target condition regression
2023-03-21 17:35:20 +02:00
Konstantin
60b510617c
vcmi: fix target condition regression
2023-03-21 17:56:15 +03:00
Ivan Savenko
575fb29a22
Merge pull request #1534 from kambala-decapitator/pathfinder-fly
...
fix movement cost with Fly
2023-03-21 14:32:56 +02:00
SoundSSGood
f0f9eecf97
Backpack limit part5. End of battle. Other stuff
2023-03-21 12:14:33 +02:00
SoundSSGood
9f8aa25297
Backpack limit part4 (Using cheats, buying)
2023-03-21 12:14:33 +02:00
SoundSSGood
ca5c9910a4
Backpack limit part3 finishQuest
2023-03-21 12:14:33 +02:00
SoundSSGood
e23766280f
Backpack limit part2 (Pick up, Dig up, Object rewards)
2023-03-21 12:14:33 +02:00
SoundSSGood
96e8a1f21c
Backpack limit part1 (move, disassemble)
2023-03-21 12:14:33 +02:00
SoundSSGood
37edffd788
GameConstants upd
2023-03-21 12:14:33 +02:00
SoundSSGood
72122fb433
CArtifact, CArtifactInstance, CCombinedArtifactInstance reorganization
2023-03-21 12:14:33 +02:00
Ivan Savenko
6ee4fd24f7
Merge pull request #1731 from rilian-la-te/fix-unicorns
...
CStack: make unicorns ability multiplicative
2023-03-20 23:34:05 +02:00
Konstantin
8c10f48fbd
CStack: make unicorns ability multiplicative
2023-03-20 23:29:33 +03:00
Ivan Savenko
9289646dab
Merge pull request #1722 from rilian-la-te/fix-first-aid
...
vcmi: fix first aid regression
2023-03-20 21:49:53 +02:00
Andrey Filipenkov
147633bd9d
compute movement cost using PathNodeInfo layer info when possible
2023-03-20 11:35:20 +03:00
Andrey Filipenkov
a0cd69e944
Slight refactoring of CGHeroInstance::movementPointsAfterEmbark()
2023-03-20 11:35:20 +03:00
Andrey Filipenkov
3602645a30
improve iterating over EPathfindingLayer
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
c0c19557af
fix method documentation
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
8f843d0bff
fix typos
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
68f5c1de79
improve variable names in CPathfinderHelper::getNeighbours()
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
bfb0dc26d5
fix movement cost on roads
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
0c7b5ac793
fix movement cost on Favorable Winds
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
3fbdc3b198
improve code that checks last possible tile
2023-03-20 11:35:18 +03:00
Andrii Danylchenko
23fa7c4a9b
Merge pull request #1720 from vcmi/fix_small_lakes_clean
...
Don't place shipyard or boats at very small lakes
2023-03-19 19:52:22 +02:00
Andrii Danylchenko
aede3da74e
Merge pull request #1721 from vcmi/fix_rmg_infinite_loop
...
Fix rmg infinite loop
2023-03-19 19:46:28 +02:00
Konstantin
895572df02
vcmi: fix first aid regression
2023-03-19 19:20:08 +03:00
DjWarmonger
15047a4469
Merge pull request #1718 from vcmi/fix_shipyard_border
...
Fix shipyard border calculation for RMG
2023-03-19 16:05:24 +01:00
Tomasz Zieliński
9e206dbbc7
Forgot this one
2023-03-19 09:51:37 +01:00
Tomasz Zieliński
f52c465322
Allow zones to inherit properties recursively, in any order.
2023-03-19 09:27:05 +01:00
Andrey Filipenkov
21463f1c0e
fix movement cost with Fly
2023-03-19 11:26:55 +03:00
Andrey Filipenkov
43e89523a9
Merge pull request #1716 from rilian-la-te/tw-fix
...
TotalValue: fix typo
2023-03-19 11:25:48 +03:00
Tomasz Zieliński
dd3803b111
Don't place shipyard or boats at very small lakes
...
(cherry picked from commit 1d2913bea0
)
2023-03-18 22:05:25 +01:00
Tomasz Zieliński
e1ced317a1
Few tweaks for boat placement to keep distance between it and other objects, especially guards.
2023-03-18 21:59:23 +01:00
Tomasz Zieliński
1dc96d6844
Fix shipyard border calculation for RMG
2023-03-18 20:12:36 +01:00
Konstantin
54b1b49f5a
totalValue: fix overflow
...
Fixes #1715
2023-03-18 22:08:21 +03:00
Tomasz Zieliński
23a5a32756
Add fallback for empty terrain types. Still it's a workaround and does not solve the root cause.
2023-03-18 17:00:50 +01:00
Konstantin
b07f4fb383
TotalValue: fix typo
2023-03-18 15:45:32 +03:00
Tomasz Zieliński
eabcbfc25a
Fix all stacks being capped at 10 units
2023-03-17 22:32:05 +01:00
Tomasz Zieliński
f57c275603
Merge remote-tracking branch 'origin/develop' into object_placement_tweaks
2023-03-17 21:47:16 +01:00
Ivan Savenko
f24ca6fbcf
Merge pull request #1699 from rilian-la-te/fix-ignissa
...
Rewardable: always initialize numbers
2023-03-17 22:15:28 +02:00
Ivan Savenko
95d56d3f2a
Merge pull request #1705 from rilian-la-te/convert-scouting
...
HeroBonus: add scouting to converter
2023-03-17 22:14:54 +02:00
Konstantin
6de042657c
fix Ignissa bug the old way
2023-03-17 20:09:18 +03:00
Konstantin
b4fe7908a4
HeroBonus: add scouting to converter
2023-03-17 18:50:57 +03:00
Konstantin
bbbbfe00f0
Modernize resourceSet
2023-03-17 02:26:54 +03:00
Ivan Savenko
8a6c51a9e6
Fix uninitialized pointer dereference
2023-03-16 20:48:37 +02:00
Tomasz Zieliński
f2dc9cb48e
- Place Subterranean Gates as far from other objects as possible
...
- Added minimum distance between zone guards
2023-03-16 18:42:28 +01:00
Ivan Savenko
fbb9810c49
Fix regression - uninitialized pointer
2023-03-16 19:25:26 +02:00
Ivan Savenko
aea2a1e22e
Fixed loading of settings from mods
2023-03-16 18:11:36 +02:00
Ivan Savenko
a0e9e01b48
Renamed & reorganized all game mechanics settings names
2023-03-16 18:11:35 +02:00
Ivan Savenko
383387ef29
Integrated defaultMods into mod system
2023-03-16 17:55:09 +02:00
Tomasz Zieliński
62490683ce
Place objects away from zone guard in both zones, not only the where it is placed.
2023-03-16 16:20:11 +01:00
Konstantin
4c4498b22a
vcmi: modernize rest of lib
2023-03-16 17:55:20 +03:00
Konstantin
7f805768f0
battle: fixup siege crash
2023-03-16 16:47:06 +03:00
Konstantin
4eb248b5e2
vcmi: bump serialization version
...
Saves from this branch are incompatible with generic ones
2023-03-16 16:47:05 +03:00
Konstantin
580268bfd4
vcmi: fix logistics specialist movement regression
...
There was incorrect calculations introduced earlier.
2023-03-16 16:46:42 +03:00
Konstantin
0adffc824f
vcmi: allow to configure army movement counter
...
It is not hardcoded now. MOVEMENT.TXT is still not read,
but ARMY_MOVEMENT updater parameters can be specified in json.
There is a 4 parameters:
1. Base - base value (firstly lowest speed is multiplied by it)
2. Divider - base value is integrally divided by it
3. Multiplier - result value will be multiplied by it
4. Max - maximum allowed movement from army.
Vanilla values is in defaultMods.json
Fixes: https://bugs.vcmi.eu/view.php?id=3209
2023-03-16 16:46:42 +03:00
Konstantin
b91d7418dd
vcmi: remove ONLY_ENEMY_ARMY range
...
It should be used directly instead of alias, propagation updater
also can be useful for any other updaters can be added.
2023-03-16 16:46:42 +03:00
Konstantin
ff5f828031
vcmi: remove SELF_LUCK bonus
...
This bonus also now handled by LUCK bonus with INDEPENDENT_MAX of 1
2023-03-16 16:46:42 +03:00
Konstantin
c7e197e1ff
vcmi: remove SELF_MORALE bonus
...
It is easily handled by MORALE bonus with INDEPENDENT_MAX
Harmless due to converter.
2023-03-16 16:46:42 +03:00
Konstantin
ebbc8cf208
vcmi: remove BLOCK_LUCK bonus
...
To block a luck, just set both INDEPENDENT_MAX and INDEPENDENT_MIN
to 0 of LUCK bonus
2023-03-16 16:46:42 +03:00
Konstantin
c07e74250b
vcmi: remove BLOCKS_MORALE bonus
...
To block morale, just set INDEPENDENT_MAX and INDEPENDENT_MIN
to 0, there is no need for separate bonus.
2023-03-16 16:46:42 +03:00
Konstantin
1e7875cb36
vcmi: selector-based target conditions
...
For now, allows us to define target conditions by selector and even
by minimal and maximal value of bonuses. Convert Bonus condition
to Selector condition.
Allow structures inside TargetCondition struct.
2023-03-16 16:46:42 +03:00
Konstantin
0540e1531d
vcmi: allows parsing selectors from JSON
...
Supports anyOf, allOf, noneOf,
and all selectors from Selector namespace.
Can be useful to define selectors in JSON when required
2023-03-16 16:46:42 +03:00
Konstantin
f13a934c47
vcmi: allow converting bonusParams to selector
2023-03-16 16:46:42 +03:00
Konstantin
eaceb65b5c
vcmi: fix CSkillHandler crash
2023-03-16 16:46:42 +03:00
Konstantin
930955f268
vcmi: deprecated bonus converter
...
It converts almost all sorts of deprecated bonuses from mods
when loading json. It can print to console correct new variant
or bonus.
Also removed a bunch of deprecated bonuses from list.
It will break saves!!!
2023-03-16 16:46:41 +03:00
Konstantin
95503d0623
vcmi: unify movement
...
1. Now there is only one bonus: MOVEMENT, with 2 subtypes: 0 is sea, 1 is land
For movement value on land depends on creature speed we use a new
ARMY_MOVEMENT updater with global bonus. If we does not like such
dependency, we can just remove this updater from json.
2. All specialities and secondary skills for movement moved to new
system AFAIK
2023-03-16 16:46:41 +03:00
Konstantin
20a9332a3f
vcmi: translate wisdom
...
Make wisdom as separate bonus. It will be enough for now. But
next is should be done as IsLearnable for each spell.
2023-03-16 16:46:41 +03:00
Konstantin
ddcff9dc36
vcmi: convert magic schools to MAGIC_SCHOOL_SKILL
...
It is already used by battlefields.
2023-03-16 16:46:41 +03:00
Konstantin
64ad7558c6
vcmi: skill-agnostic artillery
...
Now it should work for any creature and with any damage percentage.
2023-03-16 16:46:41 +03:00
Konstantin
9205ef2c91
vcmi: skill-agnostic ballistics
...
Made ballistics by using spell action and more code is shared now.
2023-03-16 16:46:41 +03:00
Konstantin
84f53485e2
vcmi: skill-agnostic first aid
...
Now first aid is passive battle spell, and skill just bumps
specific spell power for this spell. Everything about healing
is handled into Heal spell effect.
2023-03-16 16:46:41 +03:00
Konstantin
a0987313ba
vcmi: convert intelligence
...
Intelligence is converted to both global effect and skill bonus
Bonus name HERO_MANA_PER_TEN_KNOWLEDGE is a little weird, but works
like old SECONDARY_SKILL_PREMY bonus
2023-03-16 16:46:41 +03:00
Konstantin
a86e12cd42
vcmi: convert necromancy
...
Now it is 3 bonuses to cover necromancy.
1. IMPROVED_NECROMANCY = possible creatures raized (affected by cloak)
2. UNDEAD_RAISE_CHANCE = raise chance (affected by artifacts)
3. UNDEAD_RAISE_POWER = helper to select creature from first
2023-03-16 16:46:41 +03:00
Konstantin
84eece1d8b
vcmi: convert mysticism to MANA_REGENERATION
...
With PERCENT_TO_TARGET_TYPE it was easy.
2023-03-16 16:46:41 +03:00
Konstantin
f641ed2015
vcmi: convert learning to global effect
...
Now hero experience is a global effect, and secondary
skill gives exactly same bonus. Can be modified by
PERCENT_TO_TARGET_TYPE.
2023-03-16 16:46:41 +03:00
Konstantin
a85f3b63ec
vcmi: reuse SPELL_DAMAGE for sorcery
...
Now there is no need for specific spell bonus, and
we need to simply reuse SPELL_DAMAGE, and by using
PERCENT_TO_TARGET_TYPE speciality will work.
2023-03-16 16:46:41 +03:00
Konstantin
6b987275eb
vcmi: use global bonuses for sight radius and mana
...
We do not need to hardcode constants for there. We can just
use default bonuses.
2023-03-16 16:46:41 +03:00
Konstantin
5d4bcb3c78
vcmi: fix scouting bonus spelling error
...
With fallback for old mods.
2023-03-16 16:46:41 +03:00
Konstantin
f264c541fb
vcmi: skill-agnostic tactics
...
Tactics is split to 2 bonuses, and it is now possible to
block tactics without having tactics itself. But tactics
for two sides is not implemented, because it is huge rework
and not high priority for me now, I want to do basic
secondary skill rework first.
2023-03-16 16:46:41 +03:00
Konstantin
300a8a15ba
vcmi: remove estates bonus
...
Now it is handled by GENERATE_RESOURCE::GOLD.
2023-03-16 16:46:41 +03:00
Konstantin
c64d05c419
vcmi: skill-agnostic diplomacy
...
This is simple and will work.
2023-03-16 16:46:41 +03:00
Konstantin
34a26580a7
vcmi: skill-agnostic resistance
...
Uses exiting bonus and new PERCENT_TO_TARGET_TYPE value type
2023-03-16 16:46:41 +03:00
Konstantin
6e4372176a
vcmi: skill-agnostic pathfinding
...
For now, works exactly as in VCMI and H3.
I think we should add some BONUS_TERRAIN_DISCOUNT_PERCENT bonus
to discount by percent, like written in pathfinding description
2023-03-16 16:46:41 +03:00
Konstantin
9ffd18c914
vcmi: skill-agnostic armorer
...
This is a skill-agnostic armorer, which can be used same as
armorer before.
2023-03-16 16:46:41 +03:00
Konstantin
43f09dd2e4
vcmi: convert scholar to new bonus
...
Convert scholar to new skill-agnostic bonus. Now works only for any
school (not from specific). In all schools form identical to
past's SECONDARY_SKILL_PREMY::SCHOLAR
2023-03-16 16:46:41 +03:00
Konstantin
0ed89e77d4
vcmi: replace archery and offence to new bonus
...
Add PERCENTAGE_DAMAGE_BOOST bonus, which will work exactly as old
archery or offence. Subtype is actually boolean which select
ranged (1) and melee (0)
2023-03-16 16:46:41 +03:00
Konstantin
4a89418ada
vcmi: replace SecondarySkillPremy:EAGLE_EYE
...
Replace this bonus to new ArcaneIntuition bonus, which
will work independently from the rest of skill bonuses.
Proof of concept for other skills.
2023-03-16 16:46:41 +03:00
Konstantin
a0a78d0596
vcmi: remove MAXED_SPELL
...
Replace it by SPELL bonus with val = 3
2023-03-16 16:46:41 +03:00
Konstantin
496c1def12
vcmi: remove FULL_HP_REGENERATION bonus
...
Just set HP_REGENERATION to high number
(in OH3 doubled stack health is sufficient)
2023-03-16 16:46:41 +03:00
Konstantin
62e579f672
vcmi: replace KINGx bonuses to one KING bonus
...
val = level of slayer which require to affect.
Can break saves.
2023-03-16 16:46:41 +03:00
Konstantin
1e73c2e1e6
vcmi: configurable charge
...
There is no reason not to make charge configurable.
Just do it.
2023-03-16 16:46:41 +03:00
Konstantin
f26fac5562
vcmi: move obligatory marker to CSkillHandler
...
It is working, now it is possible to
define other obligatory skills than wisdom or magic schools,
but only 2 types of obligatory skills exists - like wisdom and
like magic school
2023-03-16 16:46:41 +03:00
Konstantin
4acf3778ef
vcmi: allow adding global bonuses
...
I will use it to implement some H3 base features like
mana regen and base movement.
2023-03-16 16:46:41 +03:00
Konstantin
9280d70819
vcmi: remove deprecated "specalties" node
...
Use new bonus system format
2023-03-16 16:46:41 +03:00
Konstantin
d9496dd9f7
vcmi: remove vector speciality format
...
It is deprecated and will not be used anymore.
2023-03-16 16:46:41 +03:00
Konstantin
96c40eb36e
vcmi: remove SPECIAL_BLESS_DAMAGE bonus
...
It is handled by HAS_ANOTHER_BONUS_LIMITER with SPELL_EFFECT limiter
with desired spell id (bless). Yes, bonus will come from HERO_SPECIAL,
but will work only for blessed with spell id creatures.
2023-03-16 16:46:41 +03:00
Konstantin
a943d2cb12
vcmi: add sourceType to HasAnotherBonusLimiter
...
Now we can filter bonuses by sourceType, hence,
checking, for example, specific secondary skills.
Also fix archery artifacts working without Archery skill.
2023-03-16 16:46:41 +03:00
Konstantin
7e9a15c20b
vcmi: add PERCENT_TO_TARGET_SOURCE value type
...
It will break saves!!!
Added a new value type to bonuses which allows to add percentage
only to one foreign bonus source, for example, to add percentage to all
bonuses from secondary skills from hero special.
2023-03-16 16:46:41 +03:00
Konstantin
98218adea5
vcmi: add PERCENT_TO_SOURCE value type
...
This will adds percent only to bonuses with same source.
In theory it should allow us to create specials which affects only
secondary skills, or only artifacts (let's say, swordmaster special
- any attack bonus from artifact is doubled).
2023-03-16 16:46:41 +03:00
Konstantin
ee90400d66
vcmi: add a Not bonus selector.
...
It will allow us to form complex selector logics with full boolean
operator.
2023-03-16 16:46:41 +03:00
Konstantin
b99a2ad669
vcmi: adjust parseBonus and Bonus::toJson
...
This was an error, when scheme and parser asks different values for
source type. Corrected this.
2023-03-16 16:46:41 +03:00
Ivan Savenko
129b5313c5
Merge pull request #1663 from Adriankhl/fix_load_sleeping_heroes
...
Fix client data deserialization, such as sleepingHeroes
2023-03-16 15:05:18 +02:00
Ivan Savenko
865f9f7d2b
Merge pull request #1511 from IvanSavenko/launcher_welcome_page
...
Add welcome/setup page to Laucher
2023-03-16 15:04:49 +02:00
Ivan Savenko
962f7ac4de
Merge pull request #1682 from IvanSavenko/h3m_text_export
...
H3M/H3C text export
2023-03-16 14:50:57 +02:00
Ivan Savenko
2a2af34788
Merge pull request #1650 from SoundSSGood/arts-swap-regression-fix
...
Arts swap regression fixed
2023-03-16 14:47:31 +02:00
Tomasz Zieliński
5b267f9cbd
- Duplicate Monolith templates to ensure at least 100 are available to RMG
...
- Do not use Monoliths which can't be placed at any land
2023-03-16 06:58:25 +01:00
Ivan Savenko
f5f303202a
Update localization
2023-03-14 22:04:08 +02:00
Ivan Savenko
d2152d387f
Fix processing of VCMI_Tests map
2023-03-14 21:48:39 +02:00
Ivan Savenko
06e5d37fbd
Fixed incorrect error messages from translations
2023-03-14 19:55:08 +02:00
Ivan Savenko
f42a894723
Implemented h3c translations
2023-03-14 19:46:15 +02:00
Ivan Savenko
a4ef9fd0b8
Added h3m strings generation to 'convert txt' command
2023-03-14 17:54:37 +02:00
Ivan Savenko
369e925af8
Loading of translation mods is now skipped on language mismatch
2023-03-14 16:02:16 +02:00
Ivan Savenko
66df19352f
Do not show languages without translations in UI
2023-03-14 16:02:16 +02:00
Ivan Savenko
c3d78ba761
Partially implemented Setup Window
2023-03-14 16:02:16 +02:00
Ivan Savenko
6fe319329b
Fix language selection
2023-03-14 16:02:16 +02:00
Ivan Savenko
70bdb3aeaf
Moved language handling code to Languages.h/cpp
2023-03-14 16:02:16 +02:00
Adriankhl
626721cbba
Fix serialization of ObjectClass
2023-03-12 21:41:46 +01:00
Konstantin
45dcd95f20
miscObjects: fix whirpool display
...
It should display negative numbers, not positive
2023-03-11 21:41:58 +03:00
Konstantin
fafe352f93
vcmi: bump max serialization version
...
And also - now we can choose between 3 states for rewardables
actually.
2023-03-11 21:41:57 +03:00
Konstantin
bc228a938a
vcmi: use enum class for EComponentType
...
There is really no reason not to use it
2023-03-11 21:41:57 +03:00
Konstantin
716dd9a43b
vcmi: remove a bunch of duplicated showInfoDialog
...
These methods duplicated in almost every map object
Just replace it by one such method
2023-03-11 21:41:57 +03:00
Konstantin
8edba4fb06
vcmi: use MODAL by default
...
Convert only some objects to AUTO, need futher testing
than no non-adventure objects will not use AUTO or INFO
2023-03-11 21:41:57 +03:00
Konstantin
c759400767
vcmi: allow showing simple rewardables in infobox
2023-03-11 21:41:57 +03:00
Konstantin
4617ce10e5
vcmi: allow showing more than one components in infobar
...
Up to 8, AFAIK. So, we can show multi-reward in infobox now.
One issue remain - cannot dynamically choose components size
based on text size.
2023-03-11 21:41:57 +03:00
Konstantin
d503c875a4
vcmi: fix mana points displayed
2023-03-11 21:41:57 +03:00
Ivan Savenko
0ea73cae7f
Merge pull request #1662 from rilian-la-te/reduce-lexical-cast
...
vcmi: reduce boost::lexical_cast usage
2023-03-10 12:53:21 +02:00
Ivan Savenko
c4de8a5cd0
Merge pull request #1580 from rilian-la-te/modernize-log-fs-events
...
Modernize next part
2023-03-09 15:53:43 +02:00
Ivan Savenko
a503c9d413
Merge pull request #1638 from rilian-la-te/fix-road-river
...
vcmi: fix road and river loading
2023-03-09 15:53:10 +02:00
Konstantin
5366f9190e
vcmi: reduce boost::lexical_cast usage
2023-03-09 16:36:46 +03:00
SoundSSGood
e24eb6cc12
regression fixed
2023-03-08 17:20:38 +02:00
Ivan Savenko
58cfea02f1
Added option to skip validation of mods
2023-03-07 00:06:58 +02:00
Ivan Savenko
db9a296d02
Fix debug renderer
2023-03-07 00:06:58 +02:00
Ivan Savenko
499496f9d0
Restored Simplified Chinese support
2023-03-07 00:06:58 +02:00
Ivan Savenko
3d71f8b46d
Fix loading of h3m translations
2023-03-07 00:06:58 +02:00
Ivan Savenko
0c847c85cc
Fix serialization of rewardable objects
2023-03-07 00:06:58 +02:00
Ivan Savenko
0b3c10d990
Fix crash on hovering Market of Time (unfinished H3 object)
2023-03-07 00:06:58 +02:00
Konstantin
042885c0b8
vcmi: modernize lib/events
2023-03-06 20:24:38 +03:00
Konstantin
462599a5c6
vcmi: modernize lib/filesystem
2023-03-06 20:24:38 +03:00
Konstantin
c142bf1072
vcmi: modernize lib/logging
2023-03-06 20:13:25 +03:00
Ivan Savenko
c8afef3408
Merge pull request #1636 from rilian-la-te/remove-unused
...
vcmi: remove old war machine code
2023-03-06 00:10:55 +02:00
Ivan Savenko
df50a17d2a
Fix loading of non-ASCII text files
2023-03-05 21:50:38 +02:00
Konstantin
c84a9f32f6
vcmi: fix road and river loading
...
It actually catched by MapFormat.Terrain test crash.
So, this is a fix (functions does not trowing exceptons, it returns NULL
if something is wrong).
2023-03-05 22:41:38 +03:00
Ivan Savenko
7ef5163d9d
Merge pull request #1581 from IvanSavenko/map_render_rewrite
...
Adventure Map - rendering rewrite
2023-03-05 19:51:07 +02:00
Konstantin
a364e39b50
vcmi: remove old war machine code
2023-03-05 19:12:47 +03:00
Ivan Savenko
387a7b421a
Refactoring of new code, multiple functionality changes:
...
- Implemented separate Map View contexts for different map modes
- Puzzle map now works
- Enemy movement now works as in H3
- Removed no longer used code
- Implemented missing embark/disembark sounds
- Fixed view focusing on embarking/disembarking
- Fixed focusing on movement near edge of terra incognita
- Fixed sea movement sound
2023-03-05 18:02:58 +02:00
Ivan Savenko
45e2875342
Completely removed old TerrainRect class
2023-03-05 17:57:36 +02:00
Ivan Savenko
5905dd6111
Grail digging check is now in library
2023-03-05 17:48:02 +02:00
Ivan Savenko
11e4d84749
Implemented View Earth / View Air spells
2023-03-05 17:48:02 +02:00
Ivan Savenko
ca13e7dedf
Implemented terrain palette animatiions. Removed old code
2023-03-05 17:48:02 +02:00
Ivan Savenko
4501036a04
Basic version of hero movement on map. Removed old code.
2023-03-05 17:48:02 +02:00
Ivan Savenko
beb7ce5beb
Refactoring of MapView
2023-03-05 17:48:02 +02:00
Ivan Savenko
bb6e1f7ee1
Initial WIP of adventure map rendering rewrite
2023-03-05 17:47:12 +02:00
Ivan Savenko
27cf4d1cd5
Removed non-translatable string
2023-03-05 17:39:27 +02:00
Ivan Savenko
260f6d626c
Implemented translations for H3M maps
2023-03-05 17:39:27 +02:00
Ivan Savenko
5b767d8b0d
Keep new skills from mods active in h3m maps
2023-03-05 17:39:27 +02:00
Ivan Savenko
f653d22f99
Fixed encoding of strings in h3m maps
2023-03-05 17:39:27 +02:00
Ivan Savenko
9b428e8231
Fonts will now correctly detect encoding of fonts from mods
2023-03-05 17:39:27 +02:00
Ivan Savenko
4260726e4b
Provide encoding information to maps & campaigns loaders
2023-03-05 17:39:27 +02:00
Ivan Savenko
bd70b6fabd
Unicode conversion functions now require source encoding
2023-03-05 17:39:27 +02:00
Ivan Savenko
8b3309b47d
Fixed custom hero names text ID's
2023-03-05 17:39:27 +02:00
Ivan Savenko
190368e419
Fix string ID's road/river/terrains
2023-03-05 17:39:27 +02:00
Ivan Savenko
acdb8d6e06
renamed Unicode -> TextOperations, to use for all text processing
2023-03-05 17:39:23 +02:00
Ivan Savenko
65c020ef34
Moved Unicode namespace out of GeneralTextHandler file
2023-03-05 17:30:38 +02:00
Ivan Savenko
6643408cdd
Fixed localization validation
2023-03-05 17:30:38 +02:00
Ivan Savenko
320a44ca3c
Moved common language data into a new file
2023-03-05 17:30:38 +02:00
Ivan Savenko
eeafc48663
Added validation for mod translations
2023-03-05 17:30:38 +02:00
Ivan Savenko
f57a77c2fe
VCMI will now check whether translations are complete
2023-03-05 17:30:38 +02:00
Ivan Savenko
623cae7d47
All translatable strings now have language identifier
2023-03-05 17:30:38 +02:00
Ivan Savenko
84fa19dadf
Merge pull request #1547 from dydzio0614/game-start-unrandomization
...
Hardcoded features for HotA-like starting conditions
2023-03-05 17:29:49 +02:00
Ivan Savenko
476e60c753
Merge pull request #1615 from SoundSSGood/CArtifactsOfHero-refactoring
...
Optimization and cleanup CArtifactHolder
2023-03-05 17:28:36 +02:00
Ivan Savenko
07898f5cca
Merge pull request #1609 from krs0/feature/Battle_order_slight_refactorings
...
Battle order slight refactoring
2023-03-05 17:27:38 +02:00
Andrii Danylchenko
59d612fc2d
Merge pull request #1616 from kambala-decapitator/conan-android
...
move Android code to the main repo
2023-03-05 08:13:41 +02:00
SoundSSGood
a1dbbe2d86
redraw optimization
2023-03-03 10:17:31 +02:00
Andrey Filipenkov
0294a8b063
enable StupidAI and EmptyAI for static AI
2023-03-02 12:09:49 +03:00
Andrey Filipenkov
fd56f86a84
introduce VCMI_MOBILE macro
2023-03-02 12:09:49 +03:00
Andrey Filipenkov
313d479d42
fix using JNI from server in single process build
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
c4e7e91850
fix single process build for Android
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
71d51beab2
change static AI approach to use static libvcmi
...
- now links to static AI lib targets
- solves uncaught boost exception on closing server
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
4c19d8794d
add option to compile AI code into libvcmi directly
...
- used on Android by default
- AI sources and libs are propagated to upper level with set(... PARENT_SCOPE)
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
2ced633ad8
refactor VCMIDirs for Android
...
removes inheritance from VCMIDirsXDG to get rid of defining M_*_DIR variables
2023-03-02 12:09:47 +03:00
Andrey Filipenkov
5b1f3bf0db
use JNIEnv object from SDL instead of forwarding from Java for Client
2023-03-02 12:09:47 +03:00
Andrey Filipenkov
970bd6ed34
adjust project for Android (except AI)
2023-03-02 12:09:47 +03:00
krs
26bca26bd8
Enum is now in its own namespace, comments for enum values removed
...
Using Namespace Fix for linux compilation.
NO_OF_PHASES renamed to NUMBER_OF_PHASES, removed duplicate phase documentation
2023-03-01 21:21:20 +02:00
krs
7421fabf2c
BattlePhases enum moved to Unit.h
2023-03-01 21:21:20 +02:00
krs
0373febe6f
Refactoring 1st phase - Renaming's mainly
...
S'more small battle order refactoring.
2023-03-01 21:21:20 +02:00
Ivan Savenko
d55ac50e3c
Merge pull request #1622 from krs0/feature/CArchiveLoaderparam_extractArchives_ismaskedbytypo#1619
...
CArchiveLoader param "extractArchives" is masked by typo #1619
2023-03-01 21:15:35 +02:00
Konstantin
cb26bedd17
fix #1621
2023-03-01 19:22:06 +03:00
krs
a950fb379e
All CArchiveLoader constructor parameters now have different names from members
2023-02-28 23:21:44 +02:00
Ivan Savenko
8d3bfbe0bc
Merge pull request #1582 from rilian-la-te/modernize-lib-battle
...
vcmi: modernize lib/battle
2023-02-28 12:12:39 +02:00
Andrii Danylchenko
37baec1d24
Fix crash on replaced hero placeholder mouseover
2023-02-27 09:10:26 +02:00
Ivan Savenko
8c52cbcd00
Merge pull request #1429 from dydzio0614/creature-numeric-quantities
...
Implement numeric creature descriptions with config toggle on/off
2023-02-26 22:57:01 +02:00
Andrey Filipenkov
176dfca578
fix indentation
2023-02-24 13:42:26 +03:00
Andrey Filipenkov
e6d87d5f35
wrap FileStream's helper functions into anonymous namespace
2023-02-24 13:42:26 +03:00
Andrey Filipenkov
85d1909ac5
remove copy-pasted functions from ioapi.c
2023-02-24 13:42:26 +03:00
Andrey Filipenkov
b0c109d5f7
use target from variable
2023-02-22 14:00:52 +03:00
Andrey Filipenkov
59948a41a6
use std::call_once instead of bool flag
2023-02-22 14:00:50 +03:00
Andrii Danylchenko
e13a230848
merge conflict regression fix
2023-02-18 17:19:33 +02:00
Andrii Danylchenko
47b253e837
#1579 - check z coord as well
2023-02-17 18:34:57 +02:00
Konstantin
93c2bbf9ab
vcmi: modernize lib/battle
2023-02-16 23:37:19 +03:00
Dydzio
e48a4185ed
Use config values from new settings
2023-02-15 23:36:09 +01:00
Andrii Danylchenko
6314fc0506
Fix destructor order
2023-02-15 20:37:18 +02:00
Andrii Danylchenko
c6feafc367
Hack to fix campaigns
2023-02-15 20:37:18 +02:00
Ivan Savenko
f65c6ad275
fix regressions from modernization
2023-02-15 14:27:12 +02:00
Ivan Savenko
5d98471d12
Merge pull request #1567 from rilian-la-te/modernize-maps
...
Modernize maps
2023-02-14 23:42:03 +02:00
Konstantin
5f181e25af
vcmi: modernize lib/mapObjects
2023-02-14 14:39:56 +03:00
Konstantin
b16f66477c
vcmi: modernize lib/mapping
2023-02-14 14:22:13 +03:00
Ivan Savenko
64ddd75cdc
Merge pull request #1571 from IvanSavenko/advmap_elements_refactoring
...
Advmap elements refactoring
2023-02-14 12:53:23 +02:00
Ivan Savenko
fbbfa29030
Merge pull request #1561 from rilian-la-te/modernize-serializer-spells
...
VCMI: modernize lib/serializer and modernize lib/spells
2023-02-14 12:12:39 +02:00
Ivan Savenko
72fe1fcfa9
Fix minimap updating on hero loss
2023-02-14 11:32:19 +02:00
Konstantin
7bfb37df4d
vcmi: modernize lib/rmg
2023-02-14 02:50:39 +03:00
Andrii Danylchenko
9f55666931
rework netpacks to avoid double typeinfo
2023-02-13 20:26:39 +02:00
SoundSSGood
0f93b0991c
Regression fixed
2023-02-13 15:16:42 +02:00