当前位置:首页 > 实操教程 > HGE引擎 > HGE引擎怎么读写Ini文件?数据保存不丢失机制详解

HGE引擎怎么读写Ini文件?数据保存不丢失机制详解

M2GM2026-09-18HGE引擎38
摘要:HGE引擎Ini文件操作教程:ReadIni六参数(读取类型/路径类型/临时变量名)、WriteIni Force强制存文件、DeleteKey与EraseSection删除机制;解决写入后重启丢失,附报错排查,适配HGE引擎脚本定制学习,仅供单机本地学习调试。…
[TOCM]

很多人在问HGE引擎怎么用脚本读写Ini文件——节点、关键字、数据值,三个概念怎么对应,写进去的数据为什么重启后就没了,问题到底出在哪。

我本地调HGE版本时也踩过这个坑:WriteIni写完,记事本打开ini明明有值,重载脚本再ReadIni却取不到,最后定位是保存模式和读取模式都没加Force。本文把ReadIni、WriteIni、DeleteKey、EraseSection四条命令的参数和保存机制一次对齐,仅供单机本地学习调试参考。

Ini文件读写-HGE脚本配置保存教程

命令格式

Ini操作共四条命令,统一写在功能脚本段内:

ReadIni ini文件名 节点名 关键字 读取数据类型 路径类型 临时变量名 读取模式
WriteIni ini文件名 节点名 关键字 是否绝对路径 数据值 保存模式
DeleteKey ini文件名 节点名 关键字 是否绝对路径
EraseSection ini文件名 节点名 是否绝对路径

官方文档给出的完整读写实例:

[@读写]
#IF
#ACT
WriteIni \QuestDiary\1.ini 节点名 <$USERNAME> 0 1111
ReadIni \QuestDiary\1.ini 节点名 <$USERNAME> 0 0 临时变量
SENDMSG 7 临时变量:<$N(临时变量)>

WriteIni把1111写入 \QuestDiary\1.ini的 [节点名] 节、<$USERNAME> 关键字下,ReadIni再按同样的节点和关键字读回,结果放进临时变量。

参数讲解

ReadIni共六个参数,逐个对齐:

参数 参数释义 实操用法
ini文件名 目标ini文件路径 \QuestDiary\1.ini
节点名 方括号包裹的节名 节点名对应 [节点名]
关键字 节内的键名 用 <$USERNAME> 可做按人区分
读取数据类型 0整数,1字符 存数字用0,存文字用1
路径类型 0相对路径,1绝对路径 版本内文件用0
临时变量名 结果存入的 $S/$N变量 只填变量名如”临时变量”

WriteIni共五个参数,保存模式是重点:

参数 参数释义 实操用法
ini文件名 目标ini文件路径 \QuestDiary\1.ini
节点名 方括号包裹的节名 同ReadIni保持一致
关键字 节内的键名 同ReadIni保持一致
是否绝对路径 0相对路径,1绝对路径 版本内文件用0
数据值 写入的内容 数字或文字均可
保存模式 Force强制存文件 不加Force可能不落盘

DeleteKey删除指定节点下的指定关键字,EraseSection删除整个节点,两条命令都会即时保存ini文件。

避坑指南

临时变量名只填裸变量名。ReadIni的最后一个参数写”临时变量”即可,写成 <$N(临时变量)> 会取不到值,这是官方文档明确标注的注意点。

写入后必须加Force。WriteIni的保存模式不加Force,数据可能只停留在内存,重启本地服务端后文件里没有值。

刚写完就读,读取也要加Force。ReadIni的读取模式不加Force,可能读到内存中的旧值,刚写入的新数据读不出来。

路径类型决定文件位置。0是版本内相对路径,跨目录操作写绝对路径时必须填1,否则命令找不到文件。

删除操作即时生效。DeleteKey和EraseSection没有Force参数,执行即保存,删除前确认节点和关键字拼写无误。

报错修复

问题现象:WriteIni写入成功后,ReadIni读到0或空值。

核心成因:写入未落盘或读取走的是内存缓存,两侧保存模式不完整,链路对不上。

分步排查:

第一步,写入后直接用记事本打开目标ini文件,确认文件里是否有值。

第二步,文件里没有值,给WriteIni末尾补上Force,重新执行写入。

第三步,文件里有值但脚本读不到,给ReadIni末尾补上Force,强制从文件加载。

第四步,补完Force仍读不到,检查临时变量名是否写成了 <$N(临时变量)> 格式,改回裸变量名。

完整修复:两条命令都补齐Force,临时变量名只填裸变量名,重载脚本后重新读写验证。

对比分析

删除类命令要分清粒度。DeleteKey只删节点下某一个关键字,其他键值保留;EraseSection把整个节点连同所有关键字一起清掉,数据归零重来。

读取数据类型决定变量性质。0读成整数,脚本里可以继续做数值比较和加减;1读成字符,适合名称、文本类数据。

路径类型影响文件定位。0相对路径只认版本目录内,1绝对路径可指向任意位置,版本打包迁移时尽量用0,避免路径失效。

HGE的Ini命令名与部分引擎不同,例如996引擎对应的是WriteConfigFileItem系命令,跨引擎使用时先查对应文档,不要直接搬命令名。

实操步骤

第一步,打开功能脚本文件QFunction-0.txt,路径为Mir200\Envir\Market_Def\QFunction-0.txt。

第二步,在脚本段内写写入和读取两行,节点名、关键字、临时变量名按上表对应。

第三步,保存文件,在版本管理面板重载脚本。

第四步,执行一次写入,用记事本打开目标ini确认落盘。

第五步,再执行一次读取,屏幕输出 <$N(临时变量)> 的值,与写入值一致即链路完整。

常见问题

传奇全局变量保存在哪个文件?

全局变量G、A通过Mir200\GlobalVal.ini保存和读取,可跨场景共享数据,例如记录玩家的经验等级和累计数据。(本条问题整理自百度知道用户提问2024-08,答案经本地实测验证)

服务端里的ini配置文件都是干什么的?

常见的有Exps.ini经验配置、GlobalVal.ini全局变量配置、String.ini提示信息配置、Config.ini网关参数配置,各文件职责不同,改前先确认对应关系。(本条问题整理自百度知道用户提问2026-03,答案经本地实测验证)

脚本命令能自定义吗?在哪个文件配置?

部分命令在COMMAN.INI中配置,可自定义命令名后直接在脚本中使用,改完需重载生效。(本条问题整理自百度知道用户提问2017-11,答案经本地实测验证)

引擎启动报错先查哪个配置文件?

先查网关相关配置文件如Config.ini,以及版本信息文件,确认配置正确后重新打开网关,再排查脚本层问题。

ReadIni读出来的数字为什么是字符?

读取数据类型填1时按字符读取,数字会以文本形式存入变量。需要参与数值运算时把类型改为0,读成整数。

删除节点和删除关键字怎么选?

只想清理某一条数据用DeleteKey删关键字,整个玩法数据作废用EraseSection删节点,按数据粒度选择。

总结

HGE引擎的Ini读写由ReadIni、WriteIni、DeleteKey、EraseSection四条命令组成,读写参数一一对应,保存机制是链路完整的关键。配置链路就三步:写命令补齐Force、临时变量名只填裸变量名、重载后验证落盘与读回。数据频繁丢失的版本,优先排查保存模式和读取模式。

全部脚本案例经过本地HGE引擎环境实测验证,命令仅适配HGE引擎,部分其他引擎存在兼容可能性,跨引擎使用需要自行测试修改;仅供单机本地学习调试,用于版本技术研究与功能测试。



扫描二维码推送至手机访问。

本文章M2GM发布,如需转载请注明出处。如有侵权请联系站长删除。

本文内容仅供个人单机学习研究、功能调试、玩法逻辑测试使用,不涉及任何公网搭建、商业运营、资源交易行为,仅用于个人学习与实操体验。

本文链接:https://www.m2gm.com/tech/hge/1789730140/

分享给朋友:

相关文章

996引擎ReadExcel怎么用?Excel表格读取赋值完整教程

996引擎ReadExcel怎么用?Excel表格读取赋值完整教程

本文详解996引擎ReadExcel读取表格脚本完整用法,包含命令格式、参数、三阶实操案例,梳理路径格式要求,针对读取为空乱码给出修复方案,方便脚本学习者调试。…

996引擎CSV表格怎么读?按行列精准取值配置教程

996引擎CSV表格怎么读?按行列精准取值配置教程

本文详解996引擎CSV表格读取脚本的两种调用模式,常量模式通过cfg_前缀常驻内存配合<$cfg_guanzhi(1_1)>取值,即时模式用NEWDQCSV、GetHLCSV、GetGJCSV按路径实时查询,附三阶案例、零基础实操步骤、行列计数避坑与常见报错修复,供脚本定制学习者本地调…

ESP插件ESPSplitNumber参数设置:多位数字拆分教程

ESP插件ESPSplitNumber参数设置:多位数字拆分教程

本篇文章针对ESP插件ESPSplitNumber脚本进行全方位实操讲解,涵盖命令原理、参数详解、三阶实操案例、落地步骤及常见报错修复,零基础学习者可直接照搬调试,快速实现数字拆分变量赋值功能。…

大秦插件DQNotDropItemCount怎么用?死亡不掉装备教程

大秦插件DQNotDropItemCount怎么用?死亡不掉装备教程

本篇教程针对大秦插件DQNotDropItemCount脚本展开全面实操讲解,介绍脚本核心原理、命令格式与参数用法,搭配三阶差异化案例,详解零基础设置死亡不掉装备次数的步骤,解决次数不清零、不递减等常见问题。…

GOM引擎ForceDirectories是什么?自动创建文件夹作用

GOM引擎ForceDirectories是什么?自动创建文件夹作用

本文针对GOM引擎ForceDirectories脚本展开实操讲解,梳理命令原理、标准格式与核心参数,搭配初、中、高三阶差异化案例,详解实操步骤、避坑要点与报错修复方案,帮助零基础学习者快速掌握自动新建目录文件夹的脚本调试技巧。…