Skip to content

Releases: TTT-2/TTT2

v0.10.3b

29 Oct 09:30
abad403
Compare
Choose a tag to compare

Fixed

  • Fixed the hook scope in the disguiser causing an error
  • Fixed the classic entity spawn mode breaking on maps without all three spawn types
  • Fixed weapons not using their average firerate with a tickrate dependent fix. Function SWEP:SetNextPrimaryFire(nextTime) was overwritten with our fix SWEP:SetNextPrimaryFire(nextTime, skipTickrateFix)

Changed

  • Added new param skipTickrateFix to SWEP:SetNextPrimaryFire(nextTime, skipTickrateFix) to skip our inbuilt tickrate fix

v0.10.2b

21 Oct 16:28
d7e235e
Compare
Choose a tag to compare

Added

  • Added a new hook GM:TTT2ModifyRadioTarget to modify the current radio target
  • Added documentation to all hooks

Fixed

  • Fixed the reset button not working for Sliders in the F1 Menu
  • Fixed defuser only working for detectives
  • Fixed some weapon packs like ArcCW to be working again, weapons are now initialized with ttt2 variables after the InitPostEntity hook
    Note: This might only take effect after a reinstall or a reset of the server; if you don't want to reset your server, you have to change the spawnability manually in the equipment editor or delete the sql table "ttt2_items" of the sv.db to force a reset only on equipment

Changed

  • Changed the Sliders to only update after dragging ends, no matter where you clicked on the slider before dragging
  • Changed TTTPlayerUsedHealthStation hook, return false to cancel health regeneration tick
  • Changed all C4 hooks to be cancelable

Removed

  • Removed old concommand shopeditor and the old shopeditor

Breaking Changes

  • Renamed hook GM:TTT2CheckWeaponForID to GM:TTT2RegisterWeaponID better fitting its purpose as its probably nowhere used yet anyway

v0.10.1b

15 Oct 10:29
4340abf
Compare
Choose a tag to compare

Fixed

  • Fixed Playermodels not correctly loading changes on game start
  • Fixed setting defaults before assigning a resetButton not throwing an error anymore
  • Fixed invisible preview for entity spawn placements

v0.10.0b

14 Oct 07:15
5c5cf9f
Compare
Choose a tag to compare

Added

  • Added a new scoring variable named score.survivePenaltyMultiplier to punish surviving players of a losing team
  • Added in game spawn editor system that can be found in F1->Administration
  • Moved all TTT weapons to this repository (with cleaned up code)
  • Added in four new libraries
    • map: A library which handles map specific data
    • entspawn: A library that handles the spawning and spawns of all entity types
    • entspawnscript: A library that handles the new TTT2 entity spawn script to customize spawns
    • plyspawn: A library that builds on top of entspawn to handle the more complex player spawn (originally named spawn, see Breaking changes)
  • Added a new submenu to the administration settings regarding basic role setup
  • Added a new menu to the F1 menu to set up and configure all installed addons
  • Added two new hooks to modify the contents of the newly added menu
    • ROLE:AddToSettingsMenu(parent)
    • ROLE:AddToSettingsMenuCreditsForm(parent)
  • Added a new in-game player model selector
    • Added new convars that can change the way playermodels are selected (these can be found in the gamemode menu)
    • Added a new ConVar ttt2_use_custom_models (def: 0) to enable the custom player model selector
    • Added indicator that shows if a model has a headshot hitbox
    • Added possibility to enable/disable detective hats for individual player models
  • Added a new admin only menu for server addon settings
  • Added automatic default values for serverConVars
  • Added two new role variables:
    • isPublicRole: This makes the role behave like a detective in such a way, that the role is public known and shown in the scoreboard. This means other roles can use this without special role syncing; additionally roles with that flag will be handled like a detective if killed by an 'evil' role, meaning that they will receive a credit bonus
    • isPolicingRole: This rolevar adds all "detective-like" features to the detective, for example the ability to be called to a corpse etc.
  • Added two new role conVar variables:
    • creditsAwardDeadEnable: To award this role if a certain percentage of players from the enemy teams died
    • creditsAwardKillEnable: To award this role if they killed a high value public role

Changed

  • Split up kill, suicide and teamkill in the round end screen to make it more clear
  • Decreased the minimum cost of equipment in the equipment editor to 0
  • Changed disguise such that every role can now use the function
  • Completely reworked how weapons, ammo and players spawn in the world
  • Sliders only update ConVars on mouseRelease now
  • Changed the way credits on kills are distributed in a way that non-default roles can easily use this as well

Breaking Changes

  • Removed the (unused?) ConVar ttt2_custom_models
  • Removed the function GetRandomPlayerModel(), use playermodels.GetRandomPlayerModel() instead
  • Renamed the spawn module to plyspawn
  • Hook PlayerSelectSpawn doesnt return a spawnEntity anymore
  • SpawnWillingPlayers is deleted and not available anymore
  • renamed the ttt_credits_starting to ttt_traitor_credits_starting to be more in-line with all other roles
    WARNING: This means that every traitor now starts with 0 credits until the convar reset button is pressed (on existing servers)
  • removed the alone_bonus convar because it only complicated the credits system further without adding much benefit

v0.9.3b

25 Sep 17:10
c8f803a
Compare
Choose a tag to compare

Added

  • Add Traditional Chinese Translation (by @TEGTianFan)
  • Added a searchbar to submenus
  • Added full-sized icons to the equipment-editor
  • Hotreload functionality for weapons, they are now fully compatible to TTT2 after hotreload
  • Added experimental SWEP.HotReloadableKeys a list of strings to weapons, that makes data saved with weapons.GetStored() persistent across hotreloads
  • Extended cvars library to support manipulation of serverside ConVars
  • Added possibility to manipulate serverside ConVars with Checkboxes and Sliders
    • Just add .serverConvar with the conVarName to the given data similar to .convar

Fixed

  • Updated Japanese translation (by @westooooo)
  • Fixed text positioning in pure_skin bar (by @LukasMandok)
  • Fixed data being not persistent after hot reloading
    • HUDs are now still available
    • ttt2net keeps its data
    • bindings are not lost on reload

Changed

  • Revise and additions simplified Chinese (by @TEGTianFan)
  • Prevent spectators from gathering info on players if they're about to revive (by @AaronMcKenney)
  • ROLE_NONE does not count as a special role anymore (by @TheNickSkater)

Internal Breaking Changes

  • Removed first argument of GetEquipmentBase(data, equipment), it only takes the equipment as argument now GetEquipmentBase(equipment) and generally merges it with EquipMenuData
  • Added equipment as argument to InitDefaultEquipmentForRole(roleData), it now only initializes the given equipment not all InitDefaultEquipmentForRole(roleData, equipment)
  • Added equipment as argument to CleanUpDefaultCanBuyIndices(), it now only initializes the given equipment not all CleanUpDefaultCanBuyIndices(equipment)

v0.9.2b

20 Jun 09:11
1d90aac
Compare
Choose a tag to compare

Fixed

  • Fixed low karma autokick convar
  • Fixed multi-layer inheritance by introducing a recursion based approach

v0.9.1b

19 Jun 15:54
a10b2e0
Compare
Choose a tag to compare

Fixed

  • Fixed shop convars not being shared / breaking the shop

v0.9.0b

19 Jun 13:37
daf58bb
Compare
Choose a tag to compare

Added

  • All new roundend menu
    • new info panel that shows detailed role distribution during the round
    • info panel also states detailed score events
    • new timeline that displays the events that happened during the round
    • added two new round end conditions: time up and no one wins
  • Added ROLE_NONE (ID 3 by default)
    • Players now default to ROLE_NONE instead of ROLE_INNOCENT
    • Enables the possibility to give Innocents access to a custom shop (shopeditor)
  • Karma now stores changes
    • Is shown in roundend menu
  • Added a new hook TTT2ModifyLogicCheckRole that can be used to modify the tested role for map related role checks
  • Added the ConVar ttt2_random_shop_items for the number of items in the randomshop
  • Added per-player voice control by hovering over the mute icon and scrolling

Fixed

  • Updated French translation (by @MisterClems)
  • Fixed IsOffScreen function being global for compatibility
  • Fixed a German translation string (by @Farlezz)
  • Fixed a Polish translation by adding new lines (by @wuker)
  • Fixed a data initialization bug that appeared on the first (initial) spawn
  • Fixed silent Footsteps, while crouched bhopping
  • Fixed issue where base innocents could bypass the TTT2AvoidGeneralChat and TTT2AvoidTeamChat hooks with the team chat key
  • Fixed issue where roles with unknownTeam could see messages sent with the team chat key
  • Fixed the admin section label not being visible in the main menu
  • Fixed the auto resizing of the buttons based on the availability of a scrollbar not working
  • Fixed reopening submenus of the legacy addons in F1 menu not working
  • TTT: Fixed karma autokick evasion
  • TTT: Fixed karma being applied to weapon damage even though karma is disabled

Changed

  • Microoptimization to improve code performance
  • Converted roles, huds, hudelements, items and pon modules into libraries
  • Moved bind library to the libraries folder
  • Moved favorites functions for equipment to the equipment shop and made them local functions
  • Code cleanup and removed silly negations
  • Extended some ttt2net functions
  • Changed bees win to nones win
  • By default all evil roles are now counted as traitor roles for map related checks
  • Changed the ConVar ttt2_random_shops to only disable the random shop (if set to 0)
  • Shopeditor settings are now available in the F1 Menu
  • Moved the F1 menu generating system from a hook based system to a file based system
    • removed the hooks TTT2ModifyHelpMainMenu and TTT2ModifyHelpSubMenu
    • menus are now generated based on files located in lua/terrortown/menus/gamemode/
    • submenus are generated from files located in folders with the menu name
  • Menus without content are now always hidden in the main menu
  • Moved Custom Shopeditor and linking shop to roles to the F1 menu
  • Moved inclusion of cl_help to the bottom as nothing depends on it, but menus created by it could depend on other client files
  • Shopeditor equipment is now available in F1 menu
  • Moved the role layering menu to the F1 menu (administration submenu)
    • removed the command ttt2_edit_rolelayering
  • moved the internal path of lang/, vskin/ and events/ (this doesn't change anything for addons)
  • Sort teammates first in credit transfer selection and add an indicator to them

Removed

  • Removed the custom loading screen (GMOD now only accepts http(s) URLs for sv_loadingurl)

Breaking Changes

  • Adjusted Player:HasRole() and Player:HasTeam() to support simplified role and team checks (no parameter are supported anymore, use Player:GetRole() or Player:GetTeam() instead)
  • Moved global roleData to the roles library (e.g. INNOCENT to roles.INNOCENT). INNOCENT, TRAITOR etc. is not supported anymore. ROLE_<ROLENAME> is still supported and won't be changed.
  • Shopeditor function ShopEditor.ReadItemData() now only updates a number of key-parameters, must be given as UInt. Messages were changed accordingly (TTT2SESaveItem,TTT2SyncDBItems)
  • Equipment shop favorite functions are now local and not global anymore (CreateFavTable, AddFavorite, RemoveFavorite, GetFavorites & IsFavorite)

v0.8.2b

26 Mar 15:37
76e41f2
Compare
Choose a tag to compare

Fixed

  • TTT: fix instant reload of dropped weapon (by @svdm)
  • TTT: fix ragdoll pinning HUD for innocents (by @Flapchik)
  • Fixed outline library not working

Changed

  • Added global alias for IsOffScreen function to util.IsOffScreen
  • Updated Japanese localization (by @Westoon)
  • Moved rendering modules to libraries
  • Assigned PvP category to the gamemode.

v0.8.1b

19 Feb 08:55
67346b0
Compare
Choose a tag to compare

Fixed

  • Inheriting from the same base using the classbuilder in different folders did not work
  • Fixed a docstring in the vskin module
  • Made TTT2CanTransferCredits hook a part of GM for API Documentation sanity