久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

游戲腳本解釋器的制作

 quasiceo 2013-11-21

游戲腳本解釋器的制作 [問題點數(shù):100分,,結(jié)帖人apogeecsj]

apogeecsj
apogeecsj
apogeecsj
等級:Blank
結(jié)帖率:100%
樓主 發(fā)表于: 2004-03-16 14:57:43
請大家談?wù)勱P(guān)于游戲腳本解釋器制作方面的經(jīng)驗及設(shè)計思路
另外請大家提供點手頭上有的那方面的資料,,或網(wǎng)上資源,,網(wǎng)海茫茫找起來真的費勁,謝謝大家
分享到:
回復(fù)次數(shù):9
hell190109
hell190109
hell190109
等級:Blank
3
3
#1 得分:13 回復(fù)于: 2004-03-16 18:12:51
nehe.gamedev.net
www.gametutorials.com
www.gameres.com
www.chinagamedev.net
noslopforever
noslopforever
天堂里的死神
等級:Blank
#2 得分:12 回復(fù)于: 2004-03-16 20:08:13
圣劍群英傳的代碼可以參考
www.gpgame.net

www.gamedev.net里面的Articles里面專門有script系列文章
toymaker
toymaker
toymaker
等級:Blank
#3 得分:40 回復(fù)于: 2004-03-17 12:33:09
談?wù)勛约嚎捶ǎ?br>
有關(guān)腳本命令你可以自己寫,,也就是自己定義你自己的,,當然可以用一些公用的腳本編輯器。
對于公用的我沒有什么研究,,這里就簡單說說如何自己寫一些簡單腳本:
(以RPG為例)

  一個RPG必備的幾個元素就是引擎,、地圖編輯器、腳本,。引擎完成整個游戲的初始化和過程的運轉(zhuǎn)(同時也要保證對地圖文件,,腳本文件的讀取工作)。地圖編輯器就不說了,,直接說腳本:
  我寫過一個小的RPG游戲,,可以自己定制自己的腳本并通過解釋腳本命令來完成一些控制工作。舉一個簡單的例子:

Map(地圖名),;

這就是我自己定義的一個腳本,,功能就是選擇一個地圖文件作為場景。腳本編輯器完成的主要工作就是解釋腳本命令,,并通過引擎把結(jié)果顯示出來,。我的腳本編輯器大概的工作流程是
ifstream in("腳本文件名");
in.getline(controlcommand,sizeof(controlcommand),'(');
if(controlcommand=="Map")
{
  in.getline(mapname,sizeof(mapname),')');
  MapManageFunction(mapname);//跳轉(zhuǎn)到專門處理map腳本的函數(shù)中執(zhí)行
}
else(controlcommand=="其他的命令")
{
  //其他命令處理;
}
大概的流程就是這樣,然后再MapManageFunction()函數(shù)中實現(xiàn)調(diào)用引擎,讀取地圖,,往屏幕上畫圖等等工作,,這樣就解釋了Map這個腳本命令。

  當然還要有其他的腳本來控制人物的顯示,,NPC的對話,屏幕的淡入淡出等等一系列的東西,,這樣就會有一組命令,,通過這樣的一組命令就可以實現(xiàn)對游戲中的背景,人物和各種角色的初試化設(shè)定和控制,,實現(xiàn)整個游戲的劇情控制,。也是通過這種方法來完成一個游戲的具體實現(xiàn),即使相同的引擎,,通過不同腳本和地圖就可以作出一個完全不同的兩個游戲,。

具體有關(guān)腳本的東西我也是一家愚見,有什么不對的還要大家指教,。如果樓主還不了解的話就可以上金點時空down他們的圣劍2游戲源碼,,看看他們的腳本是怎么定義和運用的,相信會大有裨益的,!

maxsuy
maxsuy
maxsuy
等級:Blank
#4 得分:5 回復(fù)于: 2004-03-17 22:09:41
lslkm3000
lslkm3000
lslkm3000
等級:Blank
#5 得分:5 回復(fù)于: 2004-03-19 19:04:10
友情up
apogeecsj
apogeecsj
apogeecsj
等級:Blank
#6 得分:0 回復(fù)于: 2004-04-05 18:44:24
謝謝樓上各位,,我剛完成了一個腳本解釋器,支持
int, float double, string類型定義
支持語句指令:
IF 
IFS(if else) 
GOTO 
SET //設(shè)置變量值
COMPUTE //計算表達式值
RANDOM 
ADD (+-改變變量值)
WAITTICK
PRINT 
RETURN 
(但還沒與具體游戲相結(jié)合的指令)
總體來說,,現(xiàn)在指令的類型大半都取自圣劍英雄傳,,我不知道游戲腳本里的指令除了以上幾個最基本的邏輯控制指令外,一般還有些什么,?

希望大家能在這里具體探討一下(我初學(xué)做游戲,,很想做個不錯的通用的游戲腳本引擎,希望大家指點)
我的email: [email protected]
wlpwind
wlpwind
wlpwind
等級:Blank
#7 得分:5 回復(fù)于: 2004-04-05 18:56:57
不錯,,重要的是能堅持下去。
gofree2
gofree2
gofree2
等級:Blank
#8 得分:5 回復(fù)于: 2004-04-05 21:27:22
干嗎不用現(xiàn)成的?LUA 或者PYTHON都不錯啊
toymaker
toymaker
toymaker
等級:Blank
#9 得分:15 回復(fù)于: 2004-04-06 09:02:22
需要游戲NPC的控制指令:
Talk(對話)
SetNPC(放置npc)如果可以的話還可以放置一些可以自動移動的NPC
MoveTo(NPC移動命令)
等等
屏幕特效教本:
FOut(淡出)
FIn(淡入)
Black(改彩色為灰度)
地圖場景控制教本:
LoadMap(讀入地圖)
MoveThings(可以具體控制某個物塊)
等等其他的一些

上面只是羅列出了自己想到的一些游戲教本控制命令,相信各位大俠肯定還有補充,!

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多