找回密码
 初始化身份识别芯片
查看: 2524|回复: 14

启动游戏玩不了多久就报内存泄露

[复制链接]

战列舰长

发表于 2024-12-1 11:03:35 | 显示全部楼层 |阅读模式
Mod Bug汇报
待解决
游戏版本: 0.97
Mod中文名:
Mod版本:
游戏日志:
[游戏日志]

556437 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段3
558262 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段4
558262 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段6
558264 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段6B
558469 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - Renaming [campaign.xml] to [campaign.xml.bak]
558470 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - Renaming [descriptor.xml] to [descriptor.xml.bak]
558470 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - Renaming [campaign.xml.inprogress] to [campaign.xml]
558470 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - Renaming [descriptor.xml.inprogress] to [descriptor.xml]
558471 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段7
558471 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 保存阶段8
558471 [Thread-3] INFO com.fs.starfarer.campaign.save.CampaignGameManager - 完成保存
560709 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 余辉 一个声望改变 (0.0, 0.0)
560710 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 非势力团体 一个声望改变 (0.8125, 0.0)
560710 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 雇佣兵 一个声望改变 (0.0, 0.0)
560710 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 恶魔部落 一个声望改变 (0.0, 0.0)
560710 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 the wanted 一个声望改变 (0.0, 0.0)
560711 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 多元居 一个声望改变 (0.0, 0.0)
560711 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 卢德左径 一个声望改变 (0.0, 0.0)
560711 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 星际帝国 一个声望改变 (0.0, 0.0)
560711 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 狮心卫队 一个声望改变 (0.0, 0.0)
560711 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 星光 一个声望改变 (0.0, 0.0)
560712 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 母神意志 一个声望改变 (0.0, 0.0)
560712 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 羊头航务局 一个声望改变 (0.0, 0.0)
560712 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 英仙座联盟 一个声望改变 (0.0, 0.0)
560712 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 难民 一个声望改变 (0.0, 0.0)
560712 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 黑色守望 一个声望改变 (0.0, 0.0)
560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 希弗 一个声望改变 (0.0, 0.0)
560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 the everything 一个声望改变 (0.0, 0.0)
560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 霸主 一个声望改变 (100100.09, 1713.1875)
560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 the sector 一个声望改变 (0.0, 0.0)
560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 海盗 一个声望改变 (1713.1875, 0.0)
560713 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 速子科技 一个声望改变 (0.0, 0.0)
560714 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 赏金目标 一个声望改变 (0.0, 0.0)
560714 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 欧米伽 一个声望改变 (0.0, 0.0)
560714 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 卢德教会 一个声望改变 (0.0, 0.0)
560714 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 拾荒者 一个声望改变 (0.0, 0.0)
560714 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 沉睡者 一个声望改变 (0.0, 0.0)
560715 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 星海集群 一个声望改变 (0.0, 0.0)
560715 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 地狱军团 一个声望改变 (0.0, 0.0)
560715 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 遗弃船 一个声望改变 (0.0, 0.0)
560715 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 the domain 一个声望改变 (0.0, 0.0)
560715 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 帝国卫队 一个声望改变 (0.0, 0.0)
560716 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 辛达强权 一个声望改变 (0.0, 0.0)
560716 [Thread-3] INFO com.fs.starfarer.api.impl.campaign.events.RepTrackerEvent - 没有足够的贸易/走私与 卢德骑士团 一个声望改变 (0.0, 0.0)
564397 [Thread-10] INFO sound.O - Creating streaming player for music with id [miscallenous_main_menu.ogg]
564397 [Thread-10] INFO sound.OooO - Playing music with id [miscallenous_main_menu.ogg]
564516 [Thread-3] INFO sound.O - Cleaning up music with id [campaign_music_part_2_v28.ogg]
564516 [Thread-3] INFO sound.O - Cleaning up music with id [miscallenous_corvus_campaign_music.ogg]
564531 [Thread-7] INFO sound.O - Cleaning up music with id [miscallenous_main_menu.ogg]
564897 [Thread-10] INFO sound.O - Creating streaming player for music with id [miscallenous_main_menu.ogg]
    复现步骤:
    正常游戏没几分钟直接弹窗报错
    ### 游戏信息

    游戏版本:                0.97a-RC11

    ### 系统信息

    操作系统:Microsoft Windows 10 家庭中文版

    版本:10.0.19045 暂缺 Build 19045

    总可用内存:`15.88G`


    **警告:未找到游戏默认Java运行时**


    虚拟机参数:java.exe -XX:CompilerThreadPriority=1 -XX:+CompilerThreadHintNoPreempt -Xverify:none -XX:+AggressiveOpts -Djava.library.path=native\\windows -XX:+UseShenandoahGC -XX:+DisableExplicitGC -XX:CompileCommand=exclude,com.fs.starfarer.combat.ai.O0OO::Ò00000 -XX:CompileCommand=exclude,com.fs.starfarer.api.impl.campaign.terrain.AuroraRenderer::render -XX:CompileCommand=exclude,com.fs.starfarer.combat.ai.movement.maneuvers.StrafeTargetManeuverV200000 -XX:+PrintGCDateStamps -Xloggc:jvm.log -Xms8g -Xmx8g -Xss2048k -classpath janino.jar;commons-compiler.jar;commons-compiler-jdk.jar;starfarer.api.jar;starfarer_obf.jar;jogg-0.0.7.jar;jorbis-0.0.15.jar;json.jar;lwjgl.jar;jinput.jar;log4j-1.2.9.jar;lwjgl_util.jar;fs.sound_obf.jar;fs.common_obf.jar;xstream-1.4.10.jar -Dcom.fs.starfarer.settings.paths.saves=..\\saves -Dcom.fs.starfarer.settings.paths.screenshots=..\\screenshots -Dcom.fs.starfarer.settings.paths.mods=..\\mods -Dcom.fs.starfarer.settings.paths.logs=. com.fs.starfarer.StarfarerLauncher

    堆栈初始大小(`-Xms`):`8192m`

    堆栈最大大小(`-Xmx`):`8192m`


    ### Mod信息

    |Mod名称                           |Mod版本   |已启用     |
    |-|-|-|
    |LazyLib                         |2.8b    |是       |
    |zz GraphicsLib                  |1.9.0   |是       |
    |MagicLib                        |1.4.6   |是       |
    |Console Commands                |2024.10.04|是       |
    |星海集群                            |1.13.1b |是       |
    |星际帝国 [Interstellar Imperium]    |2.6.4   |是       |
    |泰兰船包                            |1.3     |是       |
    |海盗拓展 [Underworld]               |1.8.3   |是       |
    |羊头航务局[Goat_Aviation_Bureau]     |1.9.10  |是       |
    |舰船/武器拓展 [Ship/Weapon Pack]      |1.15.1  |是       |
    |重生[UNGP]                        |2.3.0   |是       |

    (以上内容由 远行星号 报错信息收集工具 自动生成,生成工具版本 `1.1.2`).



    参照这个帖子更新了java8和vmparams之后游戏确实流畅了很多,但是总是报内存泄露需要手动保存游戏



    Jre Screenshot 2024.12.01 - 10.46.29.87.png

    战列舰长

     楼主| 发表于 2024-12-1 11:06:46 | 显示全部楼层
    等下,虚拟机参数里面怎么会有一个表情符号

    战列舰长

     楼主| 发表于 2024-12-1 11:11:57 | 显示全部楼层
    奇怪,文件里面又是正常的
    Desktop Screenshot 2024.12.01 - 11.11.14.10.png

    势力巨擘

    发表于 2024-12-1 11:41:08 | 显示全部楼层
    填8192试试

    点评

    没用,还是会报错  详情 回复 发表于 2024-12-2 16:20

    星域军阀

    高级机师

    发表于 2024-12-1 11:41:49 | 显示全部楼层
    如果你是打开游戏后第一次加载存档就报告内存泄漏,那就是你的vmparams的内存回收参数有问题,还原回原版的参数,仅修改内存大小部分就能解决
    如果你是在生涯中进行了SL,那属于正常情况,这种内存泄漏大概率是mod在插件或者每帧代码中直接通过变量形式保存了生涯中的类似舰队、星球等物件导致的,除非mod作者意识到并解决该问题,否则无法避免

    点评

    mod我就开了那几个,应该不至于吧。vmparams换回原版的也没用,根本开不了游戏,把jre文件也换回去才行  详情 回复 发表于 2024-12-2 16:23

    战列舰长

     楼主| 发表于 2024-12-2 16:20:50 | 显示全部楼层

    没用,还是会报错

    战列舰长

     楼主| 发表于 2024-12-2 16:23:00 | 显示全部楼层
    cjy4312 发表于 2024-12-1 11:41
    如果你是打开游戏后第一次加载存档就报告内存泄漏,那就是你的vmparams的内存回收参数有问题,还原回原版的 ...

    mod我就开了那几个,应该不至于吧。vmparams换回原版的也没用,根本开不了游戏,把jre文件也换回去才行

    星域军阀

    请校准时钟

    搬运能手学院教员

    发表于 2024-12-2 17:40:25 | 显示全部楼层
    我想,你可以尝试一步到位更新到java23试一试
    现在论坛的java8教程最好只视为游戏大版本较低时(如0951)的permsize报错解决方法,不应该再视为有效的游戏优化方法
    尤其是在java8使用ShenandoahGC的一些改动,在远行星号的国际社区已经被放弃很久了,所以尽量不要再使用
    论坛版本的ShenandoahGC很多人报告过错误,错误的种类还很多样,不排除是他导致的内存问题

    点评

    其实J23用的也是Shenandoah  详情 回复 发表于 2025-3-27 06:37
    好吧,看来只有这个办法了,谢谢  详情 回复 发表于 2024-12-4 00:03

    战列舰长

     楼主| 发表于 2024-12-4 00:03:26 | 显示全部楼层
    Tick_Tock_Man 发表于 2024-12-2 17:40
    我想,你可以尝试一步到位更新到java23试一试
    现在论坛的java8教程最好只视为游戏大版本较低时(如0951)的 ...

    好吧,看来只有这个办法了,谢谢

    星域军阀

    经理&准执柄者

    学院教员

    发表于 2024-12-4 02:46:27 | 显示全部楼层
    Alex:代码的事你别多管(

    驱逐技师

    发表于 2025-3-25 21:17:46 | 显示全部楼层
    这破游戏内存泄漏严重的一塌糊涂,调多少G都救不了,我每次舰队战斗两三次(哪怕模拟战)后必报内存泄漏,唯一能救的就是玩低版本+少打mod。。。

    点评

    升级Java 23试一试,此外过度分配会有反效果。游戏一些应用(尤其是音乐和材质图)会占用你分配内存以外的内存。因此分配过多内存会挤压这些东西所需的内存空间,造成游戏反而不稳定。 而且游戏本身与其说是内存泄  详情 回复 发表于 2025-3-27 06:40

    星域军阀

    高级机师通讯记者

    发表于 2025-3-27 06:37:18 | 显示全部楼层
    Tick_Tock_Man 发表于 2024-12-2 17:40
    我想,你可以尝试一步到位更新到java23试一试
    现在论坛的java8教程最好只视为游戏大版本较低时(如0951)的 ...

    其实J23用的也是Shenandoah

    点评

    我知道,我自己用过j8的Shenandoah,我当时回这个贴的意思是 论坛有一个使用redhat j8 Shenandoah的教程,在当时教程贴里就有许多人汇报错误,和miko在官坛早年发的正常调整过的Shenandoah不应当混为一谈 因此建议楼  详情 回复 发表于 2025-3-27 10:05

    星域军阀

    高级机师通讯记者

    发表于 2025-3-27 06:40:31 | 显示全部楼层
    majiayi5 发表于 2025-3-25 21:17
    这破游戏内存泄漏严重的一塌糊涂,调多少G都救不了,我每次舰队战斗两三次(哪怕模拟战)后必报内存泄漏,唯 ...

    升级Java 23试一试,此外过度分配会有反效果。游戏一些应用(尤其是音乐和材质图)会占用你分配内存以外的内存。因此分配过多内存会挤压这些东西所需的内存空间,造成游戏反而不稳定。

    而且游戏本身与其说是内存泄漏严重不如说是垃圾清理效率极低 (当然有些mod确实有内存泄漏风险),所以目前的几个主要优化例如论坛的旧Java8,还有Miko的Java23、24都是从这边入手的。我用J23分配4G都是足够的。

    星域军阀

    请校准时钟

    搬运能手学院教员

    发表于 2025-3-27 10:05:12 | 显示全部楼层
    本帖最后由 Tick_Tock_Man 于 2025-3-27 10:15 编辑
    Mycophobia 发表于 2025-3-27 06:37
    其实J23用的也是Shenandoah

    我完全同意你的意见!我自己也用过j8的Shenandoah,我当时回这个贴的意思是
    论坛有一个使用redhat j8 Shenandoah的“教程”(用户id为wuyi或其他类似id),在当时“教程”贴里就有许多人汇报错误,和miko在官坛早年发的正常调整过的Shenandoah不应当混为一谈。同时,在发这个回复的时点,miko已经快把j24弄出来了,j8在英文论坛也已经是过期物
    因此出于楼主运行环境的问题,审慎建议楼主使用正规、正常开发者的后续产品

    点评

    呜啊你回复这么正式让我好难为情www 我只是打算卖个萌而已。也感谢时钟佬一直以来的排查回答问题  详情 回复 发表于 2025-3-28 06:09

    星域军阀

    高级机师通讯记者

    发表于 2025-3-28 06:09:13 | 显示全部楼层
    Tick_Tock_Man 发表于 2025-3-27 10:05
    我完全同意你的意见!我自己也用过j8的Shenandoah,我当时回这个贴的意思是
    论坛有一个使用redhat j8 Shen ...

    呜啊你回复这么正式让我好难为情www

    我只是打算卖个萌而已。也感谢时钟佬一直以来的排查回答问题

    本版积分规则

    Archiver|手机版|小黑屋|远行星号中文论坛

    GMT+8, 2025-12-6 03:47

    Powered by Discuz! X3.5

    © 2001-2077 Tencent Cloud | Durian Software Studio

    快速回复 返回顶部 返回列表