bcydx 发表于 2022-11-7 23:29

来位mod大佬救救我关于文本里如何设置动态名称!!

请问如何在剧情文本里添加玩家的名字?

本人mod编辑新手一枚,目前写到剧情的时候,想来一个自我介绍,例子:您好,我是_ _ _。
但是不知道如何在文本里添加玩家的动态名称(因为每个玩家取的名字不一样嘛),于是去查看了配置修改,发现一个{name |A}的用法,然后在dramadialogue.xlsx的表头的对话内容下面直接用了{name |A},但是测试的时候居然直接显示的这个字符串,人傻了……请大佬教教我,该如何实现这个功能。
我目前的示例(错误的)

对话内容
dialogue
string
您好,我叫{name |A}
进游戏后显示的是:您好,我叫{name |A}:'(:'(:'(:'(
希望得到的是:您好,我叫XXX

框框框框框 发表于 2022-11-7 23:34

1. 符号注意用英文符号,你好像是中文的
2. 好像在excel里用这个是无效的,在json里用肯定是有效的

bcydx 发表于 2022-11-7 23:37

框框框框框 发表于 2022-11-7 23:34
1. 符号注意用英文符号,你好像是中文的
2. 好像在excel里用这个是无效的,在json里用肯定是有效的 ...

啊 大佬,我确定是英文格式的,excel里面是无效的吗?真的麻了,百度基本上没有教程,B站的都是json……

bcydx 发表于 2022-11-8 00:53

框框框框框 发表于 2022-11-7 23:34
1. 符号注意用英文符号,你好像是中文的
2. 好像在excel里用这个是无效的,在json里用肯定是有效的 ...

感谢大佬指点的思路,我去看了json的教程,发现应该是我引用错了表头文件,DramaDialogue的表头只是剧情配置,可以设置剧情id,说话人角色,如果内容里面没有{name|A}之类的,换句话说,如果内容里只有纯中文或者数字的话也可以直接在内容里写,如果要引用{name|A}功能的话,则需要再添加一个roleloglocal的表头文件,设置对应的参数,用DramaDialogue去调取roleloglocal里对应参数所对应的内容就可以了,目前已经成功了,谢谢大佬。以下是dramadialogue表头文件的内容


            iduiTypeconditionweightnpcLeftnpcRightspeakerbackgroudsoundsBgsoundsEffecttitledialogue
intintstringintintintintstringstringstringstringstring
209719466211-112drama_dialogue2097194662
(这里是调用roleloglocal表头的参数,如果纯中文或者数字或者字母也可以直接在这里填写)
以下是roleloglocal表头的内容


            ID参数ID身份目标行为B的性格A与B的关系条件权重优先级组日志图标起点颜色语音初期表情国际化文本
idkeyIDpartgoalactivecharacterGrouprelationconditionweightgroupiconpointColorvocalemotionIDch
intstringstringstringstringintint[]stringintstringstringstringstringintstring
20971946(随便填的id)drama_dialogue20971946621我叫{name|A},以后请多多指教了。



页: [1]
查看完整版本: 来位mod大佬救救我关于文本里如何设置动态名称!!