Could not launch the game

  • Could not launch the game

    Hello,

    I try to launch CnC using my Linux Fedora, no problem running the launcher. The game seems to install correctly. When I try to launch the game nothing happens. Here is my terminal output:

    Brainfuck Source Code

    1. [08:19:27] Nat@ClusterUx:/linRaid/sw/cattleAndCrops$ ./CnC-Launcher
    2. [Launchpad.Launcher.Program | INFO]: ----------------
    3. [Launchpad.Launcher.Program | INFO]: Launchpad v0.4.5.32680 starting...
    4. [Launchpad.Launcher.Program | INFO]: Current platform: Linux (x64)
    5. [Launchpad.Launcher.Program | INFO]: Initializing UI...
    6. [Launchpad.Launcher.Handlers.Protocols.Manifest.HTTPProtocolHandler | INFO]: Pinging remote patching server to determine if we can connect to it.
    7. [Launchpad.Launcher.Interface.MainWindow | INFO]: The game is outdated.
    8. Local version: 1.0.15
    9. [Launchpad.Launcher.Handlers.GameHandler | INFO]: Starting update of game files using protocol "HTTPProtocolHandler"
    10. Executable path: /linRaid/sw/cattleAndCrops/Game/Linux/CattleAndCrops
    11. # INFO : Started Cattle And Crops, built Sep 27 2017, 16:55:46, C4 Version 4.5
    12. # INFO : Changing $logLevel from INFO (3) to WARN (2)
    13. # WARN in C4::EngineResult C4::ResourceMgr::Construct() : Creating config directory Engine/Engine/ failed!
    14. # WARN in C4::EngineResult C4::ResourceMgr::Construct() : Creating profiles directory Profiles/Profiles/ failed!
    Display All


    Try to run directly the executable give me:

    Source Code

    1. [08:14:11] Nat@ClusterUx:/linRaid/sw/cattleAndCrops/Game/Linux$ WRAPPER_DEBUG=1 ./CattleAndCrops
    2. System libstdc++ version: 6.1.0 ours: 5.1.0
    3. System libgcc version: 4.8.0 ours: 4.8.0
    4. System SDL2 version: 2.0.5 ours: 2.0.5
    5. Will use System's libcurl.so.4
    6. no need to modify LD_LIBRARY_PATH
    7. # INFO : Started Cattle And Crops, built Sep 27 2017, 16:55:46, C4 Version 4.5
    8. # INFO : Changing $logLevel from INFO (3) to WARN (2)
    9. # WARN in C4::EngineResult C4::ResourceMgr::Construct() : Creating config directory Engine/Engine/ failed!
    10. # WARN in C4::EngineResult C4::ResourceMgr::Construct() : Creating profiles directory Profiles/Profiles/ failed!
    11. [08:23:57] Nat@ClusterUx:/linRaid/sw/cattleAndCrops/Game/Linux$ WRAPPER_DEBUG=1 ./CattleAndCrops.real
    12. # INFO : Started Cattle And Crops, built Sep 27 2017, 16:55:46, C4 Version 4.5
    13. # INFO : Changing $logLevel from INFO (3) to WARN (2)
    14. # WARN in C4::EngineResult C4::ResourceMgr::Construct() : Creating config directory Engine/Engine/ failed!
    15. # WARN in C4::EngineResult C4::ResourceMgr::Construct() : Creating profiles directory Profiles/Profiles/ failed!
    Display All
    Thanks in advance for your help :)

    Nathanaël.
  • I think the only way this error can happen is if creating /home/USERNAME/.cattle-and-crops/ fails.
    Not sure why that should happen (no write permissions in your own home dir?! filesystem full?)

    Can you make sure that the $HOME environment variable is available?
    i.e. in a terminal, do echo $HOME - does it output a valid directory that you can create folders in?
  • @Nathanael: Please download the following source file (or copy it into testcreatedir.c): gist.github.com/DanielGibson/f…4dd2aab2364ded4726c71f8c3
    Then compile it with gcc -o testcreatedir testcreatedir.c and execute it with ./testcreatedir and post the output here.

    It will try to create the same directories CattleAndCrops creates, but prints more detailed errors messages.

    Thanks!


    BTW, It'd also be interesting to know what Linux distribution you're using and if you're using SELinux or grsecurity or something like that which might interfere.

    The post was edited 1 time, last by caedes ().

  • @caedes here is the output after compiling your code (I remove .cattle-and-crops folder before run):

    Source Code

    1. [16:06:08] Nat@ClusterUx:~/tt$ ./testcreatedir
    2. Got $HOME: '/home/Nat'
    3. Created directory '/home/Nat/.cattle-and-crops'
    4. Created directory '/home/Nat/.cattle-and-crops/Engine/'
    5. Created directory '/home/Nat/.cattle-and-crops/Profiles/'
    6. Created directory '/home/Nat/.cattle-and-crops/Mods/'
    @'kaistian' your command give me plenty of information... and some are not really good for me: I discover that the C4 engine create a log in Game/Linux/Assets folder and reading this log inform me that my graphic hardware is insufficient. This is specific to Fedora as I can not install the proprietary driver, xOrg is to new.

    Thanks for the help, I will come back with a new graphic card or new system.
    Files
    • C4Log.html.txt

      (32.11 kB, downloaded 69 times, last: )
    • run.strace.txt

      (598.11 kB, downloaded 59 times, last: )

    The post was edited 1 time, last by Nathanael ().

  • Ook, now I know what the problem was: we accidentally converted the path in the userdir ($HOME/.cattle-and-crops) to lowercase, which of course breaks if you have an uppercase character in your username.. so /home/Nat/ became /home/nat/..
    (the logging system is handled specially, so we can start logging right when the game starts, before the rest of the paths etc are set up. because of that the .cattle-and-crops/ directory is created and the Debug.log is in it)

    This will be fixed in the next update, thanks for reporting!

    Regarding the GPU driver: I'm not sure if AMDs proprietary Linux drivers would work better than the Open Source ones. I think we briefly tested the free AMD drivers and it kinda worked (but had some graphical glitches), so I'm surprised that you get this "Graphics hardware insufficient" error. We'll have to investigate..
    Eventually we want to support the open source AMD and Intel drivers on Linux, but we haven't gotten around to debug the graphical glitches yet. Currently on Linux nvidia cards with their proprietary driver work best.

    The post was edited 1 time, last by caedes ().

  • I've looked into your graphics error a bit (i.e. read the code and see when the "Graphics hardware insufficient" happens).
    I guess that the problem is missing S3TC support (GL_EXT_texture_compression_s3tc) - the free drivers don't support/expose this by default because of patents (tomorrow the S3TC patent finally expires according to en.wikipedia.org/wiki/S3_Texture_Compression so this will hopefully change once Linux distributions update their drivers).

    Anyway, as a workaround for this S2TC was created for Mesa that somehow decompresses S3TC textures without infringing the patent.

    On Ubuntu you get it by installing the libtxc-dxtn-s2tc0 package (afterwards GL_EXT_texture_compression_s3tc should be available) - not sure how the package is called on Fedora (and if it even exists). Otherwise the project's homepage is github.com/divVerent/s2tc


    Hopefully this information helps you to figure it out :)
  • Thanks for all theses news. I receve my new graphic card today (NVIDIA 1050ti) and after installing the proprietary driver give a new try to CnC.
    Try to launch with my actual account and a specific account without cap letter give the same issue:

    Source Code

    1. [12:46:32] Nat@ClusterUx:/linRaid/sw/cattleAndCrops/Game/Linux$ ./CattleAndCrops
    2. # INFO : Started Cattle And Crops, built Sep 27 2017, 16:55:46, C4 Version 4.5
    3. # INFO : Changing $logLevel from INFO (3) to WARN (2)
    4. # WARN in C4::EngineResult C4::ResourceMgr::Construct() : Creating config directory Engine/Engine/ failed!
    5. # WARN in C4::EngineResult C4::ResourceMgr::Construct() : Creating profiles directory Profiles/Profiles/ failed!
    6. # WARN in void C4::Render::TextureObject::Construct(unsigned_int32) : creating 2d array texture
    7. # WARN in void C4::Render::TextureObject::Construct(unsigned_int32) : creating 2d array texture
    8. ############################################
    9. CattleAndCrops has crashed with: SIGSEGV !
    10. In Thread: 140488064482496 ("CattleAndCrops.")
    11. Backtrace:
    12. CattleAndCrops[0xb93b0a]
    13. CattleAndCrops[0xb93d82]
    14. /lib64/libpthread.so.0(+0x123b0)[0x7fc5eab153b0]
    15. CattleAndCrops(_ZN2C46CursorC2EPKc+0x107)[0x96e037]
    16. CattleAndCrops(_ZN2C412InterfaceMgr9ConstructEv+0x1a0)[0x96eaf0]
    17. CattleAndCrops(_ZN2C46Engine17ConstructManagersEPKc+0x1f4)[0xba3e84]
    18. CattleAndCrops(_ZN2C46Engine10InitializeEPKcS2_+0xcd)[0xba410d]
    19. CattleAndCrops(main+0xfb)[0xb93eab]
    20. /lib64/libc.so.6(__libc_start_main+0xea)[0x7fc5ea75250a]
    21. CattleAndCrops[0x7f4bb9]
    22. Please report this at http://forum.cattleandcrops.com/ and include the information above.
    23. Thanks in advance and sorry about the crash!
    24. ############################################
    25. Segmentation fault (core dumped)
    Display All
    With test account the lines 4 & 5 are missing.
  • yes, the problem with the path creation is not fixed yet, will be in the next update

    however the error about unsupported hardware is gone thanks to nvidias proprietary driver.

    not sure what causes your crash though - maybe it's related to the path problem, but that seems kinda unlikely..

    do other games work? (to make sure the GPU driver is properly installed)

    furthermore: can you try telling the Launcher to "repair" the game (makes sure all files are there and have the correct checksum, redownloads if not).

    oh, and what filesystem are you using (on /linRaid/sw/)? just realized this might be related to another problem that will be fixed in the next update..
    (the engine uses opendir()/readdir() to check what files are in a directory, and it used dirent->d_type to check if an entry is a file or directory or whatever, but this is not supported by some file systems like XFS.. in those cases d_type is DT_UNKNOWN and one has to call stat() instead.. anyway, this can lead to the .pak files not being found, which leads to crashes)

    The post was edited 1 time, last by caedes ().