Changelog

Die letzten Änderungen an "Return to the Roots"
8dba0ce s25client 21.11.2025 21:16 Flamefire Merge pull request #1831 from Flamefire/altQ

Fix shortcuts using SDL2 and ALT+Q using WinAPI
112b5ca s25client 21.11.2025 20:29 Flamefire Merge branch 'master' into altQ
0713466 s25client 20.11.2025 22:47 Flamefire Merge pull request #1829 from Flamefire/speed

Make all game speeds available to "v" key
2a90e3a s25client 19.11.2025 15:01 Flamefire Create shortcut events for SDL2

ALT+q or CTRL+z do not produce text input.
ALT+0054 does produce a single char.
However ALT or CTRL and a letter do not produce combined chars.

So use that to trigger input events.

Fixes #1583
76051f2 s25client 19.11.2025 14:35 Flamefire Fix boolean check
4ce3b56 s25client 19.11.2025 14:33 Flamefire Fix ALT key detection on WinAPI

See #1583
e1423fa s25client 19.11.2025 13:57 Flamefire Factor out setSpecialKeys function in WinAPI
317a6b6 s25client 19.11.2025 13:49 Flamefire Replace some BOOST_TEST_REQUIRE by BOOST_TEST
8c07e03 s25client 19.11.2025 13:47 Flamefire Fix locale dependent test failures
7e320e8 s25client 19.11.2025 13:34 Flamefire Factor out functions for converting (normalized) durations to GFs and back
011ce29 s25client 16.11.2025 13:02 Flamefire Make all game speeds available to "v" key

Introduce constants for the speed and speed steps,
assert the min and max are reachable
and adapt conditions for step size and minimal/maximal step to debug speeds.

Closes #1828
e98438d s25client 15.11.2025 20:09 Flamefire Add constructors for KeyEvent

We usually need either a KeyType event with everything else zero/false,
or a char event with some modifiers.
Especially the latter causes a list of consecutive bool params, where an explicit set is more readable.
d3618af s25client 09.11.2025 11:54 Flamefire Use max username length of 30
2bad473 s25client 08.11.2025 20:35 Flamefire Remove limitation of lobby login name length

Don't limit to 15 chars.

Also refactor for using relative positions and English comments.
7333cc2 s25client 02.11.2025 15:49 Flamefire Move EnableCCache include after submodule check

It is in libutil which may not exist or be up to date, so check those first
65d5d90 s25client 30.10.2025 19:16 Johan Sj?blom Adding include
4b3d0f9 s25client 30.10.2025 17:05 Flamefire Add missing override
1f6b512 s25client 26.10.2025 19:39 Flamefire Make apt-commands on CI more reliable
c398fea s25client 26.10.2025 19:21 Flamefire Add Clang-21 to GHA
d74cf87 s25client 26.10.2025 19:21 Flamefire Submodule update
7198609 libutil 26.10.2025 19:11 Flamefire Add noreturn attributes to Singleton policies
62e8eda s25client 25.10.2025 13:59 Flamefire Convert `MouseCoord` to plain struct

The only method `GetPos` is no longer required as the `pos` is already a `Point` instance.
666d460 kaguya 20.10.2025 05:28 Flamefire Fix compatibility with C++17, GCC 13 and CMake 4 (#112)

* Update checkout action on GHA CI

* Show output on test failure

* Fix test compat with C++17

* Add missing header

* Disable warning in GCC 13

* Require at least CMake 3.16

Support for < 3.5 was dropped and 3.10 deprecated in CMake 4
bfad24c kaguya 16.10.2025 08:50 Flamefire Support for Lua 5.4+ & C++17 (#111)

* Update checkout action on GHA CI

* Show output on test failure

* Fix test compat with C++17

* Add missing header

* Disable warning in GCC 13

* Fix compatibility with Lua 5.4

The couroutine result index is always 1, not dependent on the number of
results which is not available in < 5.4.
Errors during GC are shown as warnings in 5.4+

* Add Lua 5.4.7 to the test matrix

* Fix compatibility with Lua 5.4.4+

A change in Lua 5.4.4 resets the Lua status to OK before calling the
panic handler.
This affects a test checking for an out-of-memory exception.
Check the message string instead for something memory related which is
"good enough".
ef96070 kaguya 16.10.2025 08:47 Flamefire Add missing includes (#113)

* Add missing include to native_function.hpp

* Add missing limits include in test_01_primitive

* Add missing limits include to benchmark.cpp
2d68497 s25client 01.10.2025 11:56 Flamefire Merge pull request #1800 from yrrrmmbl/master

mingw compat
1fa9d9e s25client 29.09.2025 19:17 Noseey Update formatting
268b2a8 s25client 29.09.2025 19:11 Noseey Use AddTextButton return pointer to set ID_Next to disabled
6dd3962 s25client 29.09.2025 01:36 Noseey ID_Next default disabled when loading CampaignSelection

.. since no campaign selection is done up until that point by the user.
a2aabf7 languages 28.09.2025 18:18 Noseey Correct Review Findings
85f3c6e languages 28.09.2025 17:25 Noseey Corrections
3db108a languages 28.09.2025 16:56 Noseey Adding further german translations
997717f s25client 28.09.2025 16:35 Flamefire Update kaguya
c5829c1 s25client 28.09.2025 16:35 Flamefire Use our fork of kaguya
da30392 kaguya 28.09.2025 16:32 Flamefire CI: Add Lua 5.2.1 job
336889a kaguya 28.09.2025 16:27 Flamefire Add missing space in test
6aaae98 kaguya 28.09.2025 16:21 Flamefire Merge branch 'c++17-cmake'
cbd82eb s25client 27.09.2025 01:01 Flamefire Fix UB in test

The maximum value for a random point was INT_MAX/2.
We had at some point: `point + size*2` which overflows when size is in
the range of INT_MAX/2.

Use an upper bound of /32 for the random point values.
b947e98 s25client 26.09.2025 22:29 yrrrmmbl mingw compat
1385244 libutil 26.09.2025 22:20 yrrrmmbl mingw compat
fb84699 libutil 26.09.2025 22:20 yrrrmmbl mingw compat
5b88cd6 s25client 18.09.2025 20:57 Flamefire Draw background even earlier
ad2f7c3 s25client 18.09.2025 19:01 Flamefire Remove workaround for CMake 3.14

CMake 3.16 is required, so we can assume those modules are available.
86e2d9b libutil 18.09.2025 19:00 Flamefire Remove workaround for CMake 3.14

CMake 3.16 is required, so we can assume those modules are available.
c4f90e4 libsiedler2 18.09.2025 18:59 Flamefire Remove workaround for CMake 3.14

CMake 3.16 is required, so we can assume those modules are available.
bb79603 s25client 18.09.2025 18:53 Flamefire Fix failure with Boost 1.89

Boost::system is no longer a component as it is header-only.
8a2a7e2 libsiedler2 18.09.2025 18:37 Flamefire Remove "system" component from Boost find_package search

Boost.System is header-only so this is not required and fails with Boost 1.89
8985f1c s25client 18.09.2025 16:38 Flamefire Claim compatibility with all CMake 3.x versions and test CMake 4

CMake 4 introduced some larger changes like dropping support for CMake older than 3.5.
So make sure we test both the last CMake 3 and some CMake 4 version.
66896da s25client 18.09.2025 16:31 Flamefire GHA: Show more details about found Boost
08960a3 s25client 18.09.2025 16:26 Flamefire Update install-boost action

Include a fix for an error "dangerous link path"