hydrophobia: prophecy - crash with wine-staging, w/wt cmst

Questions about Wine on Linux
Locked
macchinetta

hydrophobia: prophecy - crash with wine-staging, w/wt cmst

Post by macchinetta »

Hello.

I've decided to use wine-staging with cmst patch in order to have 60fps in game, but strangely seem do not work with hydrophobia prophecy (steam version): game work well with normal wine version (i've try 1.9.17), but drop fps between 30 and also 15 fps and make game unplayable. :(

With wine-staging with cmst patch enabled, game run as 60fps stable (more with v-sync disable), but crash after bit of seconds of game, i think max 1 minute or bit more, and no log anything at moment of crash, but game create .mdmp file in game folder.

(i've try 1.9.17 and gaming-nine 1.9.22, same result). :?:

I try disable cmst patch, but same result.

There is any option or function that staging have and standard wine haven't that can cause crash?

Thank you for support and thank to wine team for make most game playable on linux.

ps: my graphics card is nvidia geforce gtx 760, with 370.28 proprietary drivers.
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by Bob Wya »

macchinetta wrote: I try disable cmst patch, but same result.

There is any option or function that staging have and standard wine haven't that can cause crash?
You'd have to staging regression test the whole of the Wine-Staging patchset. There's quite a few patches: Wine-Staging Git Master !!
You could of course make assumptions - like the d3d* patches are most likely to be the cause - due to the type of application you are trying to run.

Also Wine-Staging is currently at (Release Candidate) version 2.0-rc2. So I'd advise testing a more recent package of Wine (unless you are explcitly looking for Wine regressions).

Getting a trace log might help - see WineHQ: Debug Channels ...
But bugs like this can be timing dependent - so the act of observing them (and the slowdown from the tracing operation) alters the conditions that cause the bug/crash.

What Linux distribution are you using?
You can use the build scripts on Arch and Gentoo - to easily re-build your system Wine with different patches...
With other distributions compiling Wine from source can be quite tricky!

Btw the Gallium Direct3D patchset - will do nothing for your gaming - under the Nvidia proprietary driver...
It isn't called called gallium for nothing!


Bob
macchinetta

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by macchinetta »

Hello. I use Chakra linux, it's Arch derivate, i do not know if script that you said is compatible with Arch-derivate distro.

I do not test with 2.0-rc2 simply because isn't in Chakra repo, and Arch package isn't compatible with Chakra due to glib version dependences.

Also I compile through CCR (AUR) but i never try to create a PKGBUILD for wine.

Do you know if is possible apply just cmst patch to standard wine version? (without d3d* patches that you said)?
Getting a trace log might help
As i had said, i had try with WINEDEBUG=+all,trace-all but no log anything at moment of crash, error can be log as "trace" class?
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by Bob Wya »

macchinetta wrote:Hello. I use Chakra linux, it's Arch derivate, i do not know if script that you said is compatible with Arch-derivate distro.

I do not test with 2.0-rc2 simply because isn't in Chakra repo, and Arch package isn't compatible with Chakra due to glib version dependences.

Also I compile through CCR (AUR) but i never try to create a PKGBUILD for wine.

Do you know if is possible apply just cmst patch to standard wine version? (without d3d* patches that you said)?
...
@macchinetta,

Chakra still uses the Arch package build scripts - under the hood... The Arch AUR build script for wine-staging-git is the one you would want to use.
Why use the wine-staging-git package build script? Because the main Arch wine-staging (Release) Packages use prepatched wine+wine-staging source tar-balls.

You'd need to change the line:

Code: Select all

./"$pkgname"/patches/patchinstall.sh DESTDIR="${srcdir}/wine-git" --all
to:

Code: Select all

./"$pkgname"/patches/patchinstall.sh DESTDIR="${srcdir}/wine-git" ...
Gradually adding patchset names to ... build - till you got your crash issue again.
See: Wine-Staging : patches/patchinstall.sh for the names of the patchset bundles that Wine-Staging uses.

You would probably also want to change:

Code: Select all

git reset --hard HEAD      # Restore tracked files
to a specific Wine-Staging version tag, e.g.:

Code: Select all

git reset --hard v2.0-rc2      # Restore tracked files
Release tags for Wine-Staging have a v prefix.

You'd use the classic Arch build command (as a standard user):

Code: Select all

makepkg -s
Does all the magic sauce for you! If you know what you're doing... :shock:

The real problem is that Chakra may not package all the development dependencies for the wine-staging package.
Hence my rant below!! That's what lead me to give up on Chakra - after a short period of testing...

O.T. ...
Yeah I've tried Chakra - for a little bit... But sorry I've really gotta to hate on all derivative distros - they suck balls... Packages typically get broken (Linux-Mint) or, like with Chakra, you get a tiny subset of the Upstream package set.
IMHO Chakra offers nothing that Arch doesn't already give you - or a wrapper distro like Antergos if you want things a bit simpler. :roll:
Bob
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by Bob Wya »

macchinetta wrote: ...
As i had said, i had try with WINEDEBUG=+all,trace-all but no log anything at moment of crash, error can be log as "trace" class?
That WINEDEBUG value will only print standard warning and fixme messages. So you may not see what component / library originated the crash.

Try with:

Code: Select all

export WINEDEBUG=+relay,+seh,+tid wine your_program.exe >> /tmp/output.txt 2>&1
Bear in mind that console output will be (typically) be huge. You'd want to paste it to a pastebin-type site...
Many paste sites will reject wine trace logs... They can, after all, be Gbytes in size!! 8)

Bob
macchinetta

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by macchinetta »

Hello. I try your solution insert just cmst patch, so:

Code: Select all

./"$pkgname"/patches/patchinstall.sh DESTDIR="${srcdir}/wine-git" wined3d-CSMT_Main
But Hydrophobia still crash with and without cmst patch enabled with "dll-redirect" registry settings.

With 1.9.24 official version in chakra repo hydrophobia do not crash, but fps seems lock to 30.

-----------
Bear in mind that console output will be (typically) be huge
I've try, but /tmp/output.txt file is so huge that no text editor can open it (tried geany, kate, nano), just with "cat" print some line, but crash at a certain point.
Because i can't copy it anywhere.

I try to zip it and attach to this thread, no error shown but it do not appear. :?:
macchinetta

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by macchinetta »

Hello.

I try to build with any patch active (comment row with patchinstall.sh, mentioned in previous post). Same results... game freeze after bit second start.

Can problem be in base staging package?

It's possible apply csmt patch on base wine-git package without staging?

Thank-you.
macchinetta

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by macchinetta »

Sorry for consecutive post. I do not see edit button in my previus post.

I've retry with log. Unique method to read it is tail with last row. I copy in pastebin last 2000 rows.

http://pastebin.com/Jkupv1zG

I hope is enough for find problem.
But bugs like this can be timing dependent - so the act of observing them (and the slowdown from the tracing operation) alters the conditions that cause the bug/crash.
Bug seem still in "slowdown" mode, just more crash compared to freeze (print 'killed' on terminal), in "normal" mode i need terminate process with ctrl+c (if it's in terminal).
macchinetta

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by macchinetta »

Update: i try to compile wine-git package build script (without any staging patch), and problem is still present.

I try to get old wine-staging version from arch archive web site, and problem is still present.

I do not understand why with wine installed from chakra repo problem seem not present. :cry: :cry:
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by Bob Wya »

OK... So just to be clear - you can't just start randomly enabling single sets of patches from Wine-Staging. For example see the Wine-Staging Wiki: DLL Redirects page...
The Wine-Staging patchsets are inter-dependent. So you'd have to manually go through them - to figure out these dependencies. E.g. some, like Pipelight, can be disabled without ill-effect.

Anyway I suggest just getting your self-built wine package working - i.e. in a state where you have duplicated the functionality of the Chakra binary wine package.

So make some minor changes to the prepare phase of the Arch AUR wine-staging-git PKGBUILD script:

Code: Select all

...
prepare() {
        WINE_STAGING_VERSION="1.9.23"

        cd "$srcdir"/wine-git
        
        msg2 "Cleaning the wine source code tree..."
        
        # Restore the wine tree to its git origin state, without wine-staging patches
        #+(necessary for reapllying wine-staging patches in succedent builds,
        #+otherwise the patches will fail to be reapplied)
        
        git reset --hard HEAD      # Restore tracked files
        git clean -d -x -f         # Delete untracked files
        
        pushd ../"${pkgname}"
        git reset --hard HEAD
        git checkout "v${WINE_STAGING_VERSION}"
        popd

        # Change back to the wine upstream commit that this version of wine-staging is based in
        git checkout $(../"$pkgname"/patches/patchinstall.sh --upstream-commit)
}
Those alterations to the script will mean that you are only building vanilla wine with the wine-staging branding (patchset).
There isn't a Wine-Staging 1.9.24 release version - so I simply chose the closest available version...

Also if you can post the build log - the makepkg console output - that would be great. I'll take a look and see if Chakra is missing anything to build wine/ wine-staging from Source..

Bob
macchinetta

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by macchinetta »

Thank you for interest to my problem.

I compile with your minor changes.

Crash still remain, or bit second, or few second, or max one minute from start game.

(naturally fps is limited without csmt patch)

I upload output of mkpkg here:

https://gist.github.com/anonymous/c9659 ... decd1d1d25

Sorry for i've use Italian localization for my distro, and mkpkg output speak Italian few times.

"/media/part-b/Pacchetti/wine-staging-git" is directory when i work (my tmp is mounted to ram, and isn't enough big to compile wine).
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by Bob Wya »

macchinetta wrote:Thank you for interest to my problem.

I compile with your minor changes.

Crash still remain, or bit second, or few second, or max one minute from start game.

(naturally fps is limited without csmt patch)

I upload output of mkpkg here:

https://gist.github.com/anonymous/c9659 ... decd1d1d25

Sorry for i've use Italian localization for my distro, and mkpkg output speak Italian few times.

"/media/part-b/Pacchetti/wine-staging-git" is directory when i work (my tmp is mounted to ram, and isn't enough big to compile wine).
Hiya macchinetta,

I've checked the build log against my pure Arch build log. There is virtually no difference that I can detect. All the missing 32-bit development libraries are not crucial (but are the same for pure Arch and your Chakra build anyway).

There's nothing obvious in your console log output either...

The Staging patchset (from Wine Staging) really does bugger all... Refer to Wine-Staging: Staging Patchset ... So something funky is going on.

I wouldn't install any archived Arch binary packages (e.g. old wine or wine-staging versions - the linkage will be wrong) - but compiling from source should work. I can't see anything obviously wrong with package you've built.

Feel free to file a bug on the WineHQ Bugzilla... You might want to attach a longer console log...
Because the 2000 line snapshot, you uploaded, might not have caught the reason for the crash...
Typically it's a API call that fails. Then the return value is used later on - can be a "lot later" in a verbose console log - leading to the actual point at which the crash is registered - and a stack trace is generated. You need to capture the whole event...

You could use something like:

Code: Select all

tail -n 10000000 'console_log.txt' | xz -z -T 0 - > console_log.txt.xz
before attaching the console log to the WineHQ Bug Report. Just keep adding zero's - on the tail command - till something breaks!!

You'd need a console log with timestamps as well (for an issue like yours):

Code: Select all

export WINEDEUG=+tid,+timestamp,+all
It's up to you whether you file the bug against the stock Chakra wine-staging package and then mention your other tests or some other way around!

Sorry I can't be more helpful... But I'm just scratching my head, in puzzlement, at this point... :?

Bob
macchinetta

Re: hydrophobia: prophecy - crash with wine-staging, w/wt cm

Post by macchinetta »

Locked