1
0
forked from mirrors/0ad
Commit Graph

20642 Commits

Author SHA1 Message Date
Itms aabab15324 Detect the need for libexecinfo in premake. This is mostly useful for musl Linux.
Patch By: nephele
Differential Revision: https://code.wildfiregames.com/D2671
This was SVN commit r23787.
2020-06-23 15:06:57 +00:00
Itms b437af833d Stop downloading boost from sourceforge on macOS, as it is not the official source anymore, and it is not very reliable for big files.
Reviewed By: Krinkle, wraitii
Differential Revision: https://code.wildfiregames.com/D2766
This was SVN commit r23786.
2020-06-23 14:42:54 +00:00
bb 9680d08b96 Remove unused bonuses schema from deathDamage
refs 16b452cf91

Patch By: Freagarach
Differential Revision: https://code.wildfiregames.com/D2831
This was SVN commit r23785.
2020-06-22 20:12:10 +00:00
Imarok 853e8c0f1e CVector2D: Fix members may not be initialized warnings
Differential Revision: https://code.wildfiregames.com/D2825
This was SVN commit r23784.
2020-06-21 18:21:31 +00:00
bb bdadb2080a Cleanup summary selection
Fixes some issues from 8ae67ed15f
Reviewed By: Freagarach
Noticed By: elexis
Differential Revision: https://code.wildfiregames.com/D1205
This was SVN commit r23783.
2020-06-20 21:26:20 +00:00
Stan 332b997ca6 Make javelineers easier to catch by cavalry, by reducing their speed slightly
Reviewed by: @borg-, @scythetwirler, @ValhirAnt
Differential Revision: https://code.wildfiregames.com/D2628
This was SVN commit r23782.
2020-06-19 06:31:50 +00:00
Stan c04a1ebac3 Remove the briton kennel as it's not historically correct.
War dogs are limited to a total of 20 instead of a five kennels times
ten dogs each, to compensate for the fact they no longer have special
requirements.

Patch by: @Nescio
Reviewed by: @borg-, @Stan
Thread:
https://wildfiregames.com/forum/index.php?/topic/25620-kennel-issues/&tab=comments#comment-372159

Differential Revision: https://code.wildfiregames.com/D2533
This was SVN commit r23781.
2020-06-19 06:28:39 +00:00
s0600204 dd5c7edea3 Introduce axeman templates
Introduces axeman parent templates, used to differentiate axemen from
swordsmen
(which they had been "under the hood" up until now), and update entity
templates
and maps where applicable.

Artwork (actors, icons) is not touched here - see D2688 for that.


Patch by: Nescio
Reviewed By: s0600204
Differential Revision: https://code.wildfiregames.com/D1355
This was SVN commit r23780.
2020-06-18 21:36:16 +00:00
bb 1f68e4d740 De-uglyfy introductory tutorial's Launchattack function
Store components when used several times
Check all components for existance when used
Use ProcessCommand instead of injection order directly in unitAI

This was SVN commit r23779.
2020-06-18 16:24:59 +00:00
Stan 2101556946 Fix flying shields reported by Mr. Lie,
Thread:
https://wildfiregames.com/forum/index.php?/topic/28361-something-curious-with-actor-celtsmerchant_ship/&tab=comments#comment-399067

This was SVN commit r23778.
2020-06-15 20:04:23 +00:00
wraitii ec4f51d928 Fix --without-pch build following ffd2219200
Differential Revision: https://code.wildfiregames.com/D2819
This was SVN commit r23775.
2020-06-14 20:51:21 +00:00
wraitii 6b2b071ad5 Move LOS to a los helper header and cleanup Grid.h includes.
Changing Grid.h should recompile faster, as it is now included in fewer
TUs.

Differential Revision: https://code.wildfiregames.com/D2784
This was SVN commit r23774.
2020-06-14 20:39:03 +00:00
wraitii ffd2219200 Don't overwrite JS error reporting by calling JS_ReportError.
Upstream spidermonkey supports JSNative error reporting by returning an
explicit failure code. This provides a full stacktrace. Calling
JS_ReportError, removed upstream, removes that stacktrace.

Instead, we should simply LOGERROR.

Based on a patch by: elexis
Reviewed By: wraitii
Differential Revision: https://code.wildfiregames.com/D2627
This was SVN commit r23773.
2020-06-14 10:34:49 +00:00
wraitii e8b3fe81cc build-osx-libs: Update GnuTLS to 3.6.13 (unbreak macOS 10.15)
This includes a workaround that should be removed when it is fixed
upstream (LDFLAGS=).
It disables guile support, since we do not need it and it fails to
compile too.

Patch by: Krinkle
Reviewed By: wraitii
Fixes #5729

Differential Revision: https://code.wildfiregames.com/D2716
This was SVN commit r23772.
2020-06-14 10:30:14 +00:00
wraitii 4b1a4ef4cf Rework ScriptInterface EnumeratePropertyNames to support non-enumerable properties.
This lets it support the JSClass syntax, introduced for components in
5fb88172a2/D2492, which required a workaround before.
As cleanup, remove the prefix logic which was too specific to be in
ScriptInterface, and use an upstream-compatible API that also does more
of what we want.

Based on a patch by: elexis
Differential Revision: https://code.wildfiregames.com/D2644
This was SVN commit r23771.
2020-06-14 09:49:32 +00:00
wraitii bea7a65389 Delete unused technologies.
Many were 'pair' technologies, originally removed from the game in
13b229d503.

Patch by: Nescio
Reviewed by: wraitii
Fixes #3800

Differential Revision: https://code.wildfiregames.com/D1775
This was SVN commit r23770.
2020-06-14 09:08:53 +00:00
wraitii 939002f0dc RangeManager: Grid for 2D array, enum cleanups.
Range manager has several `std::vector` for fixed-size arrays and 2D
grids. By using proper data structures, the code readability is
improved.
This also moves around the LosVisibility enum.

Comments by: Stan`, nani
Differential Revision: https://code.wildfiregames.com/D2770
This was SVN commit r23769.
2020-06-13 09:05:40 +00:00
vladislavbelov 6f70a901f8 Remove duplicated call in tile rendering for TerrainOverlay.
Patch By: vinhig
Reviewed By: wraitii
Differential Revision: https://code.wildfiregames.com/D2811
This was SVN commit r23767.
2020-06-12 20:52:18 +00:00
vladislavbelov fd8a47f5d9 Moves calculations of bounds for fixed shadows to a separate function.
Reduces complexity of the SetupFrame function. Fixed shadows were added
in 8e48e1b17e.

This was SVN commit r23766.
2020-06-12 20:09:08 +00:00
vladislavbelov 06bf3a8739 Adds GLSL shaders of overlay lines.
We were using ARB shaders in GLSL mode for overlay lines (unit
selection, ranges and so on).

Tested By: Freagarach, OptimusShepard, Stan
Differential Revision: https://code.wildfiregames.com/D2621
This was SVN commit r23765.
2020-06-12 15:39:44 +00:00
wraitii 14b5cf0673 Increase the max # of embassies from 2 to 3.
Carthaginians currently rely on embassies to be competitive, and
restricting them to 2 is too limiting for balance purposes.
This change also affects Kushites structures which was also approved by
borg- and ValihrAnt.

Further, the original choice of 2 seems to have been to force
Carthaginian players to make a choice, but since one can delete an
existing embassy and pick another, that seems somewhat artificially
restricting.

Patch by: borg-
Approved By: ValihrAnt, PhyZic
Differential Revision: https://code.wildfiregames.com/D2798
This was SVN commit r23764.
2020-06-12 15:32:35 +00:00
Stan b4df84e05d Fix an issue with the celt_trader because the triangle was too far below the ground and that caused flickering issues. Ideally at some point we will remove the limitation for prop only meshes to have triangles. While at it restore the units back to meters.
Thread:
https://wildfiregames.com/forum/index.php?/topic/28310-flickering/page/3/&tab=comments#comment-398652
Reported by: Mr.lie
Debugging with: @vladislavbelov

This was SVN commit r23762.
2020-06-12 07:03:23 +00:00
Stan 27647e61c4 Play a sound when walls are upgraded to gates.
This was SVN commit r23761.
2020-06-11 07:00:52 +00:00
Angen e181614215 [PetraAI] Remove redundant branch introduced in f1610ce4fa
Branches introduced in f1610ce4fa had commented part to consider
stonewalls as blocking targets only if there have been siege units in
army.
Commented part was removed in ade8bcc0b8.

Differential Revision: https://code.wildfiregames.com/D2804
This was SVN commit r23760.
2020-06-10 18:27:13 +00:00
Angen 267ccd3127 [PetraAI] Do not try to attack entities which can't be attacked.
Avoid trying to attack unattackable entities based on restricted classes
from Attack component.

Differential Revision: https://code.wildfiregames.com/D2111
Patch by: Freagarach
Reviewed by: Angen
This was SVN commit r23759.
2020-06-10 18:23:41 +00:00
Angen 3336d6d543 Adjust trader footprints
Match trader footprint with mesh shape for nicer visual effect.
This also removes footprint inconsistency among camels.

Patch by: Nescio
Reviewed by: Angen
Comments by: Feldfeld
Differential Revision: https://code.wildfiregames.com/D2640
This was SVN commit r23758.
2020-06-10 18:13:22 +00:00
wraitii ea67b79667 Handle stacking status effects, modifiers, some related fixes.
Continuation of work on status effects, following 82a5ab6d19.

Allow techs to modify properties.
Enable different behaviour when status effects would stack, such as
extending the duration or stacking the effects.
Fix GUI issue with more than 5 status effects.
Improve tooltips.
Let status effects show a different tooltip for the attacker and the
receiver.

Patch by: Freagarach
Reviewed By: wraitii, Angen (on an older differential).
Differential Revision: https://code.wildfiregames.com/D2296
This was SVN commit r23757.
2020-06-09 11:47:16 +00:00
vladislavbelov 5176f848b8 Fixes missing deletion of files in 409c436ae2.
Patch By: linkmauve
Differential Revision: https://code.wildfiregames.com/D2476
This was SVN commit r23755.
2020-06-08 22:36:19 +00:00
vladislavbelov 409c436ae2 Remove obsolete GetVideoMode platform-specifics, replaces by platform-agnostic SDL2`s APIs.
Before and after the commit we don't support multiple displays and HiDPI
properly.

Patch By: linkmauve
Tested By: Angen, elexis, Stan
Differential Revision: https://code.wildfiregames.com/D2476
This was SVN commit r23754.
2020-06-08 17:49:26 +00:00
wraitii f3a49014fb Make rams less effective by reducing speed and preventing attacks on organics.
Rams are currently evry strong. This nerfs them by reducing their speed
slightly and by preventing them from attacking organic units.

The speed change was agreed by ValihrAnt, the organic restriction is
more experimental and might be reverted in favour of a "reduced damage"
approach (see D2684) if it proves too limiting.

Patch By: borg-
Approved by: wraitii, ValihrAnt (mostly on the speed debuf)
Differential Revision: https://code.wildfiregames.com/D2782
This was SVN commit r23753.
2020-06-08 15:06:13 +00:00
wraitii dab3bbc2ca Remove 'Structure' preferred class from elephants, shorten max range.
Elephants were designed to prefer targeting structures. This is not
particularly historically accurate, and makes them rather annoying to
use against enemy units, reducing their efficiency.

This simply removes the preferred class, making elephants easier to
handle while keeping their usage as siege units for some civilisations.

Max-range is reduced slightly as the previous one was extremely large
for a melee unit.

Approved by: Nescio, wraitii
Patch by: borg-
Differential Revision: https://code.wildfiregames.com/D2786
This was SVN commit r23752.
2020-06-08 14:43:50 +00:00
wraitii 4d3a2a1a30 Remove debug change in b62308a301
Because it's no fun if your fixes don't need fixing'

Reported by: Stan
This was SVN commit r23749.
2020-06-07 20:16:34 +00:00
wraitii b62308a301 Fix error in e9361705ae.
The HWDetect changes were not working properly.

Reported by: Nescio
Tested by: Nescio
Differential Revision: https://code.wildfiregames.com/D2799
This was SVN commit r23748.
2020-06-07 20:11:37 +00:00
wraitii e9361705ae Refactor HWDetect and rendering options setup.
Remove duplication when setting graphic options by reading the configDB
directly.
Properly protect the ModIO config keys.

Approved By: linkmauve
Refs #5538

Differential Revision: https://code.wildfiregames.com/D1931
This was SVN commit r23747.
2020-06-07 13:16:57 +00:00
wraitii d1d4a1d6b9 Train champion cavalry at stable.
Remove champions from the fortress. This mimics the Maurian elephant
stable.

Approved By: ValihrAnt, Feldfeld, borg-
Differential Revision: https://code.wildfiregames.com/D2532
This was SVN commit r23746.
2020-06-07 13:09:17 +00:00
wraitii 04221b2835 Standardize wonder healing.
Patch by: Nescio
Accepted By: borg-
Differential Revision: https://code.wildfiregames.com/D2660
This was SVN commit r23745.
2020-06-07 13:03:06 +00:00
wraitii feda708d5d Fix formations not queueing orders properly.
Formation controllers were not always waiting on their members correctly
because the "finishedOrder" check was being reset in the wrong place.
This happened particularly with queued orders.

This merges the "finishedOrder" and the "InPosition" logic.

Reported by: elexis
Based on a patch by: Freagarach
Tested by: Freagarach
Reviewed By: Angen
Fixes #3274

Differential Revision: https://code.wildfiregames.com/D2702
This was SVN commit r23744.
2020-06-06 16:07:01 +00:00
wraitii 759bc754c3 Fix arrow count not being properly calculated when autogarrisoning.
423b3cbcaa Moved the message sent that an entity garrisons from
`PerformGarrison` to `Garrison`. However, when an entity is
autogarrisoned from `ProductionQueue` `PerformGarrison` is called thus
not triggering the message. When ejecting the entity from the structure
there is a message sent that the entity is removed, thus allowing for a
negative amount of archers/arrows in `BuildingAI` (see
423b3cbcaa#42654).

Note that `PerformGarrison` was explicitly split in 2102648f7c when
introducing autogarrisoning. It probably has something to do with the
position, since that was split. But I couldn't find any reason why it
cannot be used now.

A side effect of this is that when autogarrisoning an entity with
visible garrison points those will be occupied as well now.

Reviewed By: wraitii
Differential Revision: https://code.wildfiregames.com/D2790
This was SVN commit r23743.
2020-06-06 10:19:42 +00:00
wraitii 4588ee3bbc Trigger an exit-reentry when the target entity of an order is renamed
This lets unitAI FSM states correctly handle target entity renaming by
processing a message when that happens. The default behaviour is to
leave-reenter the state, which re-runs sanity checks and optionally
picks a better behaviour.

UnitMotion is still not made aware of entity renaming, as the
leave-enter makes it irrelevant in practice. It still may be a good idea
to implement that someday.

Fixes the concern raised at de1bb8a766.
Fixes #5584

Comments by: bb, Freagarach
Tested by: Freagarach
Reported by: minohaka, bb, Freagarach, gameboy (error in the original
commit)

Differential Revision: https://code.wildfiregames.com/D2735
This was SVN commit r23742.
2020-06-06 06:19:15 +00:00
Stan 371299f244 Reduce alarm sound intensity:
Thread:
https://wildfiregames.com/forum/index.php?/topic/27207-committedpoll-alarm-sound/page/2/&tab=comments#comment-398144

This was SVN commit r23741.
2020-06-05 21:34:22 +00:00
Stan 8339c6da79 Fix heroes not attacking on elephants
This was SVN commit r23740.
2020-06-05 21:28:18 +00:00
Stan a7cc40524c Fix spear orientations for infantry spearmen units when attacking and capturing.
Thread:
https://wildfiregames.com/forum/index.php?/topic/28301-seleucid-thureos-shields-attack-with-butt-of-spear/&tab=comments#comment-398078

This was SVN commit r23739.
2020-06-05 20:57:19 +00:00
wraitii f6977b64db Use IID_Health in test_Damage after 16b452cf91.
The wrong components were mocked, but the test did not fail as the
asserts were not called.
Add a check that tests are indeed called here.

Patch by: Freagarach
Reviewed by: wraitii
Differential Revision: https://code.wildfiregames.com/D2787
This was SVN commit r23738.
2020-06-05 17:14:04 +00:00
wraitii 829567c304 Unify Cavalry walk speeds across citizen/champion/hero variants.
Citizen, Champion and Hero cavalry now have the same 2x walk speed
multiplier.
Speed difference between cavalry type unchanged.

Patch by: Nescio
Approved by: borg-, ValihrAnt, wraitii
Differential Revision: https://code.wildfiregames.com/D2596
This was SVN commit r23737.
2020-06-05 16:58:18 +00:00
Stan 21a1ba4e5a New alarm/alarmattackplayer_1.ogg sound
Thread:
https://wildfiregames.com/forum/index.php?/topic/27053-request-battle-sounds/
Thread:
https://wildfiregames.com/forum/index.php?/topic/27207-feedback-wanted-alarm-sound/

Patch by: @Samulis
This was SVN commit r23736.
2020-06-05 08:09:58 +00:00
wraitii 4812844c33 Look for foundations near the target, not the entity.
Entities should look for a new foundation near the targeted one, not
near themselves, when they cannot proceed with constructing the original
target.
This behaviour matches expectations from players better, since the
entity will go closer to where the player intended.

It also rejoins behaviour when gathering introduced in 7d53fb19a2.

For now, keep looking near the entity too if there are no obvious picks
at the destination, but this could be done only within a certain range
(see D2525).


Comments by: Angen
Differential Revision: https://code.wildfiregames.com/D2753
This was SVN commit r23734.
2020-06-04 11:06:27 +00:00
wraitii cdfa6cb8b4 Make CommitResources accept a target, not a type.
This moves some resource committing logic from `UnitAI` to
`ResourceGatherer`.
Allows easier modification by modders, and cleaner separation of
concerns.

Check if the carried resources actually changed before sending the
message.

Make all paths through Repair.ConstructionFinished return resources.

Patch by: Freagarach
Reviewed By: wraitii
Differential Revision: https://code.wildfiregames.com/D2664
This was SVN commit r23733.
2020-06-04 11:01:06 +00:00
wraitii 7440523ade Enable garrisoning on gates / fix movement of units with visible garrison points (2nd commit)
This is the same commit as 2abd9cead2 / D1418, fixing noted issues.

This addresses two related issues:
- Units visibly garrisoned on gates keep the gate open.
- Units visibly garrisoned on entities keep their pathfinding blocker
flags.

De-activate the obstruction of visibly-garrisoned entities, fixing the
2nd issue.
Keep a list of entities that cannot move and thus should not count
towards gate-opening logic.

Packing logic is kept separate: it is more related to entities having
'alternate forms' with different capabilities than being currently
incapable of moving.

Based on work by temple

Fixes #2679.
Fixes #5151.

Differential Revision: https://code.wildfiregames.com/D2775
This was SVN commit r23731.
2020-06-02 11:40:29 +00:00
Stan c2b73e7874 Remove inaccurate howdah from the carthaginian champion elephant.
Patch by: @Nescio
Comment by: @wowgetoffyourcellphone
Thread:
https://wildfiregames.com/forum/index.php?/topic/28168-war-elephants/page/2/&tab=comments#comment-396952

Differential Revision: https://code.wildfiregames.com/D2779
This was SVN commit r23730.
2020-06-02 08:02:09 +00:00
Stan aad8aa9a3e Make elephants more interesting by reducing their cost.
Reviewed by: @borg-
Patch by: @ValihrAnt, @Nescio

Differential Revision: https://code.wildfiregames.com/D2575
This was SVN commit r23728.
2020-06-01 16:53:01 +00:00