用寫字板打開妳的config.cfg(cstrike目錄下). 把console ""0.000000""
這行改為console ""1"".
然後在cstrike快捷方式裏的程序地址後面添加
-console -zone 4096 -dev
如:C:SierraHalf-Lifehl.exe -console -zone 4096 -dev
什麽是alias(宏)?
可以說腳本就是在壹個個宏的基礎上組建起來的,這也是我們必須了解的第壹個問題
宏的大致格式是這樣的:
alias [alias-name] ""[command 1]; [command 2]; [command #]....""
我們可以看出,宏實際上就是壹系列指令的集合,所以,任何壹個宏也可以應用到其他的宏中。
腳本中最常用的壹些指令
menuselect # - #為1至9的壹個數字.這個指令表示選擇菜單中的第#個選項. 如:
例:alias joinct ""chooseteam; menuselect 2""
引號中的內容即表示選擇team菜單的第2項,即CT這邊
bind KEY COMMAND -
把某個特定的指令定義到某個鍵上.註意:'COMMAND'也可為壹個宏.
如: bind ""k"" ""kill""
把kill這個指令定義到k上,這樣妳按k時就自殺了
又如: bind ""k"" ""joinct""
則妳按k就會加入CT這邊.
exec name.cfg -
導入某個cfg文件.HL每次進入遊戲時會自動導入config.cfg和autoexec.cfg文件.
wait -
停滯壹小會.腳本中的wait是為了讓前指令執行完.使用多少wait要根據不同的電腦和網絡情況而定,太多的wait就會引起lag,太少則可能使下壹個指令來不及執行.
簡單的宏
讓我們先看壹些最簡單的宏來熟悉壹下
打開autoexec.cfg,寫入以下行:
alias hello ""say Welcome to CsChina.net!; wait; wait; kill; wait;
wait;say_team Welcome to CsChina.net!""
讓我們看看這個宏的結構:
引號中為壹個指令集,其中say這個指令的作用是對遊戲中所有人說話,say_team則是對所有隊友說話
註意:單個指令之間用分號;隔開
這個指令集被定義為壹個名為hello的宏
別急,妳還必須把剛剛制作的宏定義到某個鍵位上才能使用,進入遊戲,在控制面版中敲入
bind ""k"" ""hello""
好了,現在讓我們按K看看效果吧,hoho~~
宏的類型及簡單腳本制作
腳本制作的基本概念我們已經比較清楚了,現在壹起看壹看宏的幾種類型並將其應該到簡單的腳本制作中
+/- aliases
其意義為當按住某個鍵時執行壹個指令集,而松開此鍵時則執行另外壹個指令集(註:這兩個指令集可以相同也可以好不相幹)
例:
alias +sayreload ""+reload;say_team Cover me while I reload!""
alias -sayreload ""-reload""
+/-
aliases,可以使妳原本簡單的動作更加多樣化,如擴展開就是更復雜但更有效的Meta
binds(
Meta binds
Meta Binds實際上就是壹種+/- alias,但不同的是,Meta
binds在松開定義鍵之後對該鍵重新做了定義(←Archangel註:此行用紅色字體.)壹定要註意這個區別,這將非常有助於理解這兩種宏的類型。
讓我們來看壹個常見的制作快速買搶腳本的例子:
Example:
alias preset1 ""buy; menuselect 4; menuselect 6; buy; menuselect 6; buyequip;
menuselect 2""
//購買AWM、子彈以及防彈衣
alias preset2 ""buy; menuselect 3; menuselect 1; buy; menuselect 6; buyequip;
menuselect 1;""
//購買MP5、子彈以及防彈衣
alias preset3 ""buy; menuselect 2; menuselect 1; buy; menuselect 1;
menuselect 5; buy; menuselect 6; buy; menuselect 7; buyequip; menuselect 2""
//購買M3,beretta, 子彈,帶頭盔的防彈衣
alias preset4 ""buy; menuselect 1; menuselect 3; buy; menuselect 7""
//購買手雷和子彈
alias preset5 ""developer 1; echo Preset not set!; developer 0""
//在屏幕左上角顯示該組合鍵未定義----Preset not set!
註:echo這個指令的意義為在屏幕左上角顯示妳所定義的信息
alias preset6 ""developer 1; echo Preset not set!; developer 0""
alias preset7 ""developer 1; echo Preset not set!; developer 0""
alias preset8 ""developer 1; echo Preset not set!; developer 0""
alias preset9 ""developer 1; echo Preset not set!; developer 0""
alias preset10 ""developer 1; echo Preset not set!; developer 0""
//同上
alias +toggle ""bind 1 preset1; bind 2 preset2; bind 3 preset3; bind 4
preset4; bind 5 preset5; bind 6 preset6; bind 7 preset7; bind 8 preset8;
bind 9 preset9; bind 0 preset10""
alias -toggle ""bind 1 slot1; bind 2 slot2; bind 3 slot3; bind 4 slot4; bind
5 slot5; bind 6 slot6; bind 7 slot7; bind 8 slot8; bind 9 slot9; bind 0
slot0""
bind alt ""+toggle""
這個腳本子後三行是關鍵所在,其意義為,當按住alt和某數字鍵時,執行腳本前半部定義的購槍指令集,而當松開alt鍵時,數字鍵則恢復為原功能,即切換槍支,這就是Meta
binds的意義所在!
其作用也是顯而易見的:可以節省不少鍵位,並可以在常用鍵位上定義更多的指令集
Toggles
Toggles(開關)最典型的例子就是開關探照燈和夜視儀。讓我們制作壹個開關netgraph(狀態顯示,如FPS)的Toggle來熟悉和研究壹下
Example:
alias ngon ""developer 1; echo Net Graph on; developer 0; net_graph 3; bind n
ngoff""
alias ngoff ""developer 1; echo Net Graph off; developer 0; net_graph 0; bind
n ngon""
bind n ""ngon""
這個腳本的作用即為用n鍵來開關netgraph,註意Toggle的特點,在第壹個宏的末尾將n鍵定義到下壹個宏,這實際上就形成了壹種循環(cycling),但這個腳本顯然並不能令人滿意,因為它不能添加到鍵盤設置菜單中以便更快捷的調整,因為:請註意!該鍵被定義(bind)了兩次。如何解決這個問題呢,稍稍改動即可。
Toggles(complex)
即為改進後的Toggles,其好處在於只需設定壹個鍵位,仍然以netgraph開關為例
Example:
alias ngon ""developer 1; echo Net Graph on; developer 0; net_graph 3; alias
ng ngoff""
alias ngoff ""developer 1; echo Net Graph off; developer 0; net_graph 0;
alias ng ngon""
alias ng ""ngon""
bind n ""ng""
大家可以看到:兩個宏的尾部都由原來的bind改為alias,在第三行把鍵單獨定義,非常巧妙,不是嗎?hoho~~
現在我們可以在鍵盤設置欄直接定義該鍵了,更重要的是:理解了這個技巧,我們就可以進入下壹課-----循環
Cycle aliases
前面的toggle僅僅是兩種情況的選擇,即開和關,當我們面臨更多種選擇時怎麽辦呢?這就需要Cycle
aliases,還是看netgraph的例子,但這壹次,我們要用n鍵選擇不同的netgraph顯示形式.
Example:
alias ng1 ""developer 1; echo Net Graph on, setting 1; developer 0; net_graph
1; alias ng ng2""
alias ng2 ""developer 1; echo Net Graph on, setting 2; developer 0; net_graph
2; alias ng ng3""
alias ng3 ""developer 1; echo Net Graph on, setting 3; developer 0; net_graph
3; alias ng ng4""
alias ng4 ""developer 1; echo Net Graph off; developer 0; net_graph 0; alias
ng ng1""
alias ng ""ng1""
bind n ""ng""
我們可以看到,在每壹行的末尾都將鍵定義到下壹個宏上,這就形成了循環.
制作自己的鍵位設置菜單
在前壹章中我們提到鍵位設置菜單中添加自己的選項
這就是最後壹節中我們將詳細講解的內容
打開妳的half-lifecstrike目錄下的gfx文件夾,用寫字板打開其中的kb_act.lst文件,妳可以看到這樣壹些內容:
""buyammo1"" ""Buy Primary Ammo (Optional)""
""buyammo2"" ""Buy Secondary Ammo (Optional)""
""buyequip"" ""Buy Equipment Menu (Optional)""
………… …………
左邊就是宏的名稱, 而右邊則是妳希望玩家在菜單中所看到的對這個宏的解釋
好,現在我們有這麽壹個腳本
alias float_t ""float_on""
alias float_on ""alias float_t float_off; +moveup""
alias float_off ""alias float_t float_on; -moveup""
已經比較熟悉腳本制作的大家應該看的出來,這是壹個壹鍵遊泳的toggle
怎樣在菜單中也加上這個toggle的壹欄呢?想必妳也看出來了,對,只要在kb_act.lst的下面加上這麽壹行
""float_t"" ""Floating Toggler""
就壹切搞定,就是這麽簡單,呵呵
壹樣,妳還可以在菜單為妳的腳本加個商標,加入下面行:
""blank"" ""You are running Version XXX of XXXX0""
進入遊戲後妳就可以看見妳的大名也烙在了CS,帥 :>
另外kb_act.lst這個文件是有大小限制的,不過估計誰也寫不了那麽多
CS1.5常用控制臺命令
首先,在妳CS1.5快捷方式裏加上 -console 參數,進入遊戲,按 ~ 鍵(ESC下面的那個鍵)打開控制臺,就可以輸入命令了:
decalfrequency 30.............以秒計,玩家的logo30秒可噴壹次,無上限時間
mp_buytime 0.25...............以分計,在15秒內可買東西,15~550秒
mp_c4timer 35.................以秒計,設定C4炸彈的爆炸時間為35秒,15~90秒
mp_freezetime 4...............以秒計,每壹場開始前的購物靜止4秒,0~9秒
mp_roundtime 3................以分計,每回合的時間為3分鐘,1~9分
mp_timelimit 45...............以分計,即45分鐘後遊戲結束換地圖,無上限時間
sv_restartround 1.............以秒計,設定1秒鐘後刷新SERVER,無上限時間
關於換圖:
changelevel ..................立刻換地圖,所有USER不會離開遊戲
mp_maxrounds X................滿X回合之後換地圖
mp_winlimit X.................任壹隊勝X場便換圖
mapcyclefile mapcycle.txt.....選擇地圖切換的設定檔,內定為mapcycle.txt,可準備好幾份設定檔
關於踢人:
users.........................取得玩家IP的信息
status........................列出玩家id的信息
kick |〈#id〉...................踢人
banid 5 〈#id〉 kick............踢人,讓他5分鐘後才能進來,時間0=永遠
mp_autokick 0.................睡死和TK三次後將不會被系統自動踢掉
mp_autoteambalance 1 .........雙方隊伍人數自動平衡
mp_hostagepenalty 22..........殺了22個人質或隊友後會被系統自動踢掉
mp_limitteams 1...............隊伍最大相差1人時,便不能選擇加入
mp_kickpercent 0.6............票選踢人的人數要達到60%才會踢掉
maxplayers....................遊戲允許的最大人數
bind podbotmenu...............設置機器人控制臺的按紐
addbot .......................制造自己的理想機器人
關於遙控:
sv_password ..................設置進入遊戲的密碼
retry.........................玩家重新連接到當前的SERVER
rcon_password ................設置變身密碼
rcon_password ................變身為AMD登入控制臺
rcon_address IP...............在人數已滿的情況下進入服務器,但不能玩
rcon say xx|“xx“..............發出死活均可看的公告,用 “xx“效果好
rcon addip 0 .................拒絕某個IP進入遊戲,0表是永久,以分鐘計
rcon addid 0 kick ............設定某個WON ID不準進入遊戲,時間設定同上
關於鬼魂:
mp_fadetoblack 0..............這樣死後畫面變黑 活人可以看得到屍體
mp_chasecam 1.................設定觀察員模式的玩家只能跟在別人的屁股
mp_forcechasecam 0............人死了:0自由觀看、1只隨隊友、2視線在原地
關於互殺:
mp_friendlyfire 0.............設定不會殺傷隊友
mp_friendly_genrade_damage 0..設定手榴彈不會丟傷隊友
mp_tkpunish 0.................關閉傷害友軍懲罰,下回合將被強行自殺
mp_falldamage 1...............可以跳樓自殺
client專用
關於愛好:
adjust_crosshair..............每打壹次準心就會換顏色
exec 〈.cfg|.rc〉...............讀取指定文件
hud_fastswitch 1..............快速換武器,按數字直接換出,不用再按鼠標
hud_centerid 1................顯示人物名字放在屏幕中間
sensitivity 8.................鼠標移動速度
zoom_sensitivity_ratio 1.2....設定使用狙擊鏡時鼠標移動速度
name “新名字“.................換名字,活著的時候才能用
timeleft......................讓妳知道還有幾分鐘換地圖
net_graph 3...................顯示妳的機器fps值
con_color “255 155 50“........黃色文字
listplayers...................顯示玩家的數字ID
listmaps......................顯示地圖的數字ID
vote .........................玩家投票踢人
votemap 數字ID................玩家投票換地圖
cmdlist.......................列出部分console指令 (可在後面加上指令的字母開頭)
scr_conspeed 600..............設定console文字卷動速度
drawradar.....................顯示雷達
hideradar.....................關閉雷達
maps 開頭.....................列出已安裝之地圖檔名,(只列出指定字母開頭的文件名,*為所有地圖)
exit(quit)....................完全退出遊戲
cl_download_ingame 1..........下載其它玩家LOGO、貼圖等
volume 0.8....................調整音量大小,實際音量為(volume/hisound)
hisound 1.000000..............設定音量最大值,實際音量為(volume/hisound)
bgmvolume 1.000000............背景音效音樂之音量大小
kill..........................自盡
關於錄像:
record filename...............開始記錄壹個錄像
playdemo filename.dem.........使用正常速度播放 filename.dem 錄像
stop..........................停止錄像
CONSOLE後備命令
SERVER端
pausable 0....................禁止客戶端按暫停
mp_consistency 1..............限制模型更改,C4或武器容易讓人發現
mp_flashlight 1...............可以使用手電筒
mp_footsteps 1................開啟腳步聲
mp_startmoney 800.............開始時的金錢數
sv_aim 0......................自動瞄準關閉
sv_bounce 1...................各種獎勵金開啟
sv_cheats 0...................可不可以使用內定秘技
sv_gravity 800................控制重力,800是正常重力,-999到999999
sv_stepsize 18................腳步大小