半條命1開(kāi)始速通前的配置(游戲文件大致結(jié)構(gòu),指令說(shuō)明等)
注:
在閱讀此篇文章之前,請(qǐng)閱讀


在speedrun(www.speedrun.com/hl1/resources)下載了Half-Life 2005 WON或者Goldsrc Package并解壓后,可以看到以下文件:


再次提醒:一定要啟動(dòng)steam并且購(gòu)買(mǎi)了半條命1原版!

一、半條命游戲文件結(jié)構(gòu)
我們拿Goldsrc Package舉例子。
首先打開(kāi)Half-Life WON(在Goldsrc Package中使用的是這個(gè)里面的文件啟動(dòng)半條命1原版),你可以看到幾個(gè)主要文件夾。其中,valve、valve_hd、valve_WON、valve_won_schinese是最重要的,我下面展開(kāi)來(lái)說(shuō)。

游戲在啟動(dòng)的時(shí)候會(huì)先優(yōu)先使用其他文件夾里面的資源,如果找不到對(duì)應(yīng)的文件,會(huì)到valve里面找(won版會(huì)到valve_WON里面找)。如果還是找不到,那么該資源在游戲里面將不會(huì)被顯示(如:音頻不播放,模型丟失,天空盒錯(cuò)誤等等)。
●valve:存儲(chǔ)游戲的基本文件,如地圖文件(maps)、音頻文件(media、sounds)、模型文件(models)等等。valve是我們一定不能修改的文件夾,它包括了游戲的基本程序邏輯結(jié)構(gòu)。
●valve_hd:里面包含高清模型和音頻,可以在游戲的設(shè)置里面啟用高清模型,但是不推薦使用。
●valve_WON:游戲在啟動(dòng)WON版是使用此文件夾,我們?cè)谥笞远x設(shè)置的時(shí)候把userconfig.cfg文件放在此文件夾里面。
●valve_won_schinese:速通錄制的demo和存檔(SAVE)均在此文件夾中,上傳demo到speedrun時(shí)要保存你錄制的demo,在這個(gè)文件夾里面尋找即可。

二、開(kāi)始速通文件自定義配置
我們主要針對(duì)WON Scriptless 的速通方式進(jìn)行文件配置。
在valve_WON中,我們可以看到有一個(gè)WON.cfg的文件,這個(gè)文件千萬(wàn)不能修改,否則你的速通會(huì)被認(rèn)定為無(wú)效(文件中有說(shuō)明)。

我們的自定義設(shè)置在userconfig.cfg中,里面有我們自定義綁定的按鍵指令(bind指令)、為一批指令起的別名的指令(alias指令)和其他的游戲設(shè)置指令(比如使用的紋理類型,自定義的準(zhǔn)星等等)。
每次游戲在啟動(dòng)的時(shí)候會(huì)首先執(zhí)行config.cfg(注:與userconfig.cfg不同,這個(gè)文件在valve_schinese文件夾中)中的所有指令,再執(zhí)行userconfig.cfg(在valve_WON中),最后執(zhí)行WON.cfg。





三、具體指令講解
具體的指令配置以及哪些指令在scriptless方式速通中可以使用在speedrun官網(wǎng)上的guide板塊有老外的詳細(xì)講解(www.speedrun.com/hl1/guides),這里我只舉幾個(gè)簡(jiǎn)單例子。
●bind指令:
用法:
bind <key> <command>????為某個(gè)按鍵綁定一個(gè)指令或者一批指令(在scriptless方式的速通中,除開(kāi)始計(jì)時(shí)指令外,一個(gè)按鍵或者一個(gè)別名只能包含一條指令。如bind?f1 "fps_max 19; wait;wait;wait;wait;wait;fps_max 100"這樣的指令不能在scriptless速通中使用。)
舉例:
bind z weapon_shotgun????在游戲中按下z鍵就可以切換到霰彈槍
bind f1 "fps_max 20"????在游戲中按下f1把fps限制到20幀
bind v "save quick"????存一個(gè)快速存檔
bind g "load quick"????讀取名為quick.sav的存檔
●alias指令:
用法:
alias <alias name> <commands>
舉例:
alias 100fps "fps_max 100"
把后面"fps_max 100"這條指令取一個(gè)別名為100fps,這時(shí)我們?nèi)绻儆?/p>
bind f1 100fps
就可以非常方便地把幀數(shù)設(shè)定為100這條指令設(shè)置給按鍵f1,不用再麻煩地輸入后面地具體指令。
再以速通開(kāi)始指令為例
alias run "exec userconfig.cfg;skill 1;map c1a0;bxt_hud_timer 1;bxt_timer_reset;bxt_timer_start;bxt_autorecord run"
為后面這一批指令取別名為run,如果再使用
bind p run
設(shè)定按鍵p為開(kāi)始速通,這里的run就代指后面("exec userconfig.cfg;skill 1;map c1a0;bxt_hud_timer 1;bxt_timer_reset;bxt_timer_start;bxt_autorecord run")這一大串指令。
由此可見(jiàn),alias常與bind一起使用,單獨(dú)的alias只是取別名而已,不會(huì)對(duì)游戲的按鍵設(shè)置有影響。對(duì)于重復(fù)的指令可用這個(gè)方式減少輸入指令的工作量。
●save,load指令:
用法:
save <savename>????????存檔
load <loadname>????????讀檔
舉例:
save quick????????存一個(gè)名字為quick的存檔
load quick????????讀取剛剛存的檔
●map指令:
用法:
map <levelname>????????切換服務(wù)器到某張地圖
舉例:
map c1a0????????切換到c1a0.bsp
注:不要把load指令和map指令弄混了。
●exec指令:
用法:
exec <filename>????????執(zhí)行一個(gè)腳本文件
舉例:
exec userconfig.cfg????????執(zhí)行userconfig.cfg中的所有指令
●修改fov指令:
用法:
default_fov <number>????????設(shè)置游戲fov為特定值,默認(rèn)為90。數(shù)值越大,你看到的東西越多
●cl_showfps指令:
用法:
cl_showfps <0/1>????是否顯示fps值,0為隱藏,1為顯示
●修改渲染方式指令:
gl_texturemode <texturet_ype>????????
可以設(shè)定渲染模式的類型: gl_nearest_mipmap_nearest,gl_linear_mipmap_nearest, gl_nearest_mipmap_linear,gl_linear_mipmap_linear。
默認(rèn)為gl_texturemode GL_LINEAR_MIPMAP_LINEAR。
但是推薦使用GL_texturemode GL_Nearest,雖然很糊,墻壁上都是馬賽克,但是有些速通技巧要借用馬賽克進(jìn)行位置的調(diào)整,所以為了速通速度,還是使用nearest雙線性過(guò)濾比較好。
●Bunnymod XT指令:
插件Bunnymod XT的指令在大佬YaLTeR的github項(xiàng)目bunnymodXT中有詳細(xì)說(shuō)明,地址:https://github.com/YaLTeR/BunnymodXT/wiki/Console-commands-and-variables
這里只分析scriptless速通方式用到的指令。
bxt_hud_timer <0/1>:顯示計(jì)時(shí)器,1為顯示,0為隱藏
bxt_timer_reset:計(jì)時(shí)器重置為0
bxt_timer_start:計(jì)時(shí)器開(kāi)始計(jì)時(shí)
bxt_autojump <0/1>:按住空格自動(dòng)跳躍,1為打開(kāi),0為關(guān)閉。scriptless速通方式不能用自動(dòng)跳躍。
重點(diǎn):
bxt_autorecord <filename>:自動(dòng)錄制demo,例如bxt_autorecord run。則錄出來(lái)的demo的名稱為run_1.dem,run_2.dem,run_3.dem……每次讀檔都會(huì)自動(dòng)停止錄制當(dāng)前demo,繼續(xù)錄制下一個(gè)demo。速通完成后要輸入stop結(jié)束錄制最后一個(gè)demo。

四、我的速通配置參考
大家可以根據(jù)自己的習(xí)慣調(diào)整按鍵,我的按鍵只是一個(gè)參考。并且我的按鍵也不是一成不變的,如果我發(fā)現(xiàn)另一種方法更好,我會(huì)修改自己的按鍵。
p鍵:重新開(kāi)始半條命劇情速通
o鍵:重新開(kāi)始危險(xiǎn)課程訓(xùn)練速通
z鍵:切換到霰彈槍weapon_shotgun
x鍵:切換到mp5????weapon_9mmAR
c鍵:打開(kāi)手電筒????impulse 100
v鍵:存檔
g鍵:讀檔
j鍵:讀取自動(dòng)存檔
f鍵:切換到高斯槍? ??weapon_gauss
t鍵:切換到手雷????weapon_handgrenade
h鍵:切換到蜂巢槍????weapon_hornetgun
,鍵:設(shè)置暫停
.鍵:取消暫停
mwheelup上滾輪鍵:跳
mwheeldown下滾輪鍵:蹲
mouse3(滾輪按下)鍵:設(shè)置fps為100
mouse4鍵(鼠標(biāo)側(cè)鍵1):設(shè)置fps為4
mouse5鍵(鼠標(biāo)側(cè)鍵2):設(shè)置fps為20
b鍵:取消蹲
alt鍵:限制fps到29.8(為了jumpbug使用的fps,在跳過(guò)串聯(lián)共振技巧中使用)
其他按鍵均為默認(rèn)。