DoD:s "echo" type Command Menu.
First some files, download here. Then install in the dod folder.
It's not perfect... and different from the old one but you could replicate all the sections in your old menu for DoD:S :)
The files in the download are not complete, there is enough there to try it, see how it works and complete it yourself.
NOTE : Make sure you back up your files before use.
This makes changes to your dod\cfg and dod\scripts folders and files in it.
Back up those two folders and you should be fine.
Actual files that will be overwritten are...
"dod\scripts" folder kb_act.lst "dod\cfg" folder valve.rc. All others are new files.
I have a set of files that work the same as SxRxRnR 's "old style buy script" for CS:S. Please give him a mention in your credits...
SxRxRnR Autoscript Version Source v1.0...
- It clears your console text on each use.
- You can't use the mouse like the old one, just the keyboard keys.
- It takes three key presses to get what you want.
- Some servers will have cvar blocks that break this type of menu.
- When the menu is up on the screen... you can still play if you have to shoot someone say :) It will not disable your mouse.
- It does open up MUCH more choices for sections and you are able to put in multiple commands with a VISUAL confirmation for "n00bs".
- An RCON command section and other sections like it are possible using three steps per action. More single commands possible than keys on the keyboard :)
- It's a set of scripts (cfg files), not just one commandmenu.txt file and could be put on an installer.
- It can also place an item in the standard keyboard options so users can choose their own key for the menu.
- You don't have to use it .... it does NOT replace the standard one... it is a "add-on" .... non destructive of the standard system.
The menu and how it works in it's 3 steps.
For the user to get the first main menu he just presses a key. Easy for him, hard to make :)
When you make your menu you can make it easy for the user to bind a key.
Bind a key to the "display_menu1.cfg" in the "dodsscipts" Folder.
Modify the kb_act.lst file.
(There is a modified kb_act.lst file in the download already below is just for info).
I modified the kb_act.lst file in the "dod\scripts" folder. Then set the key in Options, Keyboard...
This is how you add an entry in kb_act.
For the user...It looks like this in the Keyboard Options.
Now we have to make changes to the "valve.rc" in the "cfg" Folder.
(I have included a modified "valve.rc" in the download too so below is just info).
We have to add some lines to the bottom so the config files will start up...
// display the startup level
//This will start up the scripts in the dodsscripts folder
//you can put more commands to other configs if you like
This now starts the alias, ("display_menu1") inside "oldstyle_dodmenu.cfg" and allows the first display and the others plus their binds to activate... when you press the key it was bound to.
Now everything is set up for the user to access the first screen in your menu.
When this key is pressed in game it will activate "oldstyle_dodmenu.cfg" in the "dodsscipts" Folder.
The oldstyle_dodmenu.cfg has binds at the top of the config to open up other config files.
It starts display_menu1.cfg via an alias. (The part of the script doing this is in BLUE)...
alias display_menu1 "exec dodsscript\display_menu1.cfg; bind 1 netcode_menu; bind 2 netgraph_menu; bind 3 graphics_menu; bind 4 crosshair_menu; bind 5 sound_menu; bind 6 teamcom; bind 7 allcom; bind 8 demo_menu; bind 9 teamclass_menu; bind 0 clr_menu"
"display_menu1.cfg"... displays what the user sees on the screen. (see the image on the right below).
"oldstyle_dodmenu.cfg" is the main script it also sets up the binds to select other on-screen menus.
So far the user has pressed one key and the first screen is up.
To recap so far...
"oldstyle_dodmenu.cfg" has activated another config file called "display_menu1.cfg"
It displayed the screen the user sees!
The "oldstyle_dodmenu.cfg" needs help from another file that holds
aliases to make scripting simpler and smaller, it is "aliastypes.cfg".
"aliastypes.cfg" is also the place you can put all the actual commands the
end user will want to use. More on that latter, lets go to the next step.
Say the user wanted to spawn a Bot in my menu.
He spots the item on the screen "2. NETGRAPH AND BOT MENU"
and he presses "2" on the keyboard.
The Menu changes and we have the final selection to the command.
The scripts will now load another screen once netgraph_menu.cfg is
activated in the "oldstyle_dodmenu.cfg" file.
Again it is another .cfg file put on the screen the same way as the first.
The "oldstyle_dodmenu.cfg" file again relies on the "aliastypes.cfg"
for some aliases, but this time it will issue a command or
multiple commands and also get rid of the menu on the screen.
Below is the part of "aliastypes.cfg" that controls the second selection in my menu...
The user will press the "6" key. "6. SPAWN ONE BOT"
The bind in the netgraph_menu section of the "oldstyle_dodmenu.cfg" bind 6 ntype6 will look at the alias "ntype6" in the "aliastypes.cfg" file... (pictured above).
The "aliastypes.cfg" file will activate this command...
alias ntype6 "sv_cheats 1; w3; bot; clr_menu"
As you can see there are four things happening in this line of the script.
1. sv_cheats 1 is needed to spawn a bot.
2. w3 or "3 half life waits" (wait;wait;wait) is a time delay needed between commands. w3 is also in the "aliastypes.cfg" file in the //aliases needed section.
3. bot The command in dod:s to spawn a dumb Bot... that just sit runs around spawn randomly.
4. clr_menu this will clear the menu. It is also an alias in the "aliastypes.cfg" file that breaks up in to other commands to aid the menus operation....
alias clr_menu "clear; reset_all; contimes 16; dev0"
By now you should have some idea of how it operates, it is a set of scripts that attempt to expand the use of the keyboard keys and give a visual menu for the user if he has to use a lot of commands.
It is a pain to edit... but I can do it when I remember how it works.
The bulk of the work is already done in the download package, you just need to edit all the sections with your favorite scripts.
Remember the main players in this set of files are...
The adjustments to the "kb_act.lst file" in the "dod\scripts" folder for setting the bind.
The adjustments to the "valve.rc" in the "dod\cfg" folder for setting up the cfg files.
The contents of the "oldstyle_dodmenu.cfg" in the "dod\cfg\dodsscript" folder for displaying the different screens and setting up the binds to commands.
The contents of the "aliastypes.cfg" in the "dod\cfg\dodsscript" folder for holding the different scripts and aliases that operate the commands.
The contents of the "display_menu1.cfg" and others like "netgraph_menu.cfg" in the
"dod\cfg\dodsscript" folder for holding the information and position that displays on the screen for the user.
(Note: I have named the rest from "third to nineth" in the download...rename them for yours)
I know what you are thinking...it's a long winded way to do this. VALVe did not continue the use of it's commandmenu.txt file in HL2 games... so that door is now closed and that's a pity.
At least this is possible to do right now... and is the only way I know to get a menu working in DoD:s.... for now at least. Hope this helps someone.