Page 1 of 1

Running Spring through Wine fails

Posted: 18 Apr 2006, 12:22
by 01d55
It's mentioned on this wiki page: http://taspring.clan-sy.com/wiki/Linux
that TASpring works through wine. It didn't work for me:

Code: Select all

$ wine TASClient.exe
fixme:richedit:RichEditANSIWndProc EM_EXLIMITTEXT: stub
fixme:richedit:RichEditANSIWndProc EM_EXLIMITTEXT: stub
fixme:richedit:RichEditANSIWndProc WM_STYLECHANGING: stub
fixme:richedit:RichEditANSIWndProc WM_STYLECHANGED: stub
fixme:richedit:RichEditANSIWndProc EM_EXLIMITTEXT: stub
err:x11drv:X11DRV_CreateWindow invalid window height -39
fixme:richedit:RichEditANSIWndProc EM_EXLIMITTEXT: stub
fixme:richedit:RichEditANSIWndProc EM_EXLIMITTEXT: stub
fixme:ddraw:Main_DirectDraw_SetCooperativeLevel (0x7ff1ccf0)->((nil),00000008)
fixme:win:WIN_CreateWindowEx Parent is HWND_MESSAGE
X Error of failed request:  BadLength (poly request too large or internal Xlib length error)
  Major opcode of failed request:  145 (GLX)
  Minor opcode of failed request:  29 ()
  Serial number of failed request:  442
  Current serial number in output stream:  442
fixme:ddraw:Main_DirectDraw_SetCooperativeLevel (0x7ff1ccf0)->((nil),00000008)
fixme:win:WIN_CreateWindowEx Parent is HWND_MESSAGE
X Error of failed request:  BadLength (poly request too large or internal Xlib length error)
  Major opcode of failed request:  145 (GLX)
  Minor opcode of failed request:  29 ()
  Serial number of failed request:  442
  Current serial number in output stream:  442
fixme:winmm:MMDRV_Exit Closing while ll-driver open
fixme:winmm:MMDRV_Exit Closing while ll-driver open
To be specific, TASClient worked right up until I tried to start a game - I was able to register a username/pw, host a lobby (used a private game to test it out) and generally do everything except play. This is wine's output the console when I have wine call spring.exe directly:

Code: Select all

$ wine spring.exe
fixme:ddraw:Main_DirectDraw_SetCooperativeLevel (0x7ff1cc30)->((nil),00000008)
fixme:win:WIN_CreateWindowEx Parent is HWND_MESSAGE
X Error of failed request:  BadLength (poly request too large or internal Xlib length error)
  Major opcode of failed request:  145 (GLX)
  Minor opcode of failed request:  29 ()
  Serial number of failed request:  442
  Current serial number in output stream:  442
Hardware: AMD Athalon, Nvidia GeForce 7800 GTX

Software: Fedora Core 4 (32bit), yum updated with the livna repository added. Using livna's latest NVIDIA driver rpm. Wine 0.9.11 from yum. Installed through wine (I don't have a windows partition)

Posted: 20 Apr 2006, 05:56
by LOrDo
Perhaps but this is due to my Linux ignorence, but isnt wine a windows emulation program? And do you realize that ever since version 0.70 that spring has been compatible with Linux?
Not 100% your fault though, sombody needs to update the Wiki more often...

Posted: 20 Apr 2006, 13:34
by Torrasque
But afaik, you can play vs windows player with wine.
With the linux build you will quickly have desync.

Posted: 22 Apr 2006, 10:25
by 01d55
LOrDo wrote:Perhaps but this is due to my Linux ignorence, but isnt wine a windows emulation program? And do you realize that ever since version 0.70 that spring has been compatible with Linux?
Not 100% your fault though, sombody needs to update the Wiki more often...
I tried installing the linux version, but I wasn't able to install all the dependencies on a fedora 4 system - the howto expects you to use debians package system, which is different. There's also the desync issue - linux users can play vs other linux users, but not vs windows users.

Posted: 22 Apr 2006, 11:42
by Tobi
Once you figure out which packages are needed on FC, add it to the SetupGuide on the wiki

Re: Running Spring through Wine fails

Posted: 22 Apr 2006, 20:54
by PauloMorfeo
Since the lobby client works but the «game» doesn't and the error massage complains about the X driver, i would guess you don't have 3D acceleration enabled!?

You probably need to instal the most recent comercial drivers of ATI or NVidia with 3D acceleration.

What does this command returns?

Code: Select all

glxinfo | grep render

Posted: 23 Apr 2006, 16:47
by clericvash
LOrDo wrote:Perhaps but this is due to my Linux ignorence, but isnt wine a windows emulation program? And do you realize that ever since version 0.70 that spring has been compatible with Linux?
Not 100% your fault though, sombody needs to update the Wiki more often...
Wine is not an emulator.

It just provides windows API for transition of windows software to linux.

Someone needs to update the wiki as i said weeks ago!!

Posted: 27 Apr 2006, 10:40
by 01d55

Code: Select all

$ glxinfo | grep render
direct rendering: Yes
OpenGL renderer string: GeForce 7800 GTX/PCI/SSE2/3DNOW!
    GL_NVX_conditional_render, GL_SGIS_generate_mipmap, GL_SGIS_texture_lod,
I've got the nvidia drivers from the livna repository - for some reason they aren't packaging the very latest nvidia drivers over there, but it does mean that I don't hose my X server every time they change the kernel. I play World of Warcraft through Cedega (a wine fork - it can't even run Spring's installer, though, so I used wine).

Speaking of which, I just recently got a new version of wine through yum. I'll see if that will work.

edit 1:

It does work, although in the first game I gave the bot a dud AI (never built anything) and in the middle of the second game my computer locked up - as in no responce to keyboard commands - even ctrl-alt-F1, which has never failed me before!

Wine 0.9.12

edit 2:

It seems that in any game where I use the AI that works, the computer eventually freezes such that a hard reboot is neccessary. At first I suspected that the game's use of the F(n) keys was what prevented ctrl+alt+F1 from working, but even the power button didn't work - only pressing the reset button got me out. Unfortunately, the fact that TAS runs in fullscreen prevents me from seeing any terminal output which may accompany this.

Posted: 27 Apr 2006, 14:50
by HAARP
clericvash wrote:
LOrDo wrote:Perhaps but this is due to my Linux ignorence, but isnt wine a windows emulation program? And do you realize that ever since version 0.70 that spring has been compatible with Linux?
Not 100% your fault though, sombody needs to update the Wiki more often...
Wine is not an emulator.

It just provides windows API for transition of windows software to linux.
That's right

WINE - Wine Is Not an Emulator :wink:


Getting Linux to freeze is really something you have do accomplish. Spring not accessing hardware correctly?
However, you can play-test it without any players/AIs by starting a game and moving the "you have won" box in the corner (at least that works with the windoze version)

Posted: 27 Apr 2006, 20:53
by PauloMorfeo
01d55 wrote:... computer locked up - as in no responce to keyboard commands - even ctrl-alt-F1, which has never failed me before! ...
:shock: jeebus...

Well, i am sorry i can't help you further. I am not a great Linux geek, just a minor one on a path of redemption from Windows.

Posted: 27 Apr 2006, 22:25
by Tobi
As the powerbutton didn't work I suppose alt+sysreq+o (=poweroff) doesn't work either (assuming your kernel is configured to accept it normally)?

Press alt+sysreq+h in a VT to see which commands are possible.

It's quite a cool key combo imho for the cases where your display driver crashes, you accidentally boot without monitor, or other common cases :P

Posted: 28 Apr 2006, 03:29
by 01d55
On my keyboard, the "SysRq" key is also the "Print Scrn" key, and I haven't been able to get it to do anything other than take a screenshot of my desktop.

Oh, and it takes a while to freeze. I can usually get to the point where I've got a moho mine partially built that it freezes. I'll see if playing against a null AI and building the moho mine causes the freeze.

EDIT: Nope, moho mines aren't the cause. It's something the AI does, I'm fairly sure.

EDIT2: I can obs and play with other players. It's definately something in the AI.

Posted: 28 Apr 2006, 20:53
by AF
Which AI though?

Posted: 29 Apr 2006, 04:32
by 01d55
IIRC, it's the JCAI, in XTA Pimped edition v 66.

So far It's always been an ARM bot, I'll try with CORE now.

Edit: I did not remember correctly, JCAI is a dud, at least in XTA.

Edit2: It appears that neither JCAI nor NTAI will build structures with a core commander.

Edit3: Huh. Now I can't get either AI to do anything. Well, at least they aren't freezing me, now!

Posted: 29 Apr 2006, 18:14
by AF
OK firstly, JCAI and NTai wotn run out of the box, they need config files which should come with ti anyway.

Secondly, the JCAI at the svn isnt 100% stable (and JCAI dev ended ages ago so ti aitn that good an aopponent atm), NTAI on the svn is more stable and, however it isnt 100% stable either.

You're best getting a more modern AI such as AAI 0.63 or OTAI 1.13, or waiting for the NTai XE8 release, or if your ok wiht waiting absurd amounts of time for an absurdly pwoerfull AI, you can get KAI 1.0 + Epic AI

Posted: 14 May 2006, 02:39
by 01d55
Okay, multiplayer problems now.

First problem: Occasionally a game will start, but I don't get the message all I see is everyone else's ready light turning off, one by one.

Second problem: While the game is loading (calculating unit paths, creating sky, ect.) the game will quit back to the lobby.

Also, the terminal occasionally spits out this message:

err:ntdll:RtlpWaitForCriticalSection section 0x7e8175a8 #000f wait timed out in thread 002a, blocked by 0000, retrying (60 sec)