Menu

#3319 FreeCol crashes

Unspecified
closed
nobody
crash (1)
5
2023-04-23
2023-01-15
krueger
No

First thank you all for making this nice game. I play it since years! I played version 0.13 until yesterday and then updated to 1.0, nice looking!

Since some ten days maybe and only after some time of playing the game crashes. I run the game from the downloaded zipfile extracted to ~/opt/Freecol1 starting it with
java -Xmx2G -jar FreeCol.jar
on an always updated EndeavourOS. This is my Java installation :
> java --version Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=gasp openjdk 19.0.1 2022-10-18 OpenJDK Runtime Environment (build 19.0.1+10) OpenJDK 64-Bit Server VM (build 19.0.1+10, mixed mode)
Freecol was run with openjdk 19 but today I found time to check it on openjdk 11. Same problem with 0.13 and 1.0, no matter which Java version (tested 11 and 19) I use.

Not familiar with Java I can't figure out if it's a Java, an OS- or a FreeCol related problem. I will attach one error report from version 1.0, can't find one from 0.13. That report is from a new started 1.0 game played an hour or so. If anybody has the time to have a look on that? I am happy if I can provide more info, just let me know, please.

1 Attachments

Discussion

  • Stian Grenborgen

    Can you attach the normal log file (after a crash)? It should be placed somewhere like this:

    $HOME/.cache/freecol/FreeCol.log
    

    The log file you provided is from a JVM crash. I hope the normal log file contains more details.

     
  • krueger

    krueger - 2023-01-15

    Yes, my pleasure. Here it is. (Filepath changed to use ~ for the home folder)
    I am UTC+8, sorry for the late reply.

     

    Last edit: krueger 2023-01-15
  • krueger

    krueger - 2023-01-15

    Ups, where is the attachment?

     

    Last edit: krueger 2023-01-15
  • krueger

    krueger - 2023-01-15

    I try again

     
  • krueger

    krueger - 2023-01-15

    Sorry, I don't see the choosen attachment is uploaded, I think not. Using "Add attachment" and choose a file doesn't upload it.

     
  • krueger

    krueger - 2023-01-15

    Maybe with Konqueror? No.
    Here at pastebin https://pastebin.com/z0P2tugL

     

    Last edit: krueger 2023-01-15
  • Stian Grenborgen

    There's nothing wrong in that log. Did the game crash after just 6 minutes of play?

     
    • krueger

      krueger - 2023-01-18

      I might have restarted the game after the crash. It's always writing a new one, right?

       
      • Calebrw

        Calebrw - 2023-01-18

        Yes, the log file is regenerated each load of the game.

         
  • krueger

    krueger - 2023-01-18

    Yesterday I played some hours before FreeCol crashed. This time the whole system crashed, I had to hard restart the laptop. Here is that log. It's too big to load it up to pastebin, so here at one of my email accounts as download: https://c.gmx.net/@325568037442819861/KJ8LPBe2TLW-OYrPE9cVwg

    I didn't see any interesting in it and in other logs I couldn't find any related content (journald). I remember usually I saw a message from Java in the console where I start FreeCol.jar saying it crashed. But this time as the whole system crashed I didn't see that message. If you give me some hints how to get better logs with FreeCol and where to find them, I would try it again.

     
  • krueger

    krueger - 2023-01-18

    Here again a crash, but this time only Java and I got the message again:

     cd ~/opt/Freecol1/freecol && ./start.freecol
    Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=gasp
    [INFO] init()
    [INFO] param "url" has string value "file:/home/marwell/opt/Freecol1/freecol/data/default/resources/video/freecol-opening.video.ogg"
    [INFO] param "seekable" has enum value "0" (auto)
    [INFO] param "live" has enum value "0" (auto)
    [INFO] param "duration" has double value "-1.0"
    [INFO] param "audio" has boolean value "true"
    [INFO] param "video" has boolean value "true"
    [INFO] param "kateIndex" has int value "0"
    [INFO] param "kateLanguage" has string value ""
    [INFO] param "kateCategory" has string value ""
    [INFO] param "statusHeight" has int value "12"
    [INFO] param "autoPlay" has boolean value "true"
    [INFO] param "showStatus" has enum value "2" (hide)
    [INFO] param "hideTimeout" has int value "3"
    [INFO] param "showSpeaker" has boolean value "true"
    [INFO] param "showSubtitles" has boolean value "true"
    [INFO] param "keepAspect" has boolean value "true"
    [INFO] param "ignoreAspect" has boolean value "false"
    [INFO] param "bufferSize" has int value "200"
    [INFO] param "bufferLow" has int value "10"
    [INFO] param "bufferHigh" has int value "70"
    [INFO] param "debug" has int value "0"
    [INFO] param "userId" has string value "null"
    [INFO] param "password" has string value "null"
    #
    # A fatal error has been detected by the Java Runtime Environment:
    #
    #  SIGSEGV (0xb) at pc=0x00007f905ecd147a, pid=42760, tid=42804
    #
    # JRE version: OpenJDK Runtime Environment (11.0.17+1) (build 11.0.17+1)
    # Java VM: OpenJDK 64-Bit Server VM (11.0.17+1, mixed mode, tiered, compressed oops, g1 gc, linux-amd64)
    # Problematic frame:
    # V  [libjvm.so+0x6d147a]
    #
    # Core dump will be written. Default location: Core dumps may be processed with "/usr/lib/systemd/systemd-coredump %P %u %g %s %t %c %h" (or dumping to ~/opt/Freecol1/freecol/core.42760)
    #
    # An error report file with more information is saved as:
    # ~/opt/Freecol1/freecol/hs_err_pid42760.log
    #
    # If you would like to submit a bug report, please visit:
    #   https://bugreport.java.com/bugreport/crash.jsp
    #
    fish: Job 1, './start.freecol' terminated by signal SIGABRT (Abbruch)
    
     
  • krueger

    krueger - 2023-01-18

    The above mentioned crash log ~/opt/Freecol1/freecol/hs_err_pid42760.log:
    https://pastebin.com/sT8n6UGz
    Can I only attach one file for one bug? I am not able to attach them anymore. I can choose them, but pushing post they are gone.

     
  • krueger

    krueger - 2023-01-18

    Starting the game it crashed two times when pushing "weiterspielen" (continue game) and shows it wrote a log in .cache/freecol
    The log at pastebin: https://pastebin.com/JYe2GXjU

     

    Last edit: krueger 2023-01-18
  • krueger

    krueger - 2023-01-18

    I tried to start a new game, same crash and crash log.
    I used this script to use Java 11, which is installed, too:

    #!/bin/sh
    
    export PATH="/usr/lib/jvm/java-19-openjdk/bin/:$PATH"
    exec java -Xmx2G -jar FreeCol.jar "$@"
    

    Now I use

    java -Xmx2G -jar FreeCol.jar
    

    which starts the regular version in my system, Java 19. Played two hours without problem. However, Java 19 has crashed before, too.

     

    Last edit: krueger 2023-01-19
  • Stian Grenborgen

    This error in the log:

    java.lang.ClassFormatError: Unknown constant tag 86 in class file java/util/UUID
    at java.base/java.lang.ClassLoader.findBootstrapClass(Native Method)
    at java.base/java.lang.ClassLoader.findBootstrapClassOrNull(ClassLoader.java:1258)
    at java.base/java.lang.System$2.findBootstrapClassOrNull(System.java:2134)
    ...

    ...is caused by you changing the java executable being used without updating JAVA_HOME. The other errors might also be caused by incompatible native libraries.

    It seems like EndeavourOS is Arch-based, so this might work for listing available java versions:

    archlinux-java status
    

    ...and this for setting a version (as displayed by the previous call):

    sudo archlinux-java set java-11-openjdk
    
     
    • krueger

      krueger - 2023-01-20

      Now it's

      archlinux-java status
      Available Java environments:
        java-11-openjdk
        java-18-temurin
        java-19-openjdk
        java-8-openjdk/jre (default)
      

      Before I had Java 19 set. I am a little confused, how and when that changed. Anyway, I was usually starting with the script above mentioned.

       
  • Lone_Wolf

    Lone_Wolf - 2023-01-19

    archlinux-java has a weakness : it sets default java for ALL java applications to the same value.
    This makes it hard to run something with a different java version.

    To work around that,this [wrapper]https://github.com/archlinux/svntogit-community/blob/packages/freecol/trunk/freecol.sh) is used.

    #!/bin/bash
    
    export PATH="/usr/lib/jvm/java-11-openjdk/bin/:$PATH"
    _FC_PATH=/usr/share/java/freecol
    exec java -Xms4096M -Xmx4096M -jar $_FC_PATH/FreeCol.jar --freecol-data $_FC_PATH/data "$@"
    

    Note that it tells freecol explicitly where to look for its files.
    Does Endeavour OS use a different wrapper ?

     
    • krueger

      krueger - 2023-01-20

      Thank you for your help. By the way, which java version is suggested to use with Freecol?

      I used the downloaded Freecol zipfile (unzipped to ~/opt/Freecol1/freecol/) and start the script like I said from there. freecol.jar and /data is in that folder, too.

      But I have a systemwide installation (done with pacman), too. To be honest, I don't understand how Java works, every configuration I have to look up. Maybe I had done something wrong in some other softwares context. I will again set Java 19 as default and than check your script, which should switch to Java 11 than.

       
    • krueger

      krueger - 2023-01-20

      In EndeavourOS freecol can get installed through yay, which calls pacman and downloads it from the official arch community repository. It should be the same wrapper. But the last weeks I used the downloaded binaries, so maybe the mistake is there, as this is not integrated in EndaevourOS/Arch?

      Without explaining the historical reasons to use the binaries I think, to reduce confusion it should be better to set which Freecol I use and from where to start it. I just checked, I can start just with "freecol" on the console and it starts version 1.0.0 (Revision: fe35ef3) with Java 11. I would use this "official arch version" from now on, if you don't have another suggestion.

      I gonna play it and see, if that crashes. A short Log starting and ending Freecol this way here

      Thanks again, @stiangre & @lone_wolfsf

       
  • Stian Grenborgen

    • status: open --> closed
    • Group: Current --> Unspecified
     
  • Stian Grenborgen

    Closing since the issue has been resolved.

     

Log in to post a comment.

MongoDB Logo MongoDB