1《游戏脚本高级编程》之命令脚本的随想
最近在閱讀《游戲腳本高級編程》,這本書的內容涵蓋很廣,講述了解釋器在游戲領域的一個實現,很適合學習編譯原理,虛擬機設計。如果有同學看《龍書,虎書》等看的云里霧里,可以先以此書接下地氣,不至于喪失了信心,以及繼續學下去的動力。
????????好回到命令腳本。
大家有沒有想過同樣是文本,同樣是由主程序讀取,然后按文本文件的邏輯執行,命令腳本與配置文件的差別?
命令腳本是不涉及到變量,循環,條件邏輯的腳本。我們以一個創建窗口后移動窗口,在閃爍窗口的功能來舉例,通常格式內容如下:
script_create_windows(0,0) script_move_windows(12,34) script_windows_hide(1) script_sleep(1) script_windows_hide(0)或者是這樣:
script_create_windows 0 0 script_move_windows 12 34 script_windows_hide 1 script_sleep 1 script_windows_hide 0配置文件一般是:
windows_first_pos_x = 0 windows_first_pos_y = 0windows_move_pos_x = 12 windows_move_pos_y = 34 sleep_time = 1 windows_flash = 1兩者同樣沒有 高級語言中的 本地遍歷,也沒有邏輯。
其實他們的主要差別就在于 命令腳本中 的命令對應的是主程序里面的一個個函數,或者你可以理解成API , 命令腳本按照順序執行 各個API;而配置文件則是沒有順序的,邏輯的執行順序被包含在主程序中,配置文件只是單純的鍵值對,改變配置文件每行的順序,不會改變程序的行為。(當然這里排除那些高級配置文件,他們也支持變量,循環,條件邏輯,這種配置文件其實就是腳本)。
? ? ? ? PS:回想起當時做綠色征途時,由于對Lua的粗淺掌握,把Lua就當成了命令腳本,然后VC編寫“粘合函數”,也能做出個自動升級到70級的 輔助程序。缺點自然是一大堆,例如腳本必須從新手村開始,如果中途游戲崩了,就不支持從腳本中間運行,因為一個是沒有編寫太多獲取人物任務完成情況等API,當時也不會Lua的 流程控制,條件邏輯的編寫。
總結
以上是生活随笔為你收集整理的1《游戏脚本高级编程》之命令脚本的随想的全部內容,希望文章能夠幫你解決所遇到的問題。