千年技术吧+ 关注 关注:3 帖子:256

  

解决角色登录生成DUMP.BIN文件

  • 枫之精英

    问题情况:
    1. TGS1000文件夹会生成DUMP.BIN文件。
    2. 查看TGS1000.log会生成“TUser(角色名称).MessageProcess () failed”错误信息。


    出现这种问题的用户可以不妨尝试一下本方法。

    但我不能保证100%能解决。
    毕竟这方法是自行测试成功,然后再到这发帖公布。

    没有出现此错误的用户请无视。



    测试过程分析:

    我简单做了一个实验,清空information.txt内容。
    然后启动服务端,再登录角色。
    这时TGS1000文件夹会生成3个DUMP.BIN文件。
    然后查看TGS1000.log会生成“TUser(角色名称).MessageProcess () failed”错误信息。
    最后关闭服务端。

    当初看见DUMP就觉得是否是跳点或地图设置问题?
    但我服务端是没跳点的,应该不存在跳点问题。
    地图也只有一张图而已,代码是没有修改过,应该也不存在地图问题。

    也曾经想过一些是否脚本和smp问题。
    但服务端是没有任何NPC和脚本
    从TGS1000.log字面解释是信息出错,所以无视上面提到的问题。

    重新替换information.txt,问题依旧出现。


    解决方法:

    在TGS1000目录下新建一个GameAgree.txt文本,内容随便,然后登录游戏。
    这时登录角色,服务端没有任何错误。
    TGS1000.log不出现错误信息。
    TGS1000目录也不再生成DUMP.BIN文件。

    然后再试试把GameAgree.txt内容删除,再登录角色,问题又出现了。
    添加信息后,又无错了。

    最后结论:

    GameAgree.txt 字面解释就是一个游戏的同意协议。
    它的功能与information.txt是一样。
    但TGS1000.exe会优先读取GameAgree.txt。


    当内容被清空时,会自动调用system.txt脚本,也就是Script.sdb里面1号脚本。
    脚本作用是当用户首次登录时,将检测用户是否完成1号任务。
    如未完成,则会调用help\start.txt文件。
    当用户按“关闭”时,等同完成1号任务。
    再次登录,就没有弹出任何公告框或提示框。
    但这时TGS1000目录就会出现DUMP.BIN文件和TGS1000.log会出现错误。


    前面说过,TGS1000.exe会优先读取GameAgree.txt。
    information.txt被无视,所以最后我删除information.txt。
    再次启动服务端,没有错误发生。(GameAgree.txt是有内容)

    1楼  2017/8/9 15:13:12  回复

  发表回复

    发帖