Left 4 Dead 2

Left 4 Dead 2

68 ratings
TrainingToolbox Guide
By ᴿᴱᴻᴱ™ and 2 collaborators
Skeet Hunters, level Chargers, Cut Smoker tongues or even play on the other team as infected and explore the map without getting kicked in versus for not attacking with your team. This is the main purpose of TrainingToolbox mutation. Do what ever you want and practice with your friends. Basicly its HSTM Training but map independent. Everything is controlled by chatcommands. Many chatcommands...
   
Award
Favorite
Favorited
Unfavorite
Playing TTB
Spawning an Infected on crosshair position (disabled training)
Spawning infected works in 2 ways. The first way is to spawn an infected on your crosshairs position with the chat command !infectedname e.g. !hunter. The second way is to create an infected spawn on your crosshairs position with an appended spawntime: !hunter 5. The spawntime has to be in a range of 5-60. The mutation will try to check if theres enough space for the infected to spawn. The spawning of the 2nd way will begin when you type !training once. You disable the training by typing it once more. The training will stop when you fall under 40 HP.

  • !hunter
  • !jockey
  • !charger
  • !smoker
  • !boomer
  • !spitter
  • !tank
  • !witch
  • !common

  • !riot
  • !ceda
  • !mud
  • !roadcrew
  • !jimmy
  • !clown
  • !fallen
Spawn an Infected every x seconds
Aim where you want the spawn to be and type !infectedname <5-60> e.g. !hunter 10 for one hunter every 10 seconds.
You start the spawning by typing !training. The limit for timed spawns is set to 32.

Start and stop the timed infected spawns
  • !training
Undo / redo Infected spawns
Attention: These commands are global. You should not remove the spawns of your friends.

  • !undo
  • !redo
  • !undoall
Loading and saving player positions
At player spawn your position gets saved. When you get incapped while training mode is active you will be spawned to this saved position. Set your own respawn position with the commands below.
These commands are also very usefull when you want to practice special jumps or even edge slides with the hunter.

  • !loadpos
  • !savepos
  • !startposition (saves positions for all survivors)
  • !saferoomtoggle (toggle between your current position and the chat command table near the saferoom)
Assistance for training mode
When you get capped by a special infected you might like !fastclear
While training is active this will check a second after you got grabbed by a special infected if you are still his victim. If so the infected will be killed but the training will not stop unless you fall under 40 HP.
Firearms and special weapons
  • !huntingrifle
  • !autosniper
  • !deagle
  • !pistol
  • !ak
  • !scar
  • !rifle
  • !chrome
  • !pump
  • !autoshotty
  • !spas
  • !smg
  • !silenced
  • !scout
  • !awp
  • !sg
  • !mp5
  • !m60
  • !grenadelauncher
  • !chainsaw
Upgrades
  • !explosive
  • !incendiary
  • !incendiaries
  • !explosives
  • !laser
Melees (Sharp)
It depends on the map which melees are available!

  • !machete
  • !fireaxe
  • !katana
  • !crowbar
  • !knife
  • !pitchfork
Melees (Blunt)
  • !golfclub
  • !pan
  • !bat
  • !cricket
  • !tonfa
  • !guitar
  • !riotshield
  • !shovel
Fire & Explosives
  • !propane
  • !gascan
  • !oxygen
  • !fuelbarrel
Throwables
  • !bile
  • !pipe
  • !molo
Health Items
  • !adrenaline
  • !pills
  • !defib
  • !medkit
Mariah Carryables
  • !cola
  • !gnome
Remove weapons manually
There are no "dropped" weapons on the ground in this mutation but when you want to remove weapons or items from your current loadout you can do this with following commands:

  • !strip
  • !stripall
Switch teams / play as infected
  • !kill
  • !becomehunter
  • !becomejockey
  • !becomecharger
  • !becomesmoker
  • !becomespitter
  • !becomeboomer
  • !becometank
  • !tankrockselector (In competetive configs you can select the type of rock you throw)
  • !toggleghostmode (I didnt manage to let you spawn with M1 yet)
  • !becomesurvivor
  • !spectate

Switch Infected variants/models
  • !witchvariant <1-2>
  • !tankvariant <1-3>
  • !huntervariant <1-2>
  • !smokervariant <1-2>
  • !boomervariant <1-2>
Skeeting tank rocks
Practice skeeting rocks is possible in many ways here...

  • A. You spawn a tank and wait for him throwing rocks.
  • B. You make a teammate to a human rockthrower (He has to type !rocklauncher. When he did that he can launch rocks with his melee.)
  • C. You create a rocklauncher. For this you aim on a position on the ground where is enough space. Type !rocklauncher <5-60> e.g. !rocklauncher 5
    You can change the launchdirection with !rocklauncherdir 0-3. Remove rocklaunchers with !undorocklaunchers
  • D. You tell your friend to type !becometank

Miscellaneous
  • !noclip
  • !ammo
  • !health
  • !healthall
  • !weaponstats
  • !skinswitch
  • !frags
  • !lerp
  • !autobhop
  • !checkbhops
  • !infammo
  • !god
  • !burninginfected
  • !toggledaytime (witches wander at daytime maps. Make her wander or sit..)
  • !tankthrowslogs
Print chat commands to chat
  • !commands
  • !melees
  • !weapons (displays available melees for current map)
  • !spawns
  • !misc
  • !debug
  • !guides
  • !infected
  • !version (displays current version of TTB)
Commentaries
  • !intro
  • !skeeting
  • !leveling
  • !crowning
  • !tonguecutting
  • !deadstopping
  • !stopcommentary
Only usefull for the (host)
  • !falldamagedebug
  • !penetrationtest
  • !boomerdebug
  • !smokerdebug
  • !tankdebug
  • !infernodebug
  • !meleedebug
  • !hitboxdebug
  • !escaperoute
  • !toggleparticles
  • !toggledummyangles
  • !eventdebug
Save/Load Presets
Once you have created some timed infected spawns, you can save them as a preset for later uses.

  • !savepreset <presetname>
  • !loadpreset <presetname>
Ping Tool
Sometimes explaining something is not enough. Let your student spectate you ( !spectate ) and point at important spots.

Use Ping Tool: (+attack) + (+zoom)

Usable every 4 seconds

Show others your Keypresses
Especially when teaching somebody the movement mechanics of the hunter it could be usefull to show the other person your keypresses. Use !showmykeys to toggle that feature.

Map Changer
A map switch can be done easily.

for the first map of Dead Center you can type

!map c1m2_streets

or

!map c1m1

Sidenote: TTB Comes with one little map called c17m17

Practice Ceiling Jump as Hunter
I included 2 maps with visible skybox boundries which you can switch to.
  • c2m1_highway_sky
  • c2m2_fairgrounds_sky


When you want to practice your sick ceiling jumps on a map which i didnt include, you can atleast create a ceiling marker. Aim to the sky and type !ceiling. When the marker got a "valid" position, a marker should appear. This might give you a little assistance.


Skybox boundaries, clips and playerclips
For the host, r_drawclipbrushes would always totally find to visualize clip brush work.
But all other clients would not see the map boundaries.
Thats why these chat commands spawn entities which are visible to everybody.
With following chat commands you can toggle visualisation of brush work on and off. Red clips are for all players, pink is only for survivors. In some cases fog will block your vision. You can toggle it on and off.

  • !sky
  • !clips
  • !playerclips
  • !fogoff
  • !fogon


Clips



Player clips



Skybox



Enabled Fog



Disabled Fog



Very usefull for hunter gameplay

Special thanks to the authors of propper and also thanks to wicket who helped me alot with propper and had the idea to use models for this usecase.
Convars
You can change console variables with following syntax:
!cvar variable=value
FAQ
Can I make achievements with this mutation?
Yes, you can make achievements in every mutation out there.

My scoreboard is not showing up.
The cause are point_commentary_node entities. These floating speech bubbles are able to play sound files when you +use them but also block the usage of the scoreboard while any of them exists on the map. These bubbles get killed when you start the training once. You can also remove them manually by typing !stopcommentary.

Laggy as Hunter
Its a game sided problem that local gameplay as a hunter will become laggy for some seconds when you jump off of a wall midair. There is nothing we can do about it.

I got a bug
Yeah thats fairly possible but please make sure that the source of the problem is not another vscript based mod. Disable every mod except TTB, restart the game and the mutation and when the error is still present, tell me how to reproduce it. When you find out which mod TTB is interfering with, i will check if theres a way to make them compatible.

Why are there only 2 maps with visible skybox boundries
Addonsize. I want to keep this addon as small as possible.

Where can I report bugs?
Comment section of this guide.

Why am i unable to spawn as infected?
You can spawn using Mouse1 being a ghost by given by the game.
You cannot spawn using Mouse1 having a ghost created by the mutation commands.
You can spawn having a ghost created by the game even when u changed your class by using mouse 2.
Known Issues
  • When the host is a survior and got capped by a hunter (real player) and the hunter leaves the game, the host will crash.
Survivor Bots
Adding survivor bots is possible, but only for testing purposes. They are not ment to be present while the training is active.

  • !bots 0/1 (enables/disables auto removal of bots)
  • !addbot (adds a bot from the current survivor set)
  • !dummy <Survivorname> e.g. !dummy Louis (add a survivor dummy from "The Passing")
  • !removebots (removes all bot controlled survivors)
  • !showdamage (display damage to chat)
Tanktoys
For repro of different tanktoy placements these commands will come very handy to you:


  • !respawntanktoys
  • !showtanktoys
  • !tanktoysalwaysvisible




Draw distance of tank rock
The draw distance of the tank rock depends on your "Effect Detail" setting in your video settings.
To test which big difference that makes you can spawn an example rock by aiming on the ground.
Play around with different effect settings and check when the tank rock fades away.

  • !examplerock
  • !distancetoexamplerock
Botpositioning
  • !movebot BOTNAME // bot walks to your crosshairposition
  • !movebots // all present bots walk to your crosshairposition
  • !savebotposition BOTNAME // save bots current position
  • !botsholdpositions // toggle for present survivors holding their saved position
Timescale
Changing the cvar host_timescale with !cvar host_timescale=x does not work for some reason.
So i used the workaround using func_timescale.
That entity is triggered by the following command:

!timescale 0.25 - 2
Tracers of throwables
With those custom cvars you can visualize the path the travelled path of throwables.

proj_tracer 0 proj_tracer_use_cubes 0 proj_tracer_clr "255 255 255"
Nav Information
With !showsaferoom you are able to see how big saferooms actually are.
When we speak about a room with an exit its quite obvious where the saferoom ends but when we think about blood harvest or deathtoll beginnings its another story.

How long are maps
You ever wanted to measure the length of a map and how long it would take to walk through it?
Use the command
!distancetest
to start measuring. When you are done you can use that command again to disable the test and to reset all values.
How fast is...
With the chatcommand !listenclass <classname> you can toggle the chat output of entities speeds.
Currently folliwing classes are supported:

vomitjar_projectile
pipe_bomb_projectile
molotov_projectile
spitter_projectile
tank_rock
Tankrockcamera
You can attach a camera onto your tankrocks when thrown.
Use !tankrockcamera to toggle this mode.
Check out where your rocks really land.
Throwable landing prediction
use !togglenadeprediction to get a tracer line which the throwable would follow.
Use TAB to toggle between your current perspective and the landing position.
(Dont use M1 yet when you dont want to release the throwable)
It is far from perfect. Use with caution.
19 Comments
J|M|P 13 Nov, 2024 @ 2:26pm 
Gotcha. Noticed tournaments have this feature to even out different pings on teams. I am sure someone needs practice on how to play on higher pings. It's an adjustment. I play horrible over 120 ping :steamhappy::health:
ᴿᴱᴻᴱ™  [author] 11 Nov, 2024 @ 11:41pm 
Fakeping in general is not a good way to practice imo. It does not really feel right and since vscript is server sided it will mess up the timings in logic.
I suggest a hosted server where TTB is installed.
J|M|P 11 Nov, 2024 @ 2:25pm 
can you add fakeping to train on high ping servers?
ᴿᴱᴻᴱ™  [author] 21 Apr, 2024 @ 11:12am 
@noingeractsion: it should be fixed
ᴿᴱᴻᴱ™  [author] 20 Apr, 2024 @ 7:16am 
@noingeractsion: Thanks for the bugreport. I also have this issue. I will fix it asap :)
ᴿᴱᴻᴱ™  [author] 17 Apr, 2024 @ 10:00pm 
screenshot pls
>< 3 Apr, 2024 @ 8:40am 
love it
ᴿᴱᴻᴱ™  [author] 26 Jul, 2023 @ 10:18pm 
players without weapons are t-posing which looks kinda silly :D (but possible)
You can controll their behavior with cvars tho.

sb_dont_bash : 1/0 : Force SurvivorBots to not bash
sb_dont_shoot : 1/0 : Force SurvivorBots to not fire their weapons


use !cvar sb_dont_shoot=1

in chat for instance
Angry bull 26 Jul, 2023 @ 5:42pm 
How do you make bots not have weapons ?
Heinz Kurtmann Tophoven 29 Nov, 2021 @ 7:29am 
thank you