Fortress Forever

Go Back   Fortress Forever > Community > Tips and Tutorials

Reply
 
Thread Tools Display Modes
Old 01-22-2008, 04:09 PM   #1
Dr.Satan
Wiki Team
Fortress Forever Staff
 
Dr.Satan's Avatar
 
Join Date: Sep 2007
Location: Greeley, CO
Class/Position: Med / Solly
Gametype: PAYLOAD
Affiliations: DET-
Posts Rated Helpful 19 Times
Cleanup.cfg

Ok so I know that not everyone knows what this is or why it's useful so I will post one:

A cleanup.cfg is essentially a config that is there to unbind keys that you use to do something different for two or more classes. This is important because sometime you can actually confuse the game by not unbinding your keys. This in turn can result in you not being able to execute the desired action in game and can be detrimental to your success as a player.

An example of a set of scripts that would fall into this category is:

Code:
//in scout.cfg
bind mouse4 "+duck"
Code:
//in demoman.cfg
bind mouse4 "+attack2"
* In the example we are using the same key (mouse4) to duck for a scout and to use the secondary attack for a demo.

So what exactly does a cleanup.cfg do?

A cleanup.cfg is simply a NEW .cfg file created by you to "cleanup" your configs and binds.

Mine looks like this:

Code:
echo Clean Up Config Loaded

unbind mwheelup
unbind mwheeldown
unbind alt
unbind mouse2
unbind mouse3
unbind mouse4
unbind mouse5
unbind f
unbind g
unbind shift
unbind ctrl
You will notice that I have a lot of keys in there. This is because each of those keys is being used to preform separate commands depending on the class I am playing. Yours may not be as large or it may be larger, that depends on the scripts you are using.

Creating a cleanup.cfg.

To create a cleanup.cfg you will need to have notepad (notepad NOT wordpad).
  1. Open a blank notepad document.
  2. Place this line at the top:

    Code:
    echo Clean Up Config Loaded
    (this will let you know in console that your .cfg has been successful in loading)
  3. Next you will need to place any and all keys that you wish to unbind here.

    For instance if you use c, d, 3, and mouse2 as different things for two or more scripts then you will want to place these here. YOU WILL NEED A SEPARATE LINE FOR EACH KEY!

    Using the example above your hypothetical cleanup.cfg would look like this:
    Code:
    echo Clean Up Config Loaded
    unbind c
    unbind d
    unbind 3
    unbind mouse2
  4. Once you have put all the keys into your cleanup.cfg you need to save this AS A CONFIG FILE.
  5. To do this, go to file, saveas and navigate to your cfg folder (steam/steamapps/fortressforever/cfg). When saving the document it is important that you save it as cleanup.cfg (include the .cfg in the filename or it will not save properly!)
  6. The last step is to execute your cleanup.cfg. To do this place the following line into each <classname>.cfg (demoman.cfg, engineer.cfg, hwguy.cfg, medic.cfg, pyro.cfg, scout.cfg, sniper.cfg, soldier.cfg, spy.cfg)

    Code:
    exec cleanup.cfg
    * This line needs to be at the TOP of each <classname>.cfg before any scripts you have, but below the line: echo <classname> CFG LOADED

    Your done! To test your cleanup.cfg join a game (or create a server) and choose a class. Then check your console (~) and look for a line that says:

    Clean Up Config Loaded

    You should see this at or near the bottom of your console. If you cannot find this line then you will need to go back through the steps above.
__________________
(Released) conc_school | hellion_classic | ksour_PAYLOAD | mulch_faf
(Beta) alchimy_b1
(Lua) base_payload_2015
(Models) props_trainyard
Support FF:
Dr.Satan is offline   Reply With Quote


Old 01-22-2008, 07:17 PM   #2
TheWetMule
 
TheWetMule's Avatar
 
Join Date: Mar 2007
Location: England, Midlands
Posts Rated Helpful 0 Times
Send a message via MSN to TheWetMule Send a message via Skype™ to TheWetMule
Would unbindall not work ?
TheWetMule is offline   Reply With Quote


Old 01-22-2008, 09:00 PM   #3
Firefox11
 
Join Date: Dec 2007
Class/Position: O&D: Pyro, Sniper
Gametype: AvD
Affiliations: FF.AvD [FF AvD/ID guild]
Posts Rated Helpful 0 Times
Then you would have to bind every key again on every class.cfg, or have a basic setup.cfg file with the usual binds (W forward, etc.). This way you only unbind the keys that change between classes.
Firefox11 is offline   Reply With Quote


Old 01-22-2008, 09:10 PM   #4
TheWetMule
 
TheWetMule's Avatar
 
Join Date: Mar 2007
Location: England, Midlands
Posts Rated Helpful 0 Times
Send a message via MSN to TheWetMule Send a message via Skype™ to TheWetMule
Touché, didn't think of that, WISE MAN
TheWetMule is offline   Reply With Quote


Old 01-22-2008, 10:36 PM   #5
Firefox11
 
Join Date: Dec 2007
Class/Position: O&D: Pyro, Sniper
Gametype: AvD
Affiliations: FF.AvD [FF AvD/ID guild]
Posts Rated Helpful 0 Times
O_o

Is it sarcasm or really a nice comment?

/me can't get net sarcasm

[Edit]Nvm, got it now. Thnx![/Edit]

Last edited by Firefox11; 01-22-2008 at 10:53 PM.
Firefox11 is offline   Reply With Quote


Old 01-23-2008, 04:40 PM   #6
RocKwell
Regular or Menthol?
 
RocKwell's Avatar
 
Join Date: Sep 2007
Location: Central MI
Affiliations: :e0: .o`
Posts Rated Helpful 0 Times
I was going to make something like this, but never got around to it. Sweet.
RocKwell is offline   Reply With Quote


Old 01-24-2008, 02:31 AM   #7
Credge
FF Loremaster
Beta Tester
 
Join Date: Sep 2007
Posts Rated Helpful 4 Times
Quote:
Originally Posted by Firefox11
Then you would have to bind every key again on every class.cfg, or have a basic setup.cfg file with the usual binds (W forward, etc.). This way you only unbind the keys that change between classes.
Can't you just copy and paste the .cfg from one class to another and adjust accordingly instead of having a .cfg specifically for this?

It seems like an un-needed step. Having to exec a .cfg before switching to another class, or, having that exec at the start of your .cfg seems unneeded. Simply copying and pasting the same base .cfg and adjusting accordingly inside the .cfg is much simpler.
__________________
"The nine most terrifying words in the English language are: 'I'm from the government and I'm here to help.'"

Ronald Reagan
Credge is offline   Reply With Quote


Old 01-24-2008, 05:04 AM   #8
there's nothing here
lol
 
there's nothing here's Avatar
 
Join Date: Mar 2007
Location: Halfway sprawled out of a cardboard box at the bottom of a flight of stairs.
Posts Rated Helpful 2 Times
There's no default reset button or nothing?
there's nothing here is offline   Reply With Quote


Old 01-24-2008, 07:28 AM   #9
Ihmhi
[AE] 0112 Ihmhi *SJB
Wiki Team
Fortress Forever Staff
 
Ihmhi's Avatar
 
Join Date: Mar 2007
Location: Newark, NJ, United States
Class/Position: A little bit o' everythin'
Gametype: Also a little bit o' everythin'
Affiliations: [AE] Asseater, *SJB Straight Jacket Brigade
Posts Rated Helpful 3 Times
Send a message via AIM to Ihmhi Send a message via MSN to Ihmhi Send a message via Yahoo to Ihmhi
I have cleanups built into my configs. I use the same standard keys for special stuff (Alt, F4-F12, O, P... it goes on) and just unbind the lot of 'em.
__________________
Support FF:
Anime: The Thread: Reloaded
The one and only anime thread on these here forums.

Select the pistol, and then, select your horse.
Ihmhi is offline   Reply With Quote


Old 01-24-2008, 07:41 AM   #10
there's nothing here
lol
 
there's nothing here's Avatar
 
Join Date: Mar 2007
Location: Halfway sprawled out of a cardboard box at the bottom of a flight of stairs.
Posts Rated Helpful 2 Times
I've never used a config, evar.

I guess it's not as efficient, but I don't want things to be easy either.. though I'm not really sure that's the reason why I don't use one.

Only things that I ever bind/unbind are the right click menu, det dispenser, and feign.

sooo BEANCURDS BITCHES.
there's nothing here is offline   Reply With Quote


Old 01-24-2008, 03:08 PM   #11
Dr.Satan
Wiki Team
Fortress Forever Staff
 
Dr.Satan's Avatar
 
Join Date: Sep 2007
Location: Greeley, CO
Class/Position: Med / Solly
Gametype: PAYLOAD
Affiliations: DET-
Posts Rated Helpful 19 Times
Quote:
Originally Posted by Credge
Can't you just copy and paste the .cfg from one class to another and adjust accordingly instead of having a .cfg specifically for this?

It seems like an un-needed step. Having to exec a .cfg before switching to another class, or, having that exec at the start of your .cfg seems unneeded. Simply copying and pasting the same base .cfg and adjusting accordingly inside the .cfg is much simpler.
It depends on how in depth your .cfgs are...if your just using some teamspeak and flag toss scritps and a few engy one's then generally yes.

Me I use a shit ton of scripts:

My spy script, for example, is huge:

Code:
//Special Thanks to PorkChopVII for his Cycler Script and to DarK_TaO
//for his Class Announcement Script
//Without which I probably wouldn't have been able
//to consturct this!

//=================================
//------ Weapon Announcement ------
//================================= 

//     -----
//---- Scout ----
//     -----
alias 1_slot1	"wait;slot1;speak vox/female/crowbar"
alias 1_slot2	"wait;slot2;speak vox/female/nail.gun"
alias 1_slot3	"wait;slot3;speak vox/female/shotgun"
alias 1_slot4	"wait;slot4;speak vox/female/shotgun"

//     ------
//---- Sniper ----
//     ------
alias 2_slot1	"wait;slot1;speak vox/female/crowbar"
alias 2_slot2	"wait;slot2;speak vox/female/sniper.rifle"
alias 2_slot3	"wait;slot4;speak vox/female/auto.rifle"
alias 2_slot4	"wait;slot4;speak vox/famale/nail.gun

//     -------
//---- Soldier ----
//     -------
alias 3_slot1	"wait;slot1;speak vox/female/crowbar"
alias 3_slot2	"wait;slot2;speak vox/female/shotgun"
alias 3_slot3	"wait;slot3;speak vox/female/super.shotgun"
alias 3_slot4	"wait;slot4;speak vox/female/r.p.g"

//     -------
//---- Demoman ----
//     -------
alias 4_slot1	"wait;slot1;speak vox/female/crowbar"
alias 4_slot2	"wait;slot2;speak vox/female/shotgun"
alias 4_slot3	"wait;slot3;speak vox/female/pipe.launcher"
alias 4_slot4	"wait;slot4;speak vox/female/grenade.launcher"

//     -----
//---- Medic ----
//     -----
alias 5_slot1	"wait;slot1;speak vox/female/medikit"
alias 5_slot2	"wait;slot2;speak vox/female/shotgun"
alias 5_slot3	"wait;slot3;speak vox/female/super.shotgun"
alias 5_slot4	"wait;slot4;speak vox/female/super.nail.gun"

//     --
//---- HW ----
//     --
alias 6_slot1	"wait;slot1;speak vox/female/crowbar"
alias 6_slot2	"wait;slot2;speak vox/female/shotgun"
alias 6_slot3	"wait;slot3;speak vox/female/super.shotgun"
alias 6_slot4	"wait;slot4;speak vox/female/auto.cannon"

//     ----
//---- Pyro ----
//     ----
alias 7_slot1	"wait;slot1;speak vox/female/crowbar"
alias 7_slot2	"wait;slot2;speak vox/female/shotgun"
alias 7_slot3	"wait;slot3;speak vox/female/flamethrower"
alias 7_slot4	"wait;slot4;speak vox/female/incendiary.cannon"

//     ---
//---- Spy ----
//     ---
alias 8_slot1	"wait;slot1;speak vox/female/knife"
alias 8_slot2	"wait;slot2;speak vox/female/tranquiliser"
alias 8_slot3	"wait;slot3;speak vox/female/super.shotgun"
alias 8_slot4	"wait;slot4;speak vox/female/nail.gun"

//     ----
//---- Engy ----
//     ----
alias 9_slot1	"wait;slot1;speak vox/female/spanner"
alias 9_slot2	"wait;slot2;speak vox/female/rail.gun"
alias 9_slot3	"wait;slot3;speak vox/female/super.shotgun"
alias 9_slot4	"wait;slot4;speak vox/female/super.shotgun"

//     -------
//---- Default ----
//     -------

alias d_1 "wait;bind 1 slot1"
alias d_2 "wait;bind 2 slot2"
alias d_3 "wait;bind 3 slot3"
alias d_4 "wait;bind 4 slot4"
alias d_5 "wait;bind 5 slot5"
alias d_6 "wait;bind 6 slot6"
alias d_7 "wait;bind 7 slot7"
alias d_8 "wait;bind 8 slot8"
alias d_9 "wait;bind 9 slot9"
alias d_0 "wait;bind 0 slot0"
alias default "wait;d_1;wait;d_2;wait;d_3;wait;d_4;wait;d_5;wait;d_6;wait;d_7;wait;d_8
;wait;d_9;wait;d_0"

alias +atkdef "+attack; wait; default"
alias -atkdef "-attack; wait; bind mouse1 +attack; wait; bind f enemychsound"
alias atkdef "bind mouse1 +atkdef"

//===============================
//------ Weapons per Class ------
//===============================

alias w_1 "bind 1 1_slot1; bind 2 1_slot2; bind 3 1_slot3; bind 4 1_slot4"
alias w_2 "bind 1 2_slot1; bind 2 2_slot2; bind 3 2_slot3; bind 4 2_slot4"
alias w_3 "bind 1 3_slot1; bind 2 3_slot2; bind 3 3_slot3; bind 4 3_slot4"
alias w_4 "bind 1 4_slot1; bind 2 4_slot2; bind 3 4_slot3; bind 4 4_slot4"
alias w_5 "bind 1 5_slot1; bind 2 5_slot2; bind 3 5_slot3; bind 4 5_slot4"
alias w_6 "bind 1 6_slot1; bind 2 6_slot2; bind 3 6_slot3; bind 4 6_slot4"
alias w_7 "bind 1 7_slot1; bind 2 7_slot2; bind 3 7_slot3; bind 4 7_slot4"
alias w_8 "bind 1 8_slot1; bind 2 8_slot2; bind 3 8_slot3; bind 4 8_slot4"
alias w_9 "bind 1 9_slot1; bind 2 9_slot2; bind 3 9_slot3; bind 4 9_slot4"

//     ------
//---- Speeds ----
//     ------

alias s_1 "cl_forwardspeed 400;cl_sidespeed 400;cl_backspeed 400"
alias s_2 "cl_forwardspeed 335;cl_sidespeed 335;cl_backspeed 335"
alias s_3 "cl_forwardspeed 235;cl_sidespeed 235;cl_backspeed 235"
alias s_4 "cl_forwardspeed 280;cl_sidespeed 280;cl_backspeed 280"
alias s_5 "cl_forwardspeed 320;cl_sidespeed 320;cl_backspeed 320"
alias s_6 "cl_forwardspeed 230;cl_sidespeed 230;cl_backspeed 230"
alias s_7 "cl_forwardspeed 305;cl_sidespeed 305;cl_backspeed 305"
alias s_8 "cl_forwardspeed 400;cl_sidespeed 400;cl_backspeed 400"
alias s_9 "cl_forwardspeed 285;cl_sidespeed 285;cl_backspeed 285"

//     ------   
//---- Unbind ----
//     ------

alias u_1 "unbind 1"
alias u_2 "unbind 2"
alias u_3 "unbind 3"
alias u_4 "unbind 4"
alias u_5 "unbind 5"
alias u_6 "unbind 6"
alias u_all "u_1; wait; u_2; wait; u_3; wait; u_4; wait; u_5; wait; u_6"

//     ------- 
//---- Classes ----
//     -------

alias escout "disguise enemy scout; u_all; s_1; w_1; atkdef"
alias esniper "disguise enemy sniper; u_all; s_2; w_2; atkdef"
alias esoldier "disguise enemy soldier; u_all; s_3; w_3; atkdef"
alias edemoman "disguise enemy demoman; u_all; s_4; w_4; atkdef"
alias emedic "disguise enemy medic; u_all; s_5; w_5; atkdef"
alias ehwguy "disguise enemy hwguy; u_all; s_6; w_6; atkdef"
alias epyro "disguise enemy pyro; u_all; s_7; w_7; atkdef"
alias espy "disguise enemy spy; u_all; s_8; w_8; atkdef"
alias eengi "disguise enemy engineer; u_all; s_9; w_9; atkdef"
alias tscout "disguise friendly scout; u_all; s_1; w_1; atkdef"
alias tsniper "disguise friendly sniper; u_all; s_2; w_2; atkdef"
alias tsoldier "disguise friendly soldier; u_all; s_3; w_3; atkdef"
alias tdemoman "disguise friendly demoman; u_all; s_4; w_4; atkdef"
alias tmedic "disguise friendly medic; u_all; s_5; w_5; atkdef"
alias thwguy "disguise friendly hwguy; u_all; s_6; w_6; atkdef"
alias tpyro "disguise friendly pyro; u_all; s_7; w_7; atkdef"
alias tspy "disguise friendly spy; u_all; s_8; w_8; atkdef"
alias tengi "disguise friendly engineer; u_all; s_9; w_9; atkdef"

//     ----------
//---- Toggle Key ----
//     ----------

alias +togglekey "bind f teamchsound"
alias -togglekey "bind f enemychsound"
bind shift "+togglekey"

//     ------------
//---- Class Cycler ----
//     ------------

bind mwheeldown "cycleleft"
bind mwheelup "cycleright"
bind f "enemychsound"

//     -------------- 
//---- Cycler Aliases ----
//     --------------

alias enemychsound "eclassch;speak vox/tfc/enemy.armed"
alias teamchsound "tclassch;speak vox/tfc/team.armed"
alias eclassch escout
alias tclassch tscout
alias cycleleft bcycle9
alias cycleright fcycle2
alias bcycle1 "alias eclassch escout;alias tclassch tscout; alias cycleleft bcycle9; alias cycleright fcycle2;speak vox/female/scout"
alias bcycle2 "alias eclassch esniper;alias tclassch tsniper;alias cycleleft bcycle1; alias cycleright fcycle3;speak vox/female/sniper"
alias bcycle3 "alias eclassch esoldier;alias tclassch tsoldier; alias cycleleft bcycle2;alias cycleright fcycle4;speak vox/female/soldier"
alias bcycle4 "alias eclassch edemoman;alias tclassch tdemoman; alias cycleleft bcycle3;alias cycleright fcycle5;speak vox/female/demoman"
alias bcycle5 "alias eclassch emedic;alias tclassch tmedic;alias cycleleft bcycle4;alias cycleright fcycle6;speak vox/female/medic"
alias bcycle6 "alias eclassch ehwguy;alias tclassch thwguy;alias cycleleft bcycle5;alias cycleright fcycle7;speak vox/female/h.w.guy"
alias bcycle7 "alias eclassch epyro;alias tclassch tpyro;alias cycleleft bcycle6;alias cycleright fcycle8;speak vox/female/pyro"
alias bcycle8 "alias eclassch espy;alias tclassch tspy;alias cycleleft bcycle7;alias cycleright fcycle9;speak vox/female/spy"
alias bcycle9 "alias eclassch eengi;alias tclassch tengi;alias cycleleft bcycle8;alias cycleright fcycle1;speak vox/female/engineer"
alias fcycle1 "alias eclassch escout;alias tclassch tscout; alias cycleleft bcycle9; alias cycleright fcycle2;speak vox/female/scout"
alias fcycle2 "alias eclassch esniper;alias tclassch tsniper;alias cycleleft bcycle1; alias cycleright fcycle3;speak vox/female/sniper"
alias fcycle3 "alias eclassch esoldier;alias tclassch tsoldier; alias cycleleft bcycle2;alias cycleright fcycle4;speak vox/female/soldier"
alias fcycle4 "alias eclassch edemoman;alias tclassch tdemoman; alias cycleleft bcycle3;alias cycleright fcycle5;speak vox/female/demoman"
alias fcycle5 "alias eclassch emedic;alias tclassch tmedic;alias cycleleft bcycle4;alias cycleright fcycle6;speak vox/female/medic"
alias fcycle6 "alias eclassch ehwguy;alias tclassch thwguy;alias cycleleft bcycle5;alias cycleright fcycle7;speak vox/female/h.w.guy"
alias fcycle7 "alias eclassch epyro;alias tclassch tpyro;alias cycleleft bcycle6;alias cycleright fcycle8;speak vox/female/pyro"
alias fcycle8 "alias eclassch espy;alias tclassch tspy;alias cycleleft bcycle7;alias cycleright fcycle9;speak vox/female/spy"
alias fcycle9 "alias eclassch eengi;alias tclassch tengi;alias cycleleft bcycle8;alias cycleright fcycle1;speak vox/female/engineer"

//     -----------
//---- Cloak Binds ----
//     -----------

alias cloakseq "discard;dropitems;cloak"
bind mouse3 "cloakseq"

alias silentcloak "discard; dropitems; scloak"
bind mouse4 "silentcloak"

alias +stab "+attack"
alias -stab "-attack; wait; scloak"
bind g "+stab"

bind KP_PLUS "+attack2"

//     --------
//---- Sabotage ----
//     --------

alias sab_1 "sentrysabotage"
alias sab_2 "dispensersabotage"

alias sabsg "sab_1; wait; default; wait; speak vox/female/s.g."
alias sabdis "sab_2; wait; default; wait; speak vox/female/dispenser"
alias sabboth "sab_1; wait; sab_2; wait; default; wait; speak vox/female/both"

alias sabmenu "bind 1 sabsg; wait; echo 1) Sabotage SG; wait; bind 2 sabdis; wait; echo 2) Sabotage Dispenser; wait; bind 3 sabboth; wait; echo 3) Sabotage Both; wait; bind 0 default; wait; echo 0) Defaults"

bind ctrl "sabmenu"
And that's JUST for red / blue maps, on maps with more players I use Groovy's teamspy.cfg which is bound to be executed when I hit a specific key.

Now do you really want to copy that somewhere else just so that you don't have to create a new cleanup.cfg? IMO it's much simpler to just unbind the few keys in that cfg that I know are being used in other cfg's by using my cleanup.cfg and leave it at that.

Then it's just one additional line of:

Code:
exec cleanup.cfg
Placed in my .cfg's

Quote:
Originally Posted by there's nothing here
There's no default reset button or nothing?
Nope...the closest thing you can get is to place this line in your userconfig.cfg:
Code:
exec config_default
but even that is just oging to revert you to the factory default settings and isn't really going to help you. This is focused mainly on leaving the binds you use across the board in place while still unbinding the keys that are commonly used by different classes for different things.
__________________
(Released) conc_school | hellion_classic | ksour_PAYLOAD | mulch_faf
(Beta) alchimy_b1
(Lua) base_payload_2015
(Models) props_trainyard
Support FF:
Dr.Satan is offline   Reply With Quote


Old 01-24-2008, 04:49 PM   #12
there's nothing here
lol
 
there's nothing here's Avatar
 
Join Date: Mar 2007
Location: Halfway sprawled out of a cardboard box at the bottom of a flight of stairs.
Posts Rated Helpful 2 Times
Ahar.

That's some purty scripting you got there. So, the lady lets you know which weapon you've got out?
there's nothing here is offline   Reply With Quote


Old 01-24-2008, 05:52 PM   #13
Dr.Satan
Wiki Team
Fortress Forever Staff
 
Dr.Satan's Avatar
 
Join Date: Sep 2007
Location: Greeley, CO
Class/Position: Med / Solly
Gametype: PAYLOAD
Affiliations: DET-
Posts Rated Helpful 19 Times
yep...it rebinds your weapon keys to still switch to the proper weapon, but it speaks the "Disguised as weapon" to you. Then once you attack...it rebinds your keys back to the normal keys and removes the vox because attacking will remove your disguise.
__________________
(Released) conc_school | hellion_classic | ksour_PAYLOAD | mulch_faf
(Beta) alchimy_b1
(Lua) base_payload_2015
(Models) props_trainyard
Support FF:
Dr.Satan is offline   Reply With Quote


Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 06:39 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.