Jiangeshi / Leader-Mission

Most of the countries in this mod have had glorious history or epic struggles with fate. They may not be perfect, but each is worthy of respect.
72 stars 8 forks source link

此mod在Windows上不可用 #2

Open HPLZH opened 1 year ago

HPLZH commented 1 year ago

当尝试使用此规则集创建世界时,会出现一个错误。

Platform: Desktop

Version: 4.5.5 (Build 828)

Rulesets: [Civ V - Vanilla, Civ V - Gods & Kings, Leader Mission]

Last Screen: com.unciv.ui.screens.newgamescreen.NewGameScreen

 


 

OS: Windows 10

Java: Oracle Corporation 25.232-b09

      Max Memory: 3641 MB

 

 


 

 

Message:


java.lang.RuntimeException: Actor: TranslatedSelectBox

      at com.badlogic.gdx.scenes.scene2d.Actor.notify(Actor.java:192)

      at com.badlogic.gdx.scenes.scene2d.Actor.fire(Actor.java:152)

      at com.badlogic.gdx.scenes.scene2d.utils.Selection.fireChangeEvent(Selection.java:228)

      at com.badlogic.gdx.scenes.scene2d.ui.SelectBox$1.fireChangeEvent(SelectBox.java:71)

      at com.badlogic.gdx.scenes.scene2d.utils.Selection.choose(Selection.java:53)

      at com.badlogic.gdx.scenes.scene2d.utils.ArraySelection.choose(ArraySelection.java:24)

      at com.badlogic.gdx.scenes.scene2d.ui.SelectBox$SelectBoxScrollPane$1.clicked(SelectBox.java:448)

      at com.badlogic.gdx.scenes.scene2d.utils.ClickListener.touchUp(ClickListener.java:88)

      at com.badlogic.gdx.scenes.scene2d.InputListener.handle(InputListener.java:71)

      at com.badlogic.gdx.scenes.scene2d.Stage.touchUp(Stage.java:355)

      at com.unciv.ui.screens.basescreen.UncivStage.access$touchUp$s80204510(UncivStage.kt:18)

      at com.unciv.ui.screens.basescreen.UncivStage$touchUp$1.invoke(UncivStage.kt:90)

      at com.unciv.ui.screens.basescreen.UncivStage$touchUp$1.invoke(UncivStage.kt:90)

      at com.unciv.ui.crashhandling.CrashHandlingExtensionsKt$wrapCrashHandling$1.invoke(CrashHandlingExtensions.kt:17)

      at com.unciv.ui.screens.basescreen.UncivStage.touchUp(UncivStage.kt:90)

      at com.badlogic.gdx.InputEventQueue.drain(InputEventQueue.java:70)

      at com.badlogic.gdx.backends.lwjgl3.DefaultLwjgl3Input.update(DefaultLwjgl3Input.java:189)

      at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:378)

      at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:192)

      at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:166)

      at com.unciv.app.desktop.DesktopLauncher.main(DesktopLauncher.kt:76)

Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: mods/Leader Mission/District鈥擲tudenicaMonastery.png

      at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:190)

      at com.badlogic.gdx.graphics.TextureData$Factory.loadFromFile(TextureData.java:101)

      at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:122)

      at com.badlogic.gdx.graphics.g2d.TextureAtlas.load(TextureAtlas.java:87)

      at com.badlogic.gdx.graphics.g2d.TextureAtlas.<init>(TextureAtlas.java:80)

      at com.badlogic.gdx.graphics.g2d.TextureAtlas.<init>(TextureAtlas.java:76)

      at com.badlogic.gdx.graphics.g2d.TextureAtlas.<init>(TextureAtlas.java:71)

      at com.badlogic.gdx.graphics.g2d.TextureAtlas.<init>(TextureAtlas.java:61)

      at com.unciv.ui.images.ImageGetter.loadModAtlases(ImageGetter.kt:93)

      at com.unciv.ui.images.ImageGetter.setNewRuleset(ImageGetter.kt:72)

      at com.unciv.ui.screens.newgamescreen.GameOptionsTable.reloadRuleset(GameOptionsTable.kt:419)

      at com.unciv.ui.screens.newgamescreen.GameOptionsTable.onChooseMod(GameOptionsTable.kt:432)

      at com.unciv.ui.screens.newgamescreen.GameOptionsTable.access$onChooseMod(GameOptionsTable.kt:37)

      at com.unciv.ui.screens.newgamescreen.GameOptionsTable$addBaseRulesetSelectBox$1.invoke(GameOptionsTable.kt:349)

      at com.unciv.ui.screens.newgamescreen.GameOptionsTable$addBaseRulesetSelectBox$1.invoke(GameOptionsTable.kt:331)

      at com.unciv.ui.screens.newgamescreen.GameOptionsTable$addSelectBox$1.invoke(GameOptionsTable.kt:315)

      at com.unciv.ui.screens.newgamescreen.GameOptionsTable$addSelectBox$1.invoke(GameOptionsTable.kt:314)

      at com.unciv.ui.components.extensions.OnChangeListener.changed(Scene2dExtensions.kt:340)

      at com.badlogic.gdx.scenes.scene2d.utils.ChangeListener.handle(ChangeListener.java:28)

      at com.badlogic.gdx.scenes.scene2d.Actor.notify(Actor.java:188)

      ... 20 more

Caused by: com.badlogic.gdx.utils.GdxRuntimeException: File not found: mods\Leader Mission\District鈥擲tudenicaMonastery.png (Local)

      at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:142)

      at com.badlogic.gdx.files.FileHandle.readBytes(FileHandle.java:228)

      at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:187)

      ... 39 more

 

 

HPLZH commented 1 year ago

经过分析,这个问题可能与文件名中的字符“—”(\u2014)有关。

据我推测,这个错误是由Unciv,这个mod,以及Windows采用的字符编码方案不一致导致的。

另外,这个字符比较罕见,可以考虑使用键盘上的减号替代它。

HPLZH commented 1 year ago

如果把 game.atlas 使用 GB 2312 重新保存,此问题将不会出现。