Releases: TTT-2/TTT2
Releases · TTT-2/TTT2
v0.14.5b
What's Changed
Changed
- Made improvements to how data returned from the
GM:TTTBodySearchPopulatehook is handled to make custom bodysearch entry creation better (by @TW1STaL1CKY)- Added support for icon text (like the timer on the Death Time entry)
- Added support for specifying the ordering so custom entries can be placed between existing entries
- Added support for coloring the entry's background box
- Added support for specifying a custom height for an entry
- Gave
GM:TTTBodySearchPopulatehook a new boolean argument namedscoreboardwhich becomes true if the hook is being called to populate the bodysearch info on the scoreboard
GM:TTTModifyTargetedEntitycan now return a second value to modify the distance of a new target entity (by @TW1STaL1CKY)
Fixed
- Fixed guns not applying themselves as their damage inflictor (by @TW1STaL1CKY)
- Fixed markerVision entities getting culled by the game if too far away (by @NickCloudAT)
- Fixed not being able to use entities through water and clip brushes (by @TW1STaL1CKY)
- Fixed
GM:TTTBodySearchPopulatefailing to create custom bodysearch entries properly (by @TW1STaL1CKY) - Fixed scoreboard breaking if a custom bodysearch entry has no icon (by @TW1STaL1CKY)
- remove CS:S check since the resources got integrated (excluding music and maps) (by @xopez)
Full Changelog: v0.14.4b...v0.14.5b
v0.14.4b
Fixed
- Fixed health station continuous use not working (by @wgetJane)
- Fixed the shop search breaking when using certain special characters (by @NickCloudAT)
- Fixed propspec not working (by @wgetJane)
- Fixed a regression in TTT voice chat team colors (see Facepunch/garrysmod@38b7394)
- Fixed ghost viewmodels briefly appearing from weapons held by other players (by @TW1STaL1CKY)
- Fixed corpses not inheriting the bodygroups from the players model (by @NickCloudAT)
- Fixed edgecases where ttt_flame entities break when their extra entities fail to initialise (by @TW1STaL1CKY)
- Fixed null physics object error for doors (by @mexikoedi)
v0.14.3b
Added
- Added C4 cvars for adjusting the range & falloff of C4 explosions (by @Spanospy)
- C4 explosions will now also respect the weapon's configured damage scaling
- Added option to select preferred unit of length for distance displays (by @wgetJane)
- Added
GM:TTT2ArmorHandlePlayerTakeDamagehook for modifying/overriding armor behavior (by @wgetJane) - Added server option for body armor to protect against crowbar damage (by @wgetJane)
- Added
GM:TTTLastWordsMsghook from base TTT (Facepunch/garrysmod/pull/2227, by @wgetJane) - Port new TTT entity ttt_filter_role to TTT2 (Facepunch/garrysmod/pull/2225 by @figardo, ported by @wgetJane)
- Added 2 new sprint settings (by @wgetJane)
- Stamina cooldown time before stamina begins regenerating after sprinting, 0.8 seconds by default
- Option to require forward key to be held to sprint, enabled by default
Changed
- Updated Russian and English localization files (by @Satton2)
- Updated the list of troublesome addons used by the addonchecker
- Changed option for body armor to protect against headshot damage by default (by @wgetJane)
Fixed
- Fixed classic armour protecting against crowbar damage (by @wgetJane)
- Fixed C4/Radio sounds not playing outside of PAS (Facepunch/garrysmod/pull/2203, by @figardo)
- Fixed players sometimes being revealed as dead when they chat/voicechat right as they die (Facepunch/garrysmod/pull/2229, by @wgetJane)
- Fixed various bugs related to using doors and buttons, to match base TTT behavior (by @wgetJane)
- Fixed brush doors on certain maps not being usable
- Fixed certain doors on certain maps being forcibly usable when they shouldn't be
- Fixed func_rotating being forcibly usable
- Fixed vehicles not being usable
- Removed forced button solidity
- Improved targetID trace detection for doors and buttons
- Allow brush doors to be detected as destructible for targetID
- Use NW2Vars instead of NWVars for door variables for more efficient networking
- Fixed clientside door.GetAll() to return a more updated list of doors
- Removed clientside TTT2PostDoorSetup hook
- Changed crowbar unlocking behavior to match base TTT
- Fixed lua errors after autorefresh (by @wgetJane)
- Fixed Hud errors when picking up items or weapons with no viable icon (by @NickCloudAT)
Full Changelog: v0.14.2b...v0.14.3b
v0.14.2b
v0.14.1b
Added
- Added Korean translation (by @kojap)
- Added diagnostic information to the addonchecker output.
- This also includes a Garry's Mod version check which triggers a warning if TTT2 is not compatible. First baseline version is '240313' (by @NickCloudAT)
- Added
GM:TTT2PlayDeathScreamhook to cancel or overwrite/change the deathscream sound that plays, when you die (by @NickCloudAT) - Added support for "toggle_zoom" binds to trigger the radio commands menu (by @TW1STaL1CKY)
- Added option to use right click to enable/disable roles in the role layering menu (by @TimGoll)
- Added a menu to allow admins to inspect, in detail, how and why roles are distributed as they are (by @nike4613)
- Added option to enable team name next to role name on the HUD (by @milkwxter)
- Added score event for winning with configurable role parameter (by @MrXonte)
- Added ExplosiveSphereDamage game effect for easy calculation of explosion damage through walls (by @MrXonte)
- Added support for outlines of different thickness (by @WardenPotato)
Fixed
- Fixed missing translation for None role error by removing it (by @mexikoedi)
- Fixed sometimes entity use triggering the wrong or no entity (by @TimGoll)
- Fixed translation of muting Terrorists and Spectators (by @mexikoedi)
- Fixed continuous use being broken, meaing that holding E on a health station did nothing (by @TimGoll)
- Fixed the loadingscreen disable causing an error (by @TimGoll)
- Fixed the rounds left always displaying one less than actually left (by @TimGoll)
- Fixed rendering glitches in the loading screen (by @TimGoll)
- Fixed weapon pickup through walls (by @MrXonte)
- Fixed spectating player still being visible through thermalvision after killing that player (by @MrXonte)
- Fixed Magneto-stick not using C_Hands (by @SvveetMavis)
- Fixed console error when dropping ammo for weapons with no AmmoEnt (by @MrXonte)
- Fixed client error for a not fully initialized client (by @Histalek)
- Fixed the targetID corpse hint not respecting
ttt_identify_body_woconfirm(by @Histalek) - Fixed the beacon not being properly translated when placed (by @Histalek)
- Fixed binoculars zooming not being predicted (by @Histalek)
- Fixed an error when trying to pickup a placed equipment (e.g. beacon) (by @Histalek)
- Fixed corpse searching sound playing when searched by a spectator, searched covertly, or searched long range (by @TW1STaL1CKY)
- Fixed the mute button in the scoreboard not working (by @TW1STaL1CKY)
- Fixed a few errors in shop error messages (by @Histalek)
- Fixed
markerVision's registry table being able to contain duplicate obsolete entries, thus fixing potential syncing issues with markers (by @TW1STaL1CKY) - Fixed issue in new Ammo dropping that could cause an error when dropping for modified weapon bases. (by @MrXonte)
- Fixed C4 not showing the correct inflictor when the player is killed (by @TimGoll)
- Fixed M16 Ironsight misalignment (by @SvveetMavis)
- Fixed outline interactions with certain weapon scopes (by @WardenPotato)
- Fixed outlines not rendering uniformly (by @WardenPotato)
Changed
- Updated French translation (by @MisterClems)
- Updated Turkish localization (by @NovaDiablox)
- Changed it so that continous use doesn't require direct focus; healing at a health station also works when looking around as long as you stay close by (by @TimGoll)
- Updated Russian localization (by @Satton2)
- Updated targetID to use
Vehicle:GetDriverinstead of thettt_driverNWEntity (by @Histalek) - Updated Russian and English localization files (by @Satton2)
- Updated old TTT HUD to show name of spectated player (by @somefnfplayerlol)
- Changes to the enabled map prefixes will not be announced to players anymore (by @Histalek)
- By default only
tttandttt2map prefixes are enabled (by @Histalek) - Updated
ttt_identify_body_woconfirmto be replicated across the server and client (by @Wryyyong) - Changed how Ammo is dropped; if drop should be from reserve ammo, now tries to drop a full ammo box instead of a full clip. (by @MrXonte)
- Updated
ttt_spec_prop_controlto be replicated across the server and client (by @NickCloudAT)- With this, the KeyHelp feature also hides the PropSpec bind if PropSpec is disabled on the server
- Renamed
ttt_session_limits_enabledtottt_session_limits_mode, introducing a four-mode control (0-3) for managing how TTT2 ends a session. (by @NickCloudAT)- Modes: 0 = No session limit, 1 = Default TTT, 2 = Only time limit, 3 = Only round limit
- Moved all role-related admin options into the "Roles" menu (by @nike4613)
- Improved description of role layering (by @nike4613)
- Improved the role layering menu by showing which role is enabled and which is disabled (by @TimGoll)
- Reworked C4 damage calculation with new gameEffect ExplosiveSphereDamage (by @MrXonte)
- Changed the amount the M16 zooms in (by @SvveetMavis)
v0.14.0b
Added
- Added hook ENTITY:ClientUse(), which is triggered clientside if an entity is used (by @ZenBre4ker)
- Return true to prevent also using this on the server for clientside only usecases
- Added hook ENTITY:RemoteUse(ply), which is shared (by @ZenBre4ker)
- Return true if only clientside should be used
- Added RemoteUse to radio, you can now directly access it via use button on marker focus (by @ZenBre4ker)
- Added sounds to multiple UI interactions (can be disabled in settings: Gameplay > Client-Sounds) (by @TimGoll)
- Added a globally audible sound when searching a body (by @TimGoll and @mexikoedi)
- Added the option to add a subtitle to a marker vision element (by @TimGoll)
- Added the option to assign random unique models at round start (by @Exonen2)
- Added a new voice chat UI (by @TimGoll)
- Added new credit related hooks (by @Spanospy)
- Added
GM:TTT2CanTakeCredits()hook for overriding whether a player is allowed to take credits from a given corpse - Added
GM:TTT2OnGiveFoundCredits()hook which is called when a player has been given credits for searching a corpse - Added
GM:TTT2OnReceiveKillCredits()hook which is called when a player recieves credits for a kill - Added
GM:TTT2OnReceiveTeamAwardCredits()hook which is called when a player recieves credits as a team award - Added
GM:TTT2OnTransferCredits()hook which is called when a player has successfully transfered a credit to another player
- Added
- Disabled locational voice during the preparing phase by default (by @ruby0b)
- Added a ConVar
ttt_locational_voice_prepto reenable it
- Added a ConVar
- Added
SWEP.EnableConfigurableClipandSWEP.ConfigurableClipto set the weapon's clip on buy via the equipment editor (by @TimGoll) - Added Text / Nickname length limiting (by @TimGoll)
- Added
ttt_locational_voice_rangeto set a cut-off radius for the locational voice chat range (by @ruby0b) - Added a convar
ttt2_inspect_credits_always_visibleto control whether credits are visible to players that do not have a shop (by @nike4613) - Added multiple global voice chat activation modes for clients to choose from (Gameplay > Voice & Volume): (by @ruby0b)
- Push-to-Talk (default)
- Push-to-Mute
- Toggle
- Toggle (Activate on Join)
- Team Voice Chat is always push-to-talk and temporarily disables global voice chat while being used (by @ruby0b)
- Added a new generic button to F1 menu elements to be used in custom menus (by @TimGoll)
- Added toggle and run buttons to many F1 menu elements (by @TimGoll)
- Added combo cards to the UI, clickable cards that act like combo boxes (by @TimGoll)
- Added a run button to bindings in the bindings menu (by @TimGoll)
- Added a new admin commands menu (by @TimGoll)
- Added a submenu to change maps
- Added a submenu to issue basic commands
- Added a new
gameloopmodule that contains all functions related to the round structure (by @TimGoll) - Added a loadingscreen that hides the visible and audible lag introduced by the map cleanup on round change (by @TimGoll)
- Added a voicebattery module that handles the voice battery (by @TimGoll)
- Added
admin.IsAdmin(ply)as a wrapper that automatically callsGM:TTT2AdminCheck(by @TimGoll)- Made sure this new function is used in our whole codebase for all admin checks
- Added
ENTITY:IsPlayerRagdollto check if a corpse is a real player ragdoll (by @TimGoll) - Added improved vFire integration for everything in TTT2 that spawns fire (by @TimGoll and @EntranceJew)
- Added the
SWEP.DryFireSoundfield to the weapon base to allow the dryfire sound to be easily changed (by @TW1STaL1CKY) - Added role derandomization options for perceptually fairer role distribution, enabled by default (by @nike4613)
- Added targetID to buttons (by @TimGoll)
- Added force role admin command (by @mexikoedi)
- Added
draw.RefreshAvatars(id64)to refresh avatar icons (by @mexikoedi) - Added
GM:TTT2OnButtonUse(ply, ent, oldState): a hook that is triggered when a button is pressed and that is able to prevent that button press (by @TimGoll) - Added TargetID and keyInfo to vehicles (by @TimGoll)
- Added
GM:TTT2PostButtonInitialization(buttonList): a hook that is called after all buttons on the map have been initialized (by @TimGoll)
Changed
- Placeable Entities are now checked for pickup clientside first (by @ZenBre4ker)
- C4 UI is not routed over the server anymore
- Visualizer can now only be picked up by the originator (by @ZenBre4ker)
- TargetID is now hidden when a marker vision element is focused (by @TimGoll)
- Tracers are now drawn for every shot/pellet instead of only 25% of shots/pellets (by @EntranceJew)
- The ConVar "ttt_debug_preventwin" will now also prevent the time limit from ending the round (by @NickCloudAT)
GM:TTT2GiveFoundCreditshook is no longer called when checking whether a player is allowed to take credits from a given corpse (by @Spanospy)- Micro optimizations (by @EntranceJew)
- use
net.ReadPlayer/net.WritePlayerif applicable instead ofnet.Read|WriteEntity - Reduced radar bit size for net message
- The holdtype for pistol weapons now matches the viewmodel
- use
VOICE.IsSpeaking(ply)(clientside) can now be used to check if any player is speaking to you (by @TimGoll)- Unified the spec color usage throughout the whole UI (by @TimGoll)
- Cleanup and performance optimizations for marks library (by @WardenPotato)
- Updated the Turkish localization file (by @NovaDiablox)
- The level time now starts with the first preparing phase, meaning that idle on connect doesn't decrease the map time (by @TimGoll)
- Minor cleanup and optimizations in weapon code (by @TW1STaL1CKY)
- Shotgun weapon changes (by @TW1STaL1CKY)
- Dry firing (attempting to shoot with no ammo) will now make you reload if possible, like all the other weapons do
- Interrupting the reload should look and feel less jank
- A thirdperson animation now plays when each shell is loaded (the pistol reload animation seems to fit best)
- Now always properly checks if an entity is a true ragdoll to make sure no other props get ragdoll handling (by @TimGoll)
- Spectators are now able to look at corpses on fire (by @TimGoll)
- Corpses on fire display that information in targetID and MStack (by @TimGoll)
- Updated Russian and English localization files (by @Satton2)
- Made
ply:IsRevivinga shared player variable (by @TimGoll) - Updated and improved the Simplified Chinese localization file (by @sbzlzh and @TheOnly8Z)
- Avatar icons are not fetched anymore but instead created with
AvatarImage(fixes missing icons for chinese players) (by @mexikoedi) GM:TTT2PlayerReadyis now called for every player even on clients (by @TimGoll)- Updated Japanese translation (by @westooooo)
plyspawn.GetSpawnPointsAroundSpawnnow tries to find spawns that are on the ground if possible (by @TimGoll)
Fixed
- Fixed
DynamicCameraerror when a weapon'sCalcViewdoesn't return complete values (by @TW1STaL1CKY) - Fixed Roundendscreen showing karma changes even if karma is disabled (by @Histalek)
- Fixed the player's FOV staying zoomed in if their weapon is removed while scoped in (by @TW1STaL1CKY)
- Fixed the player's FOV staying zoomed in with the binoculars if they're removed from you (by @TW1STaL1CKY)
- Fixed weapon unscoping (or generally any time FOV is set back to default) being delayed due to the player's lag (by @TW1STaL1CKY)
- Fixed overhead icons sometimes being stuck at random places (by @TimGoll)
- Fixed a null entity error in the ShootBullet function in weapon_tttbase (by @mexikoedi)
- Fixed a nil compare error in the DrawHUD function in weapon_tttbasegrenade (by @mexikoedi)
- Fixed players sometimes not receiving their role if they joined late to the game (by @TimGoll)
- Fixed crowbar attack animation not being visible to the player swinging it (by @TW1STaL1CKY)
- Fixed weapon dryfire sound interrupting the weapon's gunshot sound (by @TW1STaL1CKY)
- Fixed incendiaries sometimes exploding without fire (by @TimGoll)
- Fixed scoreboard not showing any body search info on players that changed to forced spec during a round (by @TimGoll)
- Fixed vFire explosions killing a player even if they have
NoExplosionDamageequipped (by @TimGoll) - Fixed a nil error in the PreDrop function in weapon_ttt_cse (by @mexikoedi)
- Fixed
table.FullCopy(tbl)behaviour whentblcontained a Vector or Angle (by @Histalek) - Fixed the bodysearch showing a wrong player icon when searching a fake body (by @TimGoll)
- Fixed players respawned with
ply:Revivesometimes spawning on a fake corpse (by @TimGoll) - Fixed undefined Keys breaking the gamemode (by @TimGoll)
- Fixed markerVision elements being visible to team mates of unknown teams (such as team Innocent) (by @TimGoll)
- Fixed inverted settings being inverted twice in the equipment editor (by @TimGoll)
- Fixed OldTTT HUD sidebar elements missing translation (by @TimGoll)
- Fixed avatar icons not refreshing if they were changed on Steam (by @mexikoedi)
- Fixed a wrong label for the sprint speed multiplier in the F1 menu (by @TimGoll)
- Fixed own player name being shown in targetID when in vehicle (by @TimGoll)
- Fixed
ShopEditor.BuildValidEquipmentCache()being called too early on the client, resulting in a wrong cache state (by @NickCloudAT and @12problems)
Removed
- Removed radio tab in shop UI (by @ZenBre4ker)
- Removed all uses of UseOverride-Hook inside TTT2 (It's still available for addons!) (by @ZenBre4ker)
- Removed
round_restart,round_selectedandround_startedMStack messages to reduce message spawm (by @TimGoll) - Removed the old tips panel visible to spectators (moved to the new loading screen) (by @TimGoll)
Breaking Changes
- Renamed
GM:TTT2ModifyVoiceChatColor(ply, clr)toGM:TTT2ModifyVoiceChatMode(ply, mode) - Renamed
ply:GetHeightVector()to `ply:GetHeadPo...
v0.13.2b
Added
- Added upstream content files to base TTT2
- Added
plymeta:IsFullySignedOn()to allow excluding players that have not gotten control yet (by @EntranceJew)
Changed
- Crosshair rendering now is a bit more flexible and customizable
- A crosshair is now also drawn when holding a nade, making it less confusing when looking at entities
- Hides item settings in the equipment editor that are only relevant for weapons
- The binoculars now use the default crosshair as well
Fixed
- Fixed the AFK timer accumulating while player not fully joined (by @EntranceJew)
- Fixed weapons which set a custom view model texture having an error texture
- Fixed the equipment menu throwing errors when clicking on some items
- TTT2 now ignores Gmods SWEP.DrawCrosshair and always draws just its own crosshair to prevent two crosshairs at once
- Fixed hud help text not being shown for some old weapons
- Fixed detective search being overwritten by player search results
v0.13.1b
Fixed
- Fixed rendering for weapons not based on the TTT2 base (e.g. TFA) (by @TimGoll)
- Fixed bodysearch entries not having a title breaking the rendering (by @TimGoll)
- Fixed
GetViewModelerror on the client when joining a server (by @TimGoll) - Fixed the new view changes preventing weapons from modifying the playerview (by @TimGoll)
- Fixed the new view changes affecting non-player entities (by @TimGoll)
- Fixed an error in an error message (by @mexikoedi)
v0.13.0b
Added
- Added migrations between TTT2-versions, some breaking changes could now be migrated instead
- Added a new markerVision module that adds information to a specific point in space to replace the old C4 radar; it is currently used by these builtin weapons (by @TimGoll)
- C4
- Radio
- Beacon
- Binoculars now retain search progress if interrupted. Progress decays based on time since last observed (by @EntranceJew)
- Reworked the way the player camera is handled (by @TimGoll)
- Added FOV change on speed change
- Added view bobbing on walking, swimming, falling and strafing
- Added convars to disable those changes
- Added
draw.Arcanddraw.ShadowedArcfrom TTTC to TTT2 to draw arcs (by @TimGoll und @Alf21) - Added possibility to cache and remove items, similar to how it is already possible with weapons with
CacheAndStripItems(by @TimGoll) - Added an option for weapons to hide the pickup notification by setting
SWEP.silentPickuptotrue(by @TimGoll) - Added
TTT2FetchAvatarhook for intercepting avatar URIs (by @EntranceJew) - Added
draw.DropCacheAvatarto allow destroying and refreshing an existing avatar, so bots can intercept avatar requests and circumvent the limited unique SteamID64s they're given (by @EntranceJew) weapon_tttbasechanges to correct non-looping animations which affected ADS scoping (by @EntranceJew)- Added
SWEP.IdleAnimto allow specifying an idle animation. - Added
SWEP.idleResetFixto allow the animations for CS:S weapons to automatically be returned to an idle position. - Added
SWEP.ShowDefaultViewModelto prevent a weapon from drawing a ViewModel when set tofalseat all without FOV hacks or Deploy code which has no effect.
- Added
- Icon for gameplay menu
- Icon for accessibility menu
- Icon for
Voice & Volumemenu - Added a new vgui element:
DWeaponPreview_TTT2to render a player with their equipped weapon (by @TimGoll)- Supports any normal weapon that has a
.HoldTypeand a.WorldModel - Supports any weapon that is made with the SWEP Construction Kit (boomerang, melonmine, ...) or made for our custom world model renderer
- Supports any normal weapon that has a
- Made beacon model and icon unique from decoy (by @EntranceJew)
- Added
SWEP:ClearHUDHelp()to allow blanking the help text, for dynamically updating help text on equipment (by @EntranceJew) - Added custom world and view models to some builtin weapons (by @TimGoll)
- added for: radio, beacon, decoy, binoculars, visualizer
- Added support for easy addition of custom view and world models (by @TimGoll)
- Added
AddCustomViewModelto add custom view models - Added
AddCustomWorldModelto add custom world models - Added an automatic fix for badly coded addons that break the view model fingers
- Added
- Added
ttt_base_placeableentity that is used to handle any placeable / destroyable entity (by @TimGoll)- moved
ttt_c4,ttt_health_station,ttt_beacon,ttt_decoy,ttt_radioandttt_cse_projto that base - also handles pickup of those entities
- moved
- Throwables (grenades) now have a
:GetPullTime()accessor (by @EntranceJew) - Throwables (grenades) show UI for the amount of time remaining before detonation (fuse time) (by @EntranceJew)
- UI for grenade throw arcs from colemclaren's TTT fork (integrated by @EntranceJew)
gameEffectslibrary for global effects that are useful, such as starting fires (by @EntranceJew)- Added weapon pickup sounds when picking up weapons manually (by @TimGoll)
Changed
- Refactored client shop logic into separate shop-class (by @ZenBre4ker)
- Enabled shared shop class to buy and check equipment
- Removed third argument of
TTT2CanOrderEquipment-Hook, no message is outputted anymore
- dframe_ttt2 panels can now manually enable bindings while they are open (by @ZenBre4ker)
- Binoculars now have a world model that isn't paper towels (by @EntranceJew)
- Decreased shooting accuracy while sprinting or in air (by @TimGoll)
- A player whose weapons are stripped and cached will keep
weapon_ttt_unarmedwhich means they keep their crosshair (by @TimGoll) - Updated the German localization file (by @NickCloudAT)
- Updated the Turkish localization file (by @NovaDiablox)
- Grenades have icons
- Brought
C4,defuser,flaregun,health_station,radioweapons down from upstream (by @a7f3) - Updated help text for
C4,defuser,flaregun,health_station,radio,knife,phammer,push, andzm_carryweapons (by @a7f3) - Brought down the
EFFECTs:crimescene_dummy,crimescene_shot,pulse_sphere,teleport_beamdown,teleport_beamup - Brought down the
ENTs:ttt_basegrenade_proj,ttt_carry_handler(unused),ttt_firegrenade_proj,ttt_smokegrenade_proj,ttt_weapon_check - Brought down the
SWEP:weapon_ttt_stungun - Brought down the menu for arming/defusing C4
- Updated and improved Simplified Chinese translation (by @sbzlzh and @TheOnly8Z)
- Improved Simplified Chinese translation(by @TEGTainFan)
- Consolidated hat logic
- Player role selection logic uses
Player:CanSelectRole()now instead of duplicating logic - Role avoidance is no longer an option
- All
builtinweapons can now be configured to drop viaEdit Equipment(by @EntranceJew) - Removed redundant checks outside of
SWEP:DrawHelp, protected onlySWEP:DrawHelp - Spectator name labels now use a skin font and scaling (by @EntranceJew)
- The built-in radar now displays distances in meters (by @TimGoll)
- Converted
ttt_ragdoll_pinningandttt_ragdoll_pinning_innocentsinto per-role permissions. - Magneto stick now allows right-clicking to instantly drop something, while left-clicking still releases/throws it.
- Magneto stick now shows tooltips respective to its current state.
- Scoreboard shows non-policing detective results, in sync with the miniscoreboard (by @EntranceJew)
ttt_flameis visible while it is moving (by @EntranceJew)ttt_flame's hurtbox is more accurate to its visuals (by @EntranceJew)- The built-in DNA scanner now displays distances in meters (by @TimGoll)
- Noisy prints are now gated behind various levels of
developerconvar (by @EntranceJew) - Any warnings developers should fix will now print with stack traces (by @EntranceJew)
- Changed the way the role overhead icon is rendered (by @TimGoll)
- It now tracks the players head position
- Rendering order is based on distance, no more weird visual glitches
- Hidden when observing a player in first person view
- Your own spectator nametag will not display when looking directly up in post-round (by @EntranceJew)
- Made sure the last weapon is selected by default if the current weapon is removed; overwrite
OnRemoveto prevent that (by @TimGoll) - Changed the way weapon icon caching is working to make sure all weapons always have a cached icon material (by @TimGoll)
Fixed
- Fixed database now properly saving boolean
falsevalues (by @ZenBre4ker) - Fixed cached weapons not being selected after giving them back to the owner (by @TimGoll)
- The roundendscreen can now be closed with the correct Binding (by @ZenBre4ker)
- Fixed last seen player being wrongly visible for every search instead of only public policing role search (by @TimGoll)
- Fixed the crosshair being offcenter on some UI scales (by @TimGoll)
- Fixed to wrong line calculations for wrapped text (by @NickCloudAT)
- Fixed marks library having self zfailing and color issues (by @WardenPotato)
- Fixed
IsPlayerfailing if a non-entity is passed to it (by @TimGoll) - Fixed draw.Arc when
gmod_mcore_testis set to 1 (by @WardenPotato) - Fixed weapon help box width for wide bindings with short descriptions (by @TimGoll)
- Fixed
GM:TTTBodySearchPopulateusing the wrong data variable (by @TimGoll) - Fixed font initialization to not trip engine font fallback behavior (by @EntranceJew)
- Fixed the decoy producing a wrong colored icon for other teams (by @NickCloudAT)
- Fixed the scoreboard being stuck open sometimes if the inflictor was no weapon (by @TimGoll)
- Fixed door health displaying as a humongous string of decimals (by @EntranceJew)
- Fixed weapons that use the wrong weapon base from throwing errors in the F1 menu (by @TimGoll)
Removed
- Removed some crosshair related convars and replaced them with other ones, see the crosshair settings menu for details
- Removed DX8/SW models that aren't used
- Removed the convar
ttt_damage_own_healthstationas it was inconsistent and probably unused as well - Removed
ttt_fire_fallback, there's no situation where the fire shouldn't draw anymore. - Removed
resource.AddFilecalls, server operators should use the workshop version or manually bundle loose files.
Breaking Changes
- Moved global shared
EquipmentIsBuyable(tbl, ply)toshop.CanBuyEquipment(ply, equipmentName)- Returned text and result are now replaced by a statusCode
- No more
plymeta:GetAvoidRole(role)orplymeta:GetAvoidDetective() - Moved global
TEAMBUYTABLEtoshop.teamBuyTableand separatedBUYTABLEintoshop.buyTableandshop.globalBuyTable- Use new Accessors
shop.IsBoughtFor(ply, equipmentName),shop.IsGlobalBought(equipmentName)andshop.IsTeamBoughtFor(ply, equipmentName) - Use new Setter
shop.SetEquipmentBought(ply, equipmentName),shop.SetEquipmentGlobalBought(equipmentName)andshop.SetEquipmentTeamBought(ply, equipmentName)
- Use new Accessors
v0.12.3b
Added
- Added some missing vanilla TTT entities into TTT2
- Added debug.print(message)
- This puts quotation marks around print statements
- Can handle single values or a sequential table to be printed
- Can handle
nilentries in a nearly sequential table
- Added new hooks
TTT2BeaconDetectPlayerandTTT2BeaconDeathNotifyto allow preventing / overriding a beacon's player detection & alerts (by @Spanospy) - Added indentation to subsettings in F1 menu (by @TimGoll)
Changed
- Updated the Turkish localization file (by @NovaDiablox)
- Keyhelp and weapon HUD Help now use the global scale factor
Fixed
- Fixed targetID hints for old addons now correctly working for all entities
- Fixed visualizer having pickup hint even though player is unable to pick up
- Targetid wasn't showing named corpse's role, information which was already present on the scoreboard (by @EntranceJew)
- Damage Scaling now has a help description
- Fixed the database module setting a global variable called
callbackwhich breaks addons such as PointShop2 - Fixed voicechat keybinds being shown even if voice is disabled
- Coerced ammo types to lowercase for better matching in HUD
- The binocular zoom now uses a DataTable that is not already used by its weaponbase
- Fixed round scoreboard tooltips not being wide enough for their strings (by @EntranceJew)
- Errors when looking at a player's corpse that disconnected (by @EntranceJew)
- Fixed
TTT2FinishedLoadinghook not called on server on hot reload (by @TimGoll) - Shopeditor now correctly shows resetted and default values