DDNet 20.0 released
DDNet 20.0 has been released with the following changes: 128 player support Web version Tabs to open multiple maps at the same time Android: Add aim-relative joystick and relative direct input More FPS: Stop rendering off-screen entities, players, hooks, ghosts and spectator char
- [Server] 128 player support [fokkonaut]
- [Client] Web version [Robyt3]
- [Editor] Tabs to open multiple maps at the same time [Robyt3]
- [Client] Android: Add aim-relative joystick and relative direct input [horoni]
- [Client] More FPS: Stop rendering off-screen entities, players, hooks, ghosts and spectator chars [AssassinTee]
- [Client] Dynamic antiping player prediction (cl_antiping_players 2/3) [fokkonaut]
- [Client] Replace invisible assets with default sprites [AssassinTee]
- [Client] More FPS: Cache scoreboard text containers [Ryozuki]
- [Client] Reuse the text container buffer in CCachedText [Ryozuki]
- [Client] Clip hook collision line on maps without telehooks [AssassinTee]
- [Client] Improve hook collision line render check [AssassinTee]
- [Client] Fix old telehooks not being detected for the telehook check [AssassinTee]
- [Client] Fix projectile clipping being applied to start position instead of actual position [AssassinTee]
- [Client] Show skin names in scoreboard tooltips [0xpixty]
- [Client] Improve player settings country filter, highlight matches and show reset button [Robyt3]
- [Client] Also bind W to +jump by default [Robyt3]
- [Client] Add "Show directory" button to automapper rule selection popup [Robyt3]
- [Client] Minor cleanup of settings menus [Robyt3]
- [Client] Fix potential thread-safety issue in community icon loading [Robyt3]
- [Client] Validate and initialize demo player data [heinrich5991]
- [Client] Get server info by const reference instead of copying [not6]
- [Editor] Rewrite envelope editor as editor component with separate state per map [Robyt3]
- [Editor] Keep map settings, layer/image/sound lists, history UI, font typer and HD/zoom preview state separate for each map [Robyt3]
- [Editor] Properly clip envelope editor timebar and inactive region background [Robyt3]
- [Editor] Fix points of unused channels being selected by envelope box selection [Robyt3]
- [Editor] Properly slow mouse in envelope editor [Robyt3]
- [Editor] Add quick action for "Goto position" [Ryozuki]
- [Editor] Fix quad flipping for multiple quads [AssassinTee]
- [Editor] Reimplement action to delete selected quads [AssassinTee]
- [Editor] Attach brushes to a separate internal map, fix invalid texture used for tile layer brush with quad image [Robyt3]
- [Editor] Fix incorrect item size for info map item when loading map [Robyt3]
- [Editor] Improve validation of map version item and other map data [Robyt3]
- [Editor] Avoid marking datafile data as unloaded when it failed to be loaded [Robyt3]
- [Editor] Fix dummy_map tool creating invalid map for sv_vanilla_antispoof feature [Robyt3]
- [Client&Server] Ensure snapshot item offsets and sizes are aligned with int32_t [Robyt3]
- [Client&Server] Reject oversized uncompressed packets in UnpackPacket [Ryozuki]
- [Client&Server] Validate tune zone of DDNetProjectile snapshot object and tick of sv_preinput messages
- [Server] Add SSL support for MySQL database connections [ByFox213]
- [Server] Fix rescue blocking team from finishing when used before start line [iMilchshake]
- [Server] Don't unfreeze player on skipped rescue [iMilchshake]
- [Server] Allow /cancelswap while using super, clarify that /swap is not allowed [ChillerDragon]
- [Server] Purge acked snapshots from snapshot storage, search starting from the newest snapshot [heinrich5991]
- [Server] Include shortened git revision hash in server version, change 0.6.4 game version prefix to 0.6 [Robyt3]
- [Server] Assert non-reserved server gametype instead of checking pure tuning [Robyt3]
- [Infra.] Split settings menus into separate source files, move UI popup menus to ui_popups.cpp [Robyt3]
- [Infra.] Improve macOS packaging and MACOS_CODESIGN [GlimmeR-6]

[previewyoutube=GSFbFsgYSuU;full][/previewyoutube]
The Tournament will be played on Saturday, June 13 at 20:00 CEST on special Tournament servers in every DDNet location! Only 2 player teams are allowed. The team with the best time after 3 hours wins (extended from 2 hours)!
Thanks to
[previewyoutube=kEdntDcFmoo;full][/previewyoutube]
The Tournament will be played on Sunday, March 15 at 18:00 CET on special Tournament servers in every DDNet location! No one has seen the map yet and the first finish will win! Team 0 will be allowed.
Thanks to
The Tournament will be played on Sunday, February 23 at 18:00 CET on special Tournament servers in every DDNet location! No one has seen the map yet and the first finish will win!
Thanks to 