Creator Studio is a fully functional creator tool that allows you to create, save and publish any custom training mode you can think of, on any map, in any situation you can think of.
Published Sets go to the Community Hub for all of the community to use!
Getting Started:
.creatorstudio
.dev
.addarena name-here
.addspawn
.addbot
.save name-here
.publish
and confirm it
¶ Aim Training Mode Commands |
|
---|---|
.ammomode |
Toggles between sv_infinite_ammo 1 and 2 |
.armor |
Set bot kevlar mode |
.autoreset |
Toggles automatically restarting if you die |
.blood |
Toggle blood |
.bothealth |
Set bot health |
.canduck |
Set bots can duck |
.canjump |
Set bots can jump |
.canrush |
Set bots can rush |
.canshoot |
Set bots can shoot |
.canspin |
Set bots can 360 no scope you with awp (kennyS peek) |
.canturtle |
Set bots can turtle peek (Crouch peek) |
.canutil |
Set bots can throw utility |
.cold |
Sets Creator Studio to Smart mode at 75% of your elo, but doesn't alter your elo until you reach 100% of it |
.comp |
Sets Creator Studio to Competitive mode (Uses the default settings provided by the creator of the set) |
.countdown <num> |
Change amount of time before arena starts |
.creatorstudio |
Loads creator studio |
.delay |
Amount of delay between bot swings |
.easy |
Sets bots to easy difficulty |
.elo <(optional)elo> |
Prints your elo to chat, optionally takes a elo param to set your practice settings to desired elo |
.endless |
Play back current arena endlessly |
.expert |
Sets bots to expert difficulty |
.hard |
Sets bots to hard difficulty |
.help |
Prints all the commands into your console |
.impacts |
Toggles sv_showimpacts |
.load <setid> |
Loads a custom set |
.map mirage |
Change map to de_mirage, replace the map with other maps |
.mysets |
Prints your personal Sets in console |
.n |
Goes to next Arena (only in Practice mode) |
.nightmare |
Sets bots to nightmare difficulty |
.nohud |
Toggles ELO hud print during smart mode |
.normal |
Sets bots to normal difficulty |
.nospread |
Toggles nospread on/off |
.offangle <0-500> |
Spawns each bot that doesn't have a specific .botdisplacment with a random displacement |
.p |
Goes to previous Arena (only in Practice mode) |
.pistol |
Toggles giving players pistol only |
.playerhealth |
Set player health |
.prac |
Sets Creator Studio to Practice mode (You can change the settings yourself) |
.presets <(optional)name> |
Lists all setting presets saved for the active set. Or loads a specific preset by name |
.pvp |
To enable player vs player |
.pvpmode |
To cycle pvp modes (Default / No Respawn) |
.pvputil |
Toggles giving players utility or not |
.random <0-100> |
Set the percentage of bots to spawn per arena (100 by default) |
.reaction |
|
.repeat <index> |
Repeats the same arena over and over |
.repeekreaction |
Set reaction time of static bots |
.replay |
Shows replay of current arena |
.replays |
Toggle whether or not utility arenas should show bot replay |
.sets |
Prints your subscribed Sets in console |
.showpath |
Toggle beam paths if there are any |
.smart |
Sets Creator Studio to Smart mode (Automatically adjusts the difficulty based of your skill) |
.start or .s |
Starts arena |
.stop or .l |
Stops arena |
.swingers |
Set amount of swingers |
.t or .ct |
Change teams to use your gun skins |
.weapon-name |
Changes weapon (example .m4 will give you the m4a1s) |
.xray |
Toggles xray (Only during .prac or .dev) |
¶ Creation Commands |
|
---|---|
.addarena <name> |
Creates an arena with the name you provide |
.addbot <(optional)swingdirection> |
Adds a BOT spawn (Can use swing direction as a parameter, check .botdir command) |
.addbotgroup <name> |
Add new bot group |
.addsmoke |
Adds a smoke that lasts forever during the arena (At aim) |
.addspawn |
Adds a player spawn |
.aimoffset <maxoffset> |
Sets the amount of distance the bot can be off target when aiming (With .cansway enabled) |
.aimspeed <speed> |
Set the bots aim speed when aiming towards a player |
.autobhop |
Toggles sv_autobunnyhopping for set |
.alwaysspawnlastbot |
Always spawns the last bot index no matter what arena settings (Even if random order is on etc..) |
.arenaname <name> |
Renames selected arena |
.arenas |
Prints all or <index> arenas in console |
.arenas <index> |
Takes you to the arena index specified |
.arenaswingers |
Set the amount of swingers per arena |
.arenateam <CT/T/Any> |
Forces player onto the set team when arena starts |
.arenatype |
Set arena type (AWP, Rifle, Any, Movement, Utility, Spray, Smoke) |
.bhop |
Toggles sv_enablebunnyhopping along with sv_airaccelerate set |
.botalwaysduck |
Set bot always duck |
.botalwaysturtle |
Set bot always turlte peek |
.botdir |
Set bot swing direction (None, Left, Right, Wackamole, Forward, Backward, Recording, KZ) (None uses .repeekreaction as their default reaction time) |
.botdisplacement <index> <amount> |
Add amount of units a bot can be displaced by when it spawns (0 for no displacement, which is default) |
.botduck |
Set bot can duck |
.botgun gun-name |
Sets bot gun |
.botjiggle |
Set bot can jiggle peak |
.botjump |
Set bot can jump |
.botmaxdelay <delay> |
To add maximum swing delay per bot |
.botmindelay <delay> |
To add minimum swing delay per bot |
.botpeekgroup |
Sets which spawn point this bot should peek (used for duos/trios for more consistent action for all players involved) |
.botpos |
Update BOT position |
.botrush |
Turns the bot into a real bot whenever it spots you or finishes its swing |
.botutil |
Sets the bots utility to your most recent thrown utility |
.botutiltest |
Tests the bots utility (if set by .botutil) |
.botwidest |
Set bot widest swing |
.breakvents |
Set whether or not vents/glass should break when arena starts |
.canpeekbeforeutil |
Allow bots to peek before they throw their set utility |
.canspray |
Set bots can spray |
.cansway |
Set bots can sway (Be inaccurate with their aim) |
.clear |
Clear active utility in dev mode |
.clearfailzones |
Clears fail zones |
.clearpath |
Clear the entire path |
.clearsmokes |
Clears all arena smokes added by .addsmoke |
.competitivearena |
Toggles whether or not this arena should be included in .comp mode |
.delarena |
Delete arena |
.delbot |
Delete bot |
.delbotgroup |
Delete bot group |
.delpath |
Delete latest path point |
.delpreset <name> |
Deletes a setting preset for the active set by name |
.delspawn |
Delete spawn point |
.delfailzone |
Delete a failzone you're standing in |
.dev |
Loads the developer mode to make, save and publish Sets |
.dodgespeed <speed> |
Set the bots dodge aim speed when hes aiming away from a player (To dodge a flashbang) |
.doorstate |
Set what state doors should be in as your arena starts (Closed, Open, Destroyed) |
.drawpath |
Draw a new point of the path for the player to follow during the arena |
.drawfailzone <checkpoint> |
Draws a zone that will reset the arena when entered (If checkpoint is enabled then player will be teleported to his last jump position) |
.dupearena <name> |
Duplicates selected arena |
.dupebot <index> |
Duplicates a bot by index |
.dupebotgroup <name> |
Duplicates selected bot group |
.dupespawnpoint <index> |
Duplicates a spawn point by index |
.exportsettings |
Print a setting string to console |
.importgrenadegroup <grenadegroupid> |
Creates arenas out of every grenade in a grenade group |
.importsettings |
To import settings from a string |
.jiggles |
Max amount of jiggles a bot can perform |
.kzprop <model> <scale> <health> <type> <typeval1> <typeval2> <r> <g> <b> <a> |
Adds a prop at your crosshair. A model list will be printed by typing the command without any parameters. Any model that exist on the map as a physics/dynamic prop will also work, you can find these in hammer/source2viewer
Props can be moved by holding E(Use) and moving your mouse Props can be moved back and forth by holding E(Use) and pressing Mouse1 (ATTACK1) or Mouse2 (ATTACK2) Props can be rotated by holding R(Reload) and moving your mouse Hold R and Mouse1 (ATTACK1) to rotate around another axis Hold R and double click Mouse2 (ATTACK2) to cycle between predefined rotations |
.kzpropdel |
Deletes a prop at your crosshair |
.kzpropcolor <r> <g> <b> <a> |
Sets the color of prop at your crosshair |
.kzpropscale <scale> |
Sets the scale of prop at your crosshair |
.kzprophealth <health> |
Sets the health of prop at your crosshair (0 for indestructible) |
.kzproptype <normal/bhop/launch/break> <typevalue1> <typevalue2> |
Sets the type of prop at your crosshair. Bhop: Fades out the prop after <typevalue1> amount of seconds, and resets it back to normal after <typevalue2> amount of seconds Launch: Launches the player horizontally by <typevalue1> amount of force and vertically by <typevalue2> amount of force Break: Breaks the prop after <typevalue1> of seconds |
.kzgridpos <x> <y> <z> |
Sets the amount of units props should snap to when moved around, set it to 0 0 0 for no snapping |
.kzgridang <amount> |
Sets the amount of units props should snap to when rotated around |
.kzgridautosnap |
Toggles auto snapping (Will automatically set .kzgridpos to the selected props scale in each dimension) |
.kzpropsclear |
Clears all props |
.maxjiggle |
Max amount of time in seconds bots can swing during jiggle peek |
.maxjiggledelay |
Max amount of time in seconds bots can hide during a peek |
.maxspawns |
Set max amount of bot spawns (Overall) |
.maxspawnsarena |
Sets max amount of bot spawns (For specific arena) |
.maxspray <bullets> |
Max amount of bullets a bot can spray in one spray |
.maxwide |
Max amount of time in seconds bot can swing |
.minjiggle |
Min amount of time in seconds bots can swing during jiggle peek |
.minjiggledelay |
Min amount of time in seconds bots can hide during a peek |
.minspray <bullets> |
Min amount of bullets a bot can spray in one spray |
.minwide |
Min amount of time in seconds bot can swing |
.playerprimary gun-name |
Sets player primary gun |
.playersecondary gun-name |
Sets player secondary gun |
.publish |
Prompts you with process to Publish your Set |
.randomarenas |
Randomize arenas |
.randombotgroups |
Randomize bot groups |
.randombotorder |
Randomize in which order bots are spawned (Great for PVP duels) |
.revert |
Revert you changes to your arena |
.save name-here |
Saves Set name |
.savepreset <name> |
Saves a setting preset for the active set |
.setreplay |
Sets the replay of this arena. (It will use the replay of the most recent arena you played) |
.spawnpos |
Update spawn position |
.swaparena <index1> <index2> |
To swap arena order |
.swapbot <index1> <index2> |
To swap bot order |
.swapbotgroup <index1> <index2> |
To swap bot group order |
.swapspawn <index1> <index2> |
To swap spawn order |
.swingorder |
Set bot swing order (Random or Constant) |
.takedamagereset |
Resets the arena if any damage is taken |
.testreplay |
Tests the replay of selected arena |
.testsmokes |
Test spawns all smokes for selected arena |
.timed <seconds> |
Set the max amount of time you have to complete the specific arena |
.update |
Update current set |
.utilchance <chance> |
Chance the bot can throw their util (1 would mean 100%) (1 in 1) |
.utilcooldown <seconds> |
Cooldown until next utility can be thrown by a bot |
.utilgoal <index> |
Sets the utility goal to whatever grenade you most recently threw |
.utilgoalreq <index> <10.0 - 100.0> |
Sets the required accuracy in percentage to pass the arena |
.utilgoalsize <index> <5.0 - 50.0> |
Sets the size of the utility goal |
.utilmode <normal/mixed/ordered> |
Sets the way util is thrown by bots. Normal = Bot throw their set utility as normal when they swing. Mixed = Any bot can be assigned to any other bots utility Ordered = Utility will be thrown in same order no matter what other settings are applied (Such as .swingorder) |
.zonedraw <index> |
Start drawing a zone for a specific spawn point (On movement arenas this is the goal, on utility arenas this is the zone you're locked inside of) |
.zonetype <index> |
Sets the type of zone (Box, Circle, Roam) |
To start creating your own arenas, enter developer mode by typing .dev
A custom set is the term of the entire collection of arenas on a specific map, a custom set contains all your arenas, your arenas contains bot groups and player spawn points, and your bot group contains bot positions and settings
Using bot groups is optional, every arena you create comes with a DEFAULT bot group, but if you want to add unpredictable bot spawns, creating multiple bot groups per arena is necessary to make full use of the .randombotgroups
command which shuffles which bot group is played per arena
To start our creating your own arena, type .addarena <arenaname>
in chat, this will automatically select your newly created arena aswell, as you add bots or spawn points to this arena, you will see visual indicators appear
To add player spawn points to you arena, type .addspawnpoint
You can make use of .drawpath
to draw points in your arena that creates a path for the player to follow
.delpath
will delete the latest point in the path you created, and .clearpath
will clear the entire path
Each arena you make using .addarena
add a bot group aswell by the name DEFAULT, this cannot be removed but it can be swapped out with the .swapbotgroup
command
To create additional bot groups to your arena, use the command .addbotgroup <botgroupname>
, this will automatically select your newly created bot group
Adding bots to your bot group using the command .addbot
This will add a bot to your selected arena/bot group
The .botwidest
command is probably the most important command when it comes to adding bots that swing you
Imagine you're the bot and whenever this widest swing position is in line of sight, you will stop to camp this position until a player enters your field of view, this is to make sure your bot doesn't swing indefinitely
Green line indicates the set bot widest angle, orange sphere would be the bot (Illustration by czaaje)
Using this command will set the widest swing position to your eye position wherever you're currently standing
The .botpeekgroup
command can be useful for multiplayer arenas
Imagine you have an arena of 8 bots and 2 spawn points, and 4 of the bots will peek Player 1 and the remaining 4 bots will peek Player 2
If the peek group of all bots are set to 0, Player 2 could get unlucky and get no bots peeking him while Player 1 is getting all the 4 bots in a row
However setting the peek group of Player 1's bots to 0 and setting the peek group of Player 2's bots to 1, will cycle between a random bot from each group every time a new bot spawns/peeks
To view all your arenas, bot groups or bots you can make use of the command .arenas
. This will list all your arenas and settings to your console.
To view/select a specific arena, simply add the index of your arena to the same command .arenas 0
If you only pass in the index of an arena to the command, it will automatically select the DEFAULT bot group, passing a bot group index will select that specific bot group .arenas 0 1
As you add bots and player spawn points, CT and T player models will appear along with a green beam, the number above the player models head indicates their index, which is used when modifying the position or behaviour of the bot or player spawn
The bot index will also display above their head during playback of the arena in .dev
mode which can be useful for debugging your bots
Whenever you save or update your custom set, your current settings will save along with the set, you can view these settings using the .arenas
command
To save your set, use the command .save <setname>
To update your current set, use the command .update
To publish your set on the community hub, use the command .publish
(NOTE: This cannot be reverted, once published, its published)
If you're playing another users set and you would like to modify it or create your own version of it, you can always save it as your own using the .save
command
I accidentally overwrote my set with garbage data, is there anyway I can recover it?