跳转至

Content解析

本教程由百度贴吧-销锋镝铸编写

前言

在之前的Android基础教程Windows基础教程中,讲到了游戏的安装包或安装目录都存在一个Content.pak,是一个包含游戏 数据(例如方块属性、生物属性、合成表)和 资源(例如图片、声音、模型)的简单打包文件
可以使用SCPaker对它解包,也可以用该软件将文件夹打包成新的Content.pak,本教程使用的软件亦是SCPaker。 Windows版SCPaker使用教程已在Windows基础教程中说明,Android版则拥有图形界面,因此该软件使用方法不再此教程复述。
本教程将对解包出来的文件做一个简单的介绍,针对重要文件的详细说明将在之后的篇章讲解。

根目录文件

  • BlocksData.txt存储了所有方块的大部分属性的类csv文件(以纯文本形式存储表格数据,使用特定的符号分隔字段),可直接用文本编辑器打开并编辑,详细修改教程见BlocksData解析

    csv文件

    以纯文本形式存储表格数据,使用特定的符号(该文件;)分隔字段
    可使用Office Excell打开

  • Clothes.xml存储了所有衣物数据的xml文件,可直接用文本编辑器编辑,详细修改教程见Clothes解析

    所有xml文件均可直接用文本编辑器编辑,建议使用支持代码高亮的文本编辑器

    阅读任何xml文件详细修改教程前请务必阅读XML教程

  • CraftingRecipes.xml存储了所有合成表的xml文件,详细修改教程见CraftingRecipes解析

  • Database.xml存储了所有动物(还有主角、船等实体)的大部分属性的xml文件,在“源代码”中新添加的SubsystemComponent子类也需要在此文件中注册,详细修改教程见Database解析
  • Help.xml存储了游戏自带帮助内容(游戏主页-Help)的xml文件
  • NewWorldNames.txt存储了新建世界时随机出现的世界名的文本文件,每行一个世界名
  • RecoveryProject.xml每个存档内都有一个Project.xml,当存档内该文件损坏时,RecoveryProject.xml将替换它
  • Strings.xml存储了调整设置时显示的帮助文本的xml文件

文件夹

界面贴图

Atlas/文件夹有以下两个文件

  • AtlasTexture.png存储了一些主要的操作界面的贴图,例如方向键和按钮
  • Atlas.txt上述贴图文件的配置文本,每行定义了一个贴图,这里以其中一行为例进行说明:
TimeOfDayButton 163 359 68 64 0 0 0 0
序号内容说明
1TimeOfDayButton贴图名称
2163水平开始位置
3359垂直开始位置
468水平宽度
564垂直高度
6~90无意义

示意图如下:
Atlas示意图

音频

Audio/存储了所有音效文件的文件夹,可通过文件名知道是什么的音效
Music/存储了所有菜单界面的音乐文件的文件夹,目前共六首

界面布局

Dialogs/存储了所有对话框(黑色背景)的布局文件,格式xml
Screens/存储了所有全屏界面的布局文件,格式xml
Widgets/存储了所有弹出窗口(灰色背景)和常使用的界面部件的布局文件,格式xml
Styles/存储了大部分按钮的布局文件,格式xml

以上界面布局文件的语言和XAML非常相似,它是xml的一个子集,通常用在Windows Presentation Foundation(WPF)点击此处查看官方文档
在???提高箱子格数mod例子中将有更详尽的说明

模型

Models/存储了所有3D模型,格式dae,可使用3ds Max等支持编辑dae的建模软件进行编辑

贴图

Textures/储存了大部分游戏贴图,格式为png,可使用Photoshop像素小画家等软件编辑。为和常用词方块材质区分,称非方块材质的图片为贴图,以下是该文件夹下部分文件夹和文件说明

  • Clothing/存储了所有衣物、盔甲的贴图
  • Creatures/存储了所有生物的贴图
  • Gui/在上面Atlas文件夹中未整合到AtlasTexture.png的操作界面贴图都在此文件夹
  • Blocks.png方块材质文件

其他

Shaders/存储了所有的渲染器程序,相关教程待补充
Fonts/存储了所有字体文件,和Altas文件夹相似,每个字体由一个图片文件和一个对应的配置文本,编辑贴图文件可使字体发生变化