As suggested by BannZay on Discord. We scale down when we notice that
no responses arrive. The idea is that player's internet has become
faster than when DDNet started, so increasing the default is ok.
2820: Server: Only recv new packets when we know they are waiting r=Jupeyy a=def-
Reduces the number of syscalls
Co-authored-by: def <dennis@felsin9.de>
2733: Implement on-demand skin downloader, remove Lappi's non-free skins (fixes#1166, fixes#2547) r=Learath2 a=def-
Seems to work on first try, I'm somewhat surprised :D
Future ideas:
- I haven't checked how the performance impact is of a new skin joining,
might want to move the loading to a separate thread?
- Use the skins from download directory instead of redownloading? Might
want to compare modified time.
- Make all skins load on demand only to save some memory?
Co-authored-by: def <dennis@felsin9.de>
2837: Don't allow zero/empty images(bcs malloc(0) and other things) r=def- a=Jupeyy
Would be nicer, if the map loader would check the map for such things, but since the backend works with the image data and assumes its valid, this prevents crashes.
Co-authored-by: Jupeyy <jupjopjap@gmail.com>
Seems to work on first try, I'm somewhat surprised :D
Future ideas (not for this change):
- I haven't checked how the performance impact is of a new skin joining,
might want to move the loading to a separate thread?
- Use the skins from download directory instead of redownloading? Might
want to compare modified time.
- Make all skins load on demand only to save some memory?
2814: Remove saving to other servers r=Learath2 a=def-
sv_sql_valid_servernames is no longer required
2818: Load fonts from memory (fixes#2810) r=Learath2 a=def-
Missing: Freeing the memory again. But not so important since we keep
the same fonts until end of process anyway in our case.
@QingGo Could you give this a try from the Github build artifacts? If not, I can provide you a nightly build.
Co-authored-by: def <dennis@felsin9.de>
2816: Implement context for translations (largely taken from Teeworlds) r=Learath2 a=def-
Missing: scripts/languages doesn't work yet, but the context can be
added manually, see german.txt for an example.
Co-authored-by: def <dennis@felsin9.de>
2828: Use resize instead of rescale r=def- a=Jupeyy
rescale doesn't clamp, and looks worse, might be slightly faster tho.
So i also renamed the config vars that might cause resizing and/or are not very useful
Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2819: Fix compilation on MinGW Windows r=Learath2 a=def-
graphics.h:197:36: error: ‘uint8_t’ has not been declared
Co-authored-by: def <dennis@felsin9.de>
2815: Renamed tile names. r=def- a=gerdoe-jr
I didn't get why some tiles' names end with `END/START` and another with `DISABLE/ENABLE`, so, I just replaced all `END/START` with `DISABLE/ENABLE`.
Also, I renamed `TILE_BONUS` and `TILE_PENALTY`, because you need to check the variables' declarations/references for understanding their purposes.
Co-authored-by: Vlad <gerdoexx@gmail.com>
Co-authored-by: def <dennis@felsin9.de>
Missing: Freeing the memory again. But not so important since we keep
the same fonts until end of process anyway in our case.
@QingGo Could you give this a try from the Github build artifacts?
2807: Remove sv_team_lock command r=heinrich5991 a=BannZay
No map uses this command. Does not seems like this command is used anywhere.
Any reason to keep this command ?
Co-authored-by: Andrii <bannzay3@gmail.com>
2800: Style-fixed version of #2784 r=def- a=heinrich5991
Thanks to @Jupeyy for the original pull request.
Co-authored-by: Jupeyy <jupjopjap@gmail.com>
Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2738: Don't search the sorted array linearly r=heinrich5991 a=Learath2
Small optimization but it could start mattering with #2733
Co-authored-by: Learath <learath2@gmail.com>
2789: Refresh server browser immediately when updated ddnet info arrived r=heinrich5991 a=def-
At the moment it only happens the next time you press refresh.
Before we had it so that it always reloaded once the ddnet info arrived,
causing a quick flickering and lots of packets having to be resent every
time someone pressed refresh, even if nothing changed.
The new approach combines the advantages of both without the
disadvantages. An even nicer way would be to compare the json objects,
so that news and version updates don't matter, but our json library
doesn't seem to support that.
2797: dilate: Don't crash if file doesn't exist r=heinrich5991 a=def-
Co-authored-by: def <dennis@felsin9.de>
Only print expanded SQLite statement, when expanding function exists. This is
required to not bump the minimum required Ubuntu version, since Ubuntu 16.04
doesn't ship SQLite 3.14 or above. SQLite introduced ``sqlite3_expanded_sql`
in 3.14, Ubuntu 16.04 packages 3.11.
Disabled weak linking on MSVC, since it isn't supported.