找回密码
 点一下
查看: 2173|回复: 17

SE入门贴(初稿)

[复制链接]
发表于 2011-11-9 17:21:52 | 显示全部楼层 |阅读模式
论坛上研究向的帖子不少,提问和回答向的也有很多,不过貌似没有以完整概念描述和介绍一下这个编辑器,刚好小萌过来玩SE了,我就顺道写一个吧。
(持续编辑中,各位有补充的可以随意回复帖子,我会最後把大家的东西加起来,整理出一个完整的SE入门贴)

引言
头目的介绍贴:
http://bbs.islga.org/read-htm-tid-44343.html
上面那一贴已经有介绍过了,我就补充几句
首先,这个编辑器非常的强大,其功能和操作方式已经远远超过任何其他的编辑器,数据编辑器甚至包含了物件导向(继承)、关系数据库管理系统、间接层(Proxy class)等等的概念融合在内,令编辑器拥有极高的单位、技能制作自由度,地图制作者可以利用编辑器制作出和原版单位一样甚至超越的新单位。
不过强大和制作自由也是有代价的,这个编辑器的复杂程度是WE的无数倍,如果没有耐性学习和研究的话,想做出可玩的地图其实比War3更难。

废话不多了,这个编辑器的能力实际玩过就明白了,基本把这个编辑器玩上手以后你不会再想回去玩其他的编辑器。


介绍
这个编辑器的基本框架的WE差不多,有地形编辑器、触发编辑器、数据编辑器、文本编辑器、导入管理员、Previewer和总管。

地形编辑器:
这东西的操作方法的WE差不多,我等美术白痴就没研究过这东西,这里有待别人补充。。


触发编辑器:
这东西就是WE的触发编辑器加强版,内部语法是Galaxy语言,类似古老C语言。
和Jass相比,Galaxy的效率高了很多倍,而且有强力的Debug工具(虫族之心会加入单步调试等等专业Debug工具),而且Galaxy内置的垃圾回收系统,令作者不用在花精力防止内存泄漏。
还有个特性就是,Galaxy是完全同步的系統,好处是里面没有函数会导致玩家不同步而掉线,坏处就是自由度比较低,不过利用头目研究的相位系統,基本上就只剩下好处了。(注意:事件发动频率高的触发很容易造成lag,因为事件发动一次,游戏会发一个封包来保持全部玩家同步,造成网络压力)
自定库(Library)系統也是一大改进,你可以用GUI写一个函数,然后制作出一个GUI动作,完美的代替了以前War3的Jass+UI重载系統,配合这个编辑器的地图MOD载入系統,现在使用别人写好的函数已经非常非常方便了,这东西可以参考头目制作的GAx3 MOD。
本地变量,以前在War3时候必须懂jass才能用,而且还要小心不要泄漏记忆体,不过现在已经可以直接在GUI中使用了。
Bank系統,也就是可以本地保存资料,在下次游戏中载入,虽然加密性不好,不过也能带来不少方便了(服务器端保存系統,暴雪说会加入长远发展计划)。
API比War3多了很多(必须的),操作方便程度也加强了,还有各部分也有一些小改进(例如单位组现在可以用索引来取得其中的单位)。
触发编辑器和War3差异不大,在WE有基础的人大概不会在这里有问题。
还有个地方要注意(WE过来的人要特别注意),以前WE很多技能制作等都是用触发器制作,但是SE中大部分情况下已经不需要这样做了。数据编辑器目前能制作出大部分的技能效果(也就是无T),而且效率远远超过触发器。也就是说,现在触发器和数据编辑器的分工更明白了,触发主要负责游戏系統、剧情制作、UI系統等等主游戏系統,数据编辑器主要是技能制作等,只有在必要的情况下采用触发辅助制作技能。




数据编辑器:
这里是整个编辑器最复杂的地方,也是其灵魂核心,这编辑器最强大的部份在这里,换而言之也是最难和要花最多时间来学习的地方。
很多人玩了一整个礼拜,做出来的单位放到地图里还是个球,也有人只用复制功能,会修改几个小东西就自以为懂了数据编辑器,其实这东西的强大远远超过你想像的,发展潜力无穷。
从论坛上大部分人提问的问题,我看出来很多人对数据编辑器没有一个完整的理解,结果卡在某个地方半天,其实解答方法很简单。简单一点说,就是缺乏基础,当然论坛上缺乏这样的教学帖子也是一个问题,所以我先从大局说一说这个数据编辑器的特性。

数据编辑器的功能包括:
编辑单位和模型数据
技能制作(包括数据效果、视觉特效和音效)
游戏操作界面重载
以前WE平衡性参数和其他地图参数
(还有很多很多)...

首先,数据编辑器资料是直接被游戏引擎解译的东西,里面的设定就是游戏运行时候的数据,换句话说,这个编辑器就是你直接和游戏引擎沟通的地方,所以效率是远远超过触发器的。
游戏地图其实是MPQ打包的一堆文件,这事情很多人都知道,在War3时代物编的数据是用暴雪自定的格式保存的,难以直接修改,必须靠编辑器。到了SE,数据编辑器的数据保存格式是XML文件,这代表你可以用MPQEditor和记事本来修改数据编辑器的内容,连编辑器都不用开。也就是说,数据编辑器现在的角色和触发器很相似,都是一个GUI编辑器,然后把你做过的修改保存成响应的格式(Galaxy格式和XML格式)。
在数据编辑器你按下ctrl+3,可以看到一堆XMl数据,这就像把触发器转化成原始数据一样的功能,在你进阶以后,你可能发现直接编辑XML比你在数据编辑器点来点去更快,而且GUI有其局限性,就像触发器不如直接写代码一样,有些功能必须直接编辑XML才能把这个编辑器的能力100%发挥出来,所以我强烈建议基本入门后的各位尝试学习XML。

刚才说过,数据编辑器是你和游戏引擎沟通的地方,在这过程中你难免需要了解一些游戏引擎的知识才能帮助你更好的掌握这编辑器,例如是游戏主循环是0.0625秒一次,也就是一秒循环16次,也就是说游戏里面的数据其实是每1/16秒才更新一次,也就是说你一个buff持续时间0.001秒,另外一个是0.002秒,其实都是一样,都在1/16秒后才会消除。

数据编辑器里面有很多不同的数据类型,有四大类,游戏、动作者(Actor)、美术和音效、地形、高级。
第一项你要明白的东西,RTS连线游戏,每个玩家数据必须要同步,例如在A电脑上机枪兵打一下小狗扣10血,在B电脑上也必须扣10血,这样游戏内容才能够同步,游戏才能继续下去。
但是在视觉上,两台电脑显示的东西是可以不同的,而且不影响数据的同步性,例如A电脑上的机枪兵子弹是红色,B电脑上的子弹是绿色,虽然视觉效果不同,但是只要游戏数据相同(伤害值、伤害时间等等),显示的东西是不需要同步的。
这一点很多人都不知道,其实游戏类别的数据项(单位、技能、效果、行为等等)的东西其实是需要同步的,不容许玩家A和B的资料不同。
而Actor系統,是本地运行的系統,基本独立出來和视觉引擎挂钩,负责所有视觉、声效等等的东西,是一个间接层,把游戏数据在画面上显示出来,而这一层其实是每台电脑独立自己运行的,数据不需要同步。

使用Actor间接层是编辑器最大的改进之一,这系统也是整个编辑器最复杂最强大的东西。它是一个事件驱动的系統,举个例子,游戏数据层现在发生单位X中枪,电脑A的电脑上视频设定是最高(他有强力的显卡),所以A电脑上的Actor在收到数据层传送过来,X中枪这事件后,通知视觉和物理引擎,在画面上画出X单位中枪喷血,鲜血在地上流动这些画面特效。
同一时间,电脑B和电脑A在连线对战,电脑B上的数据层同时发送一个X中枪信号给B电脑上的actor层,但是B电脑的显卡不给力,特效開最底,所以他电脑上的actor层只通知视觉引擎画出喷墨汁的画面,也就是说,两台电脑上的视觉效果可以是不同的,但是数据层的东西是同步的。

由于actor层不同步的特性,头目发展出相位系統,也就是利用触发器控制每个玩家电脑上显示不同的东西,但其实数据部份还是同步的。

美术和音效、地形、高级
这些是管理实体数据(模型数据)、音乐档等的东西,还有就是一些数据的设定,UI重载、光源设定、平衡性常量设定等等东西都在这里,花点时间研究一下这里的东西,你会发现很多以前在WE写死的游戏数据,现在在SE里面都可以自己修改了。


现在各位已经基本了解到各种数据类型的基本分别了,我就深入说一下其中的关系吧。
大家可能已经发现到,数据编辑器把单位数据拆分成为好多小部分的数据,修改起来好像很麻烦,其实这里暴雪混入了一些关系数据库管理系统的设计概念,把东西拆分开来可以减少数据冗餘,玩上手以后你就会发现这样做的好处。例如单位ABCDE,可以共用一个武器Q,而不用每个单位设定一次独立的武器数据。
也就是说一个单位的数据,其实是很多零零碎碎的组件组合而成的,有玩过SQL的人应该很容易就明白了。

再谈一下Actor这个系統,刚才说过这个是非同步的事件驱动系統。他的运作方式和触发器有点相似,也就是有"事件、条件、动作",例如单位受伤事件,动作是播放X单位的受伤动作,然后创建一个流血模型。
换个方向,为啥很多人做出来的单位,是一个球呢?
做一个新单位,你需要设定这单位的逻辑数据(HP、移动速度、武器等等,都在游戏类别里),然后你需要一个实体数据(模型,在美术类),Actor就是把这两个东西连接起来。
事件:A单位被创建
动作:创建A单位的模型
至于为啥单位数据要和一个单位绑定,这就关乎游戏内部的数据、视觉系統的同步问题了。


文本编辑器:
编辑器一个改进的地方,可以制作出一张全语言通行的地图。地图内的内部数据其实是有个ID代表它的,游戏和编辑器在运行的时候,根据本地电脑的安装语言,把这些ID替换成该语言的文本,这包括技能、效果、单位名称、警告信息、触发器名字、触发器播放的文本等等,大部分你看到的文字,其实使用了这种本地化技术。
文本编辑器就是用来编辑这些ID转本地化文字的数据的,不过貌似暴雪还没开放编辑器内加入语系功能,这就需要修改MPQ把新语系文件加入你的地图,然后才能用编辑器编辑各个语系的本地化数据。
整个系統也就省却了维护多个语言版本地图等的问题了,一个地图里面就包含了各种语言包。



导入管理员和Previewer
依然可以给你导入模型之类的动作,官方3DSMAX模型插件名字叫Star Tools(未放出),目前只能依靠民间制作的插件导入war3模型,导入以后有时候要重启编辑器才能看到模型。
Previewer这东西是编辑器内一个不起眼的强大工具,这东西在观察模型上的功能是非常强大的,而且还可以用来制作电影(电影制作功能会在蟲心发布后大幅度加强)。
这东西可以观察模型的贴图、模型的动作、动作名字、模型顶点数量等等数据,还有显示附加点等功能,运用Previewer可以方便知道模型的资料,用来制作技能特效。

总管
没啥好说的。。。


(整理一下思路,明天继续编辑。。。)
发表于 2011-11-9 20:11:40 | 显示全部楼层
其实真正的新手最怕的就是" 和WE差不多" 这几个字
回复

使用道具 举报

发表于 2011-11-9 20:23:44 | 显示全部楼层
说实话 我也摸了有些时间了 表示楼主写的入门 看不大懂
回复

使用道具 举报

发表于 2011-11-9 20:58:03 | 显示全部楼层
乱人辛苦咯~
看来触发器方面没什么变化,熟悉新功能之余主要就是专注学习数据编辑器了
回复

使用道具 举报

发表于 2011-11-9 21:08:31 | 显示全部楼层
數據編輯器才是最可怕的!!

目前也正在全力試驗中~
回复

使用道具 举报

发表于 2011-11-9 22:25:18 | 显示全部楼层
围观围观,星星酱发帖我最喜欢沙发了
回复

使用道具 举报

发表于 2011-11-9 22:54:48 | 显示全部楼层
我是超级大菜鸟。不许笑我。
回复

使用道具 举报

发表于 2011-11-10 19:55:35 | 显示全部楼层
要求星星酱赶快更新!!!!!!!
回复

使用道具 举报

发表于 2011-11-10 21:58:17 | 显示全部楼层
技能 效果 行为 演算体 动作者之间的关系帮我们串一下吧,最好可以类比一下WE
回复

使用道具 举报

发表于 2011-11-11 10:16:07 | 显示全部楼层
很早以前写的,等之后闲下来慢慢在更新吧~可以随意参考下。
*星际2目录架构说明 http://www.sc2map.net/forum.php?mod=viewthread&tid=67
*编辑器整体架构分层见解 http://www.sc2map.net/forum.php?mod=viewthread&tid=72
*系统Mod结构介绍 http://www.sc2map.net/forum.php?mod=viewthread&tid=73

*数据层整体简介 http://www.sc2map.net/forum.php?mod=viewthread&tid=79

*UMA单位体系简介 http://www.sc2map.net/forum.php?mod=viewthread&tid=85
*单位Unit数据类型详解介绍 http://www.sc2map.net/forum.php?mod=viewthread&tid=86
*模型Model数据类型详解介绍 http://www.sc2map.net/forum.php?mod=viewthread&tid=87
*动作者单位ActorUnit数据类型详解介绍 http://www.sc2map.net/forum.php?mod=viewthread&tid=93

*ABE技能逻辑体系简介 http://www.sc2map.net/forum.php?mod=viewthread&tid=95
*ABE技能体系进阶介绍 http://www.sc2map.net/forum.php?mod=viewthread&tid=102
回复

使用道具 举报

发表于 2011-11-11 11:23:39 | 显示全部楼层

回 9楼(chilled) 的帖子

chilled:很早以前写的,等之后闲下来慢慢在更新吧~可以随意参考下。
*星际2目录架构说明 http://www.sc2map.net/forum.php?mod=viewthread&tid=67
*编辑器整体架构分层见解 http://www.sc2map.net/forum.php?mod=viewthread&tid=72
*系统Mod结构介绍 http://www.sc2map.net/forum. .. (2011-11-11 10:16) 
寒心大人这些教程太给力了!
回复

使用道具 举报

发表于 2011-11-11 15:24:27 | 显示全部楼层
看了寒心的帖子,
手不酸了,
蛋不疼了,
敲键盘也更有力了。
一口气玩10小时编辑器,不费劲~
回复

使用道具 举报

发表于 2011-11-14 12:58:07 | 显示全部楼层
求更新啊乱人
回复

使用道具 举报

发表于 2011-11-21 12:46:55 | 显示全部楼层
乱 人 你 倒 是 更 新 啊 ~
回复

使用道具 举报

发表于 2011-11-21 13:08:27 | 显示全部楼层
估计Wowing~
回复

使用道具 举报

发表于 2011-11-21 14:49:34 | 显示全部楼层
咩错。估计窝阴g
回复

使用道具 举报

 楼主| 发表于 2011-11-21 16:40:52 | 显示全部楼层
未命名.jpg 插旗插太多,把这里忘记了。。
回复

使用道具 举报

发表于 2011-11-21 19:31:55 | 显示全部楼层
作业怎么样了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-4-27 18:06 , Processed in 0.256618 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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