User:Fisherboy800/Extra Advice for TF2Wiki Demonstrations
When creating weapon demonstrations I created a google document with information to help me optimize creating demonstrations in the future. I had to figure out most of this information myself to a good deal of frustration so I decided to create this page to help others out. This will get more thought out and better as I learn eventually but for now here I felt like starting it so I would later be able to hold it to myself to finish it. Keep in mind all of the teleport coordinates and specific looking direction advice aren't scientifically calculated so don't take them as gospel (they may be bad actually because they arent perfectly symmetrically alligned to placement of anything in the map). Sorry if someone already had a page similar to this, I looked over the wiki a little and the internet via google and did not find anything.
This in no way serves as replacement for the tutorial for creating a Demonstration on the official TF2Wiki Weapon Demonstration Project Page. This page acts as an extension to the information provided there for less explicit information of creating a demonstration video. Please refer to that page for a primary source of information as there are mass swabs of crucial information present there that will not be included on this page.
I am no where close to being an expert, there will be mistakes within this page. If you want to give me feedback or suggestions of how to improve this/add helpful advice please leave it in the discussion section of this page. I will be grateful for things as small as like making a sentence flow better to things as big as entire sections of advice you'd think people who may use this would look for.
Note: All coordinates are relative to the map tr_karma_wiki. They will work on tr_karma_event_wiki, but a few specific demonstrations may look better in different positions.
Contents
General Demonstration Tests
General Advice
- Create bots via the bot command rather than the tf_bot_add command. Bots made through the bot command are considered puppet bots which control commands like bot_mimic affect, otherwise they won't work.
- When naming bots, name all RED bots their class name and BLU bots "Friendly" then their class name. Generally, you should avoid using multiple of the same class for any given test, but if necessary just follow normal naming conventions with 1 and count upwards for each new bot.
- When using the bot command make sure to include quotation marks around your name, sometimes the commands will not include the class name without it when creating a bot leaving you with just "Friendly" (bot -team BLU -class Sniper -name "Friendly Sniper"
- Start recording several seconds longer than you need before you move and stand still several seconds longer than you need before ending recording. This is for several reasons:
- When applying transition effects you will need usually a longer period than originally thought for it to look natural. If you start moving too soon you can't splice in footage of you standing still because it will mess with audio, positioning, and other parts so it is best to just have more to work with.
- If you are like me and your hands slightly twitch when gripping the mouse you may move where you look before beginning action. When you have more footage you can detect yourself stuttering before moving in editing and cut those parts out instead of rerecording.
- If you twitch your hand when recording videos, try literally lifting your mouse up for demonstrations where you don't need to pan your camera so this motion doesn't mess up your recording.
- You do not have to change your profile to a generic class name/pfp when recording demonstrations.
- Probably something only I originally thought lol.
"bot_teleport" Coordinates for each target slot
- There are 8 standard target slots where bots are spawned in the "tr_karma_#bots" cfgs. Some demonstrations may call for different quantities, positions, and variations of these bots on these slots to properly show off mechanics. These commands can be used to teleport specific bots to these locations. (Note: Demonstrations don't always need to have bots located on these positions and may look better without.)
1: bot_teleport [Bot Name] 523.991028 -756.058411 65.031311 0.201400 -158.722244 0.000000 2: bot_teleport [Bot Name] 522.683228 -979.480591 68.031319 -0.034058 -179.718155 0.000000 3: bot_teleport [Bot Name] 524.009277 -1205.614502 68.031319 0.097969 158.172379 0.000000 4: bot_teleport [Bot Name] 291.896698 -818.903259 68.031319 1.153975 -153.054504 0.000000 5: bot_teleport [Bot Name] 290.389496 -981.260193 68.031319 1.219944 179.291748 0.000000 6: bot_teleport [Bot Name] 291.745972 -1140.180542 65.031311 0.679250 153.493881 0.000000 7: bot_teleport [Bot Name] 73.933449 -978.703613 65.031311 -0.196798 -179.668015 0.000000 8: bot_teleport [Bot Name] 573.168701 -481.387665 65.031311 -0.196790 -90.841835 0.000000
Getting bots to use Non-Stock Items
- Summon a bot of the class who has the weapon you wish them to use.
- Switch to that class and equip only the items you wish the bot to possess. (EX:Go all stock + the one item you want the bot to have)
- Run this command:
bot_mirror [Bot Name]
- This will get the bot to copy your entire loadout, now possessing the item you wish for them to hold. You may now switch to your original class + loadout.
- Get the bot to hold this weapon with this command. (Note: 0 for primary, 1 for secondary, 2 for melee, 3 for PDA or Disguise Kit, and 4 for Destruction PDA)
bot_selectweaponslot #
- Once they are holding this weapon they will use their primary fire with bot_forceattack set to 1, f being the bind for this if you run exec demonstration_basic.
- If the weapon has a secondary fire you wish to use. Type in this command:
bot_forceattack2 1
- This sets it so bot will use secondary fire when bot_forceattack is enabled. Set this back to zero to make the bot use primary fire with the bot_forceattack command.
Single Bot faced in front of Player Location
- This is useful for ranged firing weapon tests like DPS vs. Stock, Heal on hit, and anything else related to a single bot standing in front of you.
- The preferred class bot for this test is the Heavy.
bot_teleport [Bot Name] 290.876373 -981.416199 75.031319 1.055835 179.819962 0.000000
Damage against player versus Stock Comparison Melee test
- The preferred class bot for this test is the Heavy.
bot_teleport [Bot Name] 1516.968750 -755.212708 75.031319 -0.49567 180 0 setpos 1447.896973 -756.533630 75.031319 6.468199 0.722319 0.000000
- Aim just below the left edge of his shirt relative to you.
- Calculate beforehand how many swings it will take to kill your bot and hold down your primary fire until you reach this amount.
- This usually is the last test of a demonstration so make sure to capture more still footage afterwards because the ending transition requires a few extra seconds to look/sound natural.
Bot wrangling for Class Specific Demonstration Tests
Getting a Soldier Bot to perform a Rocket Jump
- You will not be able to get a bot to perform a perfect pogo jump without heavy amounts of scripting.
- We can however get a bot to shoot at its feet with a rocket and that's usually enough air time.
- Simply get your soldier bot with their primary rocket launcher out and have an orientation of 88~ degrees towards the ground. Example of an orientation for this, where the 5th number is the looking angle:
bot_teleport Soldier 522.683228 -979.480591 68.031319 88 180 0.000000
- Have the bot fire a rocket and watch as he flies like 6 feet in the air.
(Note: For some reason the mini-crits granted against targets launched into the air granted bonus is not applied to Bots.)
Getting a Pyro Bot to perform a Thermal Thruster jump
- Similar advice to rocket jumping as Soldier, with added complexity
- Follow the advice for getting a bot to select a non-stock item to get a Thermal Thruster wielding Pyro.
- Get it to look up instead of down. Example of an orientation for this, where the 5th number is the looking angle:
bot_teleport Pyro 522.683228 -979.480591 68.031319 -70 180 0.000000
Getting a Spy Bot to Disguise
- Set this bind to any key.
bind [key] "bot_selectweaponslot 3; bot_mimic 1; wait 800; impulse 221; wait 100; bot_mimic 0"
- Wait = time in ticks. 200 ticks is equivalent to 3 seconds in real life. There is nothing holy about the wait times here, adjust them to where they look best.
- Impulses 221-229 and 231-239 are the impulses for RED and BLU disguises. Their disguise order is linked to the original class lineup in TFC instead of TF2. This table connects to which disguise or the order of the classes in the bulletpoint list on the TFC Classic Classes page:
| Disguise Impulses | ||
|---|---|---|
| Disguise | RED | BLU |
| Scout | 221 | 231 |
| Soldier | 223 | 233 |
| Pyro | 227 | 237 |
| Demoman | 224 | 234 |
| Heavy | 226 | 236 |
| Engineer | 229 | 239 |
| Medic | 225 | 235 |
| Sniper | 222 | 232 |
| Spy | 228 | 238 |
- Use this command:
bot_mimic_yaw_offset 180
- This is to ensure the bot doesn't spin around to face where you're facing.
- Make sure to not move until the Spy is done disguising. This relies on the bot_mimic command to execute and looking around will cause them to copy your movement which will just look bad in the video.
Getting a Spy Bot to Cloak
- Type in this command:
bot_forceattack2 1
- This sets it so bot will use secondary fire when bot_forceattack is enabled.
bind [key] "bot_forceattack 1; wait 50; bot_forceattack 0"
- Press once to cloak, press again to uncloak.
Taunt Demonstrations
Non-Looping Taunts
- Teleport yourself into place using this command:
setpos 231.68 -979 65.031 0 0 0
- When demonstrating taunts you will need to first initially do a natural spin and then a mechanical turn around. This is for the mechanical turn around.
- After that mechanical turn you must go back to facing forward without opening the console. To do this, I use a toggle.
- If you want to spin right just replace the left part with right. Most demonstrations I've watched have turned left so keep that in mind.
- Toggle:
bind [key] toggle_movement alias toggle_movement enable_movement alias enable_movement "alias toggle_movement disable_movement;+left" alias disable_movement "alias toggle_movement enable_movement;-left"
- The speed of the turn will depend on how long the taunt is, you will need to complete one full 360 degree rotation around the player before it ends and end facing close to where you started facing by about the end of the taunt.
- To adjust the speed of which you turn use this command.
- Yawspeed:
cl_yawspeed [Number]
- 80 is a good start but you will most likely need to adjust from there because almost every taunt has a different duration.
Resources
- Weapon Demonstration Project Page: https://wiki.teamfortress.com/wiki/Team_Fortress_Wiki:Weapon_Demonstration
- This is the reason why this exists dummy
- Bot Commands: https://wiki.teamfortress.com/wiki/Bots
- For making bots independent of the 4 and 8 in the cfgs. What better place than the wiki itself for this info?
- Scripting: https://wiki.teamfortress.com/wiki/Scripting
- For coding toggles and a lot of other things.
- Puppet Bot Commands 1: https://www.youtube.com/watch?app=desktop&v=0WHrY2-t2Aw
- This video gives visuals to how some useful commands above work.
- Spy Bot disguising Video Tutorial: https://www.youtube.com/watch?v=1TXhnneKGBY
- For visual learners. Also to credit the person that I got the info from.