游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1732|回复: 2

问一个比较初级的问题

[复制链接]

19

主题

38

帖子

38

积分

注册会员

Rank: 2

积分
38
QQ
发表于 2004-3-17 09:18:00 | 显示全部楼层 |阅读模式
我知道写很多游戏程序的时候都要用到一个叫做脚本的东西,脚本的概念我大致上清楚,但是,我想知道,程序中的脚本通常应该怎样写呢?再使用的时候又是怎样用的呢?如果可能,希望可以给我一个简单的例子,谢谢。
如果有例子,可以发送到我的邮箱里面
freeknight@qq.com

2

主题

17

帖子

21

积分

注册会员

Rank: 2

积分
21
发表于 2004-3-17 11:15:00 | 显示全部楼层

Re:问一个比较初级的问题

有关脚本命令你可以自己写,也就是自己定义你自己的,当然可以用一些公用的脚本编辑器。
对于公用的我没有什么研究,这里就简单说说如何自己写一些简单脚本:
(以RPG为例)
  一个RPG必备的几个元素就是引擎、地图编辑器、脚本。引擎完成整个游戏的初始化和过程的运转(同时也要保证对地图文件,脚本文件的读取工作)。地图编辑器就不说了,直接说脚本:
  我写过一个小的RPG游戏,可以自己定制自己的脚本并通过解释脚本命令来完成一些控制工作。举一个简单的例子:
Map(地图名);
这就是我自己定义的一个脚本,功能就是选择一个地图文件作为场景。脚本编辑器完成的主要工作就是解释脚本命令,并通过引擎把结果显示出来。我的脚本编辑器大概的工作流程是
ifstream in("脚本文件名");
in.getline(controlcommand,sizeof(controlcommand),'(');
if(controlcommand=="Map")
{
  in.getline(mapname,sizeof(mapname),')');
  MapManageFunction(mapname);//跳转到专门处理map脚本的函数中执行
}
else(controlcommand=="其他的命令")
{
  //其他命令处理;
}
大概的流程就是这样,然后再MapManageFunction()函数中实现调用引擎,读取地图,往屏幕上画图等等工作,这样就解释了Map这个脚本命令。

  当然还要有其他的脚本来控制人物的显示,NPC的对话,屏幕的淡入淡出等等一系列的东西,这样就会有一组命令,通过这样的一组命令就可以实现对游戏中的背景,人物和各种角色的初试化设定和控制,实现整个游戏的剧情控制。也是通过这种方法来完成一个游戏的具体实现,即使相同的引擎,通过不同脚本和地图就可以作出一个完全不同的两个游戏。

具体有关脚本的东西我也是一家愚见,有什么不对的还要大家指教。如果楼主还不了解的话就可以上金点时空down他们的圣剑2游戏源码,看看他们的脚本是怎么定义和运用的,相信会大有裨益的!

19

主题

38

帖子

38

积分

注册会员

Rank: 2

积分
38
QQ
 楼主| 发表于 2004-3-17 13:41:00 | 显示全部楼层

Re:问一个比较初级的问题

ok,谢谢你了,我会好好研究一下的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-29 10:53

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表