下载客户端

《Aground Zero》模组制作指南

2026-04-01 16:00:08
发布在Aground Zero
转载

AI智能总结导读

这是一份《Aground Zero》模组制作指南,涵盖从创建首个模组,到添加物品、动作、结构、3D模型等内容的制作方法,还介绍了多人游戏适配、翻译、地图数据编辑,以及将模组上传至Steam创意工坊的完整流程,助力玩家完成《Aground Zero》模组的制作与分享。

本指南将介绍如何为《Aground Zero》制作模组并上传至Steam创意工坊。内容包括示例模组、提示和工具,助你开启模组制作之旅! 你的第一个模组 要制作新模组,首先找到《Aground Zero》的安装目录(在Steam中,右键点击库中的《Aground Zero》,选择“管理”->“浏览本地文件”)。在data/mods文件夹中,创建一个新文件夹。在该新文件夹内,新建一个名为“mod.xml”的文本文件,然后编辑该文件——建议使用支持XML语法高亮的文本编辑器(【记事本++】是一款不错的轻量级选择)。 在mod.xml文件中粘贴以下内容: <?xml version="1.0" encoding="utf-8" ?> <data> <name>我的第一个模组</name> <description>目前暂无实际功能。你的xml和代码将放在这里... 对于你粘贴的所有代码,请确保引号保持为直引号'和"——有些文本编辑器会将它们弯成’和”,这些看起来一样,但在xml文件中无法被识别。 加载游戏,或者如果游戏已在运行,按Ctrl+Shift+M重新加载所有模组,如果一切正常,你应该能在模组列表中看到你的模组。

如果模组未显示,或显示为红色,则说明出现错误——按下Ctrl+Shift+D调出开发者控制台,查找红色文本。有时问题原因很明显,但有时并不清晰,你可能需要通过删除或注释掉模组的部分内容,直到其恢复正常工作,以此来确定问题所在。 虽然从技术上讲这是一个模组,但它并不是很有趣,所以让我们尝试让它做点什么! 添加物品

添加物品是你能做的最简单的事情之一。假设你觉得《Aground Zero》非常需要甜甜圈,你可以通过这个简单的示例模组添加它们。 查看压缩文件中的mod.xml——在<init>区块内,现在有一些带有注释行(位于<!-- -->内)的标签,用于解释它们的功能。此外,还有一个单独的图片——doughnut.png,它是甜甜圈的图标。 通常,添加物品时,你需要: 一个名称——你可以为想要支持的多种语言添加相应名称。 一个图标——可以是你自己绘制的,或从opengameart.org等开源网站获取的(如甜甜圈图标),甚至可以对游戏中现有的图标进行着色处理。物品描述会说明其功能(在本例中,食用甜甜圈可恢复150点饥饿值)。 获取物品的方式。在这个模组中,我添加了两种获取方式:在厨房烹饪制作,以及在自动售货机购买。 对于这种小型模组,所有内容都可以放在<init>区块内。但对于大型模组,你可能需要使用文件夹和额外的xml文件来组织内容——可以通过<include id="folder/file.xml" />实现。只需记住,路径是相对于调用它们的xml文件而言的。 动作 动作决定物品在工具栏中被选中时的行为。有些物品不需要任何动作——例如那些可用于制作但自身无直接用途的原材料。在上述甜甜圈示例中,它使用了“eat(食用)”动作,该动作已在核心游戏文件中定义(按住右键即可食用)。游戏中还有许多现有动作: - mine(挖掘):像激光钻一样挖掘方块。 - place_ground / place_ladder(放置地面/放置梯子):设置地面标记,如电缆、传送带、梯子等。 - eat(食用):食用物品以恢复饥饿值和生命值。 - place_object(放置物体):放置特定物体,若设置consume="true",则放置后会消耗该物品。 - build(建造):类似place_object,但右键点击可选择要放置的蓝图。 - craft(制作):从背包中制作物品,类似组装机的功能。 - place_block(放置方块):放置特定方块,若设置consume="true",则放置后会消耗该物品。 - shovel(铲具):类似place_block,但右键点击可选择要放置的方块。射击 - 发射投射物,类似激光枪。 升级 - 升级物品,升级芯片即用于此功能。 蓝图 - 收集后可解锁蓝图和配方的物品。 涂料 - 像涂装工具一样为方块上色。 水桶 - 可以装水,装满后能放置水。 这些动作位于data/core/items/actions.xml中,你可以在那里查看它们的完整代码及功能。不过,如果你想制作的内容无法通过这些动作实现,你可以添加自定义动作!

以下是一个添加带有自定义功能的遥控器物品的简单示例。在工具栏中选择该物品后,若已选中一个建筑,右键点击可与其配对;否则,右键点击可从任意位置访问已配对的建筑。这相当强力,因为你现在可以从任意位置访问电池以获取无限电力,或访问仓库来存取物品。但理论上,你可以修改遥控器访问建筑时的功能(或更改它可访问的建筑类型),从而实现远程管理基地且不会过度破坏游戏平衡。该示例还使用物品存储来确定当前配对的建筑。存储功能允许你为物品和对象设置各种可保存的数据。需要记住的一点是,物品的存储会影响整个堆叠,存储不同的两个物品无法堆叠。如果你想更改堆叠中单个物品的存储,必须将其从堆叠中取出并放在光标上或另一个物品栏槽位中(或者最糟的情况是扔到地上)。我通过将遥控器设置为不可堆叠来避免这个问题。 分享模组 拥有模组后,有两种方式与他人分享。第一种是将模组文件夹压缩(压缩文件的根目录中需包含mod.xml,而不是folder/mod.xml),然后手动将该压缩文件交给他人,让他们将其拖放到游戏窗口中(无需先解压)。这将安装该模组。 另一种方法是将模组上传至Steam创意工坊,这样所有人都能查看并订阅你的模组!如果你的模组位于data/mods文件夹中且没有错误,你可以在模组列表中选择它,然后会找到【上传至Steam】选项。 上传至Steam需要一张预览图片,该图片必须命名为preview.png或preview.jpg,并与mod.xml文件放在同一位置,且大小需小于1MB。Steam会在创意工坊中将这些图片显示为方形图标,因此其他任何宽高比的图片最终都会带有黑边。

然后你需要为更新撰写说明,输入你想要编辑的创意工坊项目ID(或选择“新建”来创建新的创意工坊项目),并为模组选择适用的标签。之后你必须同意创意工坊服务条款(只需执行一次),然后点击确定即可上传模组。

假设没有错误,你会看到此弹窗,此时可选择【查看物品】来在创意工坊中查看该物品。在物品右侧,你会看到所有者控制选项,通过这些选项你可以编辑名称、描述,以及将可见性更改为公开,以便其他人能够看到该物品。

当你再次点击“上传至Steam”同一模组时,工坊ID应会自动填充。若未填充,你可以在工坊项目页面的URL中找到它,位于“filedetails/?id=”之后(此方法适用于任何你被列为贡献者的工坊项目)。再次上传将修改模组文件、标签和预览图,但不会更改名称、描述及其他数据。你还可以在工坊项目页面查看每次上传时输入的更新说明,并可恢复至之前的版本。一旦模组公开,人们就能看到并订阅你的模组! 结构 结构和物体能让你在游戏世界中放置可交互元素。每个物体都有形状,这些形状决定了其物理边界和交互边界。物体也有其自身的动作,当选择物体的形状时,这些动作的执行方式与物品动作类似——不过,你可以在需要时禁用某些动作与物体的交互(例如激光枪)。要调试形状,你可以使用开发者代码:container.showPhysics(true),以显示所有盒子、球体和圆柱体形状的红色轮廓。请记住,如果modelBottom="true",主模型变换将被重新定位,使原点位于所有形状的底部,因此如果启用此设置,上下移动形状将不会使其相对于模型移动。

以下是一个简单示例,添加了一个开关物品,该物品使用place_object动作在世界中放置一个可交互的开关。大部分内容与物品示例中的内容相似,但现在我们需要一个可以放置和移除(以便收集)的开关对象。 与自定义动作类似,开关有一个getSelection事件用于设置工具提示,以及一个onAlternate动作用于移除开关。不过,它们还有一个onSelect事件用于切换开关的开启和关闭状态——这利用了POWSTRUC和SWITCH地面标志(POWSTRUC属于受电结构,看起来像电缆,可传输电力;SWITCH看起来也像电缆,但不传输电力)。多人游戏 若希望模组在多人游戏中正常运行,需注意以下几点: 默认情况下,所有存储变量都会写入存档文件并与其他玩家同步。但这并非在所有情况下都适用,例如每帧都会变化的水培生长进度。你可以调用data.setSync(false)使存储变量不与其他玩家同步。这允许所有玩家独立(不同步)增加进度变量,然后由主机在水培完成时触发事件,以便重置所有玩家的进度。 强烈建议每帧都会变化的所有存储,以及在prepareWrite和stateLoaded中使用的临时存储不要自动同步。 你也可以调用data.你可以在对象内添加以下代码来创建公告牌: <billboard tile="瓦片" animation="若需要则添加动画" type="类型" scale="以米/方块为单位的尺寸" offsetX="相对于中心的X轴位置,也可以设置offsetY和Z" /> 类型可以是normal(无混合效果,低透明度值会被忽略)、transparent(允许混合,如需半透明效果)、emissive(在黑暗中发光/不受光照影响)、indicator(可穿透墙壁/其他物体显示)。 公告牌也可以添加到带有3D模型的对象上(通过xml标签或object.addBillboard),游戏中类似电力不足的警告提示就是通过这种方式添加的。 蓝图 开关示例是一个物品,但游戏中的大多数建筑都是通过制造机以蓝图形式放置,然后进行建造或拆除的。要实现这一点,你可以创建一个继承自蓝图结构的结构,然后设置类型(动力、生产、基础、载具、装饰)、信息(该结构将要建造的内容)以及配方(用于设定建造蓝图所需的材料、能量消耗和时间)。factory_blueprint就是一个很好的示例。你还可以为蓝图设置animateIcon函数,这样当在建造器列表中悬停该结构时,它会产生动画效果(不过这是可选的)。你可以继承多种结构类型,例如工厂相关的craft、物品生产相关的grow,需要NPC操作的manned_craft/manned_grow等等。一旦你获得蓝图,就可以使用以下命令将其添加到制造机中:unlockBlueprints(state, player, ["蓝图ID"]); 材料 要向游戏中添加新方块或矿石,你需要添加材料。材料包含名称、纹理(可在6个面设置)、挖掘强度,还可选择添加挖掘事件。 纹理为256x256的图像,实际构成2x2的方块(图像中每个128x128的四分之一部分为一个方块)。纹理应可循环,且必须有法线贴图。Laigter是生成图像法线贴图的好用工具(建议将凹凸值设为0,高度增强设为60-100,柔和度设为2-3)。你可以通过可视化查看其在游戏光源下的效果。纹理定义如下:<texture id="cave_floor" color="cave_floor.所有纹理必须尺寸相同(它们被放置在单个纹理数组中),但对于纹理包,只要确保所有纹理都使用新尺寸,你可以将其从256x256更改为其他尺寸。游戏仍会生成2x2的方块——如果你希望所有方块都相同,只需将左上角的四分之一区域复制四次即可。 定义纹理后,你可以像设置模型一样设置法线贴图的高光值: <setSpecular normal="cave_floor_n.png" specular="black" /> 材质不支持自发光纹理——放置结构时,它们的自发光效果由网格纹理决定。使用setWrite(false)可使存储变量不写入存档文件。该变量仍可同步,进而成为所有玩家共享的临时变量。 onFrame事件会在所有客户端的每一帧被调用。这适用于无需同步的动画和视觉效果,但绝对不应让所有客户端执行重要代码。可使用onFrame传递的owner变量,让对象所有者处理创建物品等操作,而所有客户端可推进未同步的进度变量。辅助帧函数会自动处理这些。非所有者在onFrame函数中编辑的任何变量都不会被同步。物品的帧事件仅由持有该物品的玩家触发(若没有玩家持有该物品,则完全不会触发)。 为优化性能,扔到世界中的物品不会同步对其进行的任何更改。只有当物品在背包中时,你才能编辑物品的存储内容或数量。 远程过程允许你在所有客户端上执行代码。远程过程必须在第一个客户端加入服务器之前设置(通常在模组初始化块中),其定义方式如下(其中args是数据变量数组,类似于存储中的数组):RemoteProcedure.set("name", function(state, args){...}); 调用远程过程的方式如下:var a = new RemoteProcedure("name", num_args); a.args[0].setInt(3); a.send();若远程过程已发送,Send将返回true;若服务器未启动或该函数未定义,则返回false。 最后,加入多人游戏时,如果玩家与主机的模组及版本不完全相同,游戏会发出警告。但如果你的模组不需要所有客户端都安装就能正常运行(例如翻译类模组),可以在模组的<init>块中添加multiplayerSync="false"。 3D模型 与物品不同,对象需要的一个重要元素是模型——用于在游戏世界中显示的内容。你可以重复使用游戏中现有的模型,像开关模组中那样对其进行染色和重新定位。通常来说,在3D建模软件中制作模型动画可能会更简单,但你也能看到,我为开关的开/关动作制作了一个非常简单的双关键帧动画。 如果你想添加新的3D模型,无论是自己建模还是从类似opengameart.org的网站上获取,都需要将它们转换为wobj格式文件。你可以使用命令行应用程序CreateWOBJ来完成此操作。 CreateWOBJ要求命令行的第一个参数为输入模型,第二个参数为输出的wobj文件。它使用assimp库,该库支持多种格式,你可以查看相关格式列表。CreateWOBJ支持骨骼和节点动画,但不支持网格动画(基于顶点的动画,如今已相当罕见)。CreateWOBJ会将所有网格、材质和动画合并到一个文件中——你需要在xml中指定纹理。《Aground Zero》不支持单个wobj文件使用多个纹理,你要么将纹理打包成一个巨型纹理,要么(如有必要)将对象拆分为多个wobj文件。 虽然所有网格都会被合并,但你可以添加-writemeshes作为第三个命令行参数,这样会写入对象中每个网格的名称和顶点子集——这对于创建子集非常有用,比如地铁场景和玩家发型(所有发型都打包在一个wobj中)。 获得wobj文件后,就可以在游戏中对其进行定义了。你可以通过以下方式实现: <model id="名称" path="wobj文件路径" texture="漫反射" normal="法线" emission="自发光" /> 你可以多次使用同一模型,只需更改纹理即可。《Aground Zero》仅支持4种纹理类型——漫反射、法线、自发光和高光。关于这些纹理的用途有很多指南,但你可能注意到模型行中没有定义高光。这是因为高光被打包到法线贴图中未使用的alpha通道里。要修改法线贴图的alpha通道(在至少一个模型加载法线贴图后),可以使用以下命令: <setSpecular normal="法线贴图" specular="高光" scale="缩放" /> 虽然高光通道必须是灰度图(它是单个alpha通道),但0代表黑色,0.5等于漫反射颜色,1为纯白色,两者之间平滑过渡。缩放值可选择性地调亮或调暗高光贴图,默认值为0.5。如果高光参数不是基础纹理(如白色或黑色),则在该命令后会被卸载,除非在命令中添加unload="false",否则无法再次使用(因为通常一旦高光贴图被打包到法线贴图中就不再需要了)。如果不想处理法线贴图或高光贴图,可以使用三种基础纹理:no_normal(默认,法线不变且高光为0.5)、no_specular(与no_normal类似,但高光为黑色)和glass(高光为白色)。 关于坐标,x/y轴代表地面平面,z轴代表向上方向(可理解为挖矿深度)。大多数建模程序将x/z轴作为地面平面,y轴作为向上方向,但CreateWOBJ会自动旋转模型以适应这一情况。 公告牌 如果你完全不想使用3D模型,可以放置公告牌或基本体。基本体是简单的形状(如四边形、立方体、球体),其定义方式与上述模型类似,但需使用primitive="..."而非引用wobj文件。公告牌是始终面向相机的2D精灵。对于小型、球形或圆柱形物体而言,这种效果尚可,但在相机旋转时,通常会给人一种物体在移动的感觉。

材质可按如下方式定义: <material id="cave" sides="cave_wall" bottom="cave_ceiling" top="cave_floor" mine_power="1" /> 你可以通过以下方式设置纹理:使用texture=""设置所有6个面的纹理;使用sides=""设置除顶面和底面外的所有侧面纹理;使用top、bottom、left、right、back、front设置特定面的纹理(这会覆盖通过texture=""或sides=""设置的纹理)。 可使用的其他材质参数: - mine_power:设置破坏该方块所需激光钻头的强度(不可破坏的方块无需添加此参数)。 - name:设置在物质生成器(铲子)中显示的名称,默认为material>id。 - blocking:物体是否可以穿过该方块。 - ramp:该方块是否为斜坡。 - block_water:该方块是否阻止水通过。block_light - 方块是否阻挡光线穿透。 item - 方块被开采时掉落的物品。 opaque - 用逗号分隔的方块完全不透明的面列表。如果使用半透明材质,应确保这些面不设为不透明。 step - 方块的脚步声。 visible - 用于禁用渲染(仍可阻挡物体/水)。 paint / paintable - 用于绘画工具。 每个方块实际上可以有两种材质——基础材质和覆盖材质。覆盖材质用于矿石和装饰元素(如绘画工具)。基础材质和覆盖材质都可以通过item属性掉落物品,并各自拥有独立的onDig事件。载具是一种可乘坐的物体,它拥有物品栏、定位器,并且可以被传送至(例如潜艇和钻孔机)。椅子是唯一的普通可乘坐物体。 载具相关的内容较多,这里不做全部解释,但建议查看潜艇和钻孔机的定义。在乘坐载具时,如有需要,你可以覆盖大部分用户界面和控制方式。 敌人 与载具类似,敌人的设定也比较复杂。关键在于你需要一个onFrame事件(该事件实际上会对该敌人的每个实例每一帧都运行一次),并在其中执行移动和攻击的逻辑。虽然出于性能考虑,你希望保持这部分逻辑相对简单,但在功能上并没有实际限制。为敌人添加反应时间通常是个不错的主意——例如,猎人机器人每10帧才会搜索附近的玩家进行射击(以减少每帧的负载),每60帧才会搜索附近的建筑进行射击。你可以查看游戏中现有的敌人,或许可以根据需求对其进行扩展。 翻译 游戏中也可以添加翻译。这与原版《Aground》的操作相同,因此可以参考《Aground》的翻译指南。唯一的区别是,你应将语言xml文件添加到你的模组文件夹中,并在模组初始化块中添加include标签,而不是直接修改核心语言文件夹。此外,在<lang>标签中,你可以添加version="0.2."“2”应设置为你所翻译的游戏版本(显示在标题屏幕上)。如果缺少version="",或者版本不是游戏的当前版本,该语言在选项菜单中会显示为红色,意味着它可能已过时。不过,覆盖材质不会影响方块的挖掘难度。 当方块被某种行为挖掘时,onDig事件就会触发。该事件会传递一个挖掘对象,其中包含挖掘区域、执行挖掘行为的对象、方块的x/y/z坐标以及材质。这一机制可用于实现多种功能,例如当玩家(或敌人)挖掘方块时对其造成伤害,或者当挖掘特定数量的方块(如钻石)时授予成就。 区域 当你拥有可用的材质后,创建新区域的核心就是放置方块和对象。区域需要设置宽度、高度和深度。任何放置在这些边界之外的方块都会被渲染,但不会被保存或进行交互(这就是地表远处城市的制作方式——实际上是在每次加载区域时根据种子重新生成的)。区域还需要设置地面,这决定了电缆、传送带和梯子的显示方式。大多数区域或许可以使用默认设置。创建区域可能需要一些工作量,不过Generate类中的实用函数可以让这一过程更轻松。 可使用的其他区域参数: - gravity(重力):如果想要低重力(或反重力)世界,可以将其从默认值(1)进行修改。 - belt_power(传送带功率):每条传送带每秒消耗的功率(默认值为0.05)。 - waves(波浪):水面的法线贴图。 - bubbles(气泡):水中气泡的图像。 - dust(灰尘):灯光周围漂浮灰尘的图像。 - has_oxygen(含氧量):若设为false,则只能在载具内或产生氧气的物体内部恢复氧气(否则,除水下外的所有地方都能恢复氧气)。break_tile - 用于破坏方块的图块。 break_anim - 破坏方块的动画(逐帧)。 break_emit - 破坏方块动画在黑暗中的发光程度 - 000000表示完全不发光,ffffff表示完全发光(这是一种颜色,因此你可以分别更改每个通道的发光量)。你还可以使用atmosphere标签为世界添加天空盒、日出/日落效果,但请记住,一旦添加月亮,这部分内容可能会发生变化(并变得更加灵活)。 在<infoInit>中,你还可以设置以下参数: shadow_z - 如果相机位于此深度以上,则启用太阳的方向光和阴影贴图(否则禁用)。 infinite_water_z - 世界边缘处此深度及以上的所有水都将延伸至无限远。添加此功能是为了防止地下河流无限延伸,这种无限延伸会导致渲染问题(无限水域必须为简单/凸面形状)。 waterColor - 水体颜色。Alpha通道用于设置水的密度/浑浊程度。 waveScale - 水面波纹纹理的x/y缩放比例。z/w值用于叠加在主纹理上的第二份波纹纹理。 waveSpeed - 波纹纹理的移动速度。同样,x/y值对应主纹理的速度,z/w值对应叠加纹理的移动速度(用于打破明显的循环感)。 waterSurface - 与waterColor类似,但用于水面表层,应设置为更深的颜色(主要为反射效果)和更高的密度(难以看清水面下的物体)。 bubble_size - 气泡纹理的缩放比例。气泡强度 - 气泡纹理的可见程度。 矿石洞穴是创建新区域的良好示例 - 可查看游戏安装文件夹中的data/core/world/ore_cave.xml。该文件包含用于生成矿石洞穴的<generate>块,还定义了ore_cave_portal和ore_cave_exit对象,用于让你进入和离开矿石洞穴(否则,你将永远无法到达新区域)。当所有玩家退出矿石洞穴时,该区域会被清除,并通过ore_cave_portal重新加载,使其成为每次进入时都有新矿石和新布局的临时区域。 游戏状态中每个id允许对应一个区域(不过,像矿石洞穴一样,你可以为临时区域进行清除和重新生成)。区域仅在你首次调用state时生成。createArea(id),或者如果你手动调用area.generate。 地图数据 地图数据允许你将地图的部分内容导入和导出为可编辑的文本文件(也可以通过外部程序进行管理)。殖民地世界空间站就是使用地图数据制作的。 你可以通过调用以下代码从区域创建地图数据: map = new MapData().fromArea(area, sx, sy, sz, ex, ey, ez) 如果省略sx/ex等参数,将对整个区域进行操作(并且无论设置的边界如何,所有对象都会被导出)。然后你可以使用以下代码将地图数据导出为文件: map.export(name) 之后你可以查看并修改该文本文件。格式如下(可将空格替换为制表符或换行符,方括号内的内容为可选,实际内容中不要包含方括号): 若要添加方块,需指定材料,后跟冒号,再列出位置,格式如下: 材料[,覆盖层][/斜坡ID]: x,y,z x,y,z metal: 61,60,7 62,60,7 metal_ramp/74: 56,59,24 56,60,24 若要添加物体,需指定物体,后跟位置和旋转角度(旋转角度以四分之一圆周为单位,类似于toArea函数): 类型>ID: x,y,z,旋转角度 x,y,z,旋转角度 structure>cryopod: 61,73,26,4 58,71,26,1 最后,地面元素(电缆、传送带、梯子等)的定义格式如下: !类型: x,y,z x,y,z !belt_d: 61,65,8 61,66,8 !cable: 66,62,8 66,65,8 你可以查看data/mods/full/world/hub.amap作为示例。文件修改完成后,可使用以下方式将其重新导入游戏: map = MapData.read(name, info.xml) 其中,info.xml为可选参数,它允许你根据已定义xml的路径加载名称。之后,可使用以下方式将地图加载到区域中: map.toArea(area, x, y, z, rot) 其中,x/y/z/rot可用于在世界中定位地图,但也可省略。rot会将整个地图数据(包括物体和斜坡)按指定的四分之一圈数旋转——它必须是整数,通常为0到4。 载具 载具是玩家可以乘坐并四处移动的类似结构的物体。载具背后的许多逻辑已由可乘坐结构和载具处理,你可以对其进行扩展(定义于data/mods/full/objects/vehicles.xml)。

评论

共0条评论
face
inputImg
相关阅读

如何将游戏或模组翻译成母语

Маленькі мануал пра пераклад Bannerlord на родную мову. Як з'явіцца натхненьне д…

2026-02-18 01:000赞 · 0评论

《命令与征服:重制版》新手模组制作教程

需要为这款画面精美的重制版游戏制作模组吗? 别再找了! 我翻出了一些旧代码,制作了这份指南,希望能帮助自己和其他难以搞懂如何修改这款游戏的玩家。 我会尝试扩充内…

2026-02-15 22:000赞 · 0评论

模组制作教程

《VERLIES II》模组制作教程 1. 在《VERLIES II》的主文件夹中,将【package.nw】重命名为【package.zip】 2. 使用7z…

2026-03-21 10:000赞 · 0评论

TO_藕饼 Q版哪吒和敖丙制作教程~~上传模组啦~

2025-02-11 12:1498赞 · 5评论

如何将你的模组上传至Steam创意工坊

如何上传你的模组 使用mod-uploader.jar 在《杀戮尖塔》的安装目录中,有一个名为mod-uploader.jar的文件。 用法:java.exe …

2026-02-18 16:000赞 · 0评论

如何上传香蕉到创意工坊

本指南清晰列出了将你可爱的香蕉加入香蕉工坊的步骤。 这篇指南是关于什么的?它对我有帮助吗?

2026-02-15 01:000赞 · 0评论

《Drilbert》模组制作指南

《Drilbert》模组创建官方文档 基础 Drilbert模组是自定义关卡的集合包。 Drilbert关卡采用Tiled编辑器(原词:tiled editor…

2026-03-17 16:000赞 · 0评论

Scram-Modding(与方块赛车无关)

在本指南中,你将学习如何正确制作并上传《Scram》的创意工坊内容。 开始前的警告:

2026-02-15 16:000赞 · 0评论

教程:如何创建和发布修改内容(创意工坊)

接下来我将为大家介绍如何为《狂热运输》创建和发布模组。本文仅讲解基本结构和发布机制,不涉及具体内容的修改或创建方法。 “staging_area”文件夹 在《狂…

2026-04-01 19:000赞 · 0评论

翻译教程

本指南将逐步教你制作非官方游戏翻译——比你想象的要简单!现已更新,完全兼容《Indigo Park》v1.1版本! 如何将模组从《Indigo Park》v1.…

2026-03-22 13:000赞 · 0评论
暂无更多