末日拾荒者代码作用一览

2015-02-19 15:33:15 k73游戏之家 作者:圣心不死

末日拾荒者

《末日拾荒者》的玩家们应该都知道游戏中有很多的代码,这些代码有什么作用呢?下面就给大家带来了末日拾荒者代码作用一览。

末日拾荒者代码作用一览

id部分:

AA:BB.CC

在这里:

AA - 我们将导入的数据集的id

BB - 我们想在数据集中设置的物品的id

CC - 我们想要物品的可选次级组id

在末日拾荒者中绝大多数数据都将涉及到id,饥饿状态是状态id 5,狗人是生物id 1 ,而开启冷冻遭遇是遭遇id 2。甚至有几个复杂的遭遇id,例如物品。举例来说,物品‘中等长度的树枝’是id 13.0,13是组id,而0是次级组id。

游戏中的所以东西都使用着这些id当涉及到其他东西时。这样如果一个狗人有强壮作为初始状态,那么在狗人的生物数据中会指明‘60’作为初始状态。

然而,如果其他的mod或基础的游戏给不同的东西使用相同的id,这些id也可能成为一个麻烦。举个例子,如果你有个汽车有着‘13.0’id的mod,而基础游戏设置‘13.0’为中等长度设置的id会怎么样?那么如果你在你的mod中提到‘13.0’,游戏需要知道你想要哪一个‘13.0',基础游戏版本或者是mod版本?

这就是前缀的填入的地方(上面的AA)。你可以通过给id前面加上数据集id和冒号来指明你想要的数据。如果没有指明前缀,游戏将假定你想使用你正在编辑的当前的mod中版本。否则,它将假定你想要使用在mod中你指明的版本。

例如,itemID=13.0 将引用这个mod副本中的13.0

如果一个mod想要引用基础游戏的数据,那么它必须指明是mod‘0’。

例如,itemID=0:13.0 将引用基础数据副本中的13.0

同时如果制作mod的人想要引用另一个mod,只需要用‘0’代替那个mod的名字。

例如 itemID=DeFactoMod:13.0 将引用DeFactoMod的副本中13.0

像这样的系统的好处是:制作mod的人无论每次使用什么他们想要的id,而不用担心是否会和其他mod冲突。

事件或许是在游戏中最复杂的的数据类型,而大部分复杂性来自:事件从一个到另一个的流动的方式。

从概念上看,把事件看作箭头连接的节点是最容易的。像一副流程图,一个事件编辑的例子看起来像这样

在任何人发问前,这个编者不会对你有什么好处。它不是读取xml文件。代替的是:它从运行在本地服务器

的我的SQL数据库读取数据。我仅仅是把数据库输出成xml格式因为绝大多数制作mod的人不会有数据库运行

在他们能够使用的服务器。

虽然,如果有技术的modder们有能力设置个数据库……(对modder们真是个不幸的消息)

不管怎么,正如你在上面看到的:事件是由彩色箭头连接的灰色节点。在XML文件,一个事件是由这些灰色

节点中的一个和它发出所以箭头组成。

所有事件都有以下方面(被要求):

id* - 这个事件独一无二的id (最简单的方法是在之前最高数字上加1)

strName* - 显示为黄色的文本如果玩家有输入信息的选项。否则是看不见的

strDesc* - 主体文本。在事件面板中我所能获得最长文本大概有130多个词。或许150个词是适合游戏中的

屏幕的限制。更长的文本需要分裂成连续的面板(没有选项箭头),所以如果它们正在变长,那么最好还把

它们拆开。

strImg - 在这个面板显示在面板中的图片。如果没有指明使用的图片,默认使用当前六角格的快照(比如

战斗)

nItemsID - 特殊遭遇可获得的物品。像是破碎的窗户或是控制面板之类的东西,它们只会存在于事件的情

景中。合适的物品和玩家拥有的技能会被自动添加:基于可能的结果和仅仅是玩家拥有它们。

nRemoveTreasureID - 在这个面板物品将会从玩家身上移除(通常是提交任务物品,但也可能是失去/摧毁

物品等等)

aPreConditions - 玩家状态必须满足这个事件才能生效。如果玩家丢失必要的状态,这个面板将不会出现。这往往被用着对话中以从后续的对话中分离最初的对话。它也可能被用到隐藏/显示某些面板:基于技能或当前的物品。例如,玩家必须得了霍乱才能看见这个节点,或者玩家必须还没有拜访过DMC才能看见这个节点等等。要用逗号分隔状态的ID表。把-放在状态ID前面表示这状态必须不在玩家身上才能触发。

aConditions - Player conditions this panel applies or removes when done. (E.g. injury, flags

denoting a conversation was had, etc.) Comma-separated list of IDs of conditions. Putting a

"-" before a condition ID means this condition will be removed.

这面板玩家的状态将会被应用或移除当(该事件)被完成。要用逗号分隔状态的ID表。

fPrice - 当触发这个节点,大量的钱会被扣除。如果玩家没有足够的钱,节点不会被显示。

nCreatureID - 被产生生物的ID,例如在离开冷冻设施时产生一个狗人

ptCreatureHex - 生物出现的六角格坐标,如果适用。例如,‘40,0’(半径,方向),然后在北部(方向)40个(半径)六方格的位子产生一个狗人。方向是从零开始的六方格顺时针成环形到目标六方格

ptTeleport - 玩家将会被传送到的六方格坐标。如果仅指明x坐标将会将玩家随机传送到以x坐标为半径的环。

aMinimapHexes - "显示在地图(x,y)上可选文本标签的坐标。被用在哈特骨灰瓮的寻找和光晕的显示。例如,‘20x164=古阿斯冷冻设施’

bRemoveCreatures - 从当前六方格移除生物与否。用来保证当前格子是空的。

bRemoveUsed - 移除玩家用来抵达这个节点的物品。当用一般物品达到这个节点,而不是指明物品。例如光源。取值为1或0

nType - Whether this is a normal encounter or not. Encounter types include normal (0),

scavenge (1), battle (2), and hacking (3).这个事件是否是普通事件。事件类型包括普通,搜刮,战斗,黑客。

fLootChance - 如果搜刮事件被选择,在这个产生的面板中搜刮几率的变化。

fAccidentChance - The change in accident chance this panel creates, if chosen in a scavenge

encounter. 0.0 = 0%, 1.0 = 100%.如果搜刮事件被选择,在这个产生面板中事故几率的变化。

fCreatureChance - The change in creature chance this panel creates, if chosen in a scavenge

encounter. 0.0 = 0%, 1.0 = 100%.如果搜刮事件被选择,在这个产生面板中生物几率的变化。

vAccidents - 如果这次搜刮事件导致了一个事故,事故被选择的表格。

vLoot - 如果这个选项在搜刮事件被选择,额外的掠夺收益加入合适的搜刮。

ptEditor - 节点被编辑时的坐标,被游戏忽略。

末日拾荒者代码作用一览

部分翻译错误修改

同时如果制作mod的人想要引用另一个mod,只需要用‘0’代替那个mod的名字。

改为

同时如果制作mod的人想要引用另一个mod,只需要用mod的名字代替0。

K73小编推荐:末日拾荒者全游戏代码分享

玩家评论

相关阅读

手游掌机排行