Getting stuck in the white room, or other places? Look no further!

Right, so after noticing that some idiot actually deleted my release in the gmod wiki, I am going to put it up here instead.

This fix is for you linux users out there, that have the problem where you will become stuck at elevators, the white room and alot of other places!

http://lker.dk/scripts.rar

upload to garrysmod/scripts/surfaceproperties, and yes, you want to replace!

Now go have fun again! :smiley:

Thank you soooo much! :smiley:

Sticky please?

This page needs to be Sticky-ed immediately!

I also run a home Fedora server for the hell of it, P4 and surprisingly it runs better in wine(except for the glitches which this thread help me fix most of the problems) then it actually does on windows :open_mouth:

Wait, so this fixes Gmod Servers on Wine?

Do you know exactly what fixes it or are you just copy pasting files from places expecting it to work and it did?

There seems to be a few unneeded files in this like the vmod file.

Actually slayer, I just slammed together some stuff, tried it out hoping it worked, and it did. Remove what ever you want to, I just wanted to release it like it was so that I was sure I released a working fix.

No.

Any why is that not?

Just because someone finds something useful it doesn’t need to be stickied. If that was the case we’d have a full page of them.

I’m sure there are a few people who would like to run a gmod server on linux, most will likely not find this page, i only found out by looking a and old thread. There is a section on the gmod wiki on how to run a linux server, so there is a demand to be able to run gmod servers on linux.

I’ve added a link in the dedicated server setup guide in the wiki, hoping that people will notice this thread then.

Cross-posting from an other thread. This fix isn’t working for me, for some reason. Did you have to do anything special to get it working?



total 116
-rwxr-xr-x 1 mitchel mitchel  1416 2006-12-02 22:23 surfaceproperties_carmod.txt
-rwxr-xr-x 1 mitchel mitchel  3224 2009-07-02 13:21 surfaceproperties_ep2.txt
-rwxr-xr-x 1 mitchel mitchel   179 2009-07-02 13:21 surfaceproperties_gmod.txt
-rwxr-xr-x 1 mitchel mitchel  2368 2006-11-28 23:25 surfaceproperties_gmow.txt
-rwxr-xr-x 1 mitchel mitchel  2800 2008-04-13 20:02 surfaceproperties_hl2.txt
-rwxr-xr-x 1 mitchel mitchel   595 2008-04-13 20:02 surfaceproperties_manifest.txt
-rwxr-xr-x 1 mitchel mitchel 28759 2005-11-18 18:04 surfaceproperties_real.txt
-rwxr-xr-x 1 mitchel mitchel   664 2009-07-02 13:21 surfaceproperties_tf.txt
-rwxr-xr-x 1 mitchel mitchel 28759 2005-11-18 18:04 surfaceproperties.txt
-rwxr-xr-x 1 mitchel mitchel 23929 2005-08-13 05:06 surfaceproperties_vmod.txt


This is what I have in my …/srcds/orangebox/garrysmod/scripts/surfaceproperties directory and players are still getting struck on the grass in freespace06_v2-1.

OS: Ubuntu Server Edition 9.04 (with no X running, only Xvfb)
Wine Version: 1.1.27~winehq0~ubuntu~9.04-0ubuntu1

Ok so I seem to have fixed the problem on the server. The .rar file contains the file surfaceproperties_gmow.txt. I needed to copy surfaceproperties_gmow.txt to surfaceproperties_gmod.txt, replacing the original surfaceproperties_gmod.txt. Once that was done, I could walk on textures with the greatest of ease.

Before:



total 116
-rwxr-xr-x 1 mitchel mitchel  1416 2006-12-02 22:23 surfaceproperties_carmod.txt
-rwxr-xr-x 1 mitchel mitchel  3224 2009-07-02 13:21 surfaceproperties_ep2.txt
-rwxr-xr-x 1 mitchel mitchel   179 2009-07-02 13:21 surfaceproperties_gmod.txt
-rwxr-xr-x 1 mitchel mitchel  2368 2006-11-28 23:25 surfaceproperties_gmow.txt
-rwxr-xr-x 1 mitchel mitchel  2800 2008-04-13 20:02 surfaceproperties_hl2.txt
-rwxr-xr-x 1 mitchel mitchel   595 2008-04-13 20:02 surfaceproperties_manifest.txt
-rwxr-xr-x 1 mitchel mitchel 28759 2005-11-18 18:04 surfaceproperties_real.txt
-rwxr-xr-x 1 mitchel mitchel   664 2009-07-02 13:21 surfaceproperties_tf.txt
-rwxr-xr-x 1 mitchel mitchel 28759 2005-11-18 18:04 surfaceproperties.txt
-rwxr-xr-x 1 mitchel mitchel 23929 2005-08-13 05:06 surfaceproperties_vmod.txt


After:



total 120
-rw-r--r-- 1 mitchel mitchel  1416 2006-12-02 22:23 surfaceproperties_carmod.txt
-rw-r--r-- 1 mitchel mitchel   937 2009-08-16 15:58 surfaceproperties_cs.txt
-rw-r--r-- 1 mitchel mitchel  3224 2009-08-16 15:48 surfaceproperties_ep2.txt
**-rw-r--r-- 1 mitchel mitchel  2368 2009-08-16 16:08 surfaceproperties_gmod.txt**
**-rw-r--r-- 1 mitchel mitchel  2368 2006-11-28 23:25 surfaceproperties_gmow.txt**
-rw-r--r-- 1 mitchel mitchel  2800 2008-04-13 20:02 surfaceproperties_hl2.txt
-rw-r--r-- 1 mitchel mitchel   595 2008-04-13 20:02 surfaceproperties_manifest.txt
-rw-r--r-- 1 mitchel mitchel 28759 2005-11-18 18:04 surfaceproperties_real.txt
-rw-r--r-- 1 mitchel mitchel   664 2009-08-16 15:48 surfaceproperties_tf.txt
-rw-r--r-- 1 mitchel mitchel 28759 2005-11-18 18:04 surfaceproperties.txt
-rw-r--r-- 1 mitchel mitchel 23929 2005-08-13 05:06 surfaceproperties_vmod.txt


Really?

Well, if anybody more has that problem, I guess I’ll reupload with that fix.
It worked for everybody else, so far, I hope. :stuck_out_tongue:

But thanks for posting the fix.

Used the download in the OP, running Wine 1.0.1 on CentOS. Didn’t work at first, but then I installed CSS content and now it works fine. Sticky problem fixed! Thanks Capsup.

Tested and also confirmed to work. My questionable ways are no longer required fortunately.

Glad to help fellow Linux users!

And since this is linux and wine related I’ll take the liberty to paste this:



python1320@arsenic:~/wine-1.1.30/dlls/kernel32$ cat console.c

==== SNIP ====

/***********************************************************************
 *            AllocConsole (KERNEL32.@)
 *
 * creates an xterm with a pty to our program
 * (Stubbed for gmod)
 */

BOOL WINAPI AllocConsole(void)
{
        return TRUE;
}

==== SNIP ====

/***********************************************************************
 *            GetNumberOfConsoleInputEvents   (KERNEL32.@)
 *            (Stubbed for gmod)
 */
BOOL WINAPI GetNumberOfConsoleInputEvents( HANDLE handle, LPDWORD nrofevents )
{
        if (nrofevents) *nrofevents = 0;
        return TRUE;
}


==== SNIP ====



Replace the original functions and your gmod can now magically run without X and prints out what happens on the terminal.
Drawback is that your wine is now “destroyed” meaning that you can’t input anything to the srcds console You can still close it by hitting ctrl+c a couple of times. It throws some errors and closes.
…or run any console stuff correctly due to the above.

To prevent affecting anything else install a local wine to the users directory with parameters something like

“./configure --prefix=~/CHANGEME (replace CHANGEME and add ~/CHANGEME/bin to path as first entry before the real wine for the user) --disable-tests --disable-win16 --without-alsa --without-audioio --without-capi --without-cms --without-coreaudio --without-cups --without-curses --without-esd --without-gphoto --without-glu --without-gnutls --without-gsm --without-hal --without-jack --without-ldap --without-mpg123 --without-openal --without-opengl --without-oss --without-sane --without-xcomposite --without-xinerama --without-xrandr --without-xxf86vm -q”

Now you have wine for gmod which doesn’t require X … and you don’t have to ask the owner to update wine anymore :slight_smile:
Oh, and now if the server crashes and throws a dialog, wine will just shutdown allowing you to make a nice restart script.

If you didn’t understand a thing please don’t try. And there are some errors about not being able to create a window if you try to run it this way, just ignore them.

PS: I am posting this so that some code guru could figure out how to make the “terminal only” console accept input too. I just couldn’t do it with my skills so I stubbed the functions and hoped that it worked and it did.

Does anyone have this still working with the current garrysmod version? I’ve been trying to get this to work for a little while now and still get stuck in the white room.

Thanks!

Try renaming the file named surfaceproperties_gmow to surfaceproperties_gmod and replace the existing surfaceproperties_gmod