summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-12-15Update: Translations from eintstranslators
korean: 29 changes by telk5093 finnish: 8 changes by hpiirai slovak: 6 changes by FuryPapaya french: 6 changes by glx22
2020-12-15Fix: [Git] ignore any build folder you might havePatric Stout
Instructions now suggest using build-host, etc. It is easier to just ignore all build* folders.
2020-12-15Add: [Actions] preview workflow, where PRs can be reviewed in the browserPatric Stout
When a developer attaches the "preview" label, a build is created and published on https://preview.openttd.org/. After that, new pushes to the PR are automatically build (as long as the "preview" label exists). If a non-developer attaches the "preview" label, it will be removed.
2020-12-15Fix: workarounds for two emscripten bugs in the network stackPatric Stout
2020-12-15Add: [Emscripten] use "relative mouse mode" with SDL2Patric Stout
This mode doesn't wrap the mouse constantly, but requests SDL to lock the mouse pointer. This is needed, as with Emscripten you are not allowed to change the mouse poisition (only to lock it into place).
2020-12-15Add: support for emscripten (play-OpenTTD-in-the-browser)Patric Stout
Emscripten compiles to WASM, which can be loaded via HTML / JavaScript. This allows you to play OpenTTD inside a browser. Co-authored-by: milek7 <me@milek7.pl>
2020-12-15Codechange: unroll the SDL2 main loopPatric Stout
This commit prepares for the next commit, as Emscripten needs to have a way to trigger a single iteration of the main loop. To keep the real changes more clear, this commit only unrolls the loop, and makes no changes to the logic itself.
2020-12-15Change: set the default setting for autorenew to on for new games (#8352)Tyler Trahan
2020-12-14Update: Translations from eintstranslators
french: 1 change by glx22
2020-12-15Feature: new velocity unit "tiles/day" (#8278)jostephd
2020-12-15Codechange: Make use of the improved C++17 emplace_back function.Michael Lutz
2020-12-14Codechange: Apple LLVM fails to implement std::optional::value() also on ↵frosch
pretty recent version. Use operator* instead.
2020-12-14Cleanup: use std::optional instead of custom implementation.frosch
2020-12-14Codechange: switch to C++17 on all platforms.frosch
2020-12-14Add: new economy "frozen" that stops production changes and industry ↵Pavel Stupnikov
closures (#8282)
2020-12-14Codechange: use \u to indicate unicode chars in strings (#8379)Patric Stout
With \x, we sometimes had to do the "" trick, as the length is not predefined. With C++11 bringing \u to the specs, which has a preset length, we no longer need the "" trick. We set the strings to u8, to ensure all compilers use UTF-8 encoding for the \u characters. This was triggered by newer CLangs, which start to warn if you use "" in the middle of a string, wondering if that was your intention. It is a good question. And this is our answer :)
2020-12-13Feature: Switch to bzip2 compression for DMG files (supported by OS X 10.4+)Owen Rudge
2020-12-13Add: [CMake] Option to only build tools/docsglx22
2020-12-13Fix: set SP_WORKING_DIR earlier with '-c'Patric Stout
On Windows, relative folders don't work so well. So we need to lookup the full path. This is best done in DetermineBasePaths() and as a bonus that only sets SP_WORKING_DIR once.
2020-12-13Fix: [CMake, MSVC] Don't copy regression exe's into a subfolder as they need ↵Michael Lutz
have their lang files next to them.
2020-12-13Fix: [Actions] cleanup ci-build workflow to be up-to-date (#8375)Patric Stout
Also, while at it, make it more like the upcoming release-workflow, so they look a lot more similar. Functional it should be the same, except that Windows should now also output when a test fails.
2020-12-13Fix 8bef06a2: don't use "extern" when you want to implement a global (#8373)Patric Stout
2020-12-13Fix: change the working-dir searchpath when using '-c'Patric Stout
Basically, with '-c' you now create a sandbox. It will still use your personal-dir and global-dir to find files you installed there, but all new files are stored with a base folder identical to the folder the configuration is in. This is a bit of an old bug, that we many have tried to solve in various of different ways. The code has grown sufficiently complex that it is hard to see what consequences of actions are. This is in my opinion the most harmless solution, while increasing the usefulness of the '-c' flag. In essence, the problem was that empty folders were always created in the directory where the configuration was, but as that directory wasn't added to any searchpath, files weren't stored there, unless by accident it was a folder already on the searchpath. For example, if you do './openttd -c local.cfg', it did work as expected. But in the more generic variant, it did not. With this patch, you can run './openttd -c /new/folder/local.cfg', and it will create and prepare that folder to receive new files. 'content_download' is also stored in the directory the configuration is in; this was already the case. Important to note that there is only one search-path for 'content_download'. In other words, when using '-c', it will not look in '~/.openttd' inside the 'content_download' folder.
2020-12-13Codechange: to create or not to create a folder, that is the questionPatric Stout
This was just weird. With XDG _personal_dir was created already, but later on it was checked if it was different from config_dir, and the creation was skipped. All this checking and validation makes my head spin .. let's make it a bit more simple.
2020-12-13Add: save openttd.cfg immediately on changing a setting (#8358)Patric Stout
Formally it was only done on exit. This means that if it crashes changes in settings were not stored. This is often rather frustrating. Additionally, targets (like emscripten) where people are unlike to use "Exit Game", will never see their configuration stored. The drawback is that on every setting change there is some minor I/O of writing the ini file to disk again.
2020-12-12Update: Translations from eintstranslators
finnish: 1 change by hpiirai
2020-12-12Add: [CMake] targets to generate documentationglx22
2020-12-10Update: Translations from eintstranslators
slovak: 2 changes by FuryPapaya
2020-12-10Fix: Prevent infinite recursion in commit checkerglx22
2020-12-09Update: Translations from eintstranslators
korean: 1 change by telk5093 french: 1 change by glx22
2020-12-09Update: Translations from eintstranslators
slovak: 30 changes by FuryPapaya lithuanian: 37 changes by devastatorius
2020-12-09Change: Don't display OS name when the user is exiting the gameOwen Rudge
2020-12-08Fix: useless warning with -snull and no BaseSounds available (#8361)Patric Stout
If I explicitly tell the system I do not want sound, I still get presented a nice message I do not have any BaseSounds available on my system, and that I should download one to enjoy sound. Well, let me tell you, with "-snull" that is really really not going to help. So please, be quiet, and let me enjoy the game without "boooooo" and "DING DING DING". Thank you.
2020-12-08Fix: FreeType is still required on macOSOwen Rudge
2020-12-07Remove: console command "content select all" (#8363)Patric Stout
The intention of this function was that you could download everything after a filter was applied; but this never really took off. Instead, a select few people used this functionality to download every available package on BaNaNaS. This is not in the spirit of this service. Additionally, these few people were good for 70% of the consumed bandwidth of BaNaNaS.
2020-12-06Change: [NewGRF] Use aircraft property 12 also for helicopters.frosch
Due to keeping compatibility we can only do this for NewGRF-defined sound effects.
2020-12-06Fix: Compile warnings when asserts are disabledCharles Pigott
2020-12-06Change: don't encourage the use of LZOPatric Stout
LZO was used before the first version we track in our version control system, which dates back to Aug 2004. Somewhere before that time a few savegames / scenarios exist which use LZO. No other savegame / scenario does since then. Let's not encourage people to install something that ancient. There are no scenarios on BaNaNaS that require LZO.
2020-12-06Codechange: don't do work GetVariableAddress() is already doingPatric Stout
2020-12-06Fix: do not add an offset to a nullptrPatric Stout
This is, by specs, undefined behaviour. See https://reviews.llvm.org/D67122 In cases where this is done, optimizations done by LLVM can generate code that causes crashes. GetVariableAddress() had two (legit) ways this could happen: - For SaveLoad set to global - For SaveLoad set to SLE_VAR_NULL, where sld->address is always a nullptr, and object could or could not be a nullptr.
2020-12-06Fix 63ccb36ef3: Crash trying to load TTO/TTD savegames. (#8356)Michael Lutz
2020-12-05Fix a49fdb7ebb: bootstrap crash when trying to load new baseset (#8353)Patric Stout
Using nullptr as "name" crashes on "name.empty()". Use an empty string instead.
2020-12-04Fix: [CMake] cross-compiling requires native toolsglx22
2020-12-02Fix: [NoAI] don't notify caught exceptionsRasmus Jonsson
2020-12-02Fix: SpellingTocho Tochev
2020-11-28Update: Translations from eintstranslators
norwegian (bokmal): 8 changes by buzzCraft lithuanian: 5 changes by devastatorius
2020-11-26Fix: [CMake] Don't detect XAudio2 if defines are missingCharles Pigott
2020-11-26Codechange: Suppress compiler warning about signed/unsigned printf valuesCharles Pigott
2020-11-26Update: Translations from eintstranslators
norwegian (bokmal): 9 changes by buzzCraft
2020-11-25Update: Translations from eintstranslators
norwegian (bokmal): 10 changes by buzzCraft