1
0
forked from 0ad/0ad
Commit Graph

20705 Commits

Author SHA1 Message Date
bb
8dca7f221c Add all (visible) classes found by P217 in Identity.js
Remove a useless class from palisade_fort (already a visible class)

This was SVN commit r23869.
2020-07-22 14:26:17 +00:00
84a3f36537 Tweak champion cost to make the viable again.
Overall costs are reduced by around 25%, keeping a high Metal cost, and
they are made uniform across champions as a baseline.
Loot is adjusted.

Patch by: borg-
Accepted By: badosu, Nescio, wraitii
Differential Revision: https://code.wildfiregames.com/D2816
This was SVN commit r23868.
2020-07-22 09:42:18 +00:00
f489ab3a16 Abort formation-walking on any message from UnitMotion.
Units in formation can occasionally request many short paths (and thus
introduce crippling lag) if their offset is obstructed.
This particularly happen when the formation is idle, since the offset
then always remains obstructed.

To prevent this, it is OK to immediately stop pathing on any motion
message (obstructed, failure, success). This does not break formation
movement since messages are only sent when the formation controller is
not moving (this finishes what was started in 0535eb9b92).

Ideally, this hack could be removed if the short-pathfinder was quick
enough / units were better at aborting.

Fixes concern raised by Freagarach on a7da40ac2f.

Refs #5624 in that the max-short-path range is the source of the lag.

Reviewed By: Angen
Differential Revision: https://code.wildfiregames.com/D2871
This was SVN commit r23867.
2020-07-22 09:31:08 +00:00
bb
2ef3fd7a77 Clean up market classes:
template_structure_economic_market.xml → Market
template_structure_military_dock.xml → Dock
<Market/TradeType> node → Trade
requirement for bartering: BarterMarket → Barter

Change Petra accordingly


Also changing:
    Renamed the Gates class to Gate, LongWall to WallLong (cf.
WallTower), and StoneWall to Wall, to match their template file names.
Adjusted AI code, technologies, and templates accordingly.
    Entity build restrictions:
        renamed Apadana to Palace;
        replaced UniqueStructure with IshtarGate and TempleOfVesta.
        added Council to the (unbuildable) spart_gerousia.xml, since
it's functionally identical to athen_prytaneion.xml.
    Introduced the following classes:
        Council, IshtarGate, Library, TempleOfVesta, and Theater, to
match their build restrictions.
        WallMedium and WallShort, to complement the already existing
WallLong and WallTower classes.
        Stoa, TempleOfMars, and TriumphalArch, for completeness.
    Made the ArmyCamp, Colony, Gate, Lighthouse, Naval, Palace,
Palisade, SiegeWall, and StoneWall classes visible.
    Deleted the now unused Apadana, Kennel, SpecialBuilding classes.
    Removed the Village class from outposts and palisades, because those
are not supposed to count towards the phase technology requirements.
        Slightly rephrased the phase technology requirements tooltips.
    Corrected the <GenericName> of the various palisade files.
    Updated Structure tooltips from D2578 that have not already been
committed elsewhere.

Patch By: Nescio
Differenital Revision: D2892

This was SVN commit r23865.
2020-07-21 19:45:30 +00:00
bb
e428678b7e Don't assume health is both plural and singular in all languages.
see 47d5422e64

This was SVN commit r23864.
2020-07-21 16:37:43 +00:00
bb
47d5422e64 Heal HP → Health, Rate → Interval
Patch By: Nescio
Differential Revision: D2842
This was SVN commit r23863.
2020-07-21 16:28:29 +00:00
98108be43e Fix GetTechModifiedProperty mistake in 70c71bff0f & allow multiple token modifiers.
String-values in modifications fail if the modifications do not apply,
as they end up in the "multiply/add" path, following D270 / 70c71bff0f.

Also allow multiple token modifiers, so that multiple tokens may be
added for example. This becomes order-dependent but the positive
outweighs the negative.

Reported By: wowgetoffyourcellphone
Reviewed By: Angen
Differential Revision: https://code.wildfiregames.com/D2894
This was SVN commit r23862.
2020-07-21 08:15:59 +00:00
28e6c936e7 Fix oversights from 215c503e30.
- Re-alphabetise wall templates.
- Inactivate obstruction of turret when occupying a turret position.

Differential Revision: D2896.
Reviewed by: @Nescio, @wraitii.
This was SVN commit r23861.
2020-07-21 06:09:19 +00:00
3ed9df0d6c Allow map to recenter during resize in Atlas. Fixes #1109.
Patch By: Clockwork-Muse
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D825
This was SVN commit r23859.
2020-07-21 02:08:50 +00:00
Angen
25e8b38ba8 Fix message on allied victory with no active players
When starting a game with exactly one player that instantly wins the
game (consequest victory) and after that ceasefire running out will
trigger first the correct victory chat message, then a broken and
undefined have won the game chat message, initiated from the
ceasefiremanager.

Check for allies emptyness and do not send it if no players are active,
what means they all have been defeated or won.

Differential Revision: https://code.wildfiregames.com/D2891
Fixes: #5675

This was SVN commit r23857.
2020-07-20 17:10:08 +00:00
215c503e30 Move the ability to hold a turret to a separate file.
The logic concerning visible garrison points (i.e. turrets) is moved
from `GarrisonHolder` to a separate file.
This is logical because garrisoned != turreted, so this allows for
turrets that cannot be garrisoned (refs. D1958).
Also references #3488.

Differential Revision: D2367
Reviewed by: @wraitii
This was SVN commit r23856.
2020-07-20 10:51:14 +00:00
Angen
e07f12bea6 Clean up tower classes and related changes.
Classes:
The Defensive class is made visible (cf. Civic, Economic, Military).
The Fortress class is made visible (because of build restrictions).
The Tower class defined in template_structure_defensive_tower.xml is now
visible.
The unused GarrisonTower class is removed.
The DefenseTower class is deprecated in favour of one unique class in
each of the *_tower.xml children templates:
*_artillery.xml → ArtilleryTower
*_bolt.xml → BoltTower
*_sentry.xml → SentryTower
*_stone.xml → StoneTower
template_structure_defensive_wall_tower.xml does not inherit from
*_tower and therefore has a WallTower class instead of a Tower class.
Updated the Identity.js file accordingly.
Updated the Petra AI files accordingly (DefenseTower → Tower).
Tower build restrictions are changed to simply Tower.
Technologies:
tower_armour.json affects all towers, but not outposts (unchanged).
tower_decay.json and tower_vision.json affect only outposts (unchanged).
tower_crenellations.json, tower_murderholes.json, tower_range.json, and
tower_watch.json affect now only the Sentry and Stone towers, instead of
all towers. This alters gameplay for the Artillery and Bolt tower, but
those shouldn't have been benefitting from arrow tower technologies
anyway.
Standardized the tooltips per the style guide.
Updated the <Identity/Tooltip> in the tower templates.
Inserted <BatchTimeModifier>1.0</BatchTimeModifier> in
template_structure.xml, where the <ProductionQueue> is defined, and
removed the <BatchTimeModifier> from templates that can't train any
units.

Patch by: Nescio
Reviewed by: Angen
Differential Revision: https://code.wildfiregames.com/D2549
This was SVN commit r23853.
2020-07-19 11:45:00 +00:00
Angen
772bb7ea69 Fix tests after eec47157ad
sorry

This was SVN commit r23852.
2020-07-19 11:01:22 +00:00
Angen
edac6cecf1 Keep rotation when leaving formation
This prevents units to rotate when leaving formation as they already
have correct rotation.
Differential Revision: https://code.wildfiregames.com/D2889
This was SVN commit r23851.
2020-07-19 10:49:18 +00:00
Angen
eec47157ad Set previous behaviour for SetFacePointAfterMove.
Implement get method in cmpUnitMotion.
Use it in UnitAI.

This was SVN commit r23850.
2020-07-19 10:42:45 +00:00
bb
a9d1d16d5f Allow garrison and attack to be queued order in entityCollection
Differential Revision: D2823
Reviewed By: Angen
This was SVN commit r23849.
2020-07-19 10:41:30 +00:00
aeaba3c14c Use victory conditions json's in Atlas
Reviewed by: @Angen
Differential Revision: https://code.wildfiregames.com/D2393
This was SVN commit r23847.
2020-07-18 17:39:59 +00:00
5e2f76f461 Fix preselection action breakage in 4bed678194.
`target` did not always exist, thus raising errors when patrolling or
guarding.

Fixes concern raised by @Freagarach at 4bed678194

Reported By: Freagarach
Reviewed By: Freagarach
Differential Revision: https://code.wildfiregames.com/D2883
This was SVN commit r23846.
2020-07-17 10:27:11 +00:00
cbdabe4b5a Show summary graphs for teams
Fixes: #4552
Differential Revision: https://code.wildfiregames.com/D1877
This was SVN commit r23845.
2020-07-17 09:54:53 +00:00
4f617b7c25 Add where and how to contribute to README.txt
Reviewed by: wraitii
Text by: bb
Differential Revision: https://code.wildfiregames.com/D2833
This was SVN commit r23844.
2020-07-17 09:11:38 +00:00
70c71bff0f Allow Modifiers to affect tokens.
This adds a new mode to modifications called "tokens" which allows
clever token parsing.
Technologies, auras and modifiers in general can use this to switch out,
add or delete tokens dynamically.

Currently implemented are production and builder queue tokens.

Reviewed By: Freagarach
Differential Revision: https://code.wildfiregames.com/D270
This was SVN commit r23843.
2020-07-17 08:23:45 +00:00
370a669b84 Fix opening the summary as Gaia
Reviewed by: Angen
Fixes: #5782
Differential Revision: https://code.wildfiregames.com/D2836
This was SVN commit r23841.
2020-07-16 21:10:43 +00:00
32615ae6be Remove the build time malus from Greek civ bonus.
The 'Hellenic Architecture' bonus for Greek civilisations increased
health and capture points slightly, but also build time.
Because it is active from the start, it ended up being a large economic
debuff that made these civilisations less competitive.

The build-time increase is removed so "Hellenic Architecture" is now a
pure bonus.

Patch by: Feldfeld
Accepted By: wraitii, borg-
Differential Revision: https://code.wildfiregames.com/D2839
This was SVN commit r23840.
2020-07-16 08:11:00 +00:00
c64fa6017c Allow Rome to build palisades.
Rome was unable to build palisades (presumably as it had unique access
to the somewhat comparable Siege Walls).
This however made Rome unable to build walls in Village Phase, and
restricting access to palisades makes little historical sense.

Patch by: Nescio
Accepted By: ValihrAnt, borg-, Lionkanzen
Differential Revision: https://code.wildfiregames.com/D2741
This was SVN commit r23839.
2020-07-15 12:23:56 +00:00
95cc3937bd Make the Seleucid reform/traditional split affect infantry only.
Seleucid armies used cavalry alongside pikemen, making the unit
versatile.
Depending on other balancing changes, this may be revisited later.

Patch by: Nescio
Accepted by: borg-, wraitii
Differential Revision: https://code.wildfiregames.com/D2858
This was SVN commit r23838.
2020-07-15 12:19:53 +00:00
133d163689 Tweak military structures build time and cost.
Reduces build time of most buildings (except Barracks), and standardize
costs better across civs.
Furthermore, tooltips are updated and <Identity> nodes ordered as listed
in Identity.js.

Patch by: Nescio
Accepted by: borg-, wraitii
Differential Revision: https://code.wildfiregames.com/D2821
This was SVN commit r23837.
2020-07-15 12:14:13 +00:00
9eff418cb5 [gameplay-a24] Reduce the cost of the silver shield technology and increase the research time to match the other civ phase tech.
Patch by: @borg-
Reviewed by: @Nescio
Comments by: @badosu

Differential Revision: https://code.wildfiregames.com/D2867
This was SVN commit r23836.
2020-07-15 09:17:17 +00:00
ad83349820 Rename maurya hero
Patch by: @Nescio
Differential Revision: https://code.wildfiregames.com/D2795
This was SVN commit r23834.
2020-07-14 15:49:56 +00:00
150f333019 Delete duplicate kush_pyramid actor
Patch by: @Nescio
Differential Revision: https://code.wildfiregames.com/D2813
This was SVN commit r23833.
2020-07-14 10:41:54 +00:00
3eb03bd1e1 New Gaul team bonus: reduce blacksmith tech cost.
The Gauls were part of well-connected trade networks in ancient times.
Their exports mainly centered on slaves, mercenary, and military
equipment.
As such, a team bonus reducing blacksmith costs makes much more sense
than one reducing technology research time (particularly since the
historical justification for the existing team bonus was... thin).

Patch by: Nescio
Approved by: borg-, ValihrAnt, wraitii
Differential Revision: https://code.wildfiregames.com/D2669
This was SVN commit r23832.
2020-07-14 08:53:05 +00:00
1f2286305d Rework PreferredClasses to target either Human or Human/Siege.
'Hack' melee units had a preference towards Siege units. This made them
awkward to use in some fights.
PreferredClasses is not intended to remove Micro from the player's hand
but to prevent units from attacking unlikely targets (e.g. ships for
land units).

As such, this reworks PreferredClasses so that:
- Ranged & Spearmen/Pikemen (which deal Pierce damage) target Human
units, against which they are reasonably effective.
- Other units target either Human or Siege units with no particular
preference (Unit+!Ship).

This further specifies the preferred classes for all base templates for
easier modification, since extending this list (ordered by priority) is
tricky.

Patch by: borg-
Reviewed By: Nescio, wraitii
Differential Revision: https://code.wildfiregames.com/D2851
This was SVN commit r23831.
2020-07-14 08:39:31 +00:00
4bed678194 Handle 'orderone' hotkey for constructing buildings and walls
This was missing in 62f07098ea.

Based on a patch by: luiko
Also reported by: serveurix
Tested by: Freagarach
Fixes #5750

Differential Revision: https://code.wildfiregames.com/D2172
This was SVN commit r23830.
2020-07-14 08:04:48 +00:00
2eecb0f508 Give Macedonians a champion swordsman.
This is a major buff to their anti-ram capabilities and thus to their
viability in general.

The historical background for this unit is an elite corps of Thracians
under Philip V of Macedon.

Patch by: Nescio
Approved by: borg-, badosu, wraitii
Differential Revision: https://code.wildfiregames.com/D2872
This was SVN commit r23829.
2020-07-14 07:55:36 +00:00
4ed99d1b3d Fix missing pmp in b637fdbae9 (unit motion test map)
The PMP was not necessary so a default terrain can be used instead.

This was SVN commit r23828.
2020-07-14 07:37:09 +00:00
c1d71abe0b Tweak wonder/pyramid cost and remove healing aura from wonders.
Wonders cost food previously, which is not in line with their look or
other buildings.
Their healing aura is removed to make the slightly easier to capture.

Kushites pyramids are adjusted slightly, and the monumental architecture
tech moved to the CC to match the Persian.

Patch by: Nescio
Accepted By: borg-, Feldfeld
Differential Revision: https://code.wildfiregames.com/D2686
This was SVN commit r23824.
2020-07-12 16:03:50 +00:00
b97f1cadc5 Give Mauryan a 30% bonus to elephant build time.
Patch by: Nescio
Reviewed By: borg-, wraitii
Differential Revision: https://code.wildfiregames.com/D2862
This was SVN commit r23823.
2020-07-12 09:44:38 +00:00
e4e5b6c72e Fix trailing commas in JSON following e007caf642
This was SVN commit r23822.
2020-07-12 09:36:21 +00:00
Angen
6f1d17c954 Stop failing if mod is broken and display invalid mods in downloader [Mod Io]
If one mod is not signed or broken in any other way, mod.io downloader
fails and does not display any mod.
The problem with unsigned mod is that its metadata are empty.

That means one cannot break mod io downloader with mods having invalid
data.

mark mod as invalid and display in list as disabled and display reason
instead description to not spam ugly error messages on screen as this is
not error by the game but of the moder
report failed signatures back to list of mods
fail if property is not set using strict mode when getting from js
check in js for undefined values

Allow to filter only valid mods.

Differential Revision: https://code.wildfiregames.com/D2114
Reviewed by: @Itms
Fixes: #5459

This was SVN commit r23821.
2020-07-12 09:25:03 +00:00
01fdf01b5b Increase citizen soldier capture attack strength.
Attack strengths for citizen soldiers is increased, making it easier to
capture in the early game.
Hero capture points reduced to align them with their attack multiplier.

Patch by: Nescio
Reviewed By: borg-, wraitii
Differential Revision: https://code.wildfiregames.com/D2847
This was SVN commit r23820.
2020-07-12 09:21:28 +00:00
a1e812a3ea Tweak Macedonian champ infantry to have more attack, not more armour.
Patch by; borg-

Reviewed By: Nescio
Differential Revision: https://code.wildfiregames.com/D2868
This was SVN commit r23819.
2020-07-12 09:17:07 +00:00
e007caf642 Move train time increase for advanced/elite to the upgrade tech.
Techs which enabled training advanced/elite mercenaries directly also
increased the train time of those units.
It is more consistent and more maintainable to increase the train time
in the advanced/elite tech.
This does not affect promoting units since those are not trained.

Also rename and use a consistent order.

Patch by: Nescio
Reviewed By: borg-, wraitii
Differential Revision: https://code.wildfiregames.com/D2865
This was SVN commit r23818.
2020-07-12 09:14:44 +00:00
d43293f885 Skip unresearchable techs when deriving production queues in Structure Tree
Reported on the forums, the Structure Tree was displaying certain
technologies
when the chosen civ could not actually research them.

The Template Viewer was unaffected.

Reported by: Hidan
https://wildfiregames.com/forum/index.php?/topic/28491-archery-tradition-for-all-factions/

This was SVN commit r23816.
2020-07-11 19:47:19 +00:00
9f4e398585 Fix rooting mistake in CGame::ReallyStartGame, detected by Bellaz89, fixes #5776.
Differential Revision: https://code.wildfiregames.com/D2869
Accepted By: Bellaz89
This was SVN commit r23815.
2020-07-11 14:24:09 +00:00
a4bc787ddc Don't have the Structure Tree fill up the entire screen
For those lucky enough to have screens with a high enough resolution to
display
a chosen civilisation's tree in its entirety, the Structure Tree page
now
determines the minimum space necessary to do so, and sizes itself
accordingly.
(e.g. The page no longer scales to fill the entire screen.)

For those on lower resolution screens, the page now takes up slightly
less space
vertically.

This was SVN commit r23813.
2020-07-11 02:50:32 +00:00
ec3b3a9556 Fix some issues with bows noticed by Mr. Lie
Thread:
https://wildfiregames.com/forum/index.php?/topic/28481-some-animations-are-broken-gathering-and-other/page/2/&tab=comments#comment-400622

This was SVN commit r23812.
2020-07-10 17:35:59 +00:00
d4b567ca85 Fix broken templates following 33042ad23d while retaining the same functionnality
Patch by: @Nescio
Differential Revision: https://code.wildfiregames.com/D2864
This was SVN commit r23810.
2020-07-08 11:21:10 +00:00
b2842e8021 Rewrite Structure Tree and Template Viewer to use OOP principles
Commenters: elexis, Stan, Angen
Refs.: #5387
Differential Revision: https://code.wildfiregames.com/D2734
This was SVN commit r23808.
2020-07-07 19:11:36 +00:00
365dbd91fc Fixes terrain index type (causing a warning) introduced in 1e1ce27eba.
This was SVN commit r23807.
2020-07-07 16:51:20 +00:00
a7da40ac2f Fix formations reshaping incorrectly & related issues.
Formation were reshaping in cases where they should not (such as when
the controller is waiting on members).
This made them look very odd for some orders.

This also cleans up held positions for formations somewhat.

Also:
- ed54ad3486 fixed units not facing correctly after a formation-walk.
The fix is correct, but we can actually make it slightly more
self-contained by moving everything in `leave`. Also clarify comments.
- This fixes some very broken code in 4ca448a686 in
FORMATIONMEMBER.WALKING.MovementUpdate. It never errored because
formation controllers weren't moved out of the world before.

Reviewed By: Angen
Fixes #5443

Differential Revision: https://code.wildfiregames.com/D2763
This was SVN commit r23806.
2020-07-07 10:24:58 +00:00
33042ad23d [gameplay-a24] differentiate African and Indian war elephants because of their sizes.
maur, pers, sele champion elephants +10% resource costs, training time,
health, and attack damage;
cart, kush, ptol champion elephants −10% resource costs, training time,
health, and attack damage.

Patch by: @Nescio
Accepted by: @Feldfeld, @borg-
Differential Revision: https://code.wildfiregames.com/D2861
This was SVN commit r23804.
2020-07-04 18:15:05 +00:00