Project1

标题: 【脚本论】我们到底需要什么样的脚本? [打印本页]

作者: IamI    时间: 2009-8-14 18:10
标题: 【脚本论】我们到底需要什么样的脚本?
(为便于阅读,本文已经划出红条绿条=v=我是被可能吧感染了? - -)
昨天晚上写游戏脚本时,心乱,联想脚本现状,乱文一篇。
请先看这样的脚本:
  1. module QuickCall
  2.   module V
  3.     module_function
  4.     def [](id)
  5.       return $game_variables[id]
  6.     end
  7.     def []=(id,value)
  8.       $game_variables[id] = value
  9.     end
  10.   end
  11. end
复制代码
类似的脚本可以在一些大型游戏中看到很多,比如:夜想曲,或者是全新世界II。
使用类似的脚本显著的特点是,脚本不再是『插件』,其他的脚本在独立情况下失去上述的脚本不能工作。
但是与此同时,却给脚本编写者带来了便利——并不是所有人都能背下variables这样复杂的词语。(请原谅这个不会英语的人吧-c-)
无疑这给SSD带来了诸多的不便——至少在反整合以前。
我的问题是:脚本,究竟应该是『插件』还是由多个脚本部分,组成一个整体?
用更通俗的话说,脚本应该任意部分拿出来即可使用,还是无法拆离的系统?

[B]在此之前,我们先来讨论一个问题——在实际的游戏脚本中,应该是怎么样的?[/B]
广义上的SSD(注意广义这个词)的普遍想法是,用主站上的脚本即可拼凑成一个完整的游戏脚本。用它们的话说,“不用白不用”。
但是,后果自然显而易见——所有的游戏千篇一律。显然这不是“游戏”的初衷。在此我就先不评说这个想法的正谬,但是答案人所皆知(喂喂这不是废话吗)。

下面就完全是我的想法,如果您完全不同意在下这种说法,请速速离开。
一个完整的游戏脚本应该是一个完整的、不可分离的系统(即使是多人共同编撰也应是如此)。如果任一脚本可脱离使用,后果很严重——大量的alias容易引起大量的潜在的错误,更不用说各种各样的冲突。在多人的情况下,编剧应能够将各种的任务作合理的分配。
也许你会说,按照这种逻辑,主站上的脚本,不都是没有意义的吗?但是请记住,那真的是你要的脚本吗?你要的效果真的与此完全相符吗?1K人可能有2K种不同的想法。也许大量的常数配置能解决这样的问题,但是大量的常数同样也会引起无数潜在的Bug。唯一的解决方案是,完全整合。整个游戏应该是一个完整的系统——除非出续章,否则整个系统不会再有大的修改。
『插件』永远是不完整且易错的。现在回到原来的问题:我们需要怎样的脚本?很明显已经有答案了。

思路很乱,语言很纠结,请谅解。
作者: 霜冻之狼    时间: 2009-8-14 18:23
本帖最后由 霜冻之狼 于 2009-8-14 18:30 编辑

私认为读懂一点....就是说写脚本时不要把脚本分散开写,不然别人拿来用就很麻烦

完全整合啊?那不是把所有脚本塞进一个脚本页里去吗?
作者: dbshy    时间: 2009-8-14 18:35
如果是帮别人写,还是插件式的比较好

如果是自己的游戏用,就写一个完整的系统
作者: 霜冻之狼    时间: 2009-8-14 18:40
其实我觉得这样对游戏作者是好消息
好处就是游戏就算被解密
那个想克隆脚本的人也不会轻轻松松得手
作者: tora-kak    时间: 2009-8-14 18:42
本帖最后由 tora-kak 于 2009-8-14 18:43 编辑

支持一下..

的确好多插件脚本冲突过来冲突过去不说,而且咱也觉得插一大堆外挂脚本很不美观,果然还是一整套脚本比较有爱的素..

不过于咱这种脚本小白而言要自己实现这点大概还得个10几20年的素...

[line]1[/line]
其实我觉得这样对游戏作者是好消息
好处就是游戏就算被解密
那个想克隆脚本的人也不会轻轻松松得手
霜冻之狼 发表于 2009-8-14 18:40


于是乎直接拿人家工程改的同学就出现了..orz..
作者: 后知后觉    时间: 2009-8-14 21:20
我现在的习惯是 一个类就占用左边的一个标题栏
如果修改了RGSS默认的东西 就新建一个同名的标题栏 然后把要修改的部分复制过来以后再进行修改
这样方便管理,什么脚本的什么地方进行过修改,在Debug的时候也很方便
新建一个系统 要写1个Scene和6个新的窗口类
那么 这个系统一共就占用了7个标题栏

只要不是专门为了去写插件,那么,自己觉得怎么方便,那就怎么做.
作者: 神龙出世    时间: 2009-8-14 21:33
sorry ,手滑了,其实我想选第二项的
作者: 越前リョーマ    时间: 2009-8-14 21:38
虽然我选了第二个还是说下:大概是说脚本不应该被……怎么说呢…… = = 总之不能被用来做成千篇一律的游戏……?

其实我做有些游戏的时候会专门请人写独特的脚本啦。
作者: flzt5354    时间: 2009-8-14 22:11
千篇一律只是因为没能力去创新- -
不是什么人英文都很好的~
对于英文烂的人来说脚本是一道很深沟
这种情况下也只有用别人做出来的脚本插件了
若每个系统的脚本都变成不可分割的部分
那像我这类人还怎么玩呢
另外,以我对游戏的理解
一个RPG游戏应该出色的地方是剧情
而不是战斗系统,这只是辅助娱乐而已
游戏系统千篇一律又如何
即使每个游戏的战斗系统都一样
但只要游戏的剧情是好的
一样能获得认同
游戏,玩的是能扣人心悬的剧情
是玩使人废寝忘食的剧情
个人理解,如有雷同,实属巧合
作者: 后知后觉    时间: 2009-8-14 23:28
英语不好可不是不学脚本的理由
对于原创脚本来说,不需要什么英语都可以完成
英语的应用基本上就是拿来读别人的脚本用的

我学脚本是在英语荒废了好几年了来学的脚本
很多单词都记不得了,但是现在有很多翻译工具
远的不说就说google上面就有翻译工具
我用的是网易的有道桌面词典,可以对很多个地方即时取词翻译还有发音- -

只有剧情没有系统的那不叫游戏,那叫R剧
作者: 赤点    时间: 2009-8-14 23:39
我觉得,脚本占一部分,其实主要是没素材。。。
脚本20%
剧情30%
素材40%
创意10%
当然有能力可以自己写啊。。。不过这是个共享的时代 = =a
作者: dbshy    时间: 2009-8-15 00:10
ls说得好啊,素材最重要,我深受其害啊
没有素材,很多事情都做不了

在下认为,系统再强大,没有素材的支持,也是一渣
作者: 赤点    时间: 2009-8-15 00:19
因为动漫产业不发达
游戏产业也不会发达的
看了一些游戏的人设真是”极品“啊
就没有玩下去的欲望了
作者: 皓影清风    时间: 2009-8-15 21:29
本帖最后由 皓影清风 于 2009-8-15 21:32 编辑

我还是希望插件脚本多些,方便大多数人。弄成一个整体,那得多少脚本功底啊!!!真去学脚本了,往往自己的游戏会坑化,偶就是(搞到现在,脚本一知半解,游戏丢哪动都没动),现在很后悔,真不该去学什么脚本,一学就想学好,越学越觉得知道的太少,进而又加深学习,而游戏呢~~???坑了~~~!!!!脚本应该是为游戏服务的吧,主体应该还是游戏本身吧,这问题得好好想想~~~
作者: 亿万星辰    时间: 2009-8-16 16:26
这不就是SDK存在的意义么……  = =|
作者: orochi2k    时间: 2009-8-17 10:50
我有一群非常神奇的诡异脚本,就是因为太诡异,所以懒得放出来 囧
作者: 猫哥哥    时间: 2009-8-17 11:16
自己写脚本都是为了自己的工程配合着用,基本上很少会考虑做成兼容默认脚本的插件式吧(真要考虑兼容就太折磨自己了)。
主要原因是这样写的效率高,用起来也方便,自己的工程坑的几率才能变小……有时候还能去掉一些不必要的开销而提高运行速度……

做的太个性化、太复杂的脚本,泛用性太差,发出来也没人能用啊(不过倒是能用来偷窥一下思路的)。
作者: 柳飛鷹    时间: 2009-8-17 13:07
我也是素材急缺啊 脚本齐全了
作者: 风雪优游    时间: 2009-8-17 14:48
我收集的脚本是这样分类的

插件类
模板类
应用类

私认为,有需要就有必要,连2003都有人用,所以制作脚本者没有必要为此苦恼,自己喜欢什么效果,就怎么写。
作者: IamI    时间: 2009-8-17 16:36
本帖最后由 IamI 于 2009-8-17 16:38 编辑

2# 霜冻之狼
我是指,脚本的契合度而不是位置。个人感情上,我喜欢把一个脚本分成N串。
[line]1[/line]
如果是帮别人写,还是插件式的比较好

如果是自己的游戏用,就写一个完整的系统[line]1[/line]
dbshy 发表于 2009-8-14 18:35

我最怕的就是那帮SSD,写完一个插件说“不行啊有错误!!你有好好写脚本吗!”[line]1[/line] 5# tora-kak
1年足够了。[line]1[/line]
6# 后知后觉
如果遇上在Scene里面操作Sprite呢?顺便我说的是脚本契合度……[line]1[/line] 9# flzt5354
激情不能持久。[line]1[/line]
ls说得好啊,素材最重要,我深受其害啊
没有素材,很多事情都做不了
在下认为,系统再强大,没有素材的支持,也是一渣
dbshy 发表于 2009-8-15 00:10

说的很好很准确。但是脚本好的话的确可以省下不少素材。[line]1[/line] 13# 赤点
中国这样子,算了吧。[line]1[/line] 14# 皓影清风
你还是去“综合技术应援区”吧(我承认我欺负新人= =)[line]1[/line]
这不就是SDK存在的意义么……  = =|
亿万星辰 发表于 2009-8-16 16:26

理解不能,请详解。[line]1[/line]
自己写脚本都是为了自己的工程配合着用,基本上很少会考虑做成兼容默认脚本的插件式吧(真要考虑兼容就太折磨自己了)。
主要原因是这样写的效率高,用起来也方便,自己的工程坑的几率才能变小……有时候还 ...
猫哥哥 发表于 2009-8-17 11:16

终于有人……了解了我的心声。[line]1[/line] 19# 风雪优游
当你自己做一个游戏的时候就会理解到我现在这般纠结的心情了……
作者: ↙℡忘記ゐ過    时间: 2009-8-17 21:52
提示: 作者被禁止或删除 内容自动屏蔽
作者: flzt5354    时间: 2009-8-18 13:10
本帖最后由 flzt5354 于 2009-8-18 13:21 编辑
英语不好可不是不学脚本的理由
对于原创脚本来说,不需要什么英语都可以完成
英语的应用基本上就是拿来读别人的脚本用的

我学脚本是在英语荒废了好几年了来学的脚本
很多单词都记不得了,但是现在有很多翻译工具
远的 ...
后知后觉 发表于 2009-8-14 23:28

R剧是纯看的=.=,当看电影
有剧情的游戏是在玩之中看的,或者说,是在玩之中感受
差别很大,即使给你一个很好的系统,但剧情烂得无法再烂,
而另外一个作品剧情非常不错,但只是RM的默认系统
玩过你就会分辨了,我们不是在玩拳王!
是RPG游戏!
我是抗拒英语而已=.=
嗯,睡不着的时候看看英语单词
比安眠药好用多了,还没有副作用
作者: 后知后觉    时间: 2009-8-18 13:37
22# flzt5354
这2类游戏我都不会玩的
那种只有剧情的RPG只不过就是一本比书本形式的小说要生动一些罢了
有音乐有图像,那叫看电子小说,不叫玩游戏
就默认RGSS,那质量也太差了吧,无可玩性
而别人系统强大的游戏剧情差点是可以随时写好的,
别人是可以拿着强大的系统去寻找合作伙伴来共同研究精品的剧情
而你拿着剧情去找人给你写强大的系统,你能找到吗?
要知道
【把一个不怎么好的剧情写好】要比【一个完全不懂脚本的人把系统高好】
要轻松太多太多了~
作者: flzt5354    时间: 2009-8-18 14:25
本帖最后由 flzt5354 于 2009-8-18 14:29 编辑

写一个剧情跟小说差不多
不知道你有没在起点看过小说
是啊,写书的人是不少,可大多都不是不好看,桥段烂,文笔烂
甚至有些仅靠情欲段
想写一本好的小说,呵呵,这其中的艰辛,你要试过才知道~反正我是试过了
剧情也同理,不是你说想写就能写好的
至于说精通脚本的人难找.这个我不否认
所以嘛=,=靠自己了
作者: IamI    时间: 2009-8-18 15:43
再次重申,我仅仅讨论的是脚本的扣合性与分离性,
对于脚本的学习,请自己吐槽。

默认的系统也可以传神,比如《无名曲》,比如《神言虚幻》
作者: ★_茄孓    时间: 2009-8-20 22:27
支持IamI哈,言之有理。
想要做好一个比较完整的游戏,还是要自己写一个系统,对系统的维护修改都是非常便利的。
作者: well    时间: 2009-8-21 07:27
我选了2,因为没有其他的好选……
如果不计较高冲突和低维护性。插件脚本对那些无力制作脚本的作者是绝对的福音……
排除掉纯SSD和由于某些误会(比如从网上某些言论得出脚本难于上青天的结论)从而对接触脚本产生心理障碍(呃……)还有正在入门,拥有迫切制作成品的愿望但实力尚不足配合的作者群,应该……还是……相当多的吧
术业有专攻。对没有脚本实力却希望实现相应效果的作者,去央求别人开放专用系统,当然还是即插即用的插件脚本更迅速和省力。
如果说因此造成了“千篇一律”。那只能说明作者没用心。因为脚本都是只提供了框架,内容还要原作者精心琢磨。
因为有了“华丽的”菜单、战斗系统,就觉得毫无新意甚至粗制滥造的内容也可以拿出来唬人。需要改变的是这种心态吧。那些创作插件脚本的作者,我相信他们的初衷是美好的。难道因为一部分人的曲解滥用,就全盘否定吗?
不过对我来说,主要是感觉使用alias的脚本方便学习。与原装脚本对比,很容易看出来添加的部分。分析多余的部分就知道很多效果的实现方法。
作者: 神思    时间: 2009-8-21 22:39
其实不然。我比较喜欢泛用些的东西。因为这样比较好修改和引用。当2个人以上同时开发的时候这样会方便很多。一个功能划分为一个模块。
作者: 神思    时间: 2009-8-21 22:49
比如我加入寻路脚本。后。只需要fine(map_data.x.y)便可返回路径。这样不是很方便么?
作者: 风雪优游    时间: 2009-8-21 22:54
比如我加入寻路脚本。后。只需要fine(map_data.x.y)便可返回路径。这样不是很方便么?
神思 发表于 2009-8-21 22:49


对,我很喜欢这个脚本,避免的剧情设置的繁琐度。不知道VX有这个脚本嘛?
脚本是游戏的从属物,是或则让制作更方便,或者让游戏更有乐趣。
作者: 牛肉面    时间: 2009-8-23 23:06
本帖最后由 牛肉面 于 2009-8-23 23:10 编辑

就算用别人的脚本肯定还是要改改再用的……  至少我是这样

况且像我一样只会改改的人大有人在……都整合了估计都会变盗用工程党了……

那时候研究怎样解密的人就疯狂了。工程就难保:(
作者: DeathKing    时间: 2009-8-24 09:21
这就是国外为什么有SDK了。
看来必须要有一个规矩了。
还是外挂脚本好,写成一阵个就更好了。

说句实话,variable是我们初中的词汇




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1