HOILAI Galgame Framework(HGF)文档
  1. 第二步 - 认识HGF
HOILAI Galgame Framework(HGF)文档
  • 第一步 - 说明
    • HGF是什么
    • 更新日志
  • 第二步 - 认识HGF
    • 认识目录结构
    • HGF是如何启动的
    • HGF场景配置
  • 第三步 - 熟知HGF标签
    • AddCharacter
    • Speak
    • ChangeBackImg
    • DeleteCharacter
    • ChangeCharacterImg
    • ChangeBackAudio
    • ExitGame
    • Choice
    • 音频管理
    • 完整示例
  1. 第二步 - 认识HGF

HGF是如何启动的

启动类HGFStartModel#

HGF的脚本目录下有一个启动类,即:
plotText:剧情文件
characterInfo:角色配置文件
departmentInfo:角色部门描述文件
注意,以上的三个文件传递时应该是文本,而不是路径。在使用的时候,请按照你自己的习惯将三个文件放在自己喜欢的位置,例如Resources,streamingAssetsPath....亦或者存储在网络服务器,然后通过Http,TCP/IP,UDP/KCP等协议获取。

FStartModel里的plotText#

这个文本是剧情文件,也就是剧情脚本。例如:
<?xml version="1.0" encoding="utf-8"?>
<!--剧情数据,需要包含一个根节点-->
<data>
	<ID>TestPlot</ID>

	<!--本章剧情标题-->
	<title>测试章节</title>
	<!--本章剧情简介-->
	<Synopsis>本章节为你演示HOILAI Galgame Framework(HGF) 的功能</Synopsis>
	<!-- 这个节点表示分支剧情在以下内容中查找,如果需要跳转到别的节点的分支,暂不支持-->
	
	<BranchPlot>
		<BranchPlotNode ID="S1">
			<Speak CharacterID="1" Content="你跳转到了分支一"></Speak>
		</BranchPlotNode>
		<BranchPlotNode ID="S2">
			<Speak CharacterID="1" Content="你跳转到了分支二"></Speak>
			<ExitGame></ExitGame>
		</BranchPlotNode>
	</BranchPlot>
	
	<!--以下才属于正式剧情-->
	<MainPlot>
		<!-- 添加一个角色,这个角色的ID为1 有关所有角色ID需要到相关的配置文件修改 -->
		<AddCharacter CharacterID="1"  From="C1" SendMessage="Outside-ToLeft" ></AddCharacter>
		<!--开始发言,角色ID为1的角色发言:你好啊!!! 同时发送消息,我需要执行入场动画:从屏幕左侧滑进-->
		<Speak CharacterID="1" Content="你好啊!!! 我是不是从左侧进入的?"  AudioPath="1"></Speak>
		<!--分支剧情,这句话结束后会自动弹出选项-->
		<Speak CharacterID="1" Content="这句话结束会弹出选项">
			<!--每个Choice需要有一个JumpID ,就是点击这个之后跳转到的节点,如果不希望跳转,也就是假选项,填写-1-->
			<Choice JumpID="S1">选项一(执行完分支剧情后自动继续)</Choice>
			<Choice JumpID="S2">选项二(直接结束游戏)</Choice>
		</Speak>
		<!--分支剧情结束后自动继续游戏-->
		<ChangeBackImg Path="home"></ChangeBackImg>
		<Speak CharacterID="1" Content="接下来我们继续"  SendMessage="Shake-Y-Once"></Speak>
		<ChangeCharacterImg CharacterID="1" KeyName="Photo"></ChangeCharacterImg>
		<!--AudioPath表示语音路径,可以使资源文件夹的,也可以是外部路径,但不支持URL路径(以后或许会支持)-->
		<Speak CharacterID="1" Content="那么测试章节结束啦~我们下次再见吧!"></Speak>
		<!--id为1的角色退场,发送消息ToRight ,表示从屏幕右侧滑出-->
		<DeleteCharacter CharacterID="1" SendMessage="ToRight"></DeleteCharacter>
	</MainPlot>
</data>
剧情会从data标签开始,从上至下按顺序读取。
其中,只有MainPlot和BranchPlot标签内的才会被读取为剧情,其他标签内的内容为剧情配置信息。关于标签的文档,在后面的章节中做解释。
开发者只需要记住,HGF启动类的三个文件必须使用utf8格式的文本。(不带BOM头,请仔细检查文本格式不是utf8 with bom,否则可能会出现解析问题。)

HGF里的characterInfo#

该文件为剧情里角色的配置,可以不只有一个,可以针对每一个剧情设置单独的角色配置文件,以下是一个实例文件:
{
    "C1": {
        "Name": "小爆妹",
        "Age": 16,
        "Department": "D1",
        "Portraits": {
            "Normall": "1",
            "Photo": "2",
            "Sing": "3",
            "Grace": "4"
        }
    },
    "C2": {
        "Name": "测试角色",
        "Age": 1,
        "Department": "D1",
        "Portraits": {
            "Normall": "1",
            "Photo": "2",
            "Sing": "3",
            "Grace": "4"
        }
    }
}
其中C1和C2是角色的编号(ID),请牢记该ID,因为在你需要将一个角色添加到剧情场景的时候,需要提供的就是这个ID。
修改于 2025-04-05 09:32:26
上一页
认识目录结构
下一页
HGF场景配置
Built with