I need a help

Hello, everyone. I’ve been expecting troubles with launching the game in Ubuntu 16.10 x86_64
I’m using OpenJDK-9 to launch the game
The problem is: when i start the game it shows the title screen, but then when I try to launch a new game or load my previous save, the game didn’t react. I’m also can switch between the tabs in the game, but they are empty, and I can’t skip a day or do something else in the game. Please, if someone knows how to fix this issue, write it here.

I’m also attach the output from the console below

Java home: /usr/lib/jvm/java-9-openjdk-amd64
Version: 9-Ubuntu
Relative path for game resources: gamedata
Absolute path for game resources: /home/kenshiro/apps/.some/games/FM/Mods/gamedata
Exception in thread “AWT-EventQueue-0” java.lang.ExceptionInInitializerError
at org.mvel2.optimizers.OptimizerFactory.(OptimizerFactory.java:39)
at fetishmaster.engine.GameEngine.initGameEngine(GameEngine.java:242)
at fetishmaster.engine.GameEngine.initNewGame(GameEngine.java:73)
at fetishmaster.display.JDialogStartSplash.jButtonStartActionPerformed(JDialogStartSplash.java:256)
at fetishmaster.display.JDialogStartSplash.access$200(JDialogStartSplash.java:21)
at fetishmaster.display.JDialogStartSplash$3.actionPerformed(JDialogStartSplash.java:148)
at javax.swing.AbstractButton.fireActionPerformed(java.desktop@9-Ubuntu/AbstractButton.java:1967)
at javax.swing.AbstractButton$Handler.actionPerformed(java.desktop@9-Ubuntu/AbstractButton.java:2308)
at javax.swing.DefaultButtonModel.fireActionPerformed(java.desktop@9-Ubuntu/DefaultButtonModel.java:404)
at javax.swing.DefaultButtonModel.setPressed(java.desktop@9-Ubuntu/DefaultButtonModel.java:261)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(java.desktop@9-Ubuntu/BasicButtonListener.java:269)
at java.awt.Component.processMouseEvent(java.desktop@9-Ubuntu/Component.java:6601)
at javax.swing.JComponent.processMouseEvent(java.desktop@9-Ubuntu/JComponent.java:3322)
at java.awt.Component.processEvent(java.desktop@9-Ubuntu/Component.java:6366)
at java.awt.Container.processEvent(java.desktop@9-Ubuntu/Container.java:2259)
at java.awt.Component.dispatchEventImpl(java.desktop@9-Ubuntu/Component.java:4985)
at java.awt.Container.dispatchEventImpl(java.desktop@9-Ubuntu/Container.java:2317)
at java.awt.Component.dispatchEvent(java.desktop@9-Ubuntu/Component.java:4817)
at java.awt.LightweightDispatcher.retargetMouseEvent(java.desktop@9-Ubuntu/Container.java:4896)
at java.awt.LightweightDispatcher.processMouseEvent(java.desktop@9-Ubuntu/Container.java:4533)
at java.awt.LightweightDispatcher.dispatchEvent(java.desktop@9-Ubuntu/Container.java:4474)
at java.awt.Container.dispatchEventImpl(java.desktop@9-Ubuntu/Container.java:2303)
at java.awt.Window.dispatchEventImpl(java.desktop@9-Ubuntu/Window.java:2754)
at java.awt.Component.dispatchEvent(java.desktop@9-Ubuntu/Component.java:4817)
at java.awt.EventQueue.dispatchEventImpl(java.desktop@9-Ubuntu/EventQueue.java:761)
at java.awt.EventQueue.access$500(java.desktop@9-Ubuntu/EventQueue.java:97)
at java.awt.EventQueue$3.run(java.desktop@9-Ubuntu/EventQueue.java:712)
at java.awt.EventQueue$3.run(java.desktop@9-Ubuntu/EventQueue.java:706)
at java.security.AccessController.doPrivileged(java.base@9-Ubuntu/Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:77)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(java.desktop@9-Ubuntu/EventQueue.java:734)
at java.awt.EventQueue$4.run(java.desktop@9-Ubuntu/EventQueue.java:732)
at java.security.AccessController.doPrivileged(java.base@9-Ubuntu/Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:77)
at java.awt.EventQueue.dispatchEvent(java.desktop@9-Ubuntu/EventQueue.java:731)
at java.awt.EventDispatchThread.pumpOneEventForFilters(java.desktop@9-Ubuntu/EventDispatchThread.java:199)
at java.awt.EventDispatchThread.pumpEventsForFilter(java.desktop@9-Ubuntu/EventDispatchThread.java:124)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(java.desktop@9-Ubuntu/EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(java.desktop@9-Ubuntu/EventDispatchThread.java:109)
at java.awt.EventDispatchThread.pumpEvents(java.desktop@9-Ubuntu/EventDispatchThread.java:101)
at java.awt.EventDispatchThread.run(java.desktop@9-Ubuntu/EventDispatchThread.java:90)
Caused by: java.lang.NumberFormatException: For input string: “9-U”
at jdk.internal.math.FloatingDecimal.readJavaFormatString(java.base@9-Ubuntu/FloatingDecimal.java:2054)
at jdk.internal.math.FloatingDecimal.parseDouble(java.base@9-Ubuntu/FloatingDecimal.java:110)
at java.lang.Double.parseDouble(java.base@9-Ubuntu/Double.java:539)
at org.mvel2.compiler.AbstractParser.setupParser(AbstractParser.java:164)
at org.mvel2.compiler.AbstractParser.(AbstractParser.java:100)
… 42 more
Exception in thread “AWT-EventQueue-0” java.lang.NoClassDefFoundError: Could not initialize class org.mvel2.optimizers.OptimizerFactory
at fetishmaster.engine.GameEngine.initGameEngine(GameEngine.java:242)
at fetishmaster.engine.GameEngine.initNewGame(GameEngine.java:73)
at fetishmaster.display.JDialogStartSplash.jButtonStartActionPerformed(JDialogStartSplash.java:256)
at fetishmaster.display.JDialogStartSplash.access$200(JDialogStartSplash.java:21)
at fetishmaster.display.JDialogStartSplash$3.actionPerformed(JDialogStartSplash.java:148)
at javax.swing.AbstractButton.fireActionPerformed(java.desktop@9-Ubuntu/AbstractButton.java:1967)
at javax.swing.AbstractButton$Handler.actionPerformed(java.desktop@9-Ubuntu/AbstractButton.java:2308)
at javax.swing.DefaultButtonModel.fireActionPerformed(java.desktop@9-Ubuntu/DefaultButtonModel.java:404)
at javax.swing.DefaultButtonModel.setPressed(java.desktop@9-Ubuntu/DefaultButtonModel.java:261)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(java.desktop@9-Ubuntu/BasicButtonListener.java:269)
at java.awt.Component.processMouseEvent(java.desktop@9-Ubuntu/Component.java:6601)
at javax.swing.JComponent.processMouseEvent(java.desktop@9-Ubuntu/JComponent.java:3322)
at java.awt.Component.processEvent(java.desktop@9-Ubuntu/Component.java:6366)
at java.awt.Container.processEvent(java.desktop@9-Ubuntu/Container.java:2259)
at java.awt.Component.dispatchEventImpl(java.desktop@9-Ubuntu/Component.java:4985)
at java.awt.Container.dispatchEventImpl(java.desktop@9-Ubuntu/Container.java:2317)
at java.awt.Component.dispatchEvent(java.desktop@9-Ubuntu/Component.java:4817)
at java.awt.LightweightDispatcher.retargetMouseEvent(java.desktop@9-Ubuntu/Container.java:4896)
at java.awt.LightweightDispatcher.processMouseEvent(java.desktop@9-Ubuntu/Container.java:4533)
at java.awt.LightweightDispatcher.dispatchEvent(java.desktop@9-Ubuntu/Container.java:4474)
at java.awt.Container.dispatchEventImpl(java.desktop@9-Ubuntu/Container.java:2303)
at java.awt.Window.dispatchEventImpl(java.desktop@9-Ubuntu/Window.java:2754)
at java.awt.Component.dispatchEvent(java.desktop@9-Ubuntu/Component.java:4817)
at java.awt.EventQueue.dispatchEventImpl(java.desktop@9-Ubuntu/EventQueue.java:761)
at java.awt.EventQueue.access$500(java.desktop@9-Ubuntu/EventQueue.java:97)
at java.awt.EventQueue$3.run(java.desktop@9-Ubuntu/EventQueue.java:712)
at java.awt.EventQueue$3.run(java.desktop@9-Ubuntu/EventQueue.java:706)
at java.security.AccessController.doPrivileged(java.base@9-Ubuntu/Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:77)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(java.desktop@9-Ubuntu/EventQueue.java:734)
at java.awt.EventQueue$4.run(java.desktop@9-Ubuntu/EventQueue.java:732)
at java.security.AccessController.doPrivileged(java.base@9-Ubuntu/Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:77)
at java.awt.EventQueue.dispatchEvent(java.desktop@9-Ubuntu/EventQueue.java:731)
at java.awt.EventDispatchThread.pumpOneEventForFilters(java.desktop@9-Ubuntu/EventDispatchThread.java:199)
at java.awt.EventDispatchThread.pumpEventsForFilter(java.desktop@9-Ubuntu/EventDispatchThread.java:124)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(java.desktop@9-Ubuntu/EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(java.desktop@9-Ubuntu/EventDispatchThread.java:109)
at java.awt.EventDispatchThread.pumpEvents(java.desktop@9-Ubuntu/EventDispatchThread.java:101)
at java.awt.EventDispatchThread.run(java.desktop@9-Ubuntu/EventDispatchThread.java:90)
Exception in thread “AWT-EventQueue-0” java.lang.NoClassDefFoundError: Could not initialize class org.mvel2.optimizers.OptimizerFactory
at fetishmaster.engine.GameEngine.initGameEngine(GameEngine.java:242)
at fetishmaster.engine.GameEngine.initNewGame(GameEngine.java:73)
at fetishmaster.display.JDialogStartSplash.jButtonStartActionPerformed(JDialogStartSplash.java:256)
at fetishmaster.display.JDialogStartSplash.access$200(JDialogStartSplash.java:21)
at fetishmaster.display.JDialogStartSplash$3.actionPerformed(JDialogStartSplash.java:148)
at javax.swing.AbstractButton.fireActionPerformed(java.desktop@9-Ubuntu/AbstractButton.java:1967)
at javax.swing.AbstractButton$Handler.actionPerformed(java.desktop@9-Ubuntu/AbstractButton.java:2308)
at javax.swing.DefaultButtonModel.fireActionPerformed(java.desktop@9-Ubuntu/DefaultButtonModel.java:404)
at javax.swing.DefaultButtonModel.setPressed(java.desktop@9-Ubuntu/DefaultButtonModel.java:261)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(java.desktop@9-Ubuntu/BasicButtonListener.java:269)
at java.awt.Component.processMouseEvent(java.desktop@9-Ubuntu/Component.java:6601)
at javax.swing.JComponent.processMouseEvent(java.desktop@9-Ubuntu/JComponent.java:3322)
at java.awt.Component.processEvent(java.desktop@9-Ubuntu/Component.java:6366)
at java.awt.Container.processEvent(java.desktop@9-Ubuntu/Container.java:2259)
at java.awt.Component.dispatchEventImpl(java.desktop@9-Ubuntu/Component.java:4985)
at java.awt.Container.dispatchEventImpl(java.desktop@9-Ubuntu/Container.java:2317)
at java.awt.Component.dispatchEvent(java.desktop@9-Ubuntu/Component.java:4817)
at java.awt.LightweightDispatcher.retargetMouseEvent(java.desktop@9-Ubuntu/Container.java:4896)
at java.awt.LightweightDispatcher.processMouseEvent(java.desktop@9-Ubuntu/Container.java:4533)
at java.awt.LightweightDispatcher.dispatchEvent(java.desktop@9-Ubuntu/Container.java:4474)
at java.awt.Container.dispatchEventImpl(java.desktop@9-Ubuntu/Container.java:2303)
at java.awt.Window.dispatchEventImpl(java.desktop@9-Ubuntu/Window.java:2754)
at java.awt.Component.dispatchEvent(java.desktop@9-Ubuntu/Component.java:4817)
at java.awt.EventQueue.dispatchEventImpl(java.desktop@9-Ubuntu/EventQueue.java:761)
at java.awt.EventQueue.access$500(java.desktop@9-Ubuntu/EventQueue.java:97)
at java.awt.EventQueue$3.run(java.desktop@9-Ubuntu/EventQueue.java:712)
at java.awt.EventQueue$3.run(java.desktop@9-Ubuntu/EventQueue.java:706)
at java.security.AccessController.doPrivileged(java.base@9-Ubuntu/Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:77)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(java.desktop@9-Ubuntu/EventQueue.java:734)
at java.awt.EventQueue$4.run(java.desktop@9-Ubuntu/EventQueue.java:732)
at java.security.AccessController.doPrivileged(java.base@9-Ubuntu/Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:77)
at java.awt.EventQueue.dispatchEvent(java.desktop@9-Ubuntu/EventQueue.java:731)
at java.awt.EventDispatchThread.pumpOneEventForFilters(java.desktop@9-Ubuntu/EventDispatchThread.java:199)
at java.awt.EventDispatchThread.pumpEventsForFilter(java.desktop@9-Ubuntu/EventDispatchThread.java:124)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(java.desktop@9-Ubuntu/EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(java.desktop@9-Ubuntu/EventDispatchThread.java:109)
at java.awt.EventDispatchThread.pumpEvents(java.desktop@9-Ubuntu/EventDispatchThread.java:101)
at java.awt.EventDispatchThread.run(java.desktop@9-Ubuntu/EventDispatchThread.java:90)
Exception in thread “AWT-EventQueue-0” java.lang.NoClassDefFoundError: Could not initialize class org.mvel2.optimizers.OptimizerFactory
at fetishmaster.engine.GameEngine.initGameEngine(GameEngine.java:242)
at fetishmaster.engine.GameEngine.initNewGame(GameEngine.java:73)
at fetishmaster.display.JDialogStartSplash.jButtonStartActionPerformed(JDialogStartSplash.java:256)
at fetishmaster.display.JDialogStartSplash.access$200(JDialogStartSplash.java:21)
at fetishmaster.display.JDialogStartSplash$3.actionPerformed(JDialogStartSplash.java:148)
at javax.swing.AbstractButton.fireActionPerformed(java.desktop@9-Ubuntu/AbstractButton.java:1967)
at javax.swing.AbstractButton$Handler.actionPerformed(java.desktop@9-Ubuntu/AbstractButton.java:2308)
at javax.swing.DefaultButtonModel.fireActionPerformed(java.desktop@9-Ubuntu/DefaultButtonModel.java:404)
at javax.swing.DefaultButtonModel.setPressed(java.desktop@9-Ubuntu/DefaultButtonModel.java:261)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(java.desktop@9-Ubuntu/BasicButtonListener.java:269)
at java.awt.Component.processMouseEvent(java.desktop@9-Ubuntu/Component.java:6601)
at javax.swing.JComponent.processMouseEvent(java.desktop@9-Ubuntu/JComponent.java:3322)
at java.awt.Component.processEvent(java.desktop@9-Ubuntu/Component.java:6366)
at java.awt.Container.processEvent(java.desktop@9-Ubuntu/Container.java:2259)
at java.awt.Component.dispatchEventImpl(java.desktop@9-Ubuntu/Component.java:4985)
at java.awt.Container.dispatchEventImpl(java.desktop@9-Ubuntu/Container.java:2317)
at java.awt.Component.dispatchEvent(java.desktop@9-Ubuntu/Component.java:4817)
at java.awt.LightweightDispatcher.retargetMouseEvent(java.desktop@9-Ubuntu/Container.java:4896)
at java.awt.LightweightDispatcher.processMouseEvent(java.desktop@9-Ubuntu/Container.java:4533)
at java.awt.LightweightDispatcher.dispatchEvent(java.desktop@9-Ubuntu/Container.java:4474)
at java.awt.Container.dispatchEventImpl(java.desktop@9-Ubuntu/Container.java:2303)
at java.awt.Window.dispatchEventImpl(java.desktop@9-Ubuntu/Window.java:2754)
at java.awt.Component.dispatchEvent(java.desktop@9-Ubuntu/Component.java:4817)
at java.awt.EventQueue.dispatchEventImpl(java.desktop@9-Ubuntu/EventQueue.java:761)
at java.awt.EventQueue.access$500(java.desktop@9-Ubuntu/EventQueue.java:97)
at java.awt.EventQueue$3.run(java.desktop@9-Ubuntu/EventQueue.java:712)
at java.awt.EventQueue$3.run(java.desktop@9-Ubuntu/EventQueue.java:706)
at java.security.AccessController.doPrivileged(java.base@9-Ubuntu/Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:77)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(java.desktop@9-Ubuntu/EventQueue.java:734)
at java.awt.EventQueue$4.run(java.desktop@9-Ubuntu/EventQueue.java:732)
at java.security.AccessController.doPrivileged(java.base@9-Ubuntu/Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(java.base@9-Ubuntu/ProtectionDomain.java:77)
at java.awt.EventQueue.dispatchEvent(java.desktop@9-Ubuntu/EventQueue.java:731)
at java.awt.EventDispatchThread.pumpOneEventForFilters(java.desktop@9-Ubuntu/EventDispatchThread.java:199)
at java.awt.EventDispatchThread.pumpEventsForFilter(java.desktop@9-Ubuntu/EventDispatchThread.java:124)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(java.desktop@9-Ubuntu/EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(java.desktop@9-Ubuntu/EventDispatchThread.java:109)
at java.awt.EventDispatchThread.pumpEvents(java.desktop@9-Ubuntu/EventDispatchThread.java:101)
at java.awt.EventDispatchThread.run(java.desktop@9-Ubuntu/EventDispatchThread.java:90)

Could you be from a locale that treats commas as the decimal separator? Or, some file is using Windows line breaks [CRLF] and Java is expecting Unix ones [LF], or vis versa. Maybe try fixing line endings?

Could you be from a locale that treats commas as the decimal separator? Or, some file is using Windows line breaks [CRLF] and Java is expecting Unix ones [LF], or vis versa. Maybe try fixing line endings?[/quote]

I only use ./start.sh command, I’m didn’t add anything to it. I even download pure version of the FM and tried to launch it. It didn’t work

Please remember to place any error/log dumps in spoilers.

Sorry for this. I fix it

My suggestion would be trying the Oracle Java 8 as I know this combination works on Ubuntu with FetishMaster.

OK, I’ve installed Oracle Java 8. And now FM is worked. Thanks.
But still, why the game isn’t working on OpenJDK?

OK, I’ve installed Oracle Java 8. And now FM is worked. Thanks.
But still, why the game isn’t working on OpenJDK?[/quote]

My first guess would be because Open JDK 9 is still being actively developed and isn’t due to be released (GA) until July 2017. It hasn’t completed the “All tests run” phase yet.

See: http://openjdk.java.net/projects/jdk9/

OpenJDK8 may well work (should work unless FM or it’s libraries - which seem to be the cause of the exceptions you are seeing in 9 - rely on the commercial features in the Oracle version, which is unlikely), but I haven’t tried that combination myself.

OK, I’ve installed Oracle Java 8. And now FM is worked. Thanks.
But still, why the game isn’t working on OpenJDK?[/quote]

My first guess would be because Open JDK 9 is still being actively developed and isn’t due to be released (GA) until July 2017. It hasn’t completed the “All tests run” phase yet.

See: http://openjdk.java.net/projects/jdk9/

OpenJDK8 may well work (should work unless FM or it’s libraries - which seem to be the cause of the exceptions you are seeing in 9 - rely on the commercial features in the Oracle version, which is unlikely), but I haven’t tried that combination myself.[/quote]

I remember that I played FM before using OpenJDK. So I think you are right.
But does that means that FM would only work on 8 version of the Java?

OK, I’ve installed Oracle Java 8. And now FM is worked. Thanks.
But still, why the game isn’t working on OpenJDK?[/quote]

My first guess would be because Open JDK 9 is still being actively developed and isn’t due to be released (GA) until July 2017. It hasn’t completed the “All tests run” phase yet.

See: http://openjdk.java.net/projects/jdk9/

OpenJDK8 may well work (should work unless FM or it’s libraries - which seem to be the cause of the exceptions you are seeing in 9 - rely on the commercial features in the Oracle version, which is unlikely), but I haven’t tried that combination myself.[/quote]

I remember that I played FM before using OpenJDK. So I think you are right.
But does that means that FM would only work on 8 version of the Java?[/quote]

Java versions are (with a few exceptions) backwards compatible, so it should work on 9 when 9 is finished. I regularly run code compiled for Java 1.4 on Java 8 without any problems. FM is actually old enough to have been originally built for 7 (although 7 is no longer being updated publicly for security patches), so it may still work on that too. As the developer when you compile the source to bytecode you can choose which version to target. If you don’t need to use the latest language features then it’s usually best to opt for the oldest version that’s still supported.

FM minimal requiments for java is Java 6. It’s tested by me on open JDK 6, 7, 8. FM not contain java version specific code.
But FM depends on MVEL2 to process scripts in resources, and I already experience some bugs with it at time of java 8 release. It’s completly possible that java 9 will cause problems too, even at it’s release time. :frowning:

[quote=“h.coder, post:11, topic:1120”]FM minimal requiments for java is Java 6. It’s tested by me on open JDK 6, 7, 8. FM not contain java version specific code.
But FM depends on MVEL2 to process scripts in resources, and I already experience some bugs with it at time of java 8 release. It’s completly possible that java 9 will cause problems too, even at it’s release time. :([/quote]

Sad to hear that.

Just being curious: are you still working on the FM?