Pulling the DLL from SVN is performed separately to allow backporting
to A27.
Accepted-By: sera
Reviewed-On: https://gitea.wildfiregames.com/0ad/0ad/pulls/8175
(cherry picked from commit b362f0537a)
Signed-off-by: Itms <itms@wildfiregames.com>
For cross compiling there is a need to specify an alternative binary for
pkg-config. It's customary to use the environment variable PKG_CONFIG for
this.
Ref: #8135
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit 2b5830e82a)
Signed-off-by: Itms <itms@wildfiregames.com>
Exporting HOSTTYPE prevents cross compilation as HOSTTYPE is used to
override target host arch instead of detecting it from chosen compiler.
This then results in the wrong arch specific source files to be
included. So just don't set it by default and let it to the user to set
it if he so chooses.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit 707abee34d)
Signed-off-by: Itms <itms@wildfiregames.com>
Fixes change perspective features of multiplayer replays following cheat
protection in 023527e56e.
Fixes: #8020
(cherry picked from commit 67eaa8f1a9)
Signed-off-by: Itms <itms@wildfiregames.com>
As noted on #7979, we run into OOMs since commit af32d386b9. The reason is that the default incremental GC budget is unlimited, which actually doesn't perform incremental GCs. Our settings can lead to situation where the incremental GCs don't actually sweep, thus not freeing memory.
SM has a mechanism to avoid OOM anyways with LAST_DITCH GCs, but by default these can only occur ever 30 seconds. Turn this off.
Reported by: langbart
(cherry picked from commit e3e542b1f9)
Signed-off-by: Itms <itms@wildfiregames.com>
The renderer instance is created with new, so use delete.
Direct leak of 80 byte(s) in 1 object(s) allocated from:
#0 0x7fd3c932870b in operator new(unsigned long) (/usr/lib/gcc/x86_64-pc-linux-gnu/15/libasan.so.8+0x12870b)
#1 0x55bbedf25fb0 in InitGraphics(CmdLineArgs const&, int, std::vector<CStr8, std::allocator<CStr8> > const&, ScriptContext&, ScriptInterface&) ../../../source/ps/GameSetup/GameSetup.cpp:654
#2 0x55bbed2bb95e in RunGameOrAtlas ../../../source/main.cpp:684
#3 0x55bbed271b28 in main ../../../source/main.cpp:759
#4 0x7fd3c665f3ed in __libc_start_call_main (/lib64/libc.so.6+0x263ed)
Fixes: #7951
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit 03fd1acd5d)
Signed-off-by: Itms <itms@wildfiregames.com>
Striping is trivial, getting the debug symbols if premake just strips
them silently is a pain tho.
Stripping should optionally be done during install, as we don't have an
install target nor an install-strip target, make it a configure option
which is off by default.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit 1fac3461f9)
Signed-off-by: Itms <itms@wildfiregames.com>
This fixes the ability for users with uppercase letters in their
username to change their passwords, which wasn't possible before on
non-Windows platforms. The underlying issue for that is
https://github.com/processone/ejabberd/issues/4377 and in addition some
inconsistent normalization of usernames in password change requests
by gloox. This commit works around that by always using the local JID
part as username for password requests, which got the nodeprep string
profile already applied.
It also fixes a problem that Windows users which were able to change
their passwords, weren't able to login afterwards anymore, unless they
typed their username in all lowercase in the login form. This was caused
by using the all lowercase username as input for the password hash
function, instead of using the username in the user supplied case.
Fixes#7796
(cherry picked from commit 638391d7ab)
Signed-off-by: Itms <itms@wildfiregames.com>
The new patch-release pipeline takes a git branch originating from a
release tag, applies the changes since the tag onto the nightly build of
the release, and rebuilds the Windows binary.
All resulting changes are sent to the bundling pipeline which builds for
macOS and creates the tarballs and installers.
There will be two instances of the bundles pipeline: the main one will
keep tracking the main branch and providing biweekly bundles of the next
release, while a new patched-bundles pipeline will be manually used to
generate patch releases.
(cherry picked from commit 51ab929926)
Signed-off-by: Itms <itms@wildfiregames.com>
(cherry picked from commit ab6a420f78)
(fixed build on this commit by moving a change to commit originally ea34960249)
Signed-off-by: Itms <itms@wildfiregames.com>
Shrinking GCs dump the JITted code, which leads to redundant recompilations, lowers performance, and makes profiling JS more difficult.
They may still happen if the runtime is at risk of OOM.
(cherry picked from commit af32d386b9)
Signed-off-by: Itms <itms@wildfiregames.com>
Since 0eed117e6d exceptions from the map generation script are rethrown
in the main thread but not all of them are catched.
This defect is already fixed in the engine with 82513c9104Fixes: #7620
(cherry picked from commit 56abf84da2)
Signed-off-by: Itms <itms@wildfiregames.com>
This ensures the XMPP connection gets properly terminated when leaving
the lobby.
Fixes#7504
(cherry picked from commit 312c6e8165)
Signed-off-by: Itms <itms@wildfiregames.com>
Up to know the UPnP logic ignored the port a user was hosting a game on
and always added a port forwarding for the default port UDP 20595. This
commit fixes that, so a port forwarding is added for the actual port a
game is hosted on.
(cherry picked from commit fcd3fc2aa3)
Signed-off-by: Itms <itms@wildfiregames.com>
The UPnP implementation included a combination of two subtle bugs, which
resulted in failure to create port forwardings every time after the
first one.
When using UPnP, the internet gateway to create the port forwardings at
needs to discovered. As that takes a while, the its root descriptor URL
was supposed to be cached after successful discovery in the user config
in "network.upnprootdescurl". However, instead of caching the root
descriptor URL, the control URL got cached. That caused following
requests to the root descriptor URL to fail, as they ended up at the
control URL instead. As such requests might also fail when the network
topology changed, the code was supposed to fall back to discovering the
internet gateway again when the cached one didn't work. However, due to
the inner workings of miniupnpc the request using the cached root
descriptor URL didn't result in an error, so the new discovery was never
triggered. As the wrong value was persisted in the user config there was
also no way to get out of this situation again.
This commit fixes both of these bugs.
As far as I can tell these bugs existed since the introduction of the
caching of the root descriptor URL in 0ba25e9968, which means creating
port forwardings using UPnP has been broken since Alpha 15.
(cherry picked from commit 18d7746c84)
Signed-off-by: Itms <itms@wildfiregames.com>
This fixes the potential edge-cases of icon not showing, like in Gnome's dash for example.
(cherry picked from commit 26acb9df22)
Signed-off-by: Itms <itms@wildfiregames.com>
Fix nvtt build to support cmake-4, while at it also fix other
related outstanding cmake issues in nvtt.
Fixes: #7538Fixes: #7764
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit 263b481442)
Signed-off-by: Itms <itms@wildfiregames.com>
It seems current checks for GL 4.2 aren't enough so just disable
compute shaders for GL 4.2. Fixes#7734.
(cherry picked from commit fa3fb5d064)
Signed-off-by: Itms <itms@wildfiregames.com>
There was an out of bounds access during binding a uniform buffer on
GL. Fixes#7567, #7598.
(cherry picked from commit bce6e2c238)
Signed-off-by: Itms <itms@wildfiregames.com>
SpiderMonkey 98 introduced a size heuristic for the nursery GC region
(https://phabricator.services.mozilla.com/D136637). As this heuristic
uses a wall-clock time duration, it results in a severe performance
regression on slower systems for our use case.
This commit adds a workaround to turn off that heuristic, by telling
SpiderMonkey that a "page load" (something which doesn't have a meaning
in the context of pyrogenesis) is in progress, as that heuristic is
disabled for page loads.
Co-Authored by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
Fixes#7714
(cherry picked from commit 11dd480b67)
Signed-off-by: Itms <itms@wildfiregames.com>
Users may generate key presses that don't map to a distinct SDL scancode
and will be mapped SDL_SCANCODE_UNKNOWN instead. Using the same ID for
unmapped hotkeys means any such key press will execute unset hotkeys. As
luck would have it in #7644 this leads to calling "Custom exit to
desktop" if the hotkey is unbound as is the default.
So simply use a code for unused hotkeys that doesn't map to any SDL
scancodes.
Fixes: #7644
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit f10526284f)
Signed-off-by: Itms <itms@wildfiregames.com>
The Linux agent now runs Docker in rootless mode for additional
security. Operations inside containers must be run as root to match the
underprivileged user running Docker.
(cherry picked from commit b831b1f559)
Signed-off-by: Itms <itms@wildfiregames.com>
If you run as root then created files will be owned by root, this is
expected behaviour and not messing with permissions as stated in the
error message.
Running in a container the root user may map to the user starting the
container while all other users would need mapping to be able to work
with a bind mounted a checkout.
Further Debian patches out the root check to be able to build on their
builder.
Given the above remove the check.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit 6738fdbab7)
Signed-off-by: Itms <itms@wildfiregames.com>
Premake v5.0.0-beta4 replaces the LinkTimeOptimization flag with a
function linktimeoptimization, use it if available to avoid deprecation
warning.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit df38d4e899)
Signed-off-by: Itms <itms@wildfiregames.com>
- OARS content rating have been updated to version 1.1
- Touch Screens, Keyboard, Mouse have been marked as supported
- Laptop screens and bigger are marked as required to the minimum width of 1024 required by the game
- Fixes the device compatibility page on GNOME Software.
- added a "0AD" keyword to fix an issue with Flathub search feature where searching for "0AD" instead of "0 A.D." returns no results.
(cherry picked from commit 51bbdc6537)
Signed-off-by: Itms <itms@wildfiregames.com>
This allows systems using a tar version not supporting all the required
flags to easily switch to gnu tar.
(cherry picked from commit 2338473da1)
Signed-off-by: Itms <itms@wildfiregames.com>
235ea5cfb4 updated the languages supported by 0 A.D., but missed
updating them for the installer. This commit makes up for that and
updates the languages for the installer as well.
(cherry picked from commit db35a8494c)
Signed-off-by: Itms <itms@wildfiregames.com>
This is a workaround to avoid disabling GL storage buffers completely.
Because they might not work or might lead to a decreased performance.
We need to investigate that further when we have a local reproduce.
(cherry picked from commit 635a268dd9)
Signed-off-by: Itms <itms@wildfiregames.com>
This fixes an oversight from d655455304. During a code deduplication, a
check was removed. When looking at the lobby as a dialog (while in
gamesetup), it should be impossible to try to join a game.
(cherry picked from commit 6ac5c376ea)
Signed-off-by: Itms <itms@wildfiregames.com>
The .txt were wrongly send to a subdirectory named `.` and the files
converted to Markdown were forgotten.
(cherry picked from commit e1ecc4a743)
Signed-off-by: Itms <itms@wildfiregames.com>
This is an oversight from 415304db8a and #6660.
This forgotten template cropped up in #7525. It does not contain the
needed components to interact correctly with the player.
(cherry picked from commit 95fb0f9ed0)
Signed-off-by: Itms <itms@wildfiregames.com>
d15f1c29e4 added an extra fi, remove it.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit efc9c09280)
Signed-off-by: Itms <itms@wildfiregames.com>
Fetch third party tarballs for source packages so they will be bundled
in source release tarballs.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit 3aa95b7a28)
Signed-off-by: Itms <itms@wildfiregames.com>
Used to prefetch all required tarballs to build pyrogenesis later
without network access as is common for Linux package build and some
other CI environments.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit f9a43c8c40)
Signed-off-by: Itms <itms@wildfiregames.com>
On low vertical resolutions when playing games with 8 players in 4
different teams, the summary will overflow the available vertical space.
This commit ensures that in such a case the buttons below the summary
are still clickable by ensuring they stay always on top of the summary.
(cherry picked from commit 4d19935f48)
Signed-off-by: Itms <itms@wildfiregames.com>
This fixes the vertical alignment of the team summarized values on the
summary screen.
Fixes#7527
(cherry picked from commit 8b40ce59ad)
Signed-off-by: Itms <itms@wildfiregames.com>
This lead to an error because `addressee` is `undefined`.
Defect introduced in dcb8ef9b52.
Fixes#7466
Reported-by: @Langbart
(cherry picked from commit 068346b502)
Signed-off-by: Itms <itms@wildfiregames.com>
If the new entity did not have Promotion, we would fail to do so.
Not doing this caused ghost units to appear when promoting inside a GarrisonHolder.
Fixes#7472, reported by Langbart.
(cherry picked from commit 1d6f7f3837)
Signed-off-by: Itms <itms@wildfiregames.com>
AI's chat messages are always received by every client. It's not
necesarry to warn about them.
Defect introduced in e04506814a.
Refs: #7466
(cherry picked from commit 8292b0c646)
Signed-off-by: Itms <itms@wildfiregames.com>
This removes Catalan and Scottish Gaelic as supported languages, as they
now both have a coverage of less than 80% and adds Galician and
Portugese which both have 100% coverage right now.
(cherry picked from commit 235ea5cfb4)
Signed-off-by: Itms <itms@wildfiregames.com>
The hack uses per-vertex lighting for translucent objects. In the
future we need to use a separate shader.
(cherry picked from commit cf9bc03ee9)
Signed-off-by: Itms <itms@wildfiregames.com>
b90280855f added an additional label to the bottom of the game setup
page for indicating that a game is started from a saved state. This
reduced the space available for tooltips and looked oddly placed.
This commit changes that, by resizing the `SavedGameLabel` and
`GameSettingWarning` objects dynamically so they only take the space
necessary to display their caption. It also tweaks the vertical margins
of the tooltip to allow more lines to be shown at once.
While this still doesn't allow to show all tooltips on low resolutions,
it's now better than with Alpha 26.
(cherry picked from commit 73af7e61dd)
Signed-off-by: Itms <itms@wildfiregames.com>
CParamNodes can be quite large, thus we usually cache the JS::Value when
converting them. The AIInterface makes heavy use of it as detected in #7404.
However, the cached values are re-frozen everytime, which is a
significant waste of time on a large number of templates.
(cherry picked from commit e48b9ea106)
Signed-off-by: Itms <itms@wildfiregames.com>
This avoids collisions in the user report, fixes#7174.
Update the user report version to account for the new build version
format, fixes#7173.
The build version displayed in the GUI is kept at 5 characters for
main menu clutter concerns.
(cherry picked from commit 9f023825e0)
Signed-off-by: Itms <itms@wildfiregames.com>
We have multiple renderer backends for a while. So we can't rely on
a single CONFIG_GLES2 macro for disabling features.
(cherry picked from commit 8ee48a164a)
Signed-off-by: Itms <itms@wildfiregames.com>
With curl 8.10 [1] calling curl_multi_remove_handle retruns
CURLM_BAD_EASY_HANDLE iff the handle was removed already and no other
easy handle were registered. This resulted in ENUSRE triggering a
segfault during shutdown as reported. This was fixed upstream after
8.11.1 [2].
Do a runtime version check and for affected version allow
CURLM_BAD_EASY_HANDLE.
[1] curl ba235ab269080dc66e35835c829f7ac4290dbc1d
[2] curl 713182bd196bba014ba77f71176fea3de2236724
Fixes: #7295
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit edde9fb4ee)
Signed-off-by: Itms <itms@wildfiregames.com>
This prevents mods from mutating this value and revealing the map.
Part of this commit is written by @phosit.
(cherry picked from commit c9e76efe7b)
Signed-off-by: Itms <itms@wildfiregames.com>
Script component wrapper attempted to subscribe to messages before the
script component has been registered.
This defect existed since 7c2e9027c2 but was never noticed since there
is no script component wrapper which subscribes to messages. (Only the
script component it wrapps does.)
(cherry picked from commit f932b8b9cc)
Signed-off-by: Itms <itms@wildfiregames.com>
`id` was compared to the wrong player.
This defect was introduced in 023527e56e.
(cherry picked from commit e19a5eda9f)
Signed-off-by: Itms <itms@wildfiregames.com>
RPI4 returns `false` for `textureCompressionBC` because it doesn't
support formats above BC3. As the Vulkan specification requires to
support all BC formats to have `true` for `textureCompressionBC`.
(cherry picked from commit 0467d27b07)
Signed-off-by: Itms <itms@wildfiregames.com>
Introduced in d9d1f1bbeb.
This allowed draining an enemies metal resources by ordering spy-request
for that player.
Fixes#7230.
(cherry picked from commit 015aa0349b)
Signed-off-by: Itms <itms@wildfiregames.com>
Ideally the AI would try to carry on and recover gracefully but the code is setup in such a way that this seems like it would lead to a lot of different bugs down the line.
With help from @langbart on QA and code.
Fixes#7425
(cherry picked from commit c20ca02911)
Signed-off-by: Itms <itms@wildfiregames.com>
The current code could end up with savegameID being undefined, false, a filename string, or null depending on the code path taken.
Adapt C++ in consequence.
(cherry picked from commit a8fc3cf254)
Signed-off-by: Itms <itms@wildfiregames.com>
Introduced by a typo in f8afd49ae1.
Fixes#7345, reported by wowgetoffyourcellphone
(cherry picked from commit fba5a23aad)
Signed-off-by: Itms <itms@wildfiregames.com>
Observers have the ability to change the currently displayed player, and this broke the logic of commit f3f695b90e.
By instead storing the displayed player in CmpOverlayRenderer, we can remove the workaround to set a 'dirty' flag as well.
(cherry picked from commit 3756e12701)
Signed-off-by: Itms <itms@wildfiregames.com>
Docks are generic and have all ship entities. This comes to play notably when
they are captured. This is currently not the case for special docks (Crannog and
Cothon). For consistency they are given ship entities that are trainable by
other civilizations.
Also, the Crannog was not updated with the naval overhaul and still had the
trireme and bireme entities. They are now removed.
Fixes#7426
(cherry picked from commit 5c25b6f644)
Signed-off-by: Itms <itms@wildfiregames.com>
This increases the height StoneButtons and TabButtons, so that a
double-spaced caption does fit on them without significant overflow.
Exempt from that are the StoneButtons resembling lists in the main menu
and the in-game menu, as changing their height didn't feel right and we
don't need double-spaced captions for them anyway, as they're wide
enough.
The height of StoneButtons got increased from 28px to 32px, while the
height of TabButtons got increased from 30px to 34px.
(cherry picked from commit 33e9cd6126)
Signed-off-by: Itms <itms@wildfiregames.com>
Since 71a61d5f50, formations regularly regroup. However, units already at their correct offset should remain idle. This doesn't happen as we cannot check if we are at destination.
This exposes that and handles things properly... Unfortunately UnitAI has already left the IDLE state at this point, so we still get counted as no-longer idle for a turn.
To fix this, try and detect that particular situation without triggering infinite loops.
(cherry picked from commit 2f7ac026c1)
Signed-off-by: Itms <itms@wildfiregames.com>
Deduplicate a check by moving it to isSlotAvailable.
Based on a patch by @elexis.
(cherry picked from commit eafcb814cd)
Signed-off-by: Itms <itms@wildfiregames.com>
Failed to notice that name and controllable were sometimes changed.
(cherry picked from commit e15ffd70b7)
Signed-off-by: Itms <itms@wildfiregames.com>
Since 0eed117e6d exceptions from the map generation script are rethrown
in the main thread but not all of them are catched.
(cherry picked from commit 82513c9104)
Signed-off-by: Itms <itms@wildfiregames.com>
Include new/updated skirmish maps and brand new random maps by @real_tabasco_sauce
Revert name and description strings only
(cherry picked from commit da761ca501)
Signed-off-by: Itms <itms@wildfiregames.com>
- Apply Scale
- Rename mesh from Circle to viking_longship
- Remove useless material
- Add prop-projectile-prop point
Reported by: @Langbart
Fixes#7424
(cherry picked from commit bce3a2a170)
Signed-off-by: Itms <itms@wildfiregames.com>
based on a patch by: aeonios
`off` means that the territory visibility cannot be changed
`hidden` means that it's hidden by default but can be enabled
`visible` means it's visible by default
(cherry picked from commit fd78034885)
Signed-off-by: Itms <itms@wildfiregames.com>
This improves the alignment of the items of the top menu in-game. Icons
are now better centered and don't overflow anymore and the build label
text doesn't stack on low resolutions anymore either.
(cherry picked from commit 1aeb19b535)
Signed-off-by: Itms <itms@wildfiregames.com>
The intent of this branch was to not change the names when a saved game
is loaded. So that one can see who was where in the saved game.
It was implemented wrong: The names didn't change when no savegame was
loaded and changed when a saved game was loaded.
This commit make the soved game case and no saved game case consistent.
Defect introduced in b90280855f.
(cherry picked from commit fb9b02a9ba)
Signed-off-by: Itms <itms@wildfiregames.com>
There is no way to show the `PlayerColor` as disabled. As the player
color is vilible without this it can simble be hidden when it is
disabled.
Defect introduced in b90280855f.
(cherry picked from commit 5c860c3121)
Signed-off-by: Itms <itms@wildfiregames.com>
`PlayerData` didn't contain the playerNames when serialized because they
should not be loaded when a new game is made. This lead to the issue
that client didn't receive the initial player names of saved games.
Now `fromInitAttributes` gets as a second parameter whether the
initAttributus are from persistent settings.
Defect introduced in b90280855f.
(cherry picked from commit b52c1c137f)
Signed-off-by: Itms <itms@wildfiregames.com>
When a saved game gets loaded ai's aren't always selectable. This lead
to errors when an ai actually gets selected.
Defect introduced in b90280855f
(cherry picked from commit 199aa8ac35)
Signed-off-by: Itms <itms@wildfiregames.com>
`GameSettingsWarning` where only rendered when the settings change. When
a saved game is loaded it's possible this setting is enablet without the
setting being changed.
Defect introduced in b90280855f.
(cherry picked from commit 8636e4d0fd)
Signed-off-by: Itms <itms@wildfiregames.com>
Make it consistent with the "Browse Maps" buttow which is also
unavailable when a saved game is loaded.
Defect introduced in b90280855f.
(cherry picked from commit 4c48661b4f)
Signed-off-by: Itms <itms@wildfiregames.com>
When loading a saved game the user can't change the maps but when
receiving the initAttributes from the host the map is "changed".
Defect introduced in b90280855f.
(cherry picked from commit 96aa283e6a)
Signed-off-by: Itms <itms@wildfiregames.com>
Reload all cached phase data when switching civ.
Add missing query for the generic phase technologies to the phase idents.
(cherry picked from commit 33111dc816)
Signed-off-by: Itms <itms@wildfiregames.com>
Instead of using the file modification date, this uses the MD5 hash of
the file holding the content of the splash screen for the version check.
This ensures the splash screen isn't unintentionally shown again when
just the modification date of the file changes.
Fixes#4399
(cherry picked from commit ab0aee4cfa)
Signed-off-by: Itms <itms@wildfiregames.com>
This improves the layout of the summary screen, so text and displayed
values fit better. By doing so this also removed the need to specify a
"verticalOffset" for values, as they get vertically centered now.
(cherry picked from commit 1268854587)
Signed-off-by: Itms <itms@wildfiregames.com>
When running 0ad with a language other than English, there are various
places where text doesn't properly fit. This adjusts the UI in a bunch
of these places to better accommodate longer strings as they appear in
other languages than English and to make the UI look more uniform in
general.
(cherry picked from commit fc7e4ae69e)
Signed-off-by: Itms <itms@wildfiregames.com>
Fix normal map orientation for Terrains
- Terrains use "OpenGL" style normal maps, while 3D assets use "DirectX" style normal maps. So, fix all of the normal maps I can find with incorrect style normal maps.
- Set most terrains to angle="0" for more accurate shading. This negatively affects "tile" terrains, which we want to have a 45 degree angle, but helps all other terrains. aegean_paving_01 is an example of a permanent fix for this, which I will work on with Stan for R28.
- Adds a couple of really nice paving terrains for a new "Italy" terrain set.
- Adds a nicer "furrows" normal map for farmland terrain
- Improved persian city tile normal by @wraitii
(cherry picked from commit ba24b46693)
Signed-off-by: Itms <itms@wildfiregames.com>
New AO maps for statues by @nifa (which fixes the Discobolus ao error)
New quiver for Persian Immortal
Remove bad smoothing for Chinese rice hat
Remove some noise from a couple of structure skins
Add garrison flag prop points to Greek theaters
Make garrisoned flags unselectable. Requested by @real_tabasco_sauce
Update han_ricehat.dae
(cherry picked from commit 67bed64fd1)
Signed-off-by: Itms <itms@wildfiregames.com>
Only the sender and the recipients receive the chat messages.
This commit only has an affecto on messages where the addressee(s) are
selected through the dropdown. Addressee(s) selected with a "/" command
are still sent to evevyone and filteret by the receiver.
(cherry picked from commit e04506814a)
Signed-off-by: Itms <itms@wildfiregames.com>
`Engine.SetViewedPlayer` and `Engine.SetPlayerID` could be used to
reveal the map from GUI scripts and the in game console.
This is prevented by querying the simulation whether this player is
allowed to call thous functions.
These two vulnerabilities were introduced with their respective
features:
20e7d2224a introduced SetPlayerID to allow controlling other players
using the developer overlay.
a2f7d4d82a introduced SetViewedPlayer to allow observers to change the
perspective.
(cherry picked from commit 023527e56e)
Signed-off-by: Itms <itms@wildfiregames.com>
Also drop build version component as we never used it in earlier
releases either. This will also make replays et al be stored in a
directory 0.27.0 similar to earlier releases.
The build version component was introduced in 028ec40165
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
(cherry picked from commit fb24d75f0e)
Signed-off-by: Itms <itms@wildfiregames.com>
The font size in the error message dialog for incompatible save games
was way larger than usual. This fixes that, by removing the arbitrarily
applied font size.
(cherry picked from commit 870b356ad9)
Signed-off-by: Itms <itms@wildfiregames.com>
Fix `NetServerTurnManager` from pausing the simulation forever after a
client sent a bad hash to it and disconnects before the bad hash has
been processed.
A client that sends a wrong simulation hash to the `NetServer` and
disconnects before the server compares that hash causes a message box to
appear and the game to be paused forever.
94e5d88169 introduced the bug by missing to delete `m_ClientStateHashes
upon `UninitialiseClient.
This causes `m_ClientData[hashPair.first].isOOS = true` to insert a
client with blank values that the `NetServerTurnManager` will wait
forever and hence the message box about an OOS with no players being OOS
is shown (the playername is emptystring).
5ebf2020b0 exposed the bug by making observers able to lag behind,
providing a longe enough timeframe for this to occur.
Fix:
Deleting `m_ClientStateHashes` upon disconnect solves the broken
message box and the pausing.
(cherry picked from commit d12c015d43)
Signed-off-by: Itms <itms@wildfiregames.com>
These ship types were introduced in d51b4687e9. Danubius isn't designed
to use these ship types, as it uses ships to garrison 30 units.
(cherry picked from commit 5b33dd0143)
Signed-off-by: Itms <itms@wildfiregames.com>
2024-12-23 10:32:52 +01:00
569 changed files with 2751 additions and 1680 deletions