Commit Graph

14983 Commits

Author SHA1 Message Date
0ebc08b13c Thread the pathfinder computations using the task manager.
The pathfinder computations are run asynchronously (and potentially on
the main thread) in-between simulation turns, thus reducing
pathfinder-related lag considerably in common cases.

To make this most efficient, the number of paths computed during a turn
via MaxSameTurnMoves is reduced from 64 to 20.

This has a hard dependency on the obstruction manager (via the vertex
pathfinder) not being modified in-between simulation turn (or to put it
more generally on the simulation state not changing outside of turn
computation), otherwise results will be non-deterministic and go OOS.
This is currently entirely safe (as in, it indeed does not happen that
the simulation state changes in-between turn), but future work towards
improving simulation sandboxing would be good.

Thanks to Kuba386 for maintaining & improving the patch in 2020
Thanks to everyone who tested the various iterations of this patch.

Fixes #4324

Differential Revision: https://code.wildfiregames.com/D14
This was SVN commit r25657.
2021-06-03 16:21:28 +00:00
c78ead79e6 Standardize prepare time for ranged units.
Prepare time is the time between an attack order and the arrows actually
flying.

Archers go from 500ms to 800ms standard, making them slower to fire than
other ranged units, and making them slightly harder to micro against
e.g. raids.
Javelineers go from 750ms to 400ms, for the opposite effect.
Crossbowmen, as a 'special' feature, get 200ms, meaning they fire their
first volley really fast despite their long repeat rate.

This also standardizes all javelineer units to have 1250ms repeat time.

Differential Revision: https://code.wildfiregames.com/D4050
This was SVN commit r25655.
2021-06-03 13:49:07 +00:00
5d542ab63b Fix new biomes: small mines are again small
The terrain update introduced large actors for both small and large
stone and metal actors. This replaces the small ones by the appropriate
small actors.

Patch by: marder
Differential Revision: https://code.wildfiregames.com/D4057
This was SVN commit r25654.
2021-06-03 13:44:14 +00:00
70a4406bef Allow specifying forest size in createForests
This makes it easier to have more forests with fewer trees, or fewer
larger forests.

Differential Revision: https://code.wildfiregames.com/D4059
This was SVN commit r25653.
2021-06-03 13:40:48 +00:00
37d979d898 Fix wrong textures in nubia/savanna biome
Differential Revision: https://code.wildfiregames.com/D4068
This was SVN commit r25652.
2021-06-03 13:39:32 +00:00
dd0d4dc57a Some more fixes for miletus.
Patch by @wowgetoffyourcellphone.

This was SVN commit r25650.
2021-06-03 07:08:32 +00:00
94d669c198 Fix ignoring arrays as supported biomes in gamesetup
Fix regression of dc18d94030.
Spotted by: marder
Reviewed by: wraitii
Differential Revision: https://code.wildfiregames.com/D4044
This was SVN commit r25647.
2021-06-02 22:03:59 +00:00
ad9cb9d467 Use new small shields for mace archers too.
This was SVN commit r25644.
2021-06-02 18:53:29 +00:00
c8c2b03a08 Differentiate Ptolemaic archers from Seleucid ones. Use a fancier shield mesh.
Patch by: @wowgetoffyourcellphone, @Alexandermb, @Stan
Reported by @Hidan

This was SVN commit r25643.
2021-06-02 18:49:39 +00:00
6243fd07da New UI background
Patch by: @wowgetoffyourcellphone
This was SVN commit r25641.
2021-06-02 18:04:19 +00:00
d4cf36574e Some map tweaks
Patch by: @wowgetoffyourcellphone
This was SVN commit r25640.
2021-06-02 18:03:38 +00:00
Angen
dfbc481ec1 [Mod] Fix list and filter in mod selection breaking page when mod is missing some attribute
In case mod is missing some required field, for example label or version
for some reason, mod page would stop functioning.
Adding default to empty string in list and filter.

Differential revision: D4028
This was SVN commit r25639.
2021-06-02 17:58:49 +00:00
Angen
0f8ba775c3 Fix areFilters
Removed in 0d87ec5cf4.

Differential revision: D4041
Tested by: @marder
Reviewed by: @wraitii
This was SVN commit r25638.
2021-06-02 17:45:17 +00:00
be3749a788 New savanna textures based on cc0 textures
Patch by: @marder
This was SVN commit r25637.
2021-06-02 17:44:20 +00:00
c012888e2a Allow switching to the gamesetup from the campaign screen
This allows switching to the gamesetup, with a harcoded map, from the
campaign screen. Lets player sets up a few things (e.g. their civ &
favorite AI), which can be convenient for some simple campaigns that
lack options.

Differential Revision: https://code.wildfiregames.com/D4039
This was SVN commit r25636.
2021-06-02 17:37:29 +00:00
48ea6ee7d2 Moddability for pushing: radius in XML, allow deactivating globally/some templates.
Differential Revision: https://code.wildfiregames.com/D4040
This was SVN commit r25635.
2021-06-02 17:36:32 +00:00
07e44a75a1 Allow mods to say they should be ignored in replay/MP compatibility checks
Since it is very non-trivial to determine which mods change checksums
and which don't, this relies on modder goodwill (and on verification on
our end for signed mods).

The declaration is an optional "ignoreInCompatibilityChecks" boolean in
mod.json

Also rework slightly the MP lobby mod display to always show the host
mods in a clear manner.

Differential Revision: https://code.wildfiregames.com/D3968
This was SVN commit r25634.
2021-06-02 06:50:16 +00:00
693f296e71 Improve 'incompatible mods' splash screen
Fix some language elements, add some details, and update to SVN specs.
Make the window wider to have the first phrase take a single line in
English/most languages hopefully.

Differential Revision: https://code.wildfiregames.com/D4049
This was SVN commit r25633.
2021-06-02 06:44:43 +00:00
0cc0852683 Remove build limits of structures that train champions.
The champions these structures built were not very usable in practice
because of their limited build rate.
Apadanas are a special case since they grant resources, their limit is
increased to 2 and their resource rate divided by two (this reduces
their economic impact early on, but increases their potential military
impact).
The preferred solution would be giving apadanas a pop count, but that
does not work very well right now given that they grant resources and
can still be built.

Patch by: Valihrant
Reviewed By: wraitii
Differential Revision: https://code.wildfiregames.com/D3897
This was SVN commit r25627.
2021-06-01 08:09:43 +00:00
eda3eb7cc6 Speed up citizen rotation & differentiate ranged infantry unit move speed
Refs 42c70cd508, be286d4345, refs #5106

The introduction of "turn time" in A24 has been pointed out as a
gameplay change that made rushing less viable, and made the game more
turtley overall. Combined with other changes in the same direction, this
was seen by several top MP players as a step back.
Increasing turn times to 14 for infantry makes them somewhat irrelevant,
and a value of 10 for cavalry makes them noticeably more reactive while
keeping a little speed debuff.

Champions have a lower value, and heroes keep their lower values still
to prevent a reintroduction of 'dancing'.

Patch by: Valihrant
Reviewed By: wraitii
Differential Revision: https://code.wildfiregames.com/D3971
This was SVN commit r25626.
2021-06-01 07:45:36 +00:00
9e0c30f316 Improve Cart tech 'colonization'
It was underpowered and too costly.

Patch by: borg`
Reviewed By: wraitii
Differential Revision: https://code.wildfiregames.com/D3698
This was SVN commit r25625.
2021-06-01 07:26:07 +00:00
44ea80977a Tweak mercenaries: no food cost, advanced rank, faster training
The intention is that while mercenaries are still difficult and costly
to train, they are more effective in their particular niche.

Patch by: Nescio
Differential Revision: https://code.wildfiregames.com/D3699
This was SVN commit r25624.
2021-06-01 07:20:21 +00:00
2147da9aa6 Revert citizen train times to A23 values
The significant slowdown in train times, particularly for infantry
resulted in an increase in the # of barracks and overall contributed to
shifting towards a defensive, turtley gameplay.
Cavalry was already reverted in 8bd7a4f4b5.

Reverts parts of D2866/8726a2abbf.

Patch by: ValihrAnt
Reviewed By: wraitii
Differential Revision: https://code.wildfiregames.com/D4033
This was SVN commit r25623.
2021-06-01 07:16:16 +00:00
6cc6d8c156 Speed up and simplify TileClass implementation
Use a more memory-efficient layout, reducing memory usage and speeding
things up considerably.

Patch by: smiley
Reviewed By: wraitii
Differential Revision: https://code.wildfiregames.com/D4021
This was SVN commit r25622.
2021-06-01 07:06:36 +00:00
b86b4d352e Fix broken SP persisted settings
The MP ones were always used instead.

Differential Revision: https://code.wildfiregames.com/D4038
This was SVN commit r25618.
2021-05-31 16:27:50 +00:00
3d20791837 Add a "Best for MP" filter for random maps
This allows picking 'random' on a bunch of maps known to be playable in
MP, with the hope of increasing variety in actual maps played.

Discussed with players on the balancing forums.

Differential Revision: https://code.wildfiregames.com/D4012
This was SVN commit r25617.
2021-05-31 13:44:02 +00:00
42e67be0ee Fix crash when pushing a page while pushing a page.
Because the page stack is a vector, if during PushPage, a new page is
pushed, the vector may re-allocate. This 'pulls the rug out' from
underneath the code stack that originally pushed, which then crashes.

To fix this, use a deque, since push/pop won't invalidate references.

Reported by: Imarok.
Based on a patch by: Imarok (tests are his)
Differential Revision: https://code.wildfiregames.com/D4037
This was SVN commit r25616.
2021-05-31 13:42:08 +00:00
b1902d8e80 Allow setting texture quality in the config file. Fixes a todo.
Differential Revision: https://code.wildfiregames.com/D3020
This was SVN commit r25615.
2021-05-31 12:52:43 +00:00
fcd8035fd4 Use the new "Lod" Feature for aprons
* Disable "aprons" on low quality
* Disable cast shadows on medium quality

This was SVN commit r25614.
2021-05-31 12:00:05 +00:00
0bc7ba50ea Add an option to reduce the diversity of actor variants
Variants can now have limited or no diversity. This can occasionally
speed rendering slightly (5-10% FPS increase was reported on Combat Demo
Huge, which is very variant-heavy).

Reported by: bb
Based on a patch by: bb
Fixes #5831

Differential Revision: https://code.wildfiregames.com/D3035
This was SVN commit r25613.
2021-05-31 11:42:46 +00:00
6f72560228 Use the new "Lod" Feature for celt barrels
* Disable "castshadow" on low quality
* Adds new low quality versions for medium and low quality.

This was SVN commit r25612.
2021-05-31 11:38:34 +00:00
9cc6228b28 Fix random biome not working.
As the available biome was a Set, pickRandom didn't work.

Reported by: Langbart
Refs #6190

Differential Revision: https://code.wildfiregames.com/D4036
This was SVN commit r25611.
2021-05-31 07:49:20 +00:00
4188e7ff18 Remove unuseful 'siege bolt accuracy' from Kushites arsenal
Kushites should not have a bolt accuracy upgrade in arsenal, as they do
not have the ability to produce bolts.

Fixes #6167

Patch By: Langbart
Differential Revision: https://code.wildfiregames.com/D4035
This was SVN commit r25609.
2021-05-31 06:53:07 +00:00
7f6ef5db79 Removes gui_solid material usage from CChart.
This was SVN commit r25605.
2021-05-30 18:13:23 +00:00
1f192f1593 Removes low level GL code from GUI sprite rendering and switches to Canvas2D.
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4031
This was SVN commit r25603.
2021-05-30 13:48:58 +00:00
Angen
c388ef64ad Add missing credits in 7e92f714ca
This was SVN commit r25602.
2021-05-30 10:44:48 +00:00
Angen
0d87ec5cf4 Fix and simplify areFilters functions
Workaround is not needed anymore since 37e08a4ffb

This was SVN commit r25601.
2021-05-30 09:32:18 +00:00
Angen
7e92f714ca [PetraAI] - Make easy difficulties of AI weaker
This patch decreases the popScaling so that the easy AI difficulties
have lower targeted population.
And it also decreases the size & priority of the attacks from the easy
an very easy AI.

Refs: #6149
Differential revision: D3997
Patch by: @marder
Tested by: @Langbart
Comments by: @wraitii, @Freagarach
This was SVN commit r25600.
2021-05-30 09:07:27 +00:00
283f524fcf Implements DrawRect in Canvas2D, removes CConsole background drawing with low level GL calls.
This was SVN commit r25590.
2021-05-29 12:31:14 +00:00
6f9a162dfa CList, COList, CDropdown, CText, CInput: Draw borders above the rest and improve scrollbar drawing order
Fixes: #6055
Differential Revision: https://code.wildfiregames.com/D4004
This was SVN commit r25587.
2021-05-28 16:32:04 +00:00
d50ca8e8ec Slight tweak to the grass texture.
Patch by: @marder
This was SVN commit r25586.
2021-05-28 13:11:16 +00:00
3d7af82328 Improve support for classes in PetraAI.
Let PetraAI use MatchesClassList more.

Differential revision: https://code.wildfiregames.com/D2150
Reviewed by: Angen
Comments by: Stan
This was SVN commit r25584.
2021-05-28 06:54:48 +00:00
f7ad2daf62 Removes gui_solid material shader usages from scene rendering.
This was SVN commit r25582.
2021-05-27 20:13:47 +00:00
25b9faf1cb Split graphics options in two tabs
To allow incorporating more options, this splits the graphics settings
into two tabs, one containing general options (such as
silhouettes/windowed), and one with more advanced settings.

Accepted by: asterix
Differential Revision: https://code.wildfiregames.com/D3985
This was SVN commit r25581.
2021-05-27 10:12:13 +00:00
f57c2f71d5 Fix map names
Noticed by @wraitii

This was SVN commit r25580.
2021-05-27 09:18:00 +00:00
bcac3bb896 Fix two issues noticed by @marder.
Disable AO on quarried objects as its arguably broken.
Adds a second uv in case it's enabled again to prevent crashes in Atlas.
Use normal instead of parallax for the texture that do not have height
information.

This was SVN commit r25576.
2021-05-26 15:18:25 +00:00
18372d665c Campaign menu: reuse default map preview if available.
Differential Revision: https://code.wildfiregames.com/D4019
This was SVN commit r25575.
2021-05-26 14:45:44 +00:00
81457ef952 Fix potential undefined conversion.
Summary: Ran into this when testing things in the lobby - I'm not sure
it can happen if everything is working correctly, but I've had it
repeatedly when testing broken stuff. Feels safer.

Test Plan: ^

Differential Revision: https://code.wildfiregames.com/D4018
This was SVN commit r25574.
2021-05-26 13:29:11 +00:00
bce26e905f Mod selector: "start mods" saves the configuration.
Differential Revision: https://code.wildfiregames.com/D3992
This was SVN commit r25573.
2021-05-26 13:27:43 +00:00
35601a7bb3 Fix some error in rmgen.
Reviewed by: kalimaps
Refs: #6180
Differential Revision: https://code.wildfiregames.com/D4017
This was SVN commit r25570.
2021-05-25 21:26:48 +00:00