Author Topic: Linux - Ubuntu 14.04 - Radeon + Mesa 10.3 - Game doesn't run shows black screen  (Read 7537 times)

coleopterus

  • Posts: 3
  • Maggot Crusher.
    • View Profile
Hi,

First thing first: I love the game, good job, it is quite playable and fun with multiple players.

I have found a problem though, I run ubuntu 14.04 and although the game runs fine on mesa 10.1, it doesn't when you upgrade to mesa 10.2/10.3 it only displays a blank screen.

This is the configuration when it displays a blank screen:

Ubuntu 14.04

xorg edgers ppa:

apt-add-repository ppa:xorg-edgers/ppa

Radeon Driver:

X.Org X Server 1.15.1
ABI class: X.Org Server Extension, version 8.0
Loading /usr/lib/xorg/modules/drivers/ati_drv.so
Module ati: vendor="X.Org Foundation"
compiled for 1.15.1, module version = 7.3.99

Mesa:

OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD TURKS
OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.3.0-devel
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:

Mesa keeps improving all the time and 10.3 brings fixes and performance improvements on many games for users of the intel/radeon opensource drivers, plenty of users update it all the time, and eventually it will land in Ubuntu 14.10, so this problem will happen to more people as time goes by.

Myran

  • Developer
  • Posts: 183
    • View Profile
Interesting, can you upload your game.log after running in mesa 10.3 to see if it gets any OpenGL errors?

coleopterus

  • Posts: 3
  • Maggot Crusher.
    • View Profile
Hi, this is my game.log file

Code: [Select]
Game 1.22
WorkingDirectory set to: /opt/Games/SteamLibrary/SteamApps/common/Hammerwatch
Failed loading config.xml
Initializing game
ARPGGame()
Window icon set
OGL: 1.4 (3.0 Mesa 10.3.0-devel)
Starting game
Initialize achievments, Steam and master server
Steam error [1]: System.DllNotFoundException: SteamworksNative
  at (wrapper managed-to-native) NativeMethods:Services_RegisterManagedCallbacks (ManagedCallback,ManagedResultCallback)
  at ManagedSteam.Steam..ctor (System.Globalization.CultureInfo activeCulture) [0x00000] in <filename unknown>:0
  at ManagedSteam.Steam.Initialize (System.Globalization.CultureInfo activeCulture) [0x00000] in <filename unknown>:0
  at ManagedSteam.Steam.Initialize () [0x00000] in <filename unknown>:0
  at TiltedEngine.SteamInterface.Initialize (System.Action`1 joinRequest) [0x00000] in <filename unknown>:0
Failed to initialize Steam, using Null implementation
Loading config settings
Loading controllers
Initialize sound
Sound device: Built-in Audio Analogue Stereo
Initialize renderers
GLState: InvalidOperation
Initialize physics
Start game
Loading resources
Resource error: doodads/generic/trap_stalactite.xml: All doodad transitions must have existing from and to states
Resource error: doodads/generic/trap_stalactite_e.xml: All doodad transitions must have existing from and to states
Resource error: sound/music_desert.xml: Could not find file: /opt/Games/SteamLibrary/SteamApps/common/Hammerwatch/assets/sound/music/desert_cavern.ogg
Resource error: sound/music_desert.xml: Failed to load ogg sound/music/desert_cavern.ogg
GLState: NoError
Loading Language
Initializing game
Resource error: : Could not find file: /opt/Games/SteamLibrary/SteamApps/common/Hammerwatch/assets/levels/menu_4.xml.bin
Set initial OpenGL states
GLState: NoError
GLState: NoError

However I have discovered something funny, if I run the game outside steam it runs perfectly, when it runs the game.log file contents are identical.

If I open a terminal and launch it:

Code: [Select]
user@brutus:/opt/Games/SteamLibrary/SteamApps/common/Hammerwatch$ ./Hammerwatch.bin.x86_64

It runs perfectly.

I'm confused now...
« Last Edit: May 26, 2014, 11:26:43 PM by coleopterus »

Myran

  • Developer
  • Posts: 183
    • View Profile
Oh, so then I'd guess it's problem with Hammerwatch in combination with the code from Steam that injects the overlay. That's a shame since it's a lot harder to debug :) thank you for reporting it though, I'll look in to it. As a workaround you can try turning off the Steam overlay in Hammerwatch.

coleopterus

  • Posts: 3
  • Maggot Crusher.
    • View Profile
Hi Again,

Thanks for your suggestions, I really appreciate when developers  not only make a good product but also provide support :-)

I tried to run it disabling the overlay but it doesn't make a difference, black screen and the game exits after 2-3 seconds.

I tried to launch it from the console via strace, I get all the steam output but sadly not for the forked process with the game even when I use the -f in strace.

Are you aware of Steam having a debug switch/log? (I'm new to steam)

Myran

  • Developer
  • Posts: 183
    • View Profile
The overlay not being the problem is weird, there isn't really that much different between the Steam and non-Steam modes of the game other than that. Especially that should be affected by Mesa :\

You can start Steam with the -console argument to get a debug log, but I don't think it will really help, it's generally just a log for what the Steam client itself does.
You should be able to launch the game with Steam hooked in if you copy the steam_appid.txt file from the editor folder in to the main game folder though, that lets you start the game yourself, but with the Steam features. Another thing you could try is to run it in 32-bit mode if you have it.