Skip to content

Releases: TTT-2/TTT2

v0.14.0b

21 Sep 10:47
4e9ffc5
Compare
Choose a tag to compare

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
  • Disabled locational voice during the preparing phase by default (by @ruby0b)
    • Added a ConVar ttt_locational_voice_prep to reenable it
  • Added SWEP.EnableConfigurableClip and SWEP.ConfigurableClip to set the weapon's clip on buy via the equipment editor (by @TimGoll)
  • Added Text / Nickname length limiting (by @TimGoll)
  • Added ttt_locational_voice_range to set a cut-off radius for the locational voice chat range (by @ruby0b)
  • Added a convar ttt2_inspect_credits_always_visible to 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 gameloop module 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 calls GM:TTT2AdminCheck (by @TimGoll)
    • Made sure this new function is used in our whole codebase for all admin checks
  • Added ENTITY:IsPlayerRagdoll to 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.DryFireSound field 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:TTT2GiveFoundCredits hook 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.WritePlayer if applicable instead of net.Read|WriteEntity
    • Reduced radar bit size for net message
    • The holdtype for pistol weapons now matches the viewmodel
  • 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:IsReviving a 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:TTT2PlayerReady is now called for every player even on clients (by @TimGoll)
  • Updated Japanese translation (by @westooooo)
  • plyspawn.GetSpawnPointsAroundSpawn now tries to find spawns that are on the ground if possible (by @TimGoll)

Fixed

  • Fixed DynamicCamera error when a weapon's CalcView doesn'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 NoExplosionDamage equipped (by @TimGoll)
  • Fixed a nil error in the PreDrop function in weapon_ttt_cse (by @mexikoedi)
  • Fixed table.FullCopy(tbl) behaviour when tbl contained 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:Revive sometimes 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_selected and round_started MStack 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) to GM:TTT2ModifyVoiceChatMode(ply, mode)
  • Renamed ply:GetHeightVector() to `ply:GetHeadPo...
Read more

v0.13.2b

11 Mar 07:05
Compare
Choose a tag to compare

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

27 Feb 10:35
ded4f19
Compare
Choose a tag to compare

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 GetViewModel error 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

23 Feb 11:29
2ae4f04
Compare
Choose a tag to compare

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.Arc and draw.ShadowedArc from 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.silentPickup to true (by @TimGoll)
  • Added TTT2FetchAvatar hook for intercepting avatar URIs (by @EntranceJew)
  • Added draw.DropCacheAvatar to 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_tttbase changes to correct non-looping animations which affected ADS scoping (by @EntranceJew)
    • Added SWEP.IdleAnim to allow specifying an idle animation.
    • Added SWEP.idleResetFix to allow the animations for CS:S weapons to automatically be returned to an idle position.
    • Added SWEP.ShowDefaultViewModel to prevent a weapon from drawing a ViewModel when set to false at all without FOV hacks or Deploy code which has no effect.
  • Icon for gameplay menu
  • Icon for accessibility menu
  • Icon for Voice & Volume menu
  • Added a new vgui element: DWeaponPreview_TTT2 to render a player with their equipped weapon (by @TimGoll)
    • Supports any normal weapon that has a .HoldType and a .WorldModel
    • Supports any weapon that is made with the SWEP Construction Kit (boomerang, melonmine, ...) or made for our custom world model renderer
  • 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 AddCustomViewModel to add custom view models
    • Added AddCustomWorldModel to add custom world models
    • Added an automatic fix for badly coded addons that break the view model fingers
  • Added ttt_base_placeable entity that is used to handle any placeable / destroyable entity (by @TimGoll)
    • moved ttt_c4, ttt_health_station, ttt_beacon, ttt_decoy, ttt_radio and ttt_cse_proj to that base
    • also handles pickup of those entities
  • 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)
  • gameEffects library 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_unarmed which 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, radio weapons down from upstream (by @a7f3)
  • Updated help text for C4, defuser, flaregun, health_station, radio, knife, phammer, push, and zm_carry weapons (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 builtin weapons can now be configured to drop via Edit Equipment (by @EntranceJew)
  • Removed redundant checks outside of SWEP:DrawHelp, protected only SWEP: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_pinning and ttt_ragdoll_pinning_innocents into 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_flame is 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 developer convar (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 OnRemove to 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 false values (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 IsPlayer failing if a non-entity is passed to it (by @TimGoll)
  • Fixed draw.Arc when gmod_mcore_test is set to 1 (by @WardenPotato)
  • Fixed weapon help box width for wide bindings with short descriptions (by @TimGoll)
  • Fixed GM:TTTBodySearchPopulate using 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_healthstation as 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.AddFile calls, server operators should use the workshop version or manually bundle loose files.

Breaking Changes

  • Moved global shared EquipmentIsBuyable(tbl, ply) to shop.CanBuyEquipment(ply, equipmentName)
    • Returned text and result are now replaced by a statusCode
  • No more plymeta:GetAvoidRole(role) or plymeta:GetAvoidDetective()
  • Moved global TEAMBUYTABLE to shop.teamBuyTable and separated BUYTABLE into shop.buyTable and shop.globalBuyTable
    • Use new Accessors shop.IsBoughtFor(ply, equipmentName), shop.IsGlobalBought(equipmentName) and shop.IsTeamBoughtFor(ply, equipmentName)
    • Use new Setter shop.SetEquipmentBought(ply, equipmentName), shop.SetEquipmentGlobalBought(equipmentName) and shop.SetEquipmentTeamBought(ply, equipmentName)

v0.12.3b

08 Jan 09:18
b6df5f1
Compare
Choose a tag to compare

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 nil entries in a nearly sequential table
  • Added new hooks TTT2BeaconDetectPlayer and TTT2BeaconDeathNotify to 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 callback which 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 TTT2FinishedLoading hook not called on server on hot reload (by @TimGoll)
  • Shopeditor now correctly shows resetted and default values

v0.12.2b

20 Dec 16:01
5988942
Compare
Choose a tag to compare

Added

  • Added the beacon back into TTT2, an equipment that was disabled long ago in base TTT
    • Can only be bought by policing roles
    • Creates a wallhack in a sphere around it, which is visible to everyone
  • Added recognizable badge for builtin equipment and roles (by @EntranceJew)
    • Buy Equipment menu has builtin indicators, replacing the (C) custom marker decorating a majority of equipment
    • F1 > Edit Equipment now has builtin indicators on equipment
    • Added tooltip to F1 > Edit Equipment menu with the equipment's class name.
    • F1 > Role Settings now has builtin indicators for roles
    • F1 > Edit Shops now has builtin indicators for roles

Changed

  • Updated the Turkish localization file (by @NovaDiablox)
  • Radio can now only be picked up by placer
  • Radar now clears existing waypoints when removed or on changing role (by @EntranceJew)
  • Comboboxes can now handle numbers and strings as values
    • Defaults work now with numbers
    • OnChange-Callback is called with the correct type for ConVars

Fixed

  • Binoculars scan no longer gets interrupted when changing zoom level
  • Fixed missing water level icon breaking scoreboard
  • DNA Tester works now with more than one fingerprint on a weapon
  • TraitorButton config files should now actually work
  • Translation strings not rendering on detective's body search mode combobox
  • C4 defusal prompt now suggesting the right key
  • Disable to unscope from weapons without ironsights
  • Fixed typo preventing targetid from showing role icons correctly
  • Mitigated issue with CTakeDamageInfo becoming ephemeral outside their hook of origin
  • ttt_game_text can now properly send to "All except traitors", as described.
  • Fixed corpses not listing their kills
  • Comboboxes now show correct values for database driven entries
  • Database-Callbacks are now called with the correct valuetype

v0.12.1b

12 Dec 11:55
602850c
Compare
Choose a tag to compare

Added

  • Added a new fastutf8 library that provides faster utf8 functions (added by @saibotk, created by @blitmap)

Fixed

  • Fixed the UI being unable to handle wrapping text with non-utf8 languages that do not use ASCII whitespaces (by @TimGoll & @saibotk)
  • Fixed ttt_game_text not working due to a refactor
  • Fixed dete call HUD being invisible
  • Fixed edgecase where undefined killer angle or pos were accessed
  • Fixed fallback ammo icon missing
  • Fixed a null entity error in the miniscoreboard
  • Fixed missing bodysearch information if victim was killed without leaving a trace caused by a weapon hit

v0.12.0b

11 Dec 19:31
39f3505
Compare
Choose a tag to compare

Added

  • Added the ability to edit slider numbers directly via an input field by clicking on the number (by @NickCloudAT)
  • Added a new way to alter player volume separately from the scoreboard (by @EntranceJew):
    • VOICE.(Get/Set)PreferredPlayerVoiceVolume for setting the voice volume instead of Player:SetVoiceVolumeScale
    • VOICE.(Get/Set)PreferredPlayerVoiceMute for setting the voice mute instead of Player:SetMuted
    • VOICE.UpdatePlayerVoiceVolume commits / updates the voice setting according to player preferences
  • Added client submenu options for clients to change audio settings under F1 > Gameplay > General (by @EntranceJew):
    • Added a convar ttt2_voice_scaling to control voice volume scaling, options like "power4" or "log" cause the volume scaling to have a greater perceptual impact between discrete volume settings.
    • Added convars ttt2_voice_duck_spectator and ttt2_voice_duck_spectator_amount to lower spectator voice volume automatically.
      • A value of 0.13 ducks someone's volume at 90% down to effectively 78%, according to the client's scaling mode.
  • Added the option for DButtonTTT2 to have an icon next to the title (by @TimGoll)
  • Added a cached equipment item icon to its table as .iconMaterial (by @TimGoll)
  • Added a new bodysearch library that handles the search (by @TimGoll)
  • Completely reworked the body search UI (by @TimGoll)
    • new UI that fits the UI rework
    • added player model to UI
    • highlighted player role and team in the UI
    • redesigned data list so that everything can be seen without clicking through a list
    • added more details to list like: water level, ground type, kill distance, kill direction, hit group, last damage amount
    • The UI is now more responsive, it is updated when the server changes states on the body and timers are updated live in the UI
  • Added that the healthbar will pulsate when below 25% health. Toggleable in F1 Menu (by @NickCloudAT)
  • Added new menu section in F1 menu under Appearance > Hud Switcher for HudElement based features (by @NickCloudAT)
  • Brought in code files for ttt_hat_deerstalker, weapon_ttt_phammer, ttt_flame, and weapon_ttt_push.
  • Translated all strings still needed to german (by @NickCloudAT)
  • Added new sidebar information, when the scoreboard is open (by @TimGoll)
  • Added keybinding information to the bottom of the screen (by @TimGoll)
    • Can be disabled in Appearance->Interface
    • Shows binding name when scoreboard is opened
  • Added option to render rotated text on screen (by @TimGoll)
  • Added TTT2GiveFoundCredits hook for preventing / overriding the transfer of credits from a body to a player (by @Spanospy)
  • Added Ukrainian translation from base TTT (by @ErickMaksimets)
  • Added Swedish translation from base TTT (by @Kefta)
  • Added Turkish translation (by @NovaDiablox)
  • Added ttt_dropclip to drop loaded ammo from your active weapon. (by @wgetJane, implemented by @EntranceJew)
  • Added window flash and noise to alert players they're being revived (by @EntranceJew)
  • Added sql database access to panel elements
    • DNumSliderTTT2, DCheckBoxLabelTTT2, DComboBoxTTT2
  • Added dashing to propspec (by @TimGoll)
  • Added new functions to database module
    -database.SetDefaultValuesFromItem(accessName, itemName, item)

Changed

  • Changed sprint stamina to also consume while in air
  • Updated Simplified Chinese and Traditional Chinese localization files (by @sbzlzh):
    • Add the missing L.c4_disarm_t translation in C4
    • Remove redundant string translations and spaces
    • Added all new translation strings
  • Updated file code to read from data_static as fallback in new location allowed in .gma (by @EntranceJew)
  • Scoreboard now sets preferred player volume and mute state in client's new ttt2_voice table (by @EntranceJew)
    • Keyed by steamid64, making it more reliable than UniqueID or the per-session mute and volume levels.
  • Changed the body search convars and reworked the UI accordingly (by @TimGoll)
    • Moved ttt2_confirm_detective_only and ttt2_inspect_detective_only to a new covar: ttt2_inspect_confirm_mode
      • mode 0: default mode, normal TTT. Everyone can search and identify corpses. However now a player has to be confirmed first to take credits
      • mode 1: everyone can see information, but only public policing roles can actually confirm bodies
      • mode 2: only public policing roles can see informatiom. They have to confirm bodies so that other people are able to see this information as well
    • to comply with mode 1 and 2 now everyone is able to see in the targetID if a player was searched by a public policing role
  • renamed search_result to bodySearchResult which contains the search result data
  • changed the credit text color from yellow to gold (by @TimGoll)
  • Updated the disguiser to make it more clear in the HUD if it is enabled or not
  • Updated the equipment HUD help boxes in a new style and added missing help boxes (by @TimGoll)
  • Changed LMB press behavior in observer mode to iterate backwards through player list instead of slecting a random player (by @TimGoll)
  • Improved translation of some Simplified Chinese strings (by @TheOnly8Z)
  • Dropping ammo with ttt_dropammo drops from reserve ammo instead of your active weapon's clip (by @wgetJane, implemented by @EntranceJew)
  • Added item name for ttt_hat_deerstalker (by @EntranceJew)
  • Changed syncing of database module to use whole tables instead of custom method
  • Replaced equipmenteditor syncing with database module
  • Replaced internal equipment syncing with database module
  • Moved reset buttons onto the left (by @a7f3)
  • Added ammo icons to the weapon switch HUD and player status HUD elements (by @EntranceJew)
  • Changed the disguiser icon to be more fitting (by @TimGoll)

Fixed

  • Fixed prediction of the sprinting system, for high ping situations (by @saibotk, thanks to @wgetJane)
  • Fixed removing the convar change callback in DComboboxTTT2, DCheckBoxLabelTTT2, DNumSliderTTT2 (by @saibotk)
  • Multiple internal fixes
    • biggest teamkiller award should now work
    • item model caching should now work properly
    • role info popup for traitors should now show teammembers again if the traitor shop is disabled
    • pon and table libraries got a small fix respectively
    • the shop and roleselection now reference roles.INNOCENT instead of the removed INNOCENT global, same for TRAITOR and DETECTIVE
    • Fixed wrong translation % in F1-Menu when changing language (by @NickCloudAT)
  • Fixed disguiser breaking UI on hot reload (by @TimGoll)
  • Fixed blurred box rendering for boxes not starting at 0,0 (by @TimGoll)
  • Optimized allocations by using global Vector / Angle when possible
  • Fixed spectated entity not being reset properly which can cause issues (by @TimGoll)
  • Optimized allocations by using global Vector / Angle when possible.
  • Fixed the dynamic armor damage calculation being wrong when damage can only get partially reduced
  • Fixed propspec inputs behaving sometimes unexpectedly (by @TimGoll)
  • Fixed ComboBoxes not working with integer values (by @NickCloudAT)
  • net.SendStream() can now also handle tables larger than 256kB, which exceeded the maximum net receive buffer
  • Fixed nil value of SetValue in DNumSliderTTT2 , DCheckBoxLabelTTT2. And fix nil value for boxCache[name] in PlayerModels (by @sbzlzh)
  • Prevent weapon_tttbase Lua errors with NPCs (by @BuzzHaddaBig in base TTT)
  • Fix miniscoreboard HUD from showing confirmed players that switched to spectator as having been revived (by @EntranceJew)

Deprecated

  • Deprecated AccessorFuncDT(), Addons should remove the function call and replace DTVar() calls with NetworkVar()

Removed

  • Removed ttt_confirm_death and ttt_call_detective as they are now handled via proper net messages
  • Removed spectator texts from the UI in favor of the new key binding information (by @TimGoll)
  • Removed double tap sprinting, for easier prediction handling (by @saibotk)
  • Removed explicit "Sprint" key bind, please use the GMod native sprint key binding (by @saibotk)
  • Removed unused clientside Player.preventSprint flag (by @saibotk)

v0.11.7b

27 Aug 19:55
c0a717a
Compare
Choose a tag to compare

Added

  • Added a new font in default_skin.lua to fit the localization (by @Satton2)
  • Fixed knife death effect being permanently applied on every following death
  • Added PANEL:MakeTextEntry(data) to DFormTTT2 for strings or string-backed cvars (by @EntranceJew)
  • Allow admin spectators to enter "Spawn Edit" mode. (by @EntranceJew)
  • Added cvar ttt2_bots_lock_on_death (default: 0) to prevent bots from causing log-spam while wandering as spectators. (by @EntranceJew)
  • Added TTT2ModifyFinalRoles hook for last minute opportunity to override role distribution prior to them being announced for the first time (by @EntranceJew)
  • weapon_tttbase:
    • Added SWEP:ShouldRemove to facilitate intercepting SWEP:Remove (by @EntranceJew)
    • Added SWEP.damageScaling for weapons that utilize ShootBullet (by @EntranceJew)
  • Edit Equipment Menu
    • AllowDrop can now be overridden per-weapon (by @EntranceJew)
    • Kind can now be overridden per-weapon (by @EntranceJew)
    • overrideDropOnDeath now permits forcing weapons to be dropped instead of removed on death (by @EntranceJew)
    • "Damage Scaling" editable under "Balance Settings" (by @EntranceJew)
  • vgui.CreateTTT2Form passes the name on so that it can be accessed via Panel:GetName() (by @EntranceJew)
  • Added two GAMEMODE hooks to provide the ability for additional addons to extend role/equipment menus.
    • GM:TTT2OnEquipmentAddToSettingsMenu(equipment, parent)
      • Called after ITEM:AddToSettingsMenu(parent).
    • GM:TTT2OnRoleAddToSettingsMenu(role, parent)
      • Called after ROLE:AddToSettingsMenu(parent)

Changed

  • weapon_tttbase:
    • Removal of SWEP.IronSightsTime as it was completely unused and conflicts with a networked value intended for the same purpose
    • Commented-out default values for SWEP.IronSightsPos and SWEP.IronSightsAng to match vanilla TTT behaviour
      • SWEPs can still use these names as normal, they just don't have a base value to inherit anymore
  • Updated Russian and English localization files (by @Satton2):
    • Updated strings in English localization file
    • Localized outdated and new strings into Russian
  • Updated all localization files (by @Satton2):
    • Added missing and new strings
    • Marked (out-) updated strings
    • Removed some duplicated strings
    • Removed some old unused strings
    • Fixed some broken source strings (line names)
  • Simplified Chinese and Traditional Chinese localization updates (by @sbzlzh):
    • Update Simplified Chinese Translation
    • Improve translation (by @TheOnly8Z)
  • Localization parameters for {walkkey} + {usekey} prompts made into the predominant style.

Fixed

  • Fixed hotreload of TTT2 roles library by a fresh reinitialization
  • Fixed a wrong localization line call in roles.lua (by @Satton2)
  • Fixed +zoom bind
  • Fixed ttt_quickslot command
  • Fixed an issue in table.GetEqualEntryKeys when nil is provided instead of a table. (by @sbzlzh):
    • This fixes spawn problems on maps with invalid spawn points
    • This fixes errors in the F1 Menu language selection
  • Fixed the check for dynamic armor being inverted (1 disabled it, 0 enabled it)
  • Fixed two unmatched ConVars in performance menu (by @NickCloudAT)
  • Fixed Round End Scoreboard (Round Begin) error if a player disconnected while round with no score events (by @NickCloudAT)
  • Fixed behavior of entspawn.SpawnRandomAmmo to produce non-deagle ammo. (by @NickCloudAT, mostly)

New Contributors

Full Changelog: v0.11.6b...v0.11.7b

v0.11.6b

25 Sep 19:11
2f2a698
Compare
Choose a tag to compare

Changed

  • Fixed and updated the Chinese translation file (by @sbzlzh)
  • Updated Japanese translation (by @westooooo)
  • Updated Simplified and Traditional Chinese (by @TEGTianFan)
  • Add placeholder message to the ingame ttt2 guide (F1 Menu)

Fixed

  • Fixed the spawn editor tool not having a TargetID in some scenarios by always rendering the 'ttt_spawninfo_ent' (by @NickCloudAT)
  • Roleselection for a lot of roles now considers all possible subroles one after another
  • Fixed portuguese translation of the equipment editor not working