protonscr

Droid Assault bad window position

steamopen reviewed3rd party game
ValveSoftware/steam-for-linux#2215 · opened 2013-03-23 by pvdz · updated 2013-03-25 · 6 comments · github
Ppvdz 2013-03-23 github

I'm running in (nvidia) twinview mode for dual monitors. When I open Droid Assault the game starts, makes both screens black for a second or two, reverts that, and finally opens the game on the right screen, except the game window is offset about 200x50, see attached screenshot.

When the game loses focus (click outside of window, alt-tab, super key, etc), the game will minimize but the mouse will remain hidden. Probably a different issue, but let's first fix this one...

Screenshot from 2013-03-23 15:22:33

Further details follow (to prevent this post for becoming huuuuge)

Ppvdz 2013-03-23 github

This is the droidassault.sh (I did not alter it, yet)

#!/bin/bash
#
# droidassault.sh
#
###############################################################################

SCRIPT="`basename \"$0\"`"
GAMEDIR="${HOME}/.droid_assault"
LOGFILE="${GAMEDIR}/${SCRIPT}.log"
INSTDIR="`dirname \"$0\"`" ; cd "${INSTDIR}" ; INSTDIR="`pwd`"

[[ ! -d "${GAMEDIR}" ]] && mkdir -m 0755 "${GAMEDIR}"

JARPATH="DroidAssault.jar:data-steam.jar:images.jar:fonts.jar:music.jar:fx-mono.jar:fx-stereo.jar:maps.jar:gfx.jar:sound.jar:gamecommerce.jar:common.jar:spgl-lite.jar:lwjgl.jar:lwjgl_util.jar:jorbis.jar:jinput.jar:steampuppy-public.jar:steampuppy.jar"

# 32 bit only
JVM="./bin/java32"
BOOTCLASSPATH="./lib/rt32.jar"

# XMODIFIERS is cleared here to prevent SCIM screwing up keyboard input
XMODIFIERS= "${JVM}" \
    -server \
    -Xbootclasspath/p:${BOOTCLASSPATH} \
    -Djava.library.path="${INSTDIR}" \
    -Dorg.lwjgl.librarypath="${INSTDIR}" \
    -Dorg.lwjgl.util.NoChecks=true \
    -Dnet.puppygames.applet.Launcher.resources=resources-steam.dat \
    -Dnet.puppygames.applet.Game.gameResource=game.steam \
    -XX:MaxGCPauseMillis=3 \
    -XX:+TieredCompilation \
    -XX:Tier2CompileThreshold=70000 \
    -XX:+DoEscapeAnalysis \
    -Xms64m \
    -Xmx256m \
    -Xincgc \
    -cp "${JARPATH}" \
    net.puppygames.applet.Launcher \
    "$@" \
    >"${LOGFILE}" 2>&1

exit 0

#
# EOF
#
###############################################################################
Ppvdz 2013-03-23 github

This is the log file droidassault.sh.log, found in ~/droid_assault/

Note that there exists a ~/.droid_assault_1.91/err.log, which was empty, and a ~/.droid_assault_1.91/out.log which contains the same content as ~/droid_assault/droidassault.sh.log (below)

Game resource: game.steam
Sat Mar 23 15:22:18 CET 2013 Game: Droid Assault 1.91.4 [1.91]
Setting breakpad minidump AppID = 219200
Steam_SetMinidumpSteamID:  Caching Steam ID:  <<<id removed>>> [API loaded no]
Roaming settings dir name=/.droid_assault_1.91
Local settings dir name=/home/peter/.droid_assault_1.91
Local dir prefix=/home/peter/.droid_assault_1.91/
Roaming dir prefix=/.droid_assault_1.91/
Sat Mar 23 15:22:18 CET 2013    Serial <<<serial removed>>>
Sat Mar 23 15:22:18 CET 2013    Steam says file /.droid_assault_1.91/prefs.xml is 469 bytes
Sat Mar 23 15:22:18 CET 2013    Successfully read Steam cloud file /.droid_assault_1.91/prefs.xml
Sat Mar 23 15:22:18 CET 2013    Starting Droid Assault 1.91.4 (language: en)
`menu_proxy_module_load': ./bin/java32: undefined symbol: menu_proxy_module_load

(java32:6958): Gtk-WARNING **: Failed to load type module: (null)

`menu_proxy_module_load': ./bin/java32: undefined symbol: menu_proxy_module_load

(java32:6958): Gtk-WARNING **: Failed to load type module: (null)

Sat Mar 23 15:22:21 CET 2013    Initing sound
Sat Mar 23 15:22:21 CET 2013    Loading: net.java.games.input.LinuxEnvironmentPlugin
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event16): Failed to open device /dev/input/event16 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event15): Failed to open device /dev/input/event15 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event14): Failed to open device /dev/input/event14 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event13): Failed to open device /dev/input/event13 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event12): Failed to open device /dev/input/event12 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event11): Failed to open device /dev/input/event11 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event10): Failed to open device /dev/input/event10 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event9): Failed to open device /dev/input/event9 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event8): Failed to open device /dev/input/event8 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event7): Failed to open device /dev/input/event7 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event6): Failed to open device /dev/input/event6 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event5): Failed to open device /dev/input/event5 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event4): Failed to open device /dev/input/event4 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event3): Failed to open device /dev/input/event3 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event2): Failed to open device /dev/input/event2 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event1): Failed to open device /dev/input/event1 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Failed to open device (/dev/input/event0): Failed to open device /dev/input/event0 (13)
Sat Mar 23 15:22:21 CET 2013    
Sat Mar 23 15:22:21 CET 2013    Linux plugin claims to have found 0 controllers
Sat Mar 23 15:22:21 CET 2013    Wrote /.droid_assault_1.91/prefs.xml to Steam cloud
Sat Mar 23 15:22:22 CET 2013    GL Vendor NVIDIA Corporation, GL Renderer GeForce GTX 580/PCIe/SSE2, GL Version 4.3.0, GL Driver NVIDIA 310.14
Ppvdz 2013-03-23 github

I'm running a fully patched ubuntu 12.04 in 64bit, with gnome. See logfile above for nvidia specs.

I noticed that it explicitly runs in java32, but since the game does launch (as you can see in the screenshot), I would not expect that to be the main problem here.

Ppvdz 2013-03-23 github

Though the problem remains either way, there seem to be two different kind of bugs at work here.

If I launch the game while the steam window is on the RIGHT screen, the game offsets the window wrongly, as the screenshot shows at the top.

When the steam window is on the LEFT screen when launching the game, it does the following:

Screenshot from 2013-03-23 15:38:41

When the window somehow loses focus, it also minimizes, but the mouse stays. It is however bound to the right screen and unable to click anywhere. (The mouse is probably still bound to the game canvas...)

Ppvdz 2013-03-25 github

I've received a reply by mail suggesting to use the following command line switches:

vx="0" vy="0" vw="800" vh="600"

They didn't solve the problem for me, although launching from the right screen behaves the same as the left screen.

Also, I've figured out that the behavior of the last screenshot ("the left screen") is actually the game running at <1fps. Not entirely sure why that happens though... It's a pretty fast machine.

Ppvdz 2013-03-25 github

Ok the slowdown seems to be a quasi-random pick of the draw. I'm running an octo-core (8) cpu and I'm guessing it picks the wrong cpu every now and then.

As for my fix, I had to pull up the canvas by 200px before actually able to select the game options (which are way down in the canvas). After setting it to windowed mode, the game runs fine and I have no more graphical glitches or focus issues. I prefer windowed mode anyways. Will ask for a windowed mode command line switch to speed this issue up :)

Nothing extracted yet.