- UID
- 1453659
- 主题
- 0
- 阅读权限
- 30
- 帖子
- 448
- 精华
- 1
- 积分
- 464
- 金钱
- 2409
- 荣誉
- 4
- 人气
- 0
- 在线时间
- 592 小时
- 评议
- 0
- 帖子
- 448
- 精华
- 1
- 积分
- 464
- 金钱
- 2409
- 荣誉
- 4
- 人气
- 0
- 评议
- 0
|
本文参考 weriKK's blog : Custom Player Items In Single Player ,并以向背包中添加物品为例,向大家介绍如何自己做一个的简单 DLC。
熟悉了 Toolset 的使用后,其实还可以做到自创装备、自创场景等高级应用。
首先要按以下步骤修改语言选项: 控制面板 -> 区域与语言选项 -> 高级 -> 非 Unicode 程序的语言 -> 选择 英语(美国) -> 重启
打开 Toolset,按以下步骤创建一个新的 Module:
点击 File -> Manage Modules -> New... -> 在弹出的 Object Inspector 对话框中:
Name 栏填写 Module 的名称,如 MyMod
UID 栏填写 Module 的唯一标示符,如 mdl_mymod
Extended Module 下拉列表,选择 Single Player。因为我们做的 DLC 是用于扩展 Single Player 的.
点击 OK 关闭 Object Inspector 对话框,并回到 Manage Modules 对话框。选择刚才创建的 Module,点击 Open 打开。
再次点击 File -> Manage Modules -> 选择我们创建的 Module -> Hierarchy -> 选中 Single Player,然后点击 OK。
以下两幅图借用自 weriKK's blog:

按照以下步骤创建一个新的脚本 (Script):
在右侧的 Palette Window 选择 Scripts 按钮(一个类似文本文件的图标)
右键单击空白处,选择 New -> Script
Resource Name 处填写脚本资源的名称,如 mymod_additems
Module 和 Owner Module 就选择我们创建的 Module 的名称 MyMod
点击 OK 将自动打开这个脚本,输入以下代码:
- #include "utility_h"
- void main()
- {
- event ev = GetCurrentEvent();
- int nEventType = GetEventType(ev);
- int nEventHandled = FALSE;
- switch(nEventType)
- {
- case EVENT_TYPE_MODULE_LOAD:
- {
- int nPresentsGiven = GetLocalInt(OBJECT_SELF, "TALENT_BOOK_GIVEN");
- if(!nPresentsGiven)
- {
- UT_AddItemToInventory(R"gen_im_qck_book_talentm.uti", 10);
- SetLocalInt(OBJECT_SELF,"TALENT_BOOK_GIVEN", 1);
- }
- nEventHandled = TRUE;
- break;
- }
- }
- if (!nEventHandled)
- {
- HandleEvent(ev, RESOURCE_SCRIPT_MODULE_CORE);
- }
- }
复制代码 以上代码自动向物品栏添加 10 本 Tome of Arcane Technique (Talen 或 Spell 点数 +1),并以 TALENT_BOOK_GIVEN 作为标志,防止物品重复给予。
如果要添加其他物品,只需把 gen_im_qck_book_talentm 修改为其他物品,并修改 TALENT_BOOK_GIVEN 这个标志。
也可以酌情删除判断标志,这样每次载入存档时都会向物品栏添加物品(请慎用)。如:- case EVENT_TYPE_MODULE_LOAD:
- {
- // 10 本 Tome of Arcane Technique (+1 Talent/Spell point)
- UT_AddItemToInventory(R"gen_im_qck_book_talentm.uti", 10);
- // 10 本 Tome of Skill and Sundry (+1 Skill point)
- UT_AddItemToInventory(R"gen_im_qck_book_skill.uti", 10);
- // 10 本 Tome of Mortal Vessel (+1 or more Attribute points)
- UT_AddItemToInventory(R"gen_im_qck_book_attribute.uti", 10);
- nEventHandled = TRUE;
- break;
- }
复制代码 接下来右键单击我们创建的脚本,选择 Export -> Export without dependent resources
点击菜单 Tools->Export->Generate Module XML 以及 Tools->Export-> Generate Module Manifest
完成以上步骤以后,进入游戏已经可以看到我们创建的这个 DLC 了。
如果你想把这个 DLC 发布给别人用,那么按照以下步骤操作:
点击菜单 Tools->Builder->Builder To Player Package
在弹出的对话框中选择 我的文档\BioWare\Dragon Age\AddIns\mdu_velvet\module\override\Manifest.xml
在弹出的对话框的树形列表中,先 Uncheck All,然后选中 MyMod 以及它的下级节点
单击 OK,保存生成的 .dazip 文件。当询问是否保存 User Manifest 时,可以选择否
运行游戏目录下的 bin_ship\daupdater.exe,选择刚才创建的这个 dazip 文件,然后 Install Selected
[ 本帖最后由 et2008 于 2009-11-13 20:32 编辑 ] |
-
总评分: 金钱 + 25
+ 1
查看全部评分
|