Xonotic 0.8.6 Release
Posted by Xonotic Team on June 20, 2023
This release should have been nerfed by the balance council because there’s a lot here for a point version.
Two maps popular for years have been polished up and included. There’s new gametypes and moderation features, new bot capabilities, new HUD and interface features, quality of life and customisation features for players and server admins, XonStat upgrades, and as usual more fixes and optimisations than you can swing a shotgun at.
SECURITY ALERT: a bug was discovered in versions older than 0.8.6 that is believed to be exploitable by malicious server admins to crash clients or, if they defeat mitigations, execute arbitrary code. No working exploit code is known to exist at this time, however all users are urged to upgrade immediately, and not use versions older than 0.8.6 to join online servers.
Download it here or upgrade from an older version.
Artwork
New official maps
-
Go by dublpaws and Debugger
A space CTF map with a futuristic theme! (Author: Mirio) 43
With fixes and visual upgrades by SpiKe and Mirio, waypoints by terencehill.
click to view full size
-
Trident by proraide
Fight in an abandoned building! (Author: Amadeusz Sławiński) 169
With fixes by SpiKe and Mirio, waypoints by terencehill.
click to view full size
Existing maps
- Removed Drain and Oil Rig. (Author: SpiKe) 161
- Stormkeep: Fixed an invisible crouching spot near the Mega Health. (Author: SpiKe) 162
- Implosion: Added flare lights on top of the radio pylons, clipped the walls in the corridors, brush and texture cleanups. (Author: SpiKe) 163
- Added copies of crate and jumppad LOD models that work with automatic LOD loading. (Author: Mario) 165
- Atelier: fixed players sometimes getting stuck by placing the teleporter exits slightly above the ground and making the decals underneath non-solid. (Author: SpiKe) 166
- Updated the map screenshots, hid old Nexuiz assets and map items. (Author: LegendaryGuard) 168
- Fixed wrong minimap scales on Dance, Implosion, Space-Elevator and Xoylent. (Author: SpiKe) 170
- Bromine: disabled the grass shadows, minor fixes. (Author: SpiKe) 179
- Rebuilt some maps with our new q3map2 default light settings. (Author: bones_was_here) 180 (partially merged)
- Fixed a few minor visual issues on Erbium, Opium and Solarium. (Author: SpiKe)
- Packaged a xoncompat repository containing assets from maps (Drain and Oil Rig) removed in this release. (Author: bones_was_here) 102
Monsters
- Added LOD models for the monsters to boost performance with lots of monsters in the map and fixed some LOD related bugs. (Author: Mario) 1069
Weapons
- Optimized h_ok_grenade, h_ok_hmg, h_ok_mg, h_ok_rl and h_ok_sniper models to reduce file size. (Author: LegendaryGuard) 1106
- Updated and optimized Akordeon, Devastator, Fireball, Tuba and Vortex v_* models, scaled by -15%. Fixed Fireball Gloss material, scaled Tuba UVs by -20% and scaled v_kleinbottle by -35%. (Author: LegendaryGuard) 1113
- Optimized g_fireball. Fixed g_fireball and v_fireball UVs. Enhanced a few slight details in the Fireball’s textures. (Author: LegendaryGuard) 1123
- Fixed Fireball having wrong player glow color. (Author: terencehill) [cd6c2c93]
- Fixed dropped weapons having wrong player glow color. (Author: terencehill) [40b83807]
- Made Crylink’s screen brighter. (Author: MusicGoat) [4d874ab3]
Items
- Fixed Invisibility and Speed powerups not displaying their 2D icons when these aren’t available for pickup. (Author: LegendaryGuard) [aaec1d16]
Gameplay
Mayhem
- Created the Mayhem and Team Mayhem gametypes. (Author: Dr. Jaska) 884
Mayhem is a mode full of chaos and deathmatching where players respawn with all weapons and full health/armor stack!
In these gametypes score is given 75% based on damage dealt and 25% based on frags.
In Free For All Mayhem the player (and in Team Mayhem the team) with the most damage dealt and frags earned at the end of a match wins!
Keepaway
- Added Team Keepaway. (Author: Mario) 1045
Team Keepaway is the teamplay variant of Free For All Keepaway.
Points are awarded for each kill to the team in possession of the ball and for killing opposing teams’ ball carriers!
- Fixed several Keepaway issues. (Author: bones_was_here) 1175
Survival
- Added Survival, a gametype where a few randomly selected hunters must frag all of the survivors without being identified and stopped. (Author: Mario) 1072
Last Man Standing
- Implemented 4 new features for LMS. (Author: terencehill) 808
- Players are now allowed to get back into the game if they moved to spectator. (Author: terencehill) 1051
Freeze Tag
- Armor, ammo and weapons are no longer reset when a player is gibbed, for example for players falling into the void. (Author: terencehill) 1179
Capture the Flag
- Fixed not getting notifications in CTF if another team gets yet another team’s flag in 3-4 team CTF. (Author: z411) 1087
Clan Arena
- Created a new opt-in feature for fewer stalemates in CA when round timer runs out. (Co-Authors: Dr. Jaska & z411) 1068
- Added a server-side option to disable dead players being able to spectate with freecam in Clan Arena (enabled by default only in XPM-ruleset). (Author: z411) 1081
Mutators
- Allowed dropping powerups with the use key and fixed powerups dropping outside of the map. (Author: z411) 1074
- Added overkill blaster keepforce and keepdamage cvars. (Author: bones_was_here) 1158
- Fixed a few issues with instagib/LMS items and in particular extralife. (Author: terencehill) 1164
- Fixed Extralife pickup sound canceling long powerup sounds and improved instagib powerup replacement system. (Author: terencehill) 1174
- Fixed pokenades causing a crash when monsters are disabled. (Author: Mario) 1041
Physics
- Made all remaining entities use physics logic handled by QuakeC gamecode rather than the engine, allowing for future advancements in movement and gameplay. (Author: Mario) 1044
- Compensated for Quake 3 frametime-dependent gravity in configs and jump pad code. (Author: bones_was_here) 1138
Balance
- Made the variables
g_*_weaponarena
no longer list servers as modified if they are set to "most"
or "most_available"
. (Author: Dr. Jaska) 1103
- Created the Xonotic Balance Council responsible for future gameplay balance changes. (Author: bones_was_here) 72
- Disabled the weapon recoil by default (
g_norecoil 1
). 5
Weapons
- Made Crylink full-auto instead of semi-automatic when it has only 1 spike (pellet). (Author: Dr. Jaska) 1153
- Fixed some Shotgun bugs related to bots or the weapon being reloadable. (Author: terencehill) 1061
- Fixed inverted (lower value for core than outer edge) damage and edgedamage values for splash damage having completely wrong force calculations. (Author: Dr. Jaska) 1145
- Fixed Crylink and Vaporizer being able to fire with empty magazines. (Author: Dr. Jaska) 1147
- Fixed Arc not having a suicide death message. (Author: terencehill) 1032
Monsters
- Added an off-switch for monster loot (
g_monsters_drop
). (Author: Dr. Jaska) 1162
User Interface
HUD
- Improved StrafeHUD a lot with many new features and bugfixes. (Author: Juhu) 1066
- Made it possible to switch between the default quickmenu and a customized quickmenu, if one is provided by the server. (Author: terencehill) 1018
- Allowed players to make the server’s custom quickmenu default. (Author: terencehill) 1090
- Added an option in HUD editor to show a line for centering panels. (Author: terencehill) 1157
- Made the speed unit a global, consistent setting. (Author: z411) 1130
- Improved duel centerprint title. (Author: terencehill) 1039
- Made
moveto*
votes always show player ID and name, 2 other minor voting related fixes. (Author: terencehill) 1198
- Cleaned up ammo sorting in the HUD to not reference items directly. (Author: Mario) 1121
Scoreboard
- Implemented team selection in the scoreboard and added a scoreboard user interface (TAB-ESC to enter). (Author: terencehill) 1027
- Made scoreboard pings colored! (Author: z411) 968
By default the best pings are green, decent pings are yellow, bad pings are orange, and the worst pings are red.
- Made showing the average scores per round in the scoreboard possible. (Author: terencehill) 975
- Created a new HUD panel that displays item pickups. (Author: z411) 1094
- Fixed mismatching player sorting between server and client. (Author: terencehill) 1026
- Disabled CTS recording damage taken and dealt. (Author: Dr. Jaska) 1025
- Removed useless damage dealt, damage taken and ELO scoreboard columns from CTS. (Author: Dr. Jaska) 1030
- Added the
menu_gamemenu
client cvar to enable/disable the Game menu. (Author: z411) 1101
- Fixed the welcome dialog popping up instead of the Game menu on the first ESC key press when replaying a demo. (Author: terencehill) 1058
- Fixed Settings button in the Game menu opening a standard settings page. (Author: terencehill) [d99f5ca5]
Voting Screens and Intermission
- Made the map voting screen’s chosen levelshot expand to the center of the screen for a second before it is loaded. (Author: terencehill) 1060
- Made 100% abstain votes in map voting choose a random map. (Author: Dr. Jaska) 1172
- Fixed voting for
endmatch
successfully during an intermission skipping the next map and going into a random map. (Author: terencehill) [22f4e736]
- Fixed not notifying about the vote in progress being canceled when the match ends. (Author: terencehill) 1181
- Fixed crashes in map voting screen related to gametypes with low amount of supported maps. (Author: terencehill) 1188
- Fixed
sv_vote_gametype_options
so that it defaults to the current gametype if it doesn’t have a single valid gametype. (Author: Dr. Jaska) 1190
Text
- Changed default font hinting to 2. Clearer small text than 1, less distortion than 3. (Author: bones_was_here) 1048
- Added
%o
and %O
to chat formatting so that players can easily check and/or tell their coordinates, e.g. check step height. (Author: Dr. Jaska) 1166
Translations
- New localizations for Chinese (Hong Kong), Indonesian and Latin have been added to the game (thanks to our new translators).
- Allowed showing translated campaign level descriptions in game and added Chinese translations of the campaign from NaitLee. (Author: terencehill) 1205
Campaign
The campaign has received an overhaul! There are many new levels and improvements. (Author: Dr. Jaska) 178
Updates
- Level 09: Changed Erbium instagib to Darkzone.
- Level 12: Changed Warfare Freeze Tag to Erbium.
- Level 16: Changed Runningman Keepaway into Team Keepaway.
- Level 18: Changed Bromine Deathmatch into Clan Arena.
- Level 27: Added forced respawn and 5min timelimit to Fuse Duel.
- Level 30: Changed from DM into Mayhem to avoid kill stealing.
New levels
- Level 03: A new easy Mayhem level early in the campaign.
- Level 15: CTF in Go.
- Level 21: Team Mayhem in Trident.
- Level 23: Onslaught in Running Man.
- Level 28: Vampire Mutator CA in Warfare.
- Level 31: A brutal END GAME level of Free For All Mayhem with superbots for true veterans on Trident.
Bots
- New extremely tough bots, superbots! (Author: Dr. Jaska) 1053
These superbots have no aim limitations, actively dodge projectiles, strafe randomly while in combat
and prioritize low health targets instead of always targeting the closest opponent!
To opt in to these superbots set skill
to 101
or any higher number, for toughest normal bots set skill
to 100
or below.
Be warned that these bots are a real challenge to even the best veteran players.
For these bots to be fun it is recommended to not give superbots hitscan weapons like the Vortex.
- Improved bot aiming abilities and fixed several minor issues, including premature detonation of Devastator rockets. (Author: terencehill) 1063
- Fixed bots being unable to fire fireball alt fire. (Author: Dr. Jaska) 1104
XonStat
- Added support for the Mayhem, Team Mayhem, LMS, and Team Keepaway game modes.
- Endmatch reports now store anticheat telemetry to help identify suspicious behavior.
- Fixed the server identification routine to prefer active servers when duplicate hashkey entries are found.
- Defined an alpha version of a
balance
endpoint to provide the foundation for dynamic team balancing in the future.
- Fixed a bug where deactivated servers were still accessible in the UI.
- Dramatically improved CTS support (tolerance for players leaving the match, spectator recording, lap time sorting, and alivetime display)
Moderation
- New banning systems and features for moderation purposes. (Author: LegendaryGuard) 945
In short, players are able to locally ignore someone’s chat messages via ignore #player_id
,
server admins and moderators can use chatban #player_id
to prevent them from sending chat messages in any chat,
voteban #player_id
to disallow them from voting and/or playban #player_id
to force them to stay in spectator.
Checkout the new moderation tools wiki page for more information!
Visual Effects
- Made Vortex’s charging use the player’s color instead of predefined colors. (Author: Mario) 1098
- Tweaked gibs’ settings to reduce exaggerated throw velocity. (Author: terencehill) 1114
- Replaced the Disability buff’s smoke effect, players that are hit by someone holding the Disability buff will have a new electricity effect. (Author: LegendaryGuard) 1062
- Implemented
cl_gunoffset
and bullet casings fixes and refactoring. (Author: bones_was_here) 1100
This allows you to adjust the first person weapon model position relative to your camera.
- Changed to the engine’s default
r_ambient 0
setting, thus allowing true black and giving mappers full control of contrast. (Author: bones_was_here) 993
- Made CTF flags to be colored by gamecode instead of assets being colored. (Author: Mario) 1038
- Changed HLAC’s secondary attack to only play a single sound and muzzle flash effect when fired. (Author: Mario) 1040
- Fixed a few cases where particles and/or decals did not appear for some weapons at times. (Author: terencehill) 1112
- Fixed 2 more decal related issues. (Author: terencehill) 1127
- Smoothed the effect of
v_deathtiltangle
. (Author: terencehill) [3389f6aa]
Items overhaul (Author: bones_was_here) 1202
- Added despawning effects for dropped items, if you’re quick there’s still enough time to grab them.
May be disabled with cl_items_animate
.
- Implemented immediate switching between simple item models and 3D item models with
cl_simple_items
.
- Smoothed the motion of thrown items.
- Reduced bandwidth used by items coming into view or drawing particle effects.
- Replaced use of ghost items when in a vehicle with an effect indicating items can’t be picked up, customisable with
cl_items_vehicle_alpha
and cl_items_vehicle_color
.
- Added cvar
cl_items_fadedist
to adjust fading out of distant items.
Removed ability to override server’s g_items_maxdist
for fairness.
- Added regular position and velocity updates for dropped items to resync the client’s view after any errors or interruptions.
- Prevented bobbing animations from moving the physics hitbox.
Game Logic
- Implemented announcer queue to prevent overlapping announcements. (Author: z411) 1075
- Created new automatic per-map min & max player limits. Fixed many warmup, player count and Welcome dialog things. (Author: bones_was_here) 1022
- Implemented
g_warmup
> 1 and related fixes and refactoring. (Author: bones_was_here) 1082
The new g_warmup
settings allow the server to stay in warmup until the minimum number of players have joined.
- Made autopause work for dedicated servers and improved autopause for listen servers. (Author: bones_was_here) 1144
By default single player pauses while the menu or console are open, and empty servers pause after the map changes.
- Fixed issues with dropped powerups by also deleting item waypoints when deleting their items. (Author: Mario) 1070
- Fixed
weapon_shotgun
and weapon_vortex
aliases missing. (Author: Mario) 1052
- Fixed dedicated servers panicking when gotomap vote passes during an intermission. (Author: terencehill) 1055
- Fixed demo camera’s (
camera_enable 1
when replaying demos) jerky mouse movement. (Author: terencehill) 1151
- Fixed
g_maplist_remove
completely breaking and always removing the 2nd option. (Author: Dr. Jaska) 1156
- Fixed several minor issues. (Author: Mario) 1095
Map Entities and Compatibility
- Implemented support for reading mapinfo files (.defi and .arena) from Quake 3 (and its mods). (Author: Mario) 856
- Allowed mappers to define item skins. (Author: Mario) 1107
- Implemented teleporter entity flags from Quake 3 DeFRaG. (Author: Juhu) 1135
- Added Quake 3 jump pad trajectory compatibility. (Author: Juhu) 1134
- Fixes for teamed items and support for them on Quake 3 maps added (requires the server has the latest DarkPlaces engine). (Author: bones_was_here) 1079
- Fixed blocking of moving map entities with a BSP model being broken. (Author: terencehill) 1092
- Fixed error spam which occurred when standing in the way of rotating doors. (Author: Mario) 1105
Behind the Scenes
- Added useful in-game tools for debugging. (Author: terencehill) 1152
- The files in the release zips now have correct date modified metadata. (Author: bones_was_here) [9a55f9d2]
- Added Overkill weaponry decompiled sources (Blender 2.79b source files) to mediasource repository and organized weapon directory structure to be similar to xonotic-data.pk3dir/models/weapons/. (Author: LegendaryGuard) 24
- Website polishing and optimising, including:
- Implement and document asset processing for markdown images. (Author: bones_was_here) 68
- Features and fixes for nav bar and footer. (Author: bones_was_here) 67
- Freddy has developed PyTIBot to support the team and development, including:
- Xonotic Team and Balance Council voting
- Git chat notifications and automation
- Fixed error when unzipping
cygiconv-2.dll
with Windows Explorer. (Author: bones_was_here) [9a55f9d2]
- Fixed URLs and syntax errors in AppData. (Author: AsciiWolf) 96
- Fixed make scripts failing with preset MAKEFLAGS which did not start with a dash. (Author: kiwixz) 97
DarkPlaces Engine
- Increased the response buffer to allow listing more players in the in-game server browser. (Author: terencehill) [1d7fd4d7]
- Worked around various obscure bugs in physics and logic caused by GCC and Clang compilers optimizing incorrectly for CPUs with the AVX extension. (Author: bones_was_here)
Utilities
- Created
misc/tools/fov-calc.py
, a utility python script for Field of View (FOV) calculating. (Author: Dr. Jaska) 98
Did you know that due to its legacy the DarkPlaces engine calculates actual FOV based on what your FOV would look like were you to have a 4:3 monitor?
This means that for example with a 16:9 your fov 90
setting won’t show 90 degrees horizontally but around 106 degrees.
There is now a utility tool for calculating your actual horizontal and vertical FOV on any resolution, with or without zoom scaling (e.g. Vortex’s scope multiplier).
Fun fact: This FOV calculation behavior also exists in many other games like Counter Strike games and Half-Life games due to their shared roots of the Quake 1 game engine!
Code Quality
Fixes
- Implemented safe removal of elements of an intrusive list while looping over them. (Author: terencehill) 1148
- Added checks to make sure neither entity has been deleted when calling touch functions. (Author: Mario) 1139
- Fixes for WarpZoneLib_BoxTouchesBrush function. (Author: bones_was_here) 1142
Refactoring
- Moved handling of the nade orb overlay to client-side, thus resolving the need to network orb states via STAT macroes. (Author: Mario) 1035
- Some minor tweaks to the QuakeC physics logic. (Author: Mario) 1077
- Changed male pronouns to gender-neutral pronouns when referring to the player. (Author: squidink7) 1111
- Added a registry field for renamed weapons to define their previous name to maintain compatibility. (Author: Mario) 1119
- Cleaned up ammo_pickupevalfunc function to not reference items directly. (Author: Mario) 1120
- Added a new function to copy fields from items to replacements. (Author: Mario) 1124
- Switched to QuakeC-based setcolor function implementation. (Author: Mario) 1126
- Improved xonotic-linux-sdl.sh script slightly. (Author: Dr. Jaska) 99
- Updated rsync scripts and their README. (Author: Dr. Jaska) 100
- Improved usability of WarpZoneLib_ExactTrigger_Touch function. (Author: bones_was_here) [9956823e] [7a46019a]
Cruft Removal
- Removed view projecting function cs_project. (Author: Mario) 1043
- Cleaned up obsolete warmup info messages. (Author: z411) 1088
- Deleted 4 unused model files. (Author: Dr. Jaska) 1149
- Removed flag respawn printing backtrace if called twice within half a second. (Author: Dr. Jaska) 1155
- Removed map entity whitelist checks. (Author: LegendaryGuard) 1180
- Removed legacy MOTD. (Author: bones_was_here) 1012
- Removed override of engine
+showscores
command. (Author: bones_was_here) 1128
- Removed trigger_init function as it was in the way and mostly duplicating WarpZoneLib_ExactTrigger_Init function’s code. (Author: bones_was_here) [2b46f62d]
Mapping Support package and NetRadiant gamepack
- Added the Arc entity definition. (Author: SpiKe) 173
- Updated entity definition bounding boxes to match 0.8.6. (Author: bones_was_here) 175
- Added the new xoncompat repository to the list of NetRadiant forbidden paths. (Author: SpiKe) 8
- Removed levelshots, lightmaps, minimaps and other unneeded directories from the Mapping Support package. (Authors: bones_was_here and SpiKe) [7db1b19f] and 103
Compatibility with previous versions
This release includes several new or updated assets which older versions lack.
- 43: Add the map Go by dublpaws and Debugger.
- 161: Remove Drain and Oilrig.
- 162, 163, 166 and 179: Changes to the stock maps.
- 169: Add the map Trident by proraide.
New stock maps are expected to be on the client and thus will not be sent if a client does not have them.
This means that the maps with updates and changes to them will not have the changed visuals and/or geometry on old clients causing desync and mispredictions with what server hosts and client sees.
In the case of new maps, if the old client doesn’t have them, they will only see a dark void with networked entities.
Gametypes 1178
- 1045: Add Team Keepaway.
- 1072: Add Survival.
These gametypes do not involve new assets other than their gametype icons.
This means that old clients playing them on up-to-date servers have gamecode compatibility,
but they will not be able to see the new icons on the gametype voting screen.
- 1038: Made CTF flags to be colored by gamecode instead of assets being colored.
If a current client plays on an old server, flags will lack colour.
The flags have forward compatibility though, meaning that old clients on up-to-date servers see the correct flag colors.
Translations
Localized strings are not sent by the server and thus up-to-date clients on old servers and old clients on up-to-date servers will have translation desynchronization if they have changed notably.
Xonotic is a fast paced first person shooter where
crisp movement, nuanced weapons, and in-your-face action
combine to create addictive arena-style gameplay.
Xonotic is free to play and modify under the
copyleft
GPLv3+ license.
Download it today!