|
|
Mod Bug汇报
|
待解决
|
| 游戏版本: |
0.98 |
| Mod中文名: |
工业革命 |
| Mod版本: |
4.1.b |
游戏日志:
[游戏日志]
364478 [Thread-2] INFO org.boxutil.manager.CampaignRenderingManager - 'BoxUtil' Campaign rendering plugin join layer: 'ABOVE'
364478 [Thread-2] INFO com.fs.starfarer.api.impl.campaign.intel.SystemBountyIntel - 殖民地发布的赏金已经结束 [{天蓝绒毛生态模块}]
364491 [Thread-6] INFO sound.O - Cleaning up music with id [campaign_music_part_2_v28.ogg]
364584 [Thread-2] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because the return value of "com.fs.starfarer.api.campaign.SectorEntityToken.getCustomEntityType()" is null
java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because the return value of "com.fs.starfarer.api.campaign.SectorEntityToken.getCustomEntityType()" is null
at indevo.industries.artillery.entities.ArtilleryStationEntityPlugin.getOrbitalStationAtMarket(ArtilleryStationEntityPlugin.java:128)
at indevo.industries.artillery.entities.ArtilleryStationEntityPlugin.placeAtMarket(ArtilleryStationEntityPlugin.java:86)
at indevo.industries.artillery.scripts.ArtilleryStationScript.ensureStationEntityIsSetOrCreated(ArtilleryStationScript.java:490)
at indevo.industries.artillery.scripts.ArtilleryStationScript.spawnStation(ArtilleryStationScript.java:448)
at indevo.industries.artillery.scripts.ArtilleryStationScript.aliveActions(ArtilleryStationScript.java:205)
at indevo.industries.artillery.scripts.ArtilleryStationScript.advance(ArtilleryStationScript.java:117)
at com.fs.starfarer.campaign.BaseCampaignEntity.runScripts(Unknown Source)
at com.fs.starfarer.campaign.BaseCampaignEntity.advance(Unknown Source)
at com.fs.starfarer.campaign.CampaignPlanet.advance(Unknown Source)
at com.fs.starfarer.campaign.BaseLocation.advance(Unknown Source)
at com.fs.starfarer.campaign.StarSystem.advance(Unknown Source)
at com.fs.starfarer.campaign.CampaignEngine.advance(Unknown Source)
at com.fs.starfarer.campaign.CampaignState.advance(Unknown Source)
at com.fs.starfarer.BaseGameState.traverse(Unknown Source)
at com.fs.state.AppDriver.begin(Unknown Source)
at com.fs.starfarer.combat.CombatMain.main(Unknown Source)
at com.fs.starfarer.StarfarerLauncher.o00000(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
[md]### 游戏信息
游戏版本: 0.98a-RC8
汉化版本: 2026.08.22
汉化分支: startup-optimization
### 系统信息
操作系统:Microsoft Windows 11 家庭版
版本:10.0.26100 暂缺 Build 26100
总可用内存:`31.81G`
游戏Java版本:`17.0.10`
游戏Java路径:F:Yuan xing xing haojre
工具运行Java版本:`17.0.10`
工具运行Java路径:f:yuan xing xing haojre
虚拟机参数:java.exe -noverify -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+ShowCodeDetailsInExceptionMessages -XX:+ExtensiveErrorReports -XX:+ShowMessageBoxOnError -XX:+PrintCommandLineFlags -XX:+TieredCompilation -XX:-UseCondCardMark -Xlog:async -XX:+UseFastStosb -XX:+AlwaysCompileLoopMethods -XX:TieredStopAtLevel=4 -XX:TrimNativeHeapInterval=60000 -XX:UseAVX=3 -XX:AVX3Threshold=0 -XX:UseSSE=4 -XX:+UseSSE42Intrinsics -XX:+UseCompressedOops -XX:+UseCompressedClassPointers -XX:+UseFMA -XX:+UseBMI1Instructions -XX:+UseBMI2Instructions -XX:+UseCLMUL -XX:+UseFastUnorderedTimeStamps -XX:+UseUnalignedLoadStores -XX:+UseXMMForArrayCopy -XX:+UseXMMForObjInit -XX:+UseXmmI2D -XX:+UseXmmI2F -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:+ParallelRefProcEnabled -XX:+UseShenandoahGC -XX:ShenandoahGCMode=iu -XX:ShenandoahGCHeuristics=compact -XX:ShenandoahAllocationThreshold=85 -XX:ShenandoahGuaranteedGCInterval=0 -XX:+ZeroTLAB -XX:+SegmentedCodeCache -XX:+AlwaysAtomicAccesses -XX:+UseStringDeduplication -XX:-DontCompileHugeMethods -XX:Tier0Delay=1 -XX:+UseFPUForSpilling -XX:+EnableVectorAggressiveReboxing -XX:+EnableVectorReboxing -XX:+EnableVectorSupport -XX:-AlignVector -XX:TieredOldPercentage=10000 -XX:Tier0ProfilingStartPercentage=2000 -XX:IncreaseFirstTierCompileThresholdAt=99 -XX:InterpreterProfilePercentage=99 -XX:+UseVectorCmov -XX:+UseVectorStubs -XX:ReferencesPerThread=0 -XX:MaxGCPauseMillis=10 -XX:-EnableThreadSMRStatistics -XX:+UseUnalignedAccesses -XX:PerMethodRecompilationCutoff=100000 -XX:ProfileMaturityPercentage=100 -XX:NmethodSweepActivity=1 -XX:ThreadPriorityPolicy=1 -XX:ReservedCodeCacheSize=256m -XX:+PrintCodeCache -XX:-UseDynamicNumberOfCompilerThreads -XX:CompilerDirectivesFile=./compiler_directives.txt -Djava.library.path=native\windows -XX:-BytecodeVerificationLocal -XX:-BytecodeVerificationRemote -Djava.util.Arrays.useLegacyMergeSort=true --enable-preview --add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/java.nio.Buffer.UNSAFE=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.locks=ALL-UNNAMED --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.lang.ref=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.desktop/java.awt.font=ALL-UNNAMED --add-opens=java.desktop/java.awt.Rectangle=ALL-UNNAMED --add-opens=java.desktop/java.awt=ALL-UNNAMED --add-exports=java.base/jdk.internal.ref=ALL-UNNAMED --add-exports=java.base/jdk.internal.misc=ALL-UNNAMED --add-exports=java.base/sun.nio.ch=ALL-UNNAMED -Xmx6144m -Xms6144m -Xss4m -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=. -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;txw2-3.0.2.jar;jaxb-api-2.4.0-b180830.0359.jar;webp-imageio-0.1.6.jar com.fs.starfarer.StarfarerLauncher
堆栈初始大小(`-Xms`):`6144m`
堆栈最大大小(`-Xmx`):`6144m`
### Mod信息
|Mod名称 |Mod版本 |已启用|
|-|-|-|
|LazyLib |3.0.0 |是 |
|zz GraphicsLib |1.12.1 |是 |
|MagicLib |1.5.6 |是 |
|40K - 放逐帝国 |1.0.0 |是 |
|A New Level of Confidence |40 3.3 |是 |
|BoxUtil |1.5.5 |是 |
|J GEEK Federation |1.3.0 |是 |
|LunaLib |2.0.5 |是 |
|MechExpansionModule |dev 26-8-20|是 |
|Moci的随意之作 |2.2.8b |是 |
|Progressive S-Mods 经验内插 |1.2.0 |是 |
|QoL Pack 生活质量工具包 |1.5.2 |是 |
|Quality Captains 高质量舰长 |1.7.0 |是 |
|Quality Perks 高质量特技 |1.6.9 |是 |
|SimpleIndustryOptionProvider 简单的工业设施选项 |1.0.4 |是 |
|SpeedUp |1.2.2 |是 |
|乐园残响 |7.1.1 |是 |
|人之领历史协会[Domain Historical Society] |0.4a |是 |
|光环动力舰船工业 |1.8.0-fix4 |是 |
|兽耳助手! |0.761 |是 |
|军官捕获B |1.0.0 |是 |
|势力争霸 [Nexerelin] |0.12.2c |是 |
|北极星之首 [Polaris Prime] |0.4.3 |是 |
|卢德骑士团 |1.4.0 |是 |
|地貌改造 & 空间站建设 |10.0.9 |是 |
|威胁渐显 Emergent Threats |1.3.3 |是 |
|威胁渐显: 第九战斗群 复兴 Emergent Threats: IX Revival|1.3.3 |是 |
|工业革命 |4.1.b |是 |
|战舰少女R头像包 |0.0.7 |是 |
|控制台 |4.0.8 |是 |
|更优的技术挖掘 |2.7.5 |是 |
|更大的殖民地 |2.1.b |是 |
|更强的地面防御设施 |1.2 |是 |
|未知星域[Unknown Skies] |3.0.3 |是 |
|狐狐船包! |1.4.63 |是 |
|红条骑士团 |0.8 |是 |
|绿皮星域 中文版 |0.71 |是 |
|绿皮星域骤雨扩展 |0.20 |是 |
|舰船/武器拓展 [Ship/Weapon Pack] |1.16.6 |是 |
|让小飞机再次伟大! [make fighter great again!] |2026.9.25 |是 |
|超空间跳跃 |2.6.0 |是 |
|骤雨军事公司 |3.2.5 |是 |
|骤雨军事公司 - 动漫风头像包 |1.1 |是 |
|MixinLib |1.1.0 |否 |
|Second-in-Command 舰队副官 |2.0.0 |否 |
|UIUtil |5.0.1 |否 |
|zzz组件动画 |0.0.5 |否 |
(以上内容由 远行星号 报错信息收集工具 自动生成,生成工具版本 `1.1.5`).
[/md]
|
复现步骤:
进入一些星系里会直接闪退,我自己也看不懂报错原因,丢给ai分析了(仅供参考) AI原话“根据你提供的游戏日志,这个报错是由模组“Industrial Evolution(工业革命)” 在处理“火炮空间站”(Artillery Station)时引发的空指针异常(NullPointerException)。
错误原因分析
日志中的关键信息是:
java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because the return value of "com.fs.starfarer.api.campaign.SectorEntityToken.getCustomEntityType()" is null
触发位置:错误发生在 indeo.industries.artillery.entities.ArtilleryStationEntityPlugin.getOrbitalStationAtMark 方法中。
根本原因:代码尝试调用 getCustomEntityType() 方法并对其返回值使用 .equals() 进行比较,但该方法返回了 null。这通常意味着某个游戏实体(Entity)的类型未被正确设置或识别“ 复现场景未知,有一些开局能进的星系玩到后面就进了就闪退,也有从没进过的星系一进去就闪退
|
|