摘要
游戏mod的制作过程第一步就是需要将原始的游戏工程文件进行解包,得到相应的资源文件(贴图,音频,事件,模型甚至源代码等),这个时候下一步就是需要将解包出来的文件进行分类索引,知道对应的游戏中的触发机制以及原理对应的文件是哪些,然后依次进行修改。在真正进行修改前,首先最重要的就是所谓的逆向脱壳获取游戏的资源文件,本文主要讲解对任何一个想要制作mod游戏的开发思路。
一、游戏引擎
在我的观念中,游戏引擎是一种集合了模版、各种工程资源管理、测试为一体的面向快速开发的工具。一般的游戏引擎里面都有相应的脚本编辑器,事件触发器,状态机等等。对于一些常规的交互动作等都进行了封装。我们要做的mod无外乎是对于其中的人物动作模型、技能、触发机制、场景模型等的修改,主要涉及到的是应用资源层面,对底层代码的修改可能更多的是通过事件注入的方式进行的。
常见的游戏引擎:
- 商业引擎:Unity3D,虚幻;
- 自研引擎:魔兽争霸、英雄无敌等
序号 | 游戏引擎 | 特点 | 适用平台 |
---|---|---|---|
1 | Unity3D | 跨平台,适用于多种游戏类型,功能强大 | Windows, Linux, Mac OS X, iOS, Android等 |
2 | Unreal Engine(虚幻引擎) | 高画质,强大的物理引擎,适用于高质量的3D游戏开发 | Windows, Mac OS X, Linux, iOS, Android等 |
3 | Cocos2d-x | 跨平台,开源,适用于2D游戏开发 | Windows, Mac OS X, Linux, iOS, Android等 |
4 | Creator引擎 | 基于WebGL的开源3D引擎,适用于各种类型的3D应用开发 | Windows, Mac OS X, Linux等 |
5 | Godot(戈多引擎) | 开源,适用于2D和3D游戏开发,节点式编辑器 | Windows, Mac OS X, Linux, iOS, Android等 |
6 | RPG Maker(RPG制作器) | 专门用于制作RPG游戏的开发工具,易用性高 | Windows, Mac OS X, Linux等 |
7 | 橙光引擎 | 专门用于制作女性向游戏的引擎,素材库丰富 | Windows, Mac OS X, Linux等 |
8 | Gamemaker(游戏大师) | 专门为独立游戏开发者设计的引擎,易用性高 | Windows, Mac OS X, Linux等 |
9 | Construct 3(构造3) | 基于HTML5的2D游戏开发引擎,功能全面 | Windows, Mac OS X, Linux等 |
10 | Source Engine(起源引擎) | 由Valve为《半条命2》开发,支持多种游戏类型 | Windows等 |
11 | Frostbite Engine(寒霜引擎) | 由EA旗下的DICE工作室开发,适用于多种游戏类型 | Windows, Mac OS X, Linux等 |
12 | CryEngine(尖叫引擎) | 高画质,适用于高质量的3D游戏开发,支持实时渲染 | Windows, Mac OS X, Linux等 |
13 | IW Engine(无尽引擎) | 由Infinity Ward工作室为《使命召唤》系列开发,性能出色 | Windows等 |
14 | Havok物理引擎 | 很多3A游戏以及好莱坞大片都用了该物理引擎,如《血源诅咒》等 | Windows等 |
15 | BigWorld Engine(大世界引擎) | 适用于大型多人在线角色扮演游戏(MMORPG)的开发 | Windows等 |
16 | 动视暴雪的IW | 为《使命召唤》系列开发的引擎,性能出色 | Windows等 |
17 | 乐高(LEGO)游戏引擎 | 专门用于乐高系列游戏的开发工具 | Windows等 |
18 | 育碧的Snowdrop引擎 | 育碧公司开发的综合性游戏引擎 | Windows等 |
19 | DX系列 | 它们旨在使基于Windows 的计算机成为运行和显示具有丰富多媒体元素(例如全色图形、视频、3D 动画和丰富音频)的应用程序的理想平台。 | Windows |
二、识别引擎(补充中)
- Unreal Engine(虚幻引擎):文件结构中<游戏\XXX\XXX\Content\Paks>,其中paks的文件夹下是.pak后缀;<游戏\XXX\XXX\Binaries\Win64>,XXX-shipping.exe
- Unity3D:.assets
三、常用的一些工具
- Umodel
- Asset studio
- Ninja ripper
- noesis
- quickbms
四、加密密匙获取论坛(AES加密等)
1、https://cs.rin.ru/forum/viewtopic .php?t= 100672
这个帖子是用来查询和请求解压虚幻文件的AESKEY。
2、https://www.gildor.org/smf/index.php
这个是Umodel工具的作者自己建立的论坛,主要是用来讨论(寻找方
法)解决一些有特殊加密的虚幻文件
3、https://forum.xentax.com/index.php
这是一个论坛,主要是解决各种非“通用”引擎的游戏文件
4、https://discord.gg/7yjxAVhS
这是个Discord聊天群,主要用来解决一些有特殊加密的Unity3D的文件。
五、mod论坛