Commit Graph

18666 Commits (34215f7faa2de08d767b4f6945443a8f3175acbf)

Author SHA1 Message Date
rubidium42 5afb090082 Change: [Network] Remove now defunct savegame transfer packet limiter 3 years ago
Rubidium a3c9eca722 Change: use 32 KiB packets to send requests to the content server 3 years ago
Rubidium 21f58ab437 Change: use 32 KiB packets to transfer the savegame 3 years ago
Rubidium d6000c2ec5 Codechange: differentiate between UDP, TCP and compatibility MTU values 3 years ago
Rubidium 8b302761d4 Codechange: allow different limits in packet sizes 3 years ago
Charles Pigott 97288bc286
Fix #9109: Malformed STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD in Japanese lang (#9110) 3 years ago
PeterN 224625942c
Fix: Count engine details text in lines rather than pixels. (#9107)
This allows the details panel to scale correctly for different zoom levels.
3 years ago
translators b721787c7f Update: Translations from eints
norwegian (bokmal): 4 changes by Anolitt
spanish (mexican): 3 changes by absay
japanese: 60 changes by scabtert, 38 changes by Azusa257
english (us): 3 changes by 2TallTyler
korean: 3 changes by telk5093
russian: 4 changes by Ln-Wolf
finnish: 3 changes by hpiirai
slovak: 20 changes by FuryPapaya
3 years ago
rubidium42 65818db1f4 Fix: [Network] Prevent stalling save game transfer when compression is slow 3 years ago
PeterN f158957a4e
Fix: Use width of tiny arrow string instead of scaled pixels in ship/aircraft list. (#9102) 3 years ago
2TallTyler 9d6ff1c780 Fix: Missing 'Town names:' colon in map gen GUI 3 years ago
Michael Lutz f4d5c8d99e
Fix: [OpenGL] Main loop expects to start with the video buffer unmapped. (#9100) 3 years ago
PeterN fbc232569c
Fix #9097: Upper 16 bits of cargo base payment rate were discarded. (#9098)
NewGRF spec says that base payment rate is 32 bits, but it was loaded into a 16 bit variable. This value is loaded into Money variable after inflation is applied.
3 years ago
Patric Stout fda1a590f6 Change: use icons to indicate you/host in Online Players GUI 3 years ago
Patric Stout a924b2ff81 Add: move "New Company" inside the Online Players GUI 3 years ago
Patric Stout c2e116a3d3 Change: track hover position on Online Players GUI
Especially if there are many players online, trying to chat with
the right one can be a visual challenge. This can be solved by
highlighting the row you are on. This visual cue is often enough
for humans to find the right row.
3 years ago
Patric Stout 54f69deb0c Add: ask for confirmation on admin actions in network games 3 years ago
Patric Stout ff708c2c65 Add: admin menu for companies in multiplayer games
You can now easily do:
- a password reset (unlock)
- remove an empty company (reset company)
3 years ago
Patric Stout 5266359424 Feature: rework in-game Online Players GUI
The GUI now more clearly shows some basic information about the
server you joined, your client name (and the ability to change it),
and what players are in which company.

It also contains useful buttons to press to join companies, chat
with other people, and for admins to kick/ban people.

Additionally, renamed "advertised" to "visibility"; this has to
do with future additions, but also because it is more clear in
wording.
3 years ago
Rubidium 75386873b7 Codechange: use std::vector instead of a fixed size array for Packets 3 years ago
Rubidium 450178d780 Codechange: add accessor for the packet type to Packet and make the internal state of Packet private 3 years ago
Rubidium 3abefdf561 Codechange: remove public access to the next pointer in Packet 3 years ago
Rubidium f71fb0f54a Codechange: encapsulate reading the size of a Packet 3 years ago
Rubidium 6f161f6559 Codechange: encapsulate the logic about how many bytes can be sent from a buffer in to a Packet 3 years ago
Rubidium 38d15fc9b7 Codechange: move the logic shrinking of the packets into the Packet itself 3 years ago
Rubidium d4f027c03b Codechange: encapsulate writing data from Packets into sockets/files/buffers to prevent packet state modifications outside of the Packet 3 years ago
Rubidium 98aa561cf7 Codechange: encapsulate reading data from sockets into Packets to prevent packet state modifications outside of the Packet 3 years ago
Rubidium a2051bad50 Codechange: move logic whether there is enough space in a packet to write data into the Packet 3 years ago
Rubidium c545cc9d70 Codechange: move more logic about packet size validity and reading into Packet 3 years ago
translators 470d8b6637 Update: Translations from eints
korean: 2 changes by telk5093
russian: 3 changes by Ln-Wolf
finnish: 1 change by hpiirai
spanish: 1 change by MontyMontana
polish: 1 change by pAter-exe
hindi: 62 changes by ss141309
3 years ago
Leif Linse 3b9b177b36
Update: Developer credits (#9091) 3 years ago
Loïc Guilloux 888389c28d
Codechange: Use std::string in console commands/aliases registration, and std::map instead our sorted linked list (#9057)
* Codechange: Use std::string in console commands and aliases registration

* Codechange: Use std::map to register console commands

* Codechange: Use std::map to register console aliases

* Cleanup: Remove now unused function
3 years ago
rubidium42 2999d301ad Add: [Network] Validate the client name when receiving one from the server
This so names from other clients are known valid in the client as well, instead allowing some compromised/bad server to potentially crash clients upon certain expectations.
3 years ago
rubidium42 e1cebe0ea0 Add: [Network] Validate the client name server side, so no clients with invalid names can actually join 3 years ago
rubidium42 2e0f3799a8 Change: [Network] Prevent invalid client names being sent to the server when changing it using the console/settings 3 years ago
rubidium42 bfb0ab3e2f Feature: [Network] Ensure players fill in a name instead of defaulting to "Player" 3 years ago
rubidium42 5202869f0f Add: String functionality to trim spaces from C-style strings 3 years ago
rubidium42 b14f412117 Codechange: [Network] Introduce function to validate the client name 3 years ago
translators dc0efd5f2e Update: Translations from eints
spanish (mexican): 1 change by absay
english (us): 1 change by 2TallTyler
3 years ago
frosch 57b4cc64b7 Add: Hindi translation. 3 years ago
frosch 8dda2c2c17 Change: move all 'unstable' language into 'stable'. 3 years ago
translators c52a1154ed Update: Translations from eints
dutch: 6 changes by Afoklala
3 years ago
peter1138 a05bc04b63 Feature: Per-group wagon removal flag. 3 years ago
peter1138 c56fce70b4 Codechange: Replace CMD_SET_GROUP_REPLACE_PROTECTION with generic CMD_SET_GROUP_FLAG. 3 years ago
peter1138 27a956ba62 Codechange: Replace Group::replace_protection with Group::flags 3 years ago
frosch 37222c3fa2 Change: treat languages as finished, if translations are 75% completed.
Unfinished translations are not auto-picked from the locale.
In release builds, unfinished translations are not offered in the GUI.
Unfinished translations are available in non-release builds, or by editing openttd.cfg.
3 years ago
frosch a9740cef82 Add: show completion progress of languages in the language dropdown for non-release builds. 3 years ago
Michael Lutz d1dd997f07 Change: [Win32] Limit the OpenGL video driver to OpenGL 3.2 or newer on Windows. 3 years ago
Michael Lutz ef80baf75c Codechange: [Win32] Try getting an OpenGL 4.5 context first before aiming at 3.2. 3 years ago
PeterN 9fa38f5d0f
Codechange: Scale rating minigraphs on station window list. (#9075)
Minigraphs did not adjust size to accomodate large text, either by font size or font zoom, leading to cropped labels.
Minigraphs and spacing are now scaled by font zoom, as this seems to behave better than gui zoom in this instance.
3 years ago
Peter Nelson 994ffaa382 Codechange: Use alignment feature in company finances window. 3 years ago
Peter Nelson c361246bec Codechange: Replace face window custom drawing with new widget features. 3 years ago
Peter Nelson 9aa64b7885 Codechange: Use new widget features on chat message box. 3 years ago
Peter Nelson 51b4bd6c38 Codechange: Add widget text colour override property. 3 years ago
Peter Nelson 636e37d183 Codechange: Add internal widget alignment property, along with widget part. 3 years ago
Peter Nelson 2a0365b3d9 Cleanup: Remove unnecessary parameter of GetScrolledRowFromWidget()
Line height defaults to the resize height of the relevant widget, which is
set in all cases. Therefore it is not necessary to specify this value every time.

Additionally fixes scrolled padding for the framerate window.
3 years ago
Michael Lutz e53313391a Fix: [OpenGL] Check maximum supported texture size against screen resolution. 3 years ago
Peter Nelson 5ff15443e9 Cleanup: Replace single-use Pair struct with std::pair.
This struct is defined in geometry_type but not used by any geometry-related
code, only for subsidy code where both parameters are cast from int to
NewsReferenceType.
3 years ago
Rubidium bf4fe19a66 Codechange: merge duplicated logic to scroll in lists by key into a single function 3 years ago
translators b3495f1a13 Update: Translations from eints
spanish (mexican): 2 changes by absay
3 years ago
Loïc Guilloux d4f0b6f434
Fix: [CMake] Auto-fill version details in rev.cpp and ottres.rc (#9066) 3 years ago
translators fe3cd185d7 Update: Translations from eints 3 years ago
Patric Stout ce6a744278 Doc: server name doesn't need to be advertised to be valid
Strictly seen the comment is true, as it says 'e.g.', but it is
misleading. The server name is just that: the name of the server
as configured. No need to mention advertising.
3 years ago
Patric Stout cd757d53ca Codechange: remove always-empty "address" from NetworkContentSocketHandler
When ever you saw this debug lines (which you never should), they
showed an empty address. It is also not very useful to have, as it
always points to a known server anyway.
3 years ago
Patric Stout 31897eaa7d Codechange: split ParseConnectionString into two functions
One also looks for a company, the other doesn't. There were more
uses of the latter than the first, leaving very weird code all
over the place.
3 years ago
Patric Stout 05612d60ae Remove: "language" field from server/client
The original idea was that people could find a server they could
talk in their native language on. This isn't really used in that
way. There are several reasons for removing this:

- the client also sends his "language" to the server, but nothing
  is doing anything with this.
- flags are a bad way to represent languages, and over the years
  we had several (rightfully) complaints about this.
- most servers have their language set to "All", and prefix the
  servername with the language it is about. This is a much more
  efficient way to do the same.

All in all, this feature should go back to the drawing board.
Maybe it could work in another form, but this form is not it.
3 years ago
Patric Stout f4bd3fff5e Remove: "map_name" from server announcements / listing
The idea back in the days was nice, but it never resulted in
anything useful. Most servers either read "(loaded game)" or
"Random Map", neither being useful. It was meant for heightmaps,
so you could find a server that was using a specific one .. but
there are many things wrong with that idea. Mostly, servers tend
to save and load savegames from time to time, after which the
original heightmap used was lost.

All in all, removing map_name all together is just better.
3 years ago
translators 17d00537a1 Update: Translations from eints
chinese (simplified): 52 changes by clzls
4 years ago
translators f757d07bb3 Update: Translations from eints
swedish: 3 changes by DonaldDuck313
spanish: 39 changes by MontyMontana
4 years ago
dP 7c7c6cde03 Fix: Do not unlock railtypes when enabling wagons with GameScript 4 years ago
Rubidium e5fedcd6da Fix #6322: [Script] Try to let the script die when no memory can be allocated instead of crashing the whole game 4 years ago
Rubidium 4400bbfa96 Change: [Script] Let Script_FatalError use std::string instead of const char * 4 years ago
Peter Nelson 3248a6c12b Fix #9042: Make multiplayer server list height auto-fill window.
#9042 did not fix all combinations of scaling options. This additional
change makes the server list automatically fill available height.
4 years ago
PeterN 195cf31cb9
Fix: Inconsistent button sizing on AI/GS setting window depending on scale settings. (#9044) 4 years ago
Milek7 aade177d79
Fix: Corrupted savegame could cause heap corruption by writing outside link graph edge matrix. (#9046) 4 years ago
Milek7 da55286c2c
Fix: Corrupted savegame could crash the game by providing invalid gamelog enums. (#9045) 4 years ago
PeterN 8e539ce293
Change: Improve layout and spacing of vehicle group widgets. (#9041)
Existing layout included a blank widget above the group list to align with the vehicle list, however since then an additional sort-by row was added.
Group list size tweaks to match normal row size (at least with normal gui and text size.)
Removed reduction of 2 rows in the group list <- main culprit of odd sizing.
Removed fill attribute on buttons which gave strange sizes, and put it on the group info widget instead.
Tweaked various soft-padding values to line up (centreing text with a 1px offset does not make centred text.)
4 years ago
Rubidium 44d1b964bf Fix #7513: recursive array/class/table release caused stack overflow 4 years ago
Rubidium 47a99bb676 Fix #7513: recursive garbage collection caused stack overflow 4 years ago
translators 6c49ae9cd7 Update: Translations from eints
chinese (simplified): 3 changes by clzls
spanish: 1 change by MontyMontana
polish: 6 changes by Milek7
4 years ago
Peter Nelson cb9f56df0c Feature: Show previous chat history when the chat message box is open 4 years ago
Peter Nelson fbef63822c Codechange: Use std::deque for chat history instead of fixed array 4 years ago
Peter Nelson 837994034d Fix: Sizing of Multiplayer server list incorrect when GUI zoom doesn't match Font zoom.
The server information panel was scaled by GUI scale, which could result in a panel that is longer than the server list. This height difference is then maintained when the window is resized to fill the screen.
Instead, specify the minimum size by number of text lines and (summed total) padding.
4 years ago
translators a4db7c844d Update: Translations from eints
korean: 6 changes by telk5093
portuguese (brazilian): 2 changes by Greavez
4 years ago
translators 010d977b16 Update: Translations from eints
hungarian: 5 changes by nemesbala
catalan: 2 changes by J0anJosep
tamil: 3 changes by Saran-S-Menon
4 years ago
translators 3e0a16c027 Update: Translations from eints
romanian: 57 changes by kneekoo
russian: 3 changes by Ln-Wolf
spanish: 3 changes by MontyMontana
portuguese: 7 changes by azulcosta
4 years ago
Milek7 4cd9e0f41b Fix: Add virtual destructor to link graph Path.
Classes derived from Path were freed through base class pointer, but no virtual destructor was present.
4 years ago
Michael Lutz 433602b072 Fix #9028: [OpenGL] Clear cursor cache on destroying the OpenGL backend. 4 years ago
Rubidium 468b1c6c5d Fix: [win32] buffer_locked state not initialised, causing _screen.dst_ptr to be potentially not set 4 years ago
Rubidium 8562395413 Fix: [Video] fast forward boolean states not initialised, potentially causing unstoppable fast forward 4 years ago
Rubidium 64e8305874 Fix: [SDL] buffer_locked state not initialised, causing _screen.dst_ptr to be potentially not set 4 years ago
Rubidium d2fe8c2842 Change: warn the user about the resolving of an address being extra very slow 4 years ago
Rubidium 7597740bff Fix: split the UDP blocking of sockets to only the socket involved, and when another thread is busy do not attempt to process the packets of that socket 4 years ago
Rubidium ca6b9ad8b0 Change: move some things only relevant to UDP from network.cpp to network_udp.cpp 4 years ago
rubidium42 c4bccd4f70
Fix #8874: show a warning when a NewGRF scan is requested multiple times from the console (#9022) 4 years ago
translators e722ea89f0 Update: Translations from eints
norwegian (bokmal): 2 changes by Anolitt
english (us): 2 changes by 2TallTyler
korean: 3 changes by telk5093
german: 2 changes by danidoedel
romanian: 35 changes by kneekoo
finnish: 2 changes by hpiirai
spanish: 4 changes by MontyMontana
french: 3 changes by glx22
portuguese: 4 changes by azulcosta
4 years ago
translators e5b960eaeb Update: Translations from eints
korean: 23 changes by telk5093
romanian: 1 change by kneekoo
russian: 1 change by Ln-Wolf
french: 1 change by glx22
4 years ago
Wim Leflere 9aebfca083
Fix: clang-cl build (#9018)
Remove macro redefinitions
Add final and fallthrough attributes for clang-cl
4 years ago
PeterN 31c5b8fe0f
Fix: Invalidate cached vehicle colourmaps when changing liveries setting. (#9006) 4 years ago
Michael Lutz 5644c00482
Fix: Check for a validly mapped OpenGL screen buffer during driver init. (#9007) 4 years ago
Patric Stout d50b934bb4 Change: reworked how the Game Option display options are drawn
"Hardware acceleration" was not aligned with its checkbox. So instead
of drawing the labels left and the options right, now draw settings
one by one with a spacer between label and option to get the right
spacing.

Also, use SetPIP instead of repeating a SetPadding for all but
last element.
4 years ago
Patric Stout f0f2073006 Feature: allow a toggle to enable/disable vsync
Vsync should be off by default, as for most players it will be
better to play without vsync. Exception exist, mainly people who
play in fullscreen mode.
4 years ago
PeterN 56f982fa7f
Fix #9015: Don't set free space value if not requested. (#9016) 4 years ago
rubidium42 df045b92ea
Fix #9008: Validate starting year given on the command line. (#9014)
An invalid starting year causes all sorts of weird behaviour and crashes in map generation.

Now just set the appropriate setting via IConsoleSetSetting so the validation
and, if needed, clamping is performed on the starting year value.
4 years ago
TELK fdc8230dfa
Cleanup: Fix comment for only one form (#9012) 4 years ago
Peter Nelson f9460c0c8b Fix #8981: Don't attempt to re-reserve path if already entering/entered depot. 4 years ago
Peter Nelson 59b6e46bce Fix: Adjust scrolling interval of credits to account for text line height 4 years ago
Jonathan G Rennison 39b7ef31f8 Fix: Data races on cursor state in OpenGL backends 4 years ago
Jonathan G Rennison fbd0a2e65a Fix: Thread unsafe use of sprite cache in OpenGLBackend::DrawMouseCursor
See also: #8870
See also: #8977
4 years ago
frosch c6781cbd44
Fix d4c3d01d: add plural form 14 to strgen. (#8999) 4 years ago
translators 0e01a7a431 Update: Translations from eints 4 years ago
Nicolae Crefelean d4c3d01d07
Add: new plural form for Romanian translation (#8936) 4 years ago
translators 5a14bf3a6c Update: Translations from eints
korean: 1 change by telk5093
spanish: 1 change by MontyMontana
4 years ago
Charles Pigott c506263197
Fix #8956: Industry disaster news messages showed the wrong location (#8992) 4 years ago
Didac Perez Parera 47c0403320
Change: do not disable NewGRF window apply button if dev tools are enabled (#8975)
enabled
4 years ago
Niels Martin Hansen c800dcaff8 Fix: [Win32] Font glyphs of certain widths broke
Font glyphs between 33 and 39 pixels wide, in the Win32 font system, used wrong alignment and caused glyphs to appear broken.
When in the 33 to 39 pixel range, glyphs without AA were rounded down to 32 pixel pitch, instead of up to 64 pixel pitch.
4 years ago
Didac Perez Parera 0cb99c5523
Codechange: nullptr deletion in DeleteWindowById (#8941) 4 years ago
Loïc Guilloux c64b0946e8
Fix e0561dbde: [MinGW] use ofstring(wchar_t*) as ofstring(wstring) doesn't exist (#8985) 4 years ago
Patric Stout ff6924f122
Fix 70bc55cfd6e: snow line height was set while calculating desert line (#8989)
Seems I liked copy/pasting just a tiny bit too much.
4 years ago
translators e98aed8b48 Update: Translations from eints
swedish: 3 changes by DonaldDuck313
korean: 2 changes by telk5093
portuguese (brazilian): 4 changes by brunodelara-cloudcrm
4 years ago
Michael Lutz 96d33ab46a Fix #8930: [Win32] Don't handle printable keys on keydown if an edit box is in focus.
Handle printable input only when the matching WM_CHAR message is incoming.
Without an edit box, do the handling in keydown as usual to support hotkeys.
4 years ago
Niels Martin Hansen 785e42a6f9 Feature: Volume sliders in Game Options window 4 years ago
Niels Martin Hansen 88c92f7b7c Codechange: Move volume control slider logic to separate functions 4 years ago
Niels Martin Hansen 64c9af0991 Add: NWidgetBase::GetCurrentRect function 4 years ago
Niels Martin Hansen 49d370185b Change: Default music and sound effects volume to be lower 4 years ago
Wim Leflere 5233fd2751
Change: [win32] Use user UI language for initial language selection (#8973) (#8974) 4 years ago
translators 2b86d42ddc Update: Translations from eints
english (us): 3 changes by 2TallTyler
korean: 3 changes by telk5093
russian: 32 changes by Ln-Wolf
spanish: 1 change by JohnBoyFan
french: 4 changes by arikover
portuguese: 10 changes by azulcosta
4 years ago
Jonathan G Rennison 3ede756d23 Fix: Viewport drag tooltips not being removed when dragging over other windows 4 years ago
Jonathan G Rennison ae94b2d296 Fix: Viewport drag tooltip flickering when dragging outside window 4 years ago
translators 1529403584 Update: Translations from eints
norwegian (bokmal): 3 changes by Anolitt
spanish (mexican): 3 changes by absay
vietnamese: 3 changes by KhoiCanDev
german: 3 changes by danidoedel
finnish: 3 changes by hpiirai
catalan: 3 changes by J0anJosep
spanish: 3 changes by JohnBoyFan
4 years ago
Ghislain Antony Vaillant e7cf589868 Fix: Honor default soundfont for FluidSynth
Debian now provides a default soundfont for FluidSynth via its alternatives system.

In short, FluidSynth is configured to look for `/usr/share/sounds/sf3/default-GM.sf3` as its default soundfont, and each soundfront package (FluidR3, OPL-3, MuseScore...) may provide or override this symlink. By default, FluidSynth is installed on Debian with the `TimGM6mb` soundfont by default due to its limited size.

See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=929185 for further details.
4 years ago
Ghislain Antony Vaillant 9725bd8dd0 Fix: Use FluidSynth default soundfont 4 years ago
Niels Martin Hansen 746f1ca11a Codechange: Remove the now meaningless console_cp parameter from OTTD2FS 4 years ago
Niels Martin Hansen e0561dbded Fix #8713: Change OTTD2FS and FS2OTTD to return string objects instead of static buffers 4 years ago
Jonathan G Rennison 825867f2c5
Fix: [Network] State conditions for sending client info/quit packets (#8959)
Use status >= STATUS_AUTHORIZED as the state criteria for all cases
where updates about other clients are sent.
This avoids the case where a client is informed that another client
has joined but not informed when it later quits, resulting in
stale entries in the client list window.
4 years ago
Peter Nelson 920bf703cd Fix: Allow full sample range for 16-bit audio.
Clamping each sample value to half the available range could cause
unnecessary premature clipping with lots of sounds playing. This change
does not affect the actual volume level.
4 years ago
Peter Nelson 42fbdda9ab Change: Apply power-of-3 scaling to master effect volume to improve perceived loudness change. 4 years ago
Bernard Teo f0a24e98f5
Fix #8922: Show vehicle window for single vehicle in shared order grouping (#8926) 4 years ago
translators 2f5035d6dc Update: Translations from eints
korean: 1 change by telk5093
4 years ago
Didac Perez Parera ca783d447a
Feature: Button to reset game settings to their default values (#8958) 4 years ago
Didac Perez Parera 43c465e8f4
Change: Disable NewGRF window apply button if no change was made (#8934) 4 years ago
PeterN 130a052ed5
Fix: Apply master effect volume during mixing instead of sound start. (#8945)
This makes the volume control work as most players would expect, affecting
existing playing sounds as well as new sounds.
4 years ago
Michael Lutz 1cd3a3b070
Fix #8935: [OSX] Crash when clicking 'Save' due to wrongly-threaded OS call. (#8944) 4 years ago
translators 295d542911 Update: Translations from eints
spanish (mexican): 1 change by absay
vietnamese: 1 change by KhoiCanDev
estonian: 1 change by siimsoni
romanian: 3 changes by kneekoo
catalan: 1 change by perezdidac
portuguese: 1 change by azulcosta
4 years ago
Charles Pigott e8a94dc8bb Cleanup: Delete remaining Blob code 4 years ago
Charles Pigott e8022a589d Codechange: Replace CBlobT usage with std::vector 4 years ago
Charles Pigott f481c9fc2c Codechange: Replace CStrA with std::string 4 years ago
Milek7 33c5f984f5
Codechange: Use COINIT_MULTITHREADED in CoInitializeEx (#8938) 4 years ago
translators 5b1ea0ee38 Update: Translations from eints
swedish: 1 change by DonaldDuck313
norwegian (bokmal): 1 change by Anolitt
english (us): 1 change by 2TallTyler
chinese (simplified): 8 changes by RichardYan314
german: 1 change by danidoedel
romanian: 115 changes by kneekoo
finnish: 1 change by hpiirai
spanish: 2 changes by MontyMontana
polish: 3 changes by yazalo
4 years ago
translators ec0c159586 Update: Translations from eints
korean: 1 change by telk5093
indonesian: 25 changes by dimaspaf14
romanian: 23 changes by kneekoo
4 years ago