Compare commits

..
Author SHA1 Message Date
Tyler TrahanandPeter Nelson 14ec60f248 Update: Update changelog and bump release version for 15.3 2026-04-04 16:16:04 +01:00
Peter NelsonandPeter Nelson c1ebd8b19c Update: Backport language changes 2026-04-03 22:25:50 +01:00
metablasterandPeter Nelson 31ed643942 Fix: [Script] IsBuildableRectangle for a 0x0 tile should return false (#15357) 2026-04-03 22:25:50 +01:00
Jonathan G RennisonandPeter Nelson d9e977c823 Fix: MaxReliability order condition value not being clamped to <= 100 2026-04-03 22:25:50 +01:00
Peter NelsonandPeter Nelson 65193cb050 Fix: force sprites in main menu image-text buttons to same square dimensions
Fixes appearance with original basesets
2026-04-03 22:25:50 +01:00
Peter NelsonandPeter Nelson f3c94f08b7 Fix: size toolbar buttons relative to largest toolbar icon instead of hardcoded value
This improves appearance with basesets that use a different sprite size for toolbar icons.
2026-04-03 22:25:50 +01:00
Peter NelsonandPeter Nelson 2937d4550b Codechange: call AdjustPaddingForZoom on window creation
Reduces duplication in SetMinimalSize / SetMinimalTextLines
2026-04-03 22:25:50 +01:00
Loïc GuillouxandPeter Nelson c668ed2406 Fix 4b7a324: compilation with DEBUG_DUMP_COMMANDS (#15343) 2026-04-03 22:25:50 +01:00
Loïc GuillouxandPeter Nelson f8e0a8a4eb Fix 98ac75e: non deterministic handling of train crashes (#15338) 2026-04-03 22:25:50 +01:00
Jonathan G RennisonandPeter Nelson 79bf008514 Fix #15310: Incorrect map tile indices used for aircraft outside the map
When crashing aircraft or finding hangars
2026-04-03 22:25:50 +01:00
Jonathan G RennisonandPeter Nelson b9a35ef4b4 Fix: Incorrect scroll bar capacity for train details window total cargo tab 2026-04-03 22:25:50 +01:00
Peter NelsonandPeter Nelson c91185ebd9 Doc: bump release version to 15.2 2026-02-18 18:52:10 +00:00
Peter NelsonandPeter Nelson 1d53bd037a Doc: update changelog for 15.2 2026-02-18 18:52:10 +00:00
Peter NelsonandPeter Nelson bfdbff5c6c Update: Backport language changes 2026-02-18 11:15:19 +00:00
SamuXarickandPeter Nelson cbc4b5a274 Fix 434163aa: Crashed zeppelin not blocking runway (#15281)
Turns out the block flag was in Reset mode instead of Set.
Move the Set block logic earlier to make it repeatedly set for as long as the zeppeliner exists.
2026-02-18 11:15:19 +00:00
Peter NelsonandPeter Nelson 613aba0667 Fix #15269: crash when building drive-through stop on unowned one-way road (#15270)
Allow over-building drive-through roadstops on unowned one-way roads.
2026-02-18 11:15:19 +00:00
Peter NelsonandPeter Nelson 735b3958c2 Update: Backport language changes 2026-02-12 19:58:33 +00:00
Owen RudgeandPeter Nelson fc6d0d078c Codechange: [CI] Upload to the Windows Store automatically.
Microsoft expects a .msixbundle these days, which is effectively identical to .appxbundle, but needs a newer version of Windows 10, so bump our minimum version requirement too.
2026-02-12 19:58:33 +00:00
ronvidandPeter Nelson ecb5152c01 Fix #15105: Czech townname generation causing crashes. (#15231) 2026-02-12 19:58:33 +00:00
Peter NelsonandPeter Nelson bc03ff3fa0 Fix #15247: crash when handling invalid sprite in OpenGL cursor sprite system (#15248) 2026-02-12 19:58:33 +00:00
Loïc GuillouxandPeter Nelson fb981a130f Fix #15225: [CMake] Detect mismatch between tag and internal version (#15226) 2026-02-12 19:58:33 +00:00
Peter NelsonandPeter Nelson 28b88f5002 Fix b4ac5e2231: don't compare clear density with ClearGround (#15217) 2026-02-12 19:58:33 +00:00
Peter NelsonandPeter Nelson d8b7ee2483 Fix bd57aee3a9: Town supplied history incorrectly clamped to uint16_t (#15183) 2026-02-12 19:58:33 +00:00
Peter NelsonandPeter Nelson ebec0b37a1 Fix #15085: don't perform GUI scale changes before video driver is fully initialised (#15175) 2026-02-12 19:58:33 +00:00
RubidiumandPeter Nelson ba874b69e6 Fix #15166: foundations missing adjacent to NewGRF objects without foundation 2026-02-12 19:58:33 +00:00
Jonathan G RennisonandPeter Nelson 4b90a8276d Fix: Articulated road vehicle following with immediately sequential u-turns (#15170) 2026-02-12 19:58:33 +00:00
Charles PigottandPeter Nelson 70c142c013 Add: [Fluidsynth] Read settings from config files if available 2026-02-12 17:01:52 +00:00
Peter NelsonandPeter Nelson 8c0c3256a5 Fix 39f30692fe: Badge filter toggles no longer worked. 2026-02-12 17:01:52 +00:00
Peter NelsonandGitHub 119d71ae95 Update: Changelog for 15.1 (#15164) 2026-01-24 20:26:56 +00:00
Peter NelsonandPeter Nelson 8fb4721457 Update: Backport language changes 2026-01-24 19:32:36 +00:00
175a0c4d83 Fix #15088: When building a new train, the refit button state may be incorrect. (#15162)
Invalidate vehicle view window when the vehicle chain is changed.

Co-authored-by: Abigail <abigailthomsonhicks@gmail.com>
2026-01-24 19:32:36 +00:00
Loïc GuillouxandPeter Nelson 903325e4c8 Fix #15160: Use savegame landscape to display company names in SaveLoad window (#15161) 2026-01-24 19:32:36 +00:00
Peter NelsonandPeter Nelson 3f7934604c Fix #15116: install fallback cargo translation table for old cargo sets (#15150)
Old combined cargo/industry sets may set up cargo types with labels and expect them to be usable without a translation table.

Install a fallback table if the NewGRF does not install one to give them a better chance of working.
2026-01-24 19:32:36 +00:00
Peter NelsonandPeter Nelson 5d7fddf52c Fix: Allow infinite water to be selected when loading heightmap (#15146) 2026-01-24 19:32:36 +00:00
Loïc GuillouxandPeter Nelson cae58f37b4 Fix #15153, beb213f9: Wrong tile used to get bridge reservation overlay (#15154) 2026-01-24 19:32:36 +00:00
4adacf7640 Fix 568b70e: Fjordia SlCompanyLiveries::Load crash (#15148)
Co-authored-by: qirlib <qirlib@gmail.com>
2026-01-24 19:32:36 +00:00
Peter NelsonandGitHub 62649f4a83 Update: Changelog for 15.1 (#15128) 2026-01-22 18:46:01 +00:00
Peter NelsonandPeter Nelson c57db6ecdd Update: Backport language changes 2026-01-22 18:34:49 +00:00
Peter NelsonandPeter Nelson 4fd478295b Fix 595b696d61: Tile suitability test for farm field no longer handled snow tiles. (#15134) 2026-01-22 18:34:49 +00:00
Peter NelsonandPeter Nelson 3d8826bd16 Fix #15131, 3cf9b15959: Trees no longer spread on partially snowy tiles. (#15133) 2026-01-22 18:34:49 +00:00
Peter NelsonandPeter Nelson 175334b587 Update: Backport language changes 2026-01-18 19:30:43 +00:00
Richard WheelerandPeter Nelson 2ec7382f5c Fix: Change tooltips to match change from checkboxes to switches (#15123) 2026-01-18 19:30:43 +00:00
AbigailandPeter Nelson eec49bc795 Fix #15069: World generation map edges GUI starts in an invalid state (#15082) 2026-01-18 19:30:43 +00:00
Peter NelsonandPeter Nelson e52b3e161f Update: Backport language changes 2026-01-17 10:30:36 +00:00
Peter NelsonandPeter Nelson fb56c25d2c Fix: [Script] Potential out of bounds array/string slice indexes. 2026-01-17 10:30:36 +00:00
Peter NelsonandPeter Nelson a80c9325b2 Fix: [Script] Potential out of bounds indexed string access. 2026-01-17 10:30:36 +00:00
Peter NelsonandPeter Nelson 632b038933 Fix: [Script] Check if array sort function modified array.
Do not allow a script to add or remove elements.
2026-01-17 10:30:36 +00:00
Loïc GuillouxandPeter Nelson 6cab2e1ff8 Codefix 701cb2e: Incorrect initialisation of treat_first_red_two_way_signal_as_eol (#15109) 2026-01-17 10:30:36 +00:00
Cyprian KlimaszewskiandPeter Nelson 08503470cb Codefix: Remove unnecessary client side checks for setting an unbunch order (#15107) 2026-01-17 10:30:36 +00:00
Owen RudgeandPeter Nelson fe2c7c130f Fix: [CI] Use the latest version of GOGGalaxyPipelineBuilder to upload releases to GOG 2026-01-17 10:30:36 +00:00
Peter NelsonandPeter Nelson 0d3960148e Fix #15079: Incorrect dates shown on town cargo history graph. (#15080) 2026-01-17 10:30:36 +00:00
Peter NelsonandPeter Nelson 3c683c8303 Fix #15067: Mark NewGRF settings as modified after moving by drag & drop. (#15068) 2026-01-17 10:30:36 +00:00
Cyprian KlimaszewskiandPeter Nelson 69ef22674a Fix 0b99a0b: Incorrect error message for aqueducts reaching northern map borders (#14974) 2026-01-17 10:30:36 +00:00
Tyler TrahanandPeter Nelson d859130613 Fix: Standardize wording of GRF/NewGRF (#15059) 2026-01-17 10:30:36 +00:00
Charles PigottandPeter Nelson 89cdc726c8 Fix: [Fluidsynth] Don't try to load the default soundfont if it's not set or doesn't exist 2026-01-17 10:30:36 +00:00
Peter NelsonandPeter Nelson 1185f74588 Fix #15046: Crash on loading game due to invalid group parents. (#15049)
A bug when deleting groups could leave the group hierarchy in an invalid state.
2026-01-17 10:30:36 +00:00
Jonathan G RennisonandPeter Nelson ec0232ce11 Fix: disable_elrails handling with engines that use both RAIL and ELRL (#15045) 2026-01-17 10:30:36 +00:00
Peter NelsonandPeter Nelson a39c836fd1 Fix #15039: Name and version can disappear from content list. (#15040)
If the small font is set larger than the normal font, both name and version text disappeared.

Take account of the height of the small font when setting the resize height.
2026-01-17 10:30:36 +00:00
Tyler TrahanandPeter Nelson a5c36fa01b Fix #15026: Remove incorrect info from base sounds tooltip (#15029) 2026-01-17 10:30:36 +00:00
Loïc GuillouxandPeter Nelson a64ffbc5ca Fix: [Script] Improve reporting of invalid GetAPIVersion return (#15015) 2026-01-17 10:30:36 +00:00
SamuXarickandLoïc Guilloux 753f7e769a Fix: [Script] Retarget iterators on list swap (#14805)
Fix script list sorter to correctly retarget iterator when swapping lists.
Each sorter implementation now updates its internal iterator to remain valid after attaching to a new list, avoiding undefined behaviour.
2026-01-12 18:50:51 +01:00
RubidiumandLoïc Guilloux 6f735d73ab Codechange: [Script] Simplify constructors and add constness 2026-01-12 18:50:51 +01:00
RubidiumandLoïc Guilloux e21632ec24 Codechange: [Script] Move identical code from sub class to super class 2026-01-12 18:50:51 +01:00
Loïc Guilloux 252547ff8b Codechange: [Script] Reuse memory when changing values of ScriptList items (#14966) 2026-01-12 18:50:51 +01:00
Loïc Guilloux 64e01c7c8b Codechange: [Script] Replace map of sets with set of pairs for per value storage (#14930) 2026-01-12 18:50:51 +01:00
Tyler TrahanandGitHub 30cc053596 Update: Changelog for 15.0 (#15005) 2026-01-01 17:05:18 +00:00
Charles Pigott 4f794f0cb5 Update: Backport language changes 2026-01-01 17:03:56 +00:00
Peter NelsonandCharles Pigott 2b8b882fc3 Fix #14982: Can't place buoys under bridges. (#15007)
Bridges can be built over buoys but not the other way around.
2026-01-01 17:03:56 +00:00
Jonathan G RennisonandCharles Pigott 347295c319 Fix b4ac5e22: Incorrect TileIndex used in TownCanBePlacedHere (#15002) 2026-01-01 17:03:56 +00:00
Charles Pigott b2d9036fdb Fix: Small ufos would loop over vehicles in depots forever (#15008)
* Codechange: Rename variables to be more meaningful

* Fix: Small ufos would loop over vehicles in depots forever
2026-01-01 17:03:56 +00:00
Charles Pigott 98131fdff3 Fix #15004: Crash when dropdown is open when end game screen appears (#15006) 2026-01-01 17:03:56 +00:00
Tyler TrahanandCharles Pigott 07032d1af3 Fix #14992, 046b0c6: Respect non-stop order setting when adding waypoint orders (#14993) 2026-01-01 17:03:56 +00:00
Tyler TrahanandCharles Pigott 7f2e4257a3 Fix: Use correct 'minutes per year' setting for old savegames (#14995) 2026-01-01 17:03:56 +00:00
Loïc GuillouxandCharles Pigott bd9e7898a4 Fix: potential division by 0 when drawing a line (#14994) 2026-01-01 17:03:56 +00:00
Michael LutzandGitHub 20477ff541 Codechange: Disable asserts for release (#14883) 2025-12-31 22:31:24 +00:00
Tyler TrahanandGitHub 530546b8ca Update: Changelog for 15.0-RC4 (#14970) 2025-12-26 13:01:20 -05:00
Peter NelsonandPeter Nelson d79edfd974 Update: Backport language changes 2025-12-26 16:41:11 +00:00
Peter NelsonandPeter Nelson ddd4afd8ec Fix: Update language files for changes to English strings. 2025-12-26 16:41:11 +00:00
Peter NelsonandPeter Nelson 6e48325661 Fix f34c45c36d: Incorrect colour in cargo list in fund industry window. 2025-12-26 16:41:11 +00:00
Peter NelsonandPeter Nelson 2f2d6a419f Fix 8a8ebabb9d: Don't draw bridge deck rail sprites for default bridges. (#14985)
Bridge deck sprites for default rail/road types should only be drawn for custom bridges.
2025-12-26 16:41:11 +00:00
Jonathan G RennisonandPeter Nelson 7e30849c1e Fix b956af63: Incorrect TileIndex used in FindNearestGoodCoastalTownSpot (#14988) 2025-12-26 16:41:11 +00:00
Jonathan G RennisonandPeter Nelson 09240d8c22 Fix #12465: Click/tooltip alignment of industry chain cargo lines (#14963) 2025-12-26 16:41:11 +00:00
Peter NelsonandPeter Nelson 4b5b20a167 Fix 2d7d085e8e: "(Invalid parameter)" in error message when trying to remove another player's object. (#14981)
Formatted error string was thrown away.
2025-12-26 16:41:11 +00:00
Peter NelsonandPeter Nelson ac3ce09dd2 Fix #14978: Don't clear water tiles after removing buoys. (#14980)
Buoys have no owner and can be cleared by anyone, but the underlying tile (e.g. canal) should not be cleared if has a different owner.
2025-12-26 16:41:11 +00:00
Peter NelsonandPeter Nelson 448f322bd6 Fix: Update language files for changes to English strings. 2025-12-26 16:41:11 +00:00
Peter NelsonandPeter Nelson 7348c89fb3 Fix f34c45c36d: Incorrect string colour in industry directory. 2025-12-26 16:41:11 +00:00
Peter NelsonandPeter Nelson 81cb7fcd53 Fix #14973: Incorrect colour for some composed strings. 2025-12-26 16:41:11 +00:00
Peter NelsonandPeter Nelson 0755317f4d Fix c213218b66: Don't highlight selected dropdown item if it has a click result.
This is used by toggles and buttons within the dropdown item, and using those should not cause the row to look selected.
2025-12-26 16:41:11 +00:00
Peter NelsonandPeter Nelson f4dd4e455d Update: Backport language changes 2025-12-24 19:22:11 +00:00
Tyler TrahanandPeter Nelson 95ec0d2244 Fix #14938: Don't allow cacti to die off (#14956) 2025-12-24 19:22:11 +00:00
RubidiumandPeter Nelson 5434715724 Codefix: add missing tracing debug messages for Coordinator/Stun/Turn 2025-12-24 19:22:11 +00:00
Cyprian KlimaszewskiandPeter Nelson ecd95d332c Fix cb1c240: Client list is not invalidated after company take over. (#14955) 2025-12-24 19:22:11 +00:00
Jonathan G RennisonandPeter Nelson 5854536b89 Fix #14951: Init and save/load TimerGameEconomy::days_since_last_month (#14962) 2025-12-24 19:22:11 +00:00
Loïc GuillouxandPeter Nelson 0858148c94 Fix #14958, e96f35c: Don't use not yet initialised member (#14959) 2025-12-24 19:22:11 +00:00
glx22andPeter Nelson 92ef1697ec Fix #14949, 0717746: Add the new callbacks to the callback table 2025-12-24 19:22:11 +00:00
glx22andPeter Nelson a7961b41cb Codechange: Check command callbacks registration even in single player 2025-12-24 19:22:11 +00:00
Peter NelsonandPeter Nelson e7ba18bfd9 Fix #14945: Hang when deleting implicit orders during vehicle loading. (#14946) 2025-12-24 19:22:11 +00:00
Tyler TrahanandGitHub 6338c487b8 Update: Changelog for 15.0-RC3 (#14940) 2025-12-20 14:10:15 -05:00
Peter NelsonandPeter Nelson 4c0a91aac2 Update: Backport language changes 2025-12-20 19:07:50 +00:00
Peter NelsonandPeter Nelson d04225a2fb Change: Automatically push/pop colours when formatting a sub-string. (#14006)
Reverts 226a44bf86.

This universally prevents the sub-string from changing colours in the outer string.
2025-12-20 19:07:50 +00:00
Peter NelsonandPeter Nelson 65902d4abe Fix #14932: Increase internal badge index size to avoid overflowing BadgeIDs. (#14933) 2025-12-20 19:07:50 +00:00
mmtunligitandPeter Nelson 27fbcb3cc5 Fix a41738e: Picker item recolour depends on gamemode (#14929) 2025-12-20 19:07:50 +00:00
Peter NelsonandPeter Nelson 8c6531f297 Fix #14921: Crash during station autorefit if station doesn't accept current cargo type. (#14924)
Add convenience helpers to correctly retrieve goods entry cargo available/totals.

Avoids having to check if cargo data is available before accessing it, which was missing for autorefit.
2025-12-20 19:07:50 +00:00
Peter NelsonandPeter Nelson 88a52b60f8 Fix #14917: Crash when opening house picker with no houses available. (#14920) 2025-12-20 19:07:50 +00:00
Peter NelsonandPeter Nelson aa4b5ca747 Fix #14916: Duration of error message window could be too short. (#14919)
The timer for automatically closing the error message was started when creating the window, instead of when first displaying the window.
2025-12-20 19:07:50 +00:00
Peter NelsonandPeter Nelson 5ce9c6cadd Fix #14915: Crash due to divide-by-zero of industry probabilities. (#14918) 2025-12-20 19:07:50 +00:00
Loïc GuillouxandPeter Nelson 2027912e8f Fix ff08a22: script configs were cleared by AIPL and GSDT chunks from intro game (#14910) 2025-12-20 19:07:50 +00:00
RubidiumandPeter Nelson dd835262ed Codefix: possible null pointer dereference 2025-12-20 19:07:50 +00:00
Rubidiumandrubidium42 24364c3fbc Doc: not much is going to change in the 15.0 script APIs 2025-12-14 17:57:36 +01:00
Peter NelsonandPeter Nelson ca42564da8 Update: Changelog for 15.0-RC2 2025-12-13 18:13:31 +00:00
Peter NelsonandPeter Nelson 9062d25456 Update: Backport language changes 2025-12-13 11:54:27 +00:00
RubidiumandPeter Nelson 4213c62edd Fix #14677: desync due to using newgame time settings to validate savegame time settings 2025-12-13 11:54:27 +00:00
Peter NelsonandPeter Nelson a97587b3fe Revert: "Change: Support side-by-side fallback FontCaches instead of hierarchical. (#13303)"
This reverts commit 1829f7926d.
2025-12-13 11:54:27 +00:00
Peter NelsonandPeter Nelson 8ac9762a84 Revert: "Add: Automatically load fonts for missing glyphs. (#14856)"
This reverts commit c1d37d8699.
2025-12-13 11:54:27 +00:00
Peter NelsonandPeter Nelson 4ad85e0fe6 Fix: Graph label allocated size could be too small. (#14901)
Set initial size based on what could be displayed, instead of what is displayed right now.
2025-12-13 11:54:27 +00:00
Loïc GuillouxandPeter Nelson ab1ae7ec1a Codechange: [CI] setup-vcpkg action is now in OpenTTD/actions (#14897) 2025-12-13 11:54:27 +00:00
Peter NelsonandPeter Nelson 84c3ac6852 Fix #14891, a8650c6b06: Minimum sprite zoomlevel could break in some cases. (#14894)
Caused by sprite control flags not being reset when scanning available sprites.
2025-12-13 11:54:27 +00:00
Peter NelsonandPeter Nelson a6994a9550 Fix #14889: [FluidSynth] Don't try to load a soundfont that doesn't exist. 2025-12-13 11:54:27 +00:00
Peter NelsonandPeter Nelson f22f9d8b18 Codechange: Auto-reformat fluidsynth.cpp. 2025-12-13 11:54:27 +00:00
Peter NelsonandPeter Nelson 4b701e053f Update: Backport language changes 2025-12-08 18:06:36 +00:00
Loïc GuillouxandPeter Nelson b575769a7f Fix: [CI] Install NSIS for windows releases (#14885) 2025-12-08 18:06:36 +00:00
Rubidiumandrubidium42 04f1a114dd Change #14155: Erato's the winner of the title game competition 2025-12-07 22:40:14 +01:00
Peter NelsonandGitHub 9ea4d6b2df Doc: Update 15.0-rc1 changelog with last PR. (#14880) 2025-12-07 20:42:40 +00:00
Tyler TrahanandGitHub 7f196c6652 Feature: House placer mode to replace existing houses (#14469) 2025-12-07 12:05:47 -05:00
Charles PigottandGitHub 0bf3de7658 Fix #14863: [Script] Improve documentation for GetAPIVersion (#14877) 2025-12-07 16:55:41 +00:00
Charles PigottandGitHub 0ef15fa991 Update: Improve wording of 15.0-RC1 changelog entries (#14876) 2025-12-07 16:55:28 +00:00
Rubidiumandrubidium42 ced54c3008 Update: Changelog for 15.0-RC1 2025-12-07 14:22:25 +01:00
Cyprian KlimaszewskiandGitHub bbf582ff3a Fix 92e895a: don't force proceed crashed trains 2025-12-07 13:19:50 +00:00
froschandPeter Nelson 4339bf3dc7 Codechange: Use attribute syntax for debug_inline, so clang-format understands it. 2025-12-07 13:10:40 +00:00
Peter NelsonandGitHub 2fc877c2ec Fix #14871, 80e58e751a: Possible crash when building NewGRF station under bridge. (#14872)
Triggered by reading random tile data before the tile is actually created.
2025-12-07 11:59:20 +00:00
Cyprian KlimaszewskiandGitHub 99f04f27de Doc: Update information for receiving a copy of GPL. (#14869) 2025-12-07 11:25:08 +00:00
Peter NelsonandGitHub 4b7a3241bf Codechange: Remove unnecessary 'core' includes. (#14867) 2025-12-07 08:36:58 +00:00
translators 9e52df87ad Update: Translations from eints
chinese (traditional): 22 changes by KogentaSan
2025-12-07 04:43:11 +00:00
1485 changed files with 8508 additions and 7327 deletions
-50
View File
@@ -1,50 +0,0 @@
name: 'Setup vcpkg'
description: 'Installs vcpkg and initialises binary caching via NuGet'
inputs:
vcpkg-location:
description: 'Where to install vcpkg'
required: true
mono-install-command:
description: 'Command to run to install mono'
required: false
runs:
using: "composite"
steps:
- name: Install vcpkg
shell: bash
run: |
git clone https://github.com/microsoft/vcpkg "${{ inputs.vcpkg-location }}"
cd "${{ inputs.vcpkg-location }}"
./bootstrap-vcpkg.$(if [ "${{ runner.os }}" = "Windows" ]; then echo "bat"; else echo "sh"; fi) -disableMetrics
- name: Install mono
if: inputs.mono-install-command
shell: bash
run: |
${{ inputs.mono-install-command }}
echo "MONO=mono" >> "$GITHUB_ENV"
- name: Setup NuGet Credentials
shell: bash
env:
FEED_URL: 'https://nuget.pkg.github.com/${{ github.repository_owner }}/index.json'
run: |
cd "${{ inputs.vcpkg-location }}"
${{ env.MONO }} $(./vcpkg fetch nuget | tail -n 1) \
sources add \
-source "${{ env.FEED_URL }}" \
-storepasswordincleartext \
-name "GitHub" \
-username "${{ github.repository_owner }}" \
-password "${{ github.token }}"
${{ env.MONO }} $(./vcpkg fetch nuget | tail -n 1) \
setapikey "${{ github.token }}" \
-source "${{ env.FEED_URL }}"
- name: Setup vcpkg caching
uses: actions/github-script@v7
with:
script: |
core.exportVariable('VCPKG_BINARY_SOURCES', 'clear;nuget,GitHub,readwrite')
+1 -1
View File
@@ -105,4 +105,4 @@ jobs:
steps:
- name: Check annotations
uses: OpenTTD/actions/annotation-check@v5
uses: OpenTTD/actions/annotation-check@v6
+8 -10
View File
@@ -33,10 +33,8 @@ jobs:
uses: actions/checkout@v6
- name: Setup vcpkg
uses: ./.github/actions/setup-vcpkg
with:
vcpkg-location: ${{ runner.temp }}/vcpkg
mono-install-command: 'sudo apt-get install -y --no-install-recommends mono-complete'
id: vcpkg
uses: OpenTTD/actions/setup-vcpkg@v6
- name: Install dependencies
run: |
@@ -67,7 +65,7 @@ jobs:
# We only use breakpad from vcpkg, as its CMake files
# are a bit special. So the Ubuntu's variant doesn't work.
${{ runner.temp }}/vcpkg/vcpkg install breakpad
${{ steps.vcpkg.outputs.vcpkg }} install breakpad
echo "::endgroup::"
env:
@@ -78,15 +76,15 @@ jobs:
mkdir -p ~/.local/share/openttd/baseset
cd ~/.local/share/openttd/baseset
echo "::group::Download OpenGFX2"
curl -L https://cdn.openttd.org/opengfx2_classic-releases/0.8/opengfx2_classic-0.8-all.zip -o opengfx2-all.zip
echo "::group::Download OpenGFX"
curl -L https://cdn.openttd.org/opengfx-releases/0.6.0/opengfx-0.6.0-all.zip -o opengfx-all.zip
echo "::endgroup::"
echo "::group::Unpack OpenGFX2"
unzip opengfx2-all.zip
echo "::group::Unpack OpenGFX"
unzip opengfx-all.zip
echo "::endgroup::"
rm -f opengfx2-all.zip
rm -f opengfx-all.zip
- name: Install GCC problem matcher
uses: ammaraskar/gcc-problem-matcher@master
+8 -10
View File
@@ -35,25 +35,23 @@ jobs:
uses: actions/checkout@v6
- name: Setup vcpkg
uses: ./.github/actions/setup-vcpkg
with:
vcpkg-location: ${{ runner.temp }}/vcpkg
mono-install-command: 'brew install mono'
id: vcpkg
uses: OpenTTD/actions/setup-vcpkg@v6
- name: Install OpenGFX
run: |
mkdir -p ~/Documents/OpenTTD/baseset
cd ~/Documents/OpenTTD/baseset
echo "::group::Download OpenGFX2"
curl -L https://cdn.openttd.org/opengfx2_classic-releases/0.8/opengfx2_classic-0.8-all.zip -o opengfx2-all.zip
echo "::group::Download OpenGFX"
curl -L https://cdn.openttd.org/opengfx-releases/0.6.0/opengfx-0.6.0-all.zip -o opengfx-all.zip
echo "::endgroup::"
echo "::group::Unpack OpenGFX2"
unzip opengfx2-all.zip
echo "::group::Unpack OpenGFX"
unzip opengfx-all.zip
echo "::endgroup::"
rm -f opengfx2-all.zip
rm -f opengfx-all.zip
- name: Install GCC problem matcher
uses: ammaraskar/gcc-problem-matcher@master
@@ -67,7 +65,7 @@ jobs:
cmake .. \
-DCMAKE_OSX_ARCHITECTURES=${{ inputs.full_arch }} \
-DVCPKG_TARGET_TRIPLET=${{ inputs.arch }}-osx \
-DCMAKE_TOOLCHAIN_FILE=${{ runner.temp }}/vcpkg/scripts/buildsystems/vcpkg.cmake \
-DCMAKE_TOOLCHAIN_FILE=${{ steps.vcpkg.outputs.vcpkg-cmake }} \
${{ inputs.extra-cmake-parameters }} \
# EOF
echo "::endgroup::"
+5 -5
View File
@@ -47,15 +47,15 @@ jobs:
mkdir -p "C:/Users/Public/Documents/OpenTTD/baseset"
cd "C:/Users/Public/Documents/OpenTTD/baseset"
echo "::group::Download OpenGFX2"
curl -L https://cdn.openttd.org/opengfx2_classic-releases/0.8/opengfx2_classic-0.8-all.zip -o opengfx2-all.zip
echo "::group::Download OpenGFX"
curl -L https://cdn.openttd.org/opengfx-releases/0.6.0/opengfx-0.6.0-all.zip -o opengfx-all.zip
echo "::endgroup::"
echo "::group::Unpack OpenGFX2"
unzip opengfx2-all.zip
echo "::group::Unpack OpenGFX"
unzip opengfx-all.zip
echo "::endgroup::"
rm -f opengfx2-all.zip
rm -f opengfx-all.zip
- name: Install GCC problem matcher
uses: ammaraskar/gcc-problem-matcher@master
+1 -1
View File
@@ -57,4 +57,4 @@ jobs:
steps:
- name: Check annotations
uses: OpenTTD/actions/annotation-check@v5
uses: OpenTTD/actions/annotation-check@v6
+8 -9
View File
@@ -21,9 +21,8 @@ jobs:
uses: actions/checkout@v6
- name: Setup vcpkg
uses: ./.github/actions/setup-vcpkg
with:
vcpkg-location: ${{ runner.temp }}/vcpkg
id: vcpkg
uses: OpenTTD/actions/setup-vcpkg@v6
- name: Install OpenGFX
shell: bash
@@ -31,15 +30,15 @@ jobs:
mkdir -p "C:/Users/Public/Documents/OpenTTD/baseset"
cd "C:/Users/Public/Documents/OpenTTD/baseset"
echo "::group::Download OpenGFX2"
curl -L https://cdn.openttd.org/opengfx2_classic-releases/0.8/opengfx2_classic-0.8-all.zip -o opengfx2-all.zip
echo "::group::Download OpenGFX"
curl -L https://cdn.openttd.org/opengfx-releases/0.6.0/opengfx-0.6.0-all.zip -o opengfx-all.zip
echo "::endgroup::"
echo "::group::Unpack OpenGFX2"
unzip opengfx2-all.zip
echo "::group::Unpack OpenGFX"
unzip opengfx-all.zip
echo "::endgroup::"
rm -f opengfx2-all.zip
rm -f opengfx-all.zip
- name: Install MSVC problem matcher
uses: ammaraskar/msvc-problem-matcher@master
@@ -61,7 +60,7 @@ jobs:
cmake .. \
-GNinja \
-DVCPKG_TARGET_TRIPLET=${{ inputs.arch }}-windows-static \
-DCMAKE_TOOLCHAIN_FILE="${{ runner.temp }}\vcpkg\scripts\buildsystems\vcpkg.cmake" \
-DCMAKE_TOOLCHAIN_FILE="${{ steps.vcpkg.outputs.vcpkg-cmake }}" \
# EOF
echo "::endgroup::"
+3 -5
View File
@@ -28,10 +28,8 @@ jobs:
uses: actions/checkout@v6
- name: Setup vcpkg
uses: ./.github/actions/setup-vcpkg
with:
vcpkg-location: ${{ runner.temp }}/vcpkg
mono-install-command: 'sudo apt-get install -y --no-install-recommends mono-complete'
id: vcpkg
uses: OpenTTD/actions/setup-vcpkg@v6
- name: Install dependencies
run: |
@@ -61,7 +59,7 @@ jobs:
# We only use breakpad from vcpkg, as its CMake files
# are a bit special. So the Ubuntu's variant doesn't work.
${{ runner.temp }}/vcpkg/vcpkg install breakpad
${{ steps.vcpkg.outputs.vcpkg }} install breakpad
echo "::endgroup::"
env:
+1 -1
View File
@@ -19,7 +19,7 @@ jobs:
fetch-depth: 4
- name: Get pull-request commits
uses: OpenTTD/actions/checkout-pull-request@v5
uses: OpenTTD/actions/checkout-pull-request@v6
- name: Check commits
uses: OpenTTD/OpenTTD-git-hooks@main
+3 -2
View File
@@ -110,7 +110,8 @@ jobs:
echo "::endgroup::"
- name: Setup vcpkg
uses: ./.github/actions/setup-vcpkg
id: vcpkg
uses: OpenTTD/actions/setup-vcpkg@v6
with:
vcpkg-location: /vcpkg
mono-install-command: 'yum install -y mono-complete'
@@ -125,7 +126,7 @@ jobs:
echo "::group::CMake"
cmake ${GITHUB_WORKSPACE} \
-DCMAKE_TOOLCHAIN_FILE=/vcpkg/scripts/buildsystems/vcpkg.cmake \
-DCMAKE_TOOLCHAIN_FILE=${{ steps.vcpkg.outputs.vcpkg-cmake }} \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DOPTION_SURVEY_KEY=${{ inputs.survey_key }} \
-DOPTION_PACKAGE_DEPENDENCIES=ON \
+4 -6
View File
@@ -38,10 +38,8 @@ jobs:
uses: Swatinem/rust-cache@v2
- name: Setup vcpkg
uses: ./.github/actions/setup-vcpkg
with:
vcpkg-location: ${{ runner.temp }}/vcpkg
mono-install-command: 'brew install mono'
id: vcpkg
uses: OpenTTD/actions/setup-vcpkg@v6
- name: Install dependencies
env:
@@ -97,7 +95,7 @@ jobs:
cmake ${GITHUB_WORKSPACE} \
-DCMAKE_OSX_ARCHITECTURES=arm64 \
-DVCPKG_TARGET_TRIPLET=arm64-osx \
-DCMAKE_TOOLCHAIN_FILE=${{ runner.temp }}/vcpkg/scripts/buildsystems/vcpkg.cmake \
-DCMAKE_TOOLCHAIN_FILE=${{ steps.vcpkg.outputs.vcpkg-cmake }} \
-DHOST_BINARY_DIR=${GITHUB_WORKSPACE}/build-host \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DOPTION_SURVEY_KEY=${{ inputs.survey_key }} \
@@ -118,7 +116,7 @@ jobs:
cmake ${GITHUB_WORKSPACE} \
-DCMAKE_OSX_ARCHITECTURES=x86_64 \
-DVCPKG_TARGET_TRIPLET=x64-osx \
-DCMAKE_TOOLCHAIN_FILE=${{ runner.temp }}/vcpkg/scripts/buildsystems/vcpkg.cmake \
-DCMAKE_TOOLCHAIN_FILE=${{ steps.vcpkg.outputs.vcpkg-cmake }} \
-DHOST_BINARY_DIR=${GITHUB_WORKSPACE}/build-host \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DOPTION_SURVEY_KEY=${{ inputs.survey_key }} \
+3 -3
View File
@@ -124,7 +124,7 @@ jobs:
run: |
cd builds
REM We need to provide a signed .appx to the Windows Store, so generate a certificate with password 'password'
REM We need to provide a signed .msix to the Windows Store, so generate a certificate with password 'password'
call ..\os\windows\winstore\generate-key.bat "CN=78024DA8-4BE4-4C77-B12E-547BBF7359D2" password cert.pfx
- name: Generate assets
@@ -176,13 +176,13 @@ jobs:
REM Build and sign the package
makeappx build /v /f PackagingLayout.xml /op output\ /bv %OTTD_VERSION% /pv %OTTD_VERSION% /ca
SignTool sign /fd sha256 /a /f cert.pfx /p password "output\OpenTTD.appxbundle"
SignTool sign /fd sha256 /a /f cert.pfx /p password "output\OpenTTD.msixbundle"
REM Move resulting files to bundles folder
mkdir bundles
mkdir bundles\internal
move cert.pfx bundles\internal\openttd-${{ inputs.version }}-windows-store.pfx
move output\OpenTTD.appxbundle bundles\internal\openttd-${{ inputs.version }}-windows-store.appxbundle
move output\OpenTTD.msixbundle bundles\internal\openttd-${{ inputs.version }}-windows-store.msixbundle
- name: Store bundles
uses: actions/upload-artifact@v5
+5 -6
View File
@@ -46,15 +46,14 @@ jobs:
uses: Swatinem/rust-cache@v2
- name: Setup vcpkg
uses: ./.github/actions/setup-vcpkg
with:
vcpkg-location: ${{ runner.temp }}/vcpkg
id: vcpkg
uses: OpenTTD/actions/setup-vcpkg@v6
- name: Install dependencies
shell: bash
run: |
echo "::group::Install choco dependencies"
choco install pandoc
choco install pandoc nsis
echo "::endgroup::"
echo "::group::Install breakpad dependencies"
@@ -103,7 +102,7 @@ jobs:
cmake ${GITHUB_WORKSPACE} \
-GNinja \
-DVCPKG_TARGET_TRIPLET=${{ matrix.arch }}-windows-static \
-DCMAKE_TOOLCHAIN_FILE="${{ runner.temp }}\vcpkg\scripts\buildsystems\vcpkg.cmake" \
-DCMAKE_TOOLCHAIN_FILE="${{ steps.vcpkg.outputs.vcpkg-cmake }}" \
-DOPTION_USE_NSIS=ON \
-DHOST_BINARY_DIR=${GITHUB_WORKSPACE}/build-host \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
@@ -133,7 +132,7 @@ jobs:
cmake ${GITHUB_WORKSPACE} \
-GNinja \
-DVCPKG_TARGET_TRIPLET=${{ matrix.arch }}-windows-static \
-DCMAKE_TOOLCHAIN_FILE="${{ runner.temp }}\vcpkg\scripts\buildsystems\vcpkg.cmake" \
-DCMAKE_TOOLCHAIN_FILE="${{ steps.vcpkg.outputs.vcpkg-cmake }}" \
-DHOST_BINARY_DIR=${GITHUB_WORKSPACE}/build-host \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DOPTION_SURVEY_KEY=${{ inputs.survey_key }} \
+15
View File
@@ -153,3 +153,18 @@ jobs:
with:
version: ${{ needs.source.outputs.version }}
upload-windows-store:
name: Upload (Windows Store)
needs:
- upload
# Only upload final release builds to Windows Store; "-beta" or "-RC" tags should be ignored
if: needs.source.outputs.is_tag == 'true' && !contains(needs.source.outputs.version, '-')
uses: ./.github/workflows/upload-windows-store.yml
secrets: inherit
with:
version: ${{ needs.source.outputs.version }}
trigger_type: ${{ needs.source.outputs.trigger_type }}
+2 -2
View File
@@ -88,7 +88,7 @@ jobs:
- prepare
name: Publish bundles
uses: OpenTTD/actions/.github/workflows/rw-cdn-upload.yml@v5
uses: OpenTTD/actions/.github/workflows/rw-cdn-upload.yml@v6
secrets:
CDN_SIGNING_KEY: ${{ secrets.CDN_SIGNING_KEY }}
DEPLOYMENT_APP_ID: ${{ secrets.DEPLOYMENT_APP_ID }}
@@ -103,7 +103,7 @@ jobs:
- prepare
name: Publish symbols
uses: OpenTTD/actions/.github/workflows/rw-symbols-upload.yml@v5
uses: OpenTTD/actions/.github/workflows/rw-symbols-upload.yml@v6
secrets:
SYMBOLS_SIGNING_KEY: ${{ secrets.SYMBOLS_SIGNING_KEY }}
with:
+5 -6
View File
@@ -46,9 +46,8 @@ jobs:
- name: Install GOG Galaxy Build Creator
run: |
wget https://cdn.gog.com/open/galaxy/pipeline/build_creator/gnu-linux/GOGGalaxyBuildCreator-1.4.0.AppImage
7z x GOGGalaxyBuildCreator-1.4.0.AppImage
chmod +x ./app/GOGGalaxyPipelineBuilder
wget https://cdn.gog.com/open/galaxy/pipeline/10.6.7.17/gnu-linux/GOGGalaxyPipelineBuilder
chmod +x ./GOGGalaxyPipelineBuilder
- name: Install OpenGFX
shell: bash
@@ -145,8 +144,8 @@ jobs:
echo "::endgroup::"
echo "::group::Upload to GOG"
../app/GOGGalaxyPipelineBuilder build-game --username "${{ secrets.GOG_USERNAME }}" --password "${{ secrets.GOG_PASSWORD }}" --branch Testing windows.json
../app/GOGGalaxyPipelineBuilder build-game --username "${{ secrets.GOG_USERNAME }}" --password "${{ secrets.GOG_PASSWORD }}" --branch Testing macos.json
../app/GOGGalaxyPipelineBuilder build-game --username "${{ secrets.GOG_USERNAME }}" --password "${{ secrets.GOG_PASSWORD }}" --branch Testing linux.json
../GOGGalaxyPipelineBuilder build-game --username "${{ secrets.GOG_USERNAME }}" --password "${{ secrets.GOG_PASSWORD }}" --branch Testing windows.json
../GOGGalaxyPipelineBuilder build-game --username "${{ secrets.GOG_USERNAME }}" --password "${{ secrets.GOG_PASSWORD }}" --branch Testing macos.json
../GOGGalaxyPipelineBuilder build-game --username "${{ secrets.GOG_USERNAME }}" --password "${{ secrets.GOG_PASSWORD }}" --branch Testing linux.json
echo "::endgroup::"
)
@@ -0,0 +1,44 @@
name: Upload (Windows Store)
on:
workflow_call:
inputs:
version:
required: true
type: string
trigger_type:
required: true
type: string
jobs:
upload:
name: Upload (Windows Store)
runs-on: windows-latest
steps:
- name: Download bundle (Windows Store)
uses: actions/download-artifact@v6
with:
name: openttd-windows-store
path: openttd-windows-store
- name: Configure Microsoft Store CLI
uses: microsoft/microsoft-store-apppublisher@v1.1
- name: Reconfigure store credentials
run: msstore reconfigure `
--tenantId ${{ secrets.AZURE_TENANT_ID }} `
--sellerId ${{ secrets.WINSTORE_SELLER_ID }} `
--clientId ${{ secrets.AZURE_WINSTORE_APPLICATION_CLIENT_ID }} `
--clientSecret ${{ secrets.AZURE_WINSTORE_APPLICATION_SECRET }}
- name: Publish msix package
shell: pwsh
run: |
$bundle = Get-ChildItem openttd-windows-store/internal/openttd-*.msixbundle | Select-Object -First 1
if (-not $bundle) {
throw "No msixbundle found"
}
msstore publish $bundle.FullName -id 9NCJG5RVRR1C -v
+1 -1
View File
@@ -5,7 +5,7 @@ if(NOT BINARY_NAME)
endif()
project(${BINARY_NAME}
VERSION 15.0
VERSION 15.3
LANGUAGES CXX
)
+1 -2
View File
@@ -304,8 +304,7 @@ the "copyright" line and a pointer to where the full notice is found.
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
with this program. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
Also add information on how to contact you by electronic and paper mail.
+1 -1
View File
@@ -1,7 +1,7 @@
# This file is part of OpenTTD.
# OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
# OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
# See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
# Doxyfile 1.9.4
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.0 to 0.7. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.1 to 1.0. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.2 to 1.1. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.11 to 1.10. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 12 to 1.11. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.3 to 1.2. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.4 to 1.3. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.5 to 1.4. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.6 to 1.5. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.7 to 1.6. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.8 to 1.7. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.9 to 1.8. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.10 to 1.9. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 13 to 12. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 14 to 13. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 15 to 14. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.11 to 1.10. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 12 to 1.11. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.3 to 1.2. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.4 to 1.3. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.5 to 1.4 */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.6 to 1.5. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.7 to 1.6. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.8 to 1.7. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.9 to 1.8. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 1.10 to 1.9. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 13 to 12. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 14 to 13. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/* This file contains code to downgrade the API from 15 to 14. */
+183
View File
@@ -1,5 +1,188 @@
## 15.x
### 15.3 (2026-04-04)
- Fix: Conditional orders could require a maximum reliability over 100% (#15409)
- Fix: Improve appearance of toolbars and main menu images/text with some non-default base sets (#15402)
- Fix: [Script] IsBuildableRectangle for a 0x0 tile should return false (#15357)
- Fix: Desync caused by train crashes (#15338)
- Fix: Incorrect scroll bar capacity for train details window total cargo tab (#15329)
- Fix #15310: Crash caused by a helicopter running out of fuel near map edge (#15311)
### 15.2 (2026-02-18)
- Fix: Crashed zeppelin not blocking runway (#15281)
- Fix #15269: Crash when building drive-through stop on unowned one-way road (#15270)
- Fix #15247: Crash when handling invalid sprite in OpenGL cursor sprite system (#15248)
- Fix #15105: Czech townname generation causing crashes (#15231)
- Fix: Incorrect ground type test when placing towns (#15217)
- Fix: Town supplied cargo history incorrectly clamped to 16 bit values (#15183)
- Fix #15085: Crash when GUI scale changes before video driver is fully initialised (#15175)
- Fix: Articulated road vehicle following with immediately sequential u-turns (#15170)
- Fix #15166: Foundations missing adjacent to NewGRF objects without foundation (#15168)
- Fix #14035: [Fluidsynth] Read settings from config files if available (#15044)
- Fix #15263: Badge filter toggles no longer worked (#14972)
### 15.1 (2026-01-24)
- Fix #15088: When building a new train, the refit button state may be incorrect (#15162)
- Fix #15160: Incorrect company names displayed in load game window (#15161)
- Fix #15153: Wrong tile used to get bridge reservation overlay (#15154)
- Fix #15116: Old cargo/industry sets without cargo translation table broken (#15150)
- Fix: Possible crash converting company liveries in older savegames/scenarios (#15148)
- Fix: Allow infinite water to be (de)selected when loading heightmap (#15146)
- Fix: Tile suitability test for farm field no longer handled snow tiles (#15134)
- Fix #15131: Trees no longer spread on partially snowy tiles (#15133)
- Fix: Change tooltips to match change from checkboxes to switches (#15123)
- Fix: [Script] Potential out of bounds array/string slice indexes (#15106)
- Fix: [Script] Potential out of bounds indexed string access (#15106)
- Fix: [Script] Check if array sort function modified array (#15106)
- Fix #15069: World generation map edges GUI starts in an invalid state (#15082)
- Fix #15079: Incorrect dates shown on town cargo history graph (#15080)
- Fix #15067: Mark NewGRF settings as modified after moving by drag & drop (#15068)
- Fix: Incorrect error message for aqueducts reaching northern map borders (#14974)
- Fix: Standardize wording of GRF/NewGRF (#15059)
- Fix #15046: Crash on loading game due to invalid group parents (#15049)
- Fix: Disable_elrails handling with engines that use both RAIL and ELRL (#15045)
- Fix: [Fluidsynth] Read settings from system and user config files if available (#15044)
- Fix #15039: Name and version can disappear from content list (#15040)
- Fix #15026: Remove incorrect info from base sounds tooltip (#15029)
- Fix: [Script] Improve reporting of invalid GetAPIVersion return (#15015)
- Fix: [Script] Undefined behaviour after calling SwapList during iteration (#14805)
### 15.0 (2026-01-01)
- Fix: Small ufos would loop over vehicles in depots forever (#15008)
- Fix #14982: Can't place buoys under bridges (#15007)
- Fix #15004: Crashes when dropdown is held open during endgame screen (#15006)
- Fix: Further improve town spawning near water (#15002)
- Fix: Use correct 'minutes per year' setting for old savegames (#14995)
- Fix: Rare crash dividing by 0 when drawing a line (#14994)
- Fix #14992: Respect non-stop order setting when adding waypoint orders (#14993)
### 15.0-RC4 (2025-12-26)
- Fix: Incorrect text colour in fund industry window (#14987)
- Fix: Towns failed to find spawn locations near water (#14988)
- Fix: Don't draw bridge deck rail sprites for default bridges (#14985)
- Fix: "(Invalid parameter)" in error message when trying to remove another player's object (#14981)
- Fix #14978: Don't clear water tiles after removing buoys (#14980)
- Fix #14973: Composed strings are incorrect colour (#14976)
- Fix: Badge filter toggles no longer worked (#14972)
- Fix #12465: Click/tooltip alignment of industry chain cargo lines (#14963)
- Fix #14951: Possible incorrect data in industry production graphs (#14962)
- Fix #14958: Crash when opening station window (#14959)
- Fix #14938: Don't allow cacti to die off (#14956)
- Fix: Don't allow joining a company after it was taken over (#14955)
- Fix #14949: Crash when moving station sign in a network game (#14950)
- Fix #14945: Hang when deleting implicit orders during vehicle loading (#14946)
### 15.0-RC3 (2025-12-20)
- Fix #14932: [NewGRF] Increase internal badge index size to avoid overflowing BadgeIDs (#14933)
- Fix: Crash related to object picker recolours in Scenario Editor (#14929)
- Fix #14921: Crash during station autorefit if station doesn't accept current cargo type (#14924)
- Fix #14917: Crash when opening house picker with no houses available (#14920)
- Fix #14916: Duration of error message window could be too short (#14919)
- Fix #14915: Crash due to divide-by-zero of industry probabilities (#14918)
- Fix: Script configs were cleared by intro game (#14910)
- Fix: [NewGRF] Automatically push/pop colours when formatting a sub-string (#14006)
### 15.0-RC2 (2025-12-13)
- Fix #14677: Desync due to using newgame time settings to validate savegame time settings (#14904)
- Fix: Graph label allocated size could be too small (#14901)
- Fix #14891: Minimum sprite zoomlevel could break in some cases showing placeholder sprites instead (#14894)
- Fix #14889: [FluidSynth] Don't try to load a soundfont that doesn't exist (#14890)
- Revert: Dynamic font loading changes removed (#14903)
### 15.0-RC1 (2025-12-07)
- Feature: Automatically load extra fonts for missing glyphs (#13303, #14856)
- Feature: Rivers can end in wetlands if unable to reach sea (#14784, #14846)
- Feature: Signs, waypoint and station names may be moved (#14744)
- Feature: House placer mode to replace existing houses (#14469)
- Feature: Draw infinite water when all borders are water (#13289)
- Add: [NewGRF] Allow badges to be excluded from badge name list (#14818)
- Add: [Script] ScriptTile::IsHouseTile (#14806)
- Add: Game units for height (#14615)
- Add: Show height difference in bridge is too low error message (#14614)
- Add: Include build cost in rail/road dropdowns (#14599)
- Add: Show all railtypes in the build vehicle and engine preview dialogs (#14357)
- Add: [Script] Function to get all rail types of an rail engine (#14357)
- Add: [NewGRF] Train property to set multiple track types for an engine (#14357)
- Add: [Script] Auto-convert ObjectType bool to integer when setting values for items in lists via [] (#14308)
- Change: Ensure generated towns have enough room (#14803)
- Change: Eliminate small seas instead of ending rivers there (#14797)
- Change: Clamp terraform toolbar to main toolbar (#14725)
- Change: Make groups window group list aware of interface scaling (#14679)
- Change: Prefer normal/medium weight font in FontConfig fallback detection (#14672)
- Change: Support interface scaling in network client list buttons (#14659)
- Change: Record and show multiple errors for each NewGRF (#14658)
- Change: Replace the "(City)" identifier in the town directory with the city icon (#14634)
- Change: Determine automatic interface scale by window size (#14627)
- Change: Apply interface scale to window snap distance (#14625)
- Change: Ask for confirmation before deleting a savegame / scenario / heightmap (#14621)
- Change: Add lock penalty to ship pathfinder (#14603)
- Change: Allow bridges over locks & docks (#14595, #14594)
- Change: Removed disable_node_optimization YAPF setting (#14578)
- Change: Provide road and rail overlay sprites for bridge decks (#14557)
- Change: Scale number of towns/industries by amount of land tiles (#10063)
- Fix #14802: Close NewGRF inspection window when overbuilding with default station/waypoint (#14859)
- Fix #14839: Do not set stacked widget height, which might not be shown (#14858)
- Fix: Incorrect background colour in badge configuration list (#14850)
- Fix #14844: Use company colour remap for badges in picker window (#14849)
- Fix: Drop down scrolling broken for mixed-height items (#14840)
- Fix #8062: (Try to) ensure enough room for profit in vehicle group window (#14835)
- Fix #9071: Don't consider tram tracks when growing towns (#14833)
- Fix: Saved default houses had incorrect class and index information (#14812)
- Fix #14756: Invalidate nested focus before widget container is cleared (#14809)
- Fix #14800: Incorrect register processing in GetCustomStationRelocation (#14801)
- Fix #14755: Remove clicked type selection when not visible (#14796)
- Fix: Incorrect parsing of var 6x parameter in NewGRF debug window (#14789)
- Fix: Improve lighthouse spawn conditions (#14785)
- Fix #14777: authorized_key add/remove console commands did not apply to correct list (#14778)
- Fix: Incorrect spacing for badges in dropdown lists (#14768)
- Fix: Unconfigured badge classes should be visible in column 0 by default (#14766)
- Fix #14763: Crash if NewGRF currency separator is not valid (#14764)
- Fix #14701: Company colour remap for sprites in badge filter dropdowns (#14732)
- Fix: Do not pre-fill industry production history for unused production slots (#14730)
- Fix: Depot-related crash when loading old savegames (#14729)
- Fix #14721, #14723: Inconsistent behaviour when skipping signals (#14724)
- Fix: Miscalculated cargo penalty for poor station rating (#14712)
- Fix: Crash when user enters a blank line in the console (#14711)
- Fix: Console command dump_info should not reverse non-ASCII label (#14697)
- Fix: Incorrect parameter order for CmdSetCompanyManagerFace (#14695)
- Fix: Bootstrap ignored default OpenTTD truetype fonts (#14684)
- Fix: League Table layout broken with RTL languages (#14667)
- Fix #14549: Changing interface scale could underflow viewport zoom (#14655)
- Fix: Incorrect row height in network server list (#14653)
- Fix: Doubled beep sounds when clicking toolbar buttons (#14642)
- Fix: Wrong button type for town menu in scenario editor toolbar (#14641)
- Fix #14631: Waypoint customs spec not allocated properly on initial construction (#14633)
- Fix: Variant cycle detection in FinaliseEngineArray (#14629)
- Fix #14620: Use full file path when deleting files (#14623)
- Fix: [Script] Return rail types as list instead of bitmask (#14617)
- Fix #14604: Clearing tiles to build objects did not update town ratings (#14616)
- Fix: Bridge height check for waypoints didn't include axis in layout (#14609)
- Fix #14607: Bridge-over-station discrepancy depending on build order (#14608)
- Fix: Don't add spacing in rail/road type dropdowns if no badges are present (#14598)
- Fix: [Script] Incorrect infrastructure cost for road/tram tiles (#14596)
- Fix #14588: Show error when unable to clone partly-cleared crashed train (#14591)
- Fix #14586: Empty station tile layouts incorrectly substituted with default layouts (#14587)
- Fix #14584: Crash due to drawing non-existent orders of new vehicle (#14585)
- Fix #14572: Incorrect playlist entry was removed if there are duplicates (#14583)
- Fix: Wrong row may be selected in music playlists (#14581)
- Fix #14569: Ensure music playlist window is large enough (#14570)
- Fix #14278: [Script] Memory allocation limit did not work and could result in a crash (#14568)
- Fix: Road stop properties 0x13/0x14 were not skipped properly (#14567)
- Fix #13922: Ensure music track number widget is wide enough for track number (#14566)
- Fix: Badge filters were only applied to trains (#14565)
- Fix: [NewGRF] Industry acceptance/production when not contiguous range from 0 (#14555)
- Fix #14240: Remember previous GUI scale when toggling auto-detect (#14380)
- Remove: Rail type cost from replace vehicle window (#14748)
### 15.0-beta3 (2025-08-31)
- Feature: Identify cities in the main viewport by appending an icon to their names (#14504)
+1 -1
View File
@@ -56,7 +56,7 @@ function(set_options)
option(OPTION_DEDICATED "Build dedicated server only (no GUI)" OFF)
option(OPTION_INSTALL_FHS "Install with Filesystem Hierarchy Standard folders" ${DEFAULT_OPTION_INSTALL_FHS})
option(OPTION_USE_ASSERTS "Use assertions; leave enabled for nightlies, betas, and RCs" ON)
option(OPTION_USE_ASSERTS "Use assertions; leave enabled for nightlies, betas, and RCs" OFF)
option(OPTION_USE_NSIS "Use NSIS to create windows installer; enable only for stable releases" OFF)
option(OPTION_TOOLS_ONLY "Build only tools target" OFF)
option(OPTION_DOCS_ONLY "Build only docs target" OFF)
+3
View File
@@ -135,6 +135,9 @@ if(GENERATE_OTTDREV)
message(STATUS "Generating .ottdrev")
file(WRITE ${CMAKE_SOURCE_DIR}/.ottdrev "${REV_VERSION}\t${REV_ISODATE}\t${REV_MODIFIED}\t${REV_HASH}\t${REV_ISTAG}\t${REV_ISSTABLETAG}\n")
else()
if(REV_ISSTABLETAG AND NOT (REV_VERSION STREQUAL "${REV_MAJOR}.${REV_MINOR}"))
message(FATAL_ERROR "Tag (${REV_VERSION}) doesn't match internal version (${REV_MAJOR}.${REV_MINOR})")
endif()
message(STATUS "Generating rev.cpp")
configure_file("${CMAKE_SOURCE_DIR}/src/rev.cpp.in"
"${FIND_VERSION_BINARY_DIR}/rev.cpp")
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
// This is the DOS 2CC translation map which OpenTTD translates if needed upon loading.
//
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Airport previews"
-1 * 0 05 16 09
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Extra airport graphics"
-1 * 3 05 10 0F
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Aqueduct graphics by Jonathan G. Rennison / PaulC"
// temperate aqueduct
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Autorail graphics"
-1 * 3 05 13 37
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Bridge decks"
-1 * 0 07 83 01 \7= 03 19
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Canal graphics by George"
-1 * 3 05 08 41
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Font characters by PaulC, Bilbo and Jasper Vries"
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Electrified rail by Michael Blunck"
-1 * 3 05 05 30
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Foundations. Non-halftile ones by Marcin Grzegorczyk"
-1 * 6 07 83 01 \7! 00 5B
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Monospaced characters (Liberation Mono)"
-1 * 0 12 01 03 60 20 00
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "One way road graphics"
-1 * 3 05 09 12
+1 -1
View File
@@ -5,7 +5,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
// Sources for OpenTTD's required base graphics.
// Checks whether the correct version of OpenTTD is used before
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "OpenTTD GUI graphics"
-1 * 3 05 15 \b 192 // OPENTTD_SPRITE_COUNT
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Overlay rocks"
-1 * 3 05 1A 5F
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "All black palette"
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Road waypoints"
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Road stop graphics"
-1 * 3 05 11 08
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Pre-signal, semaphore, and PBS graphics by Michael Blunck"
-1 * 3 05 04 F0
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Sloped tracks"
-1 * 3 05 0F 0C
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Tram track graphics by PikkaBird"
-1 * 3 05 0B 77
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 63 0C "Tunnel portal overlays for railtypes by Snail (Jacopo Coletto)"
Binary file not shown.
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Climate specific airport sprite by PaulC"
-1 * 0 07 83 01 \7! 03 02
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Extra canal graphics by PaulC"
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Font characters by PaulC, Bilbo and Jasper Vries"
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Fix bugs in the original graphics. By Addi and PaulC."
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Fix alignment of button icons."
+1 -1
View File
@@ -5,7 +5,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
// Sources for extra graphics to complement the original graphics.
// Checks whether the correct version of OpenTTD is used before
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Arctic river graphics by andythenorth (Andrew Parkhouse)"
-1 * 4 01 05 01 3C
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Rapid graphics"
-1 * 4 01 05 01 04
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Temperate river graphics by andythenorth (Andrew Parkhouse)"
-1 * 4 01 05 01 3C
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Toyland river graphics by zephyris (Richard Wheeler)"
-1 * 4 01 05 01 3C
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Toyland rapid graphics by zephyris (Richard Wheeler)"
-1 * 4 01 05 01 04
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 0 0C "Tropic river graphics by andythenorth (Andrew Parkhouse)"
-1 * 4 01 05 01 3C
+1 -1
View File
@@ -1,7 +1,7 @@
// This file is part of OpenTTD.
// OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
// OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
// See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
//
-1 * 6 07 83 01 \7! 00 0C
@@ -63,6 +63,6 @@
<Resource Language="cy-gb" />
</Resources>
<Dependencies>
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17134.0" MaxVersionTested="10.0.18363.0" />
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17701.0" MaxVersionTested="10.0.18363.0" />
</Dependencies>
</Package>
@@ -7,7 +7,7 @@
<Logo>Assets\StoreLogo.png</Logo>
</Properties>
<Dependencies>
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17134.0" MaxVersionTested="10.0.18363.0" />
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17701.0" MaxVersionTested="10.0.18363.0" />
</Dependencies>
<Resources>
<Resource Language="en-gb" />
+11 -2
View File
@@ -519,6 +519,7 @@ bool _sort_compare(HSQUIRRELVM v,SQObjectPtr &a,SQObjectPtr &b,SQInteger func,SQ
bool _hsort_sift_down(HSQUIRRELVM v,SQArray *arr, SQInteger root, SQInteger bottom, SQInteger func)
{
SQInteger initial_size = arr->Size();
SQInteger maxChild;
SQInteger done = 0;
SQInteger ret;
@@ -531,6 +532,10 @@ bool _hsort_sift_down(HSQUIRRELVM v,SQArray *arr, SQInteger root, SQInteger bott
else {
if(!_sort_compare(v,arr->_values[root2],arr->_values[root2 + 1],func,ret))
return false;
if (initial_size != arr->Size()) {
v->Raise_Error("compare function modified array");
return false;
}
if (ret > 0) {
maxChild = root2;
}
@@ -542,6 +547,10 @@ bool _hsort_sift_down(HSQUIRRELVM v,SQArray *arr, SQInteger root, SQInteger bott
if(!_sort_compare(v,arr->_values[root],arr->_values[maxChild],func,ret))
return false;
if (initial_size != arr->Size()) {
v->Raise_Error("compare function modified array");
return false;
}
if (ret < 0) {
if (root == maxChild) {
v->Raise_Error("inconsistent compare function");
@@ -596,7 +605,7 @@ static SQInteger array_slice(HSQUIRRELVM v)
if(sidx < 0)sidx = alen + sidx;
if(eidx < 0)eidx = alen + eidx;
if(eidx < sidx)return sq_throwerror(v,"wrong indexes");
if(eidx > alen)return sq_throwerror(v,"slice out of range");
if(sidx < 0 || eidx > alen) return sq_throwerror(v,"slice out of range");
SQArray *arr=SQArray::Create(_ss(v),eidx-sidx);
SQObjectPtr t;
SQInteger count=0;
@@ -637,7 +646,7 @@ static SQInteger string_slice(HSQUIRRELVM v)
if(sidx < 0)sidx = slen + sidx;
if(eidx < 0)eidx = slen + eidx;
if(eidx < sidx) return sq_throwerror(v,"wrong indexes");
if(eidx > slen) return sq_throwerror(v,"slice out of range");
if(sidx < 0 || eidx > slen) return sq_throwerror(v,"slice out of range");
v->Push(SQString::Create(_ss(v),_stringval(o).substr(sidx,eidx-sidx)));
return 1;
}
+2 -2
View File
@@ -1285,8 +1285,8 @@ bool SQVM::FallBackGet(const SQObjectPtr &self,const SQObjectPtr &key,SQObjectPt
if(sq_isnumeric(key)){
SQInteger n=tointeger(key);
std::string_view str = _stringval(self);
if(std::abs(n) < static_cast<SQInteger>(str.size())){
if(n<0)n=str.size()+n;
if (n < 0) n = str.size() + n;
if (n >= 0 && n < static_cast<SQInteger>(str.size())) {
dest=SQInteger(str[n]);
return true;
}
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/** @file ai.hpp Base functions for all AIs. */
+2 -2
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/** @file ai_config.cpp Implementation of AIConfig. */
@@ -21,7 +21,7 @@
{
assert(company < MAX_COMPANIES);
if (_game_mode == GM_MENU) source = SSS_FORCE_NEWGAME;
if (source == SSS_DEFAULT && _game_mode == GM_MENU) source = SSS_FORCE_NEWGAME;
if (source == SSS_DEFAULT) {
Company *c = Company::GetIfValid(company);
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/** @file ai_config.hpp AIConfig stores the configuration settings of every AI. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/** @file ai_core.cpp Implementation of AI. */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/** @file ai_gui.cpp %Window for configuring the AIs */
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/** @file ai_gui.hpp %Window for configuring the AIs */
+2 -2
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/** @file ai_info.cpp Implementation of AIInfo and AILibrary */
@@ -80,7 +80,7 @@ template <> SQInteger PushClassName<AIInfo, ScriptType::AI>(HSQUIRRELVM vm) { sq
if (info->engine->MethodExists(info->SQ_instance, "GetAPIVersion")) {
if (!info->engine->CallStringMethod(info->SQ_instance, "GetAPIVersion", &info->api_version, MAX_GET_OPS)) return SQ_ERROR;
if (!CheckAPIVersion(info->api_version)) {
Debug(script, 1, "Loading info.nut from ({}.{}): GetAPIVersion returned invalid version", info->GetName(), info->GetVersion());
sq_throwerror(vm, fmt::format("Loading info.nut from ({}.{}): GetAPIVersion returned invalid version", info->GetName(), info->GetVersion()));
return SQ_ERROR;
}
} else {
+1 -1
View File
@@ -2,7 +2,7 @@
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
*/
/** @file ai_info.hpp AIInfo keeps track of all information of an AI, like Author, Description, ... */

Some files were not shown because too many files have changed in this diff Show More