Well if winecfg isn;t coming up, you don't have wine fully installed on your Mac. Here's a good primer: http://www.davidbaumgold.com/tutorials/wine-mac/
I'm at a stand still because I have such little room left on my 128GB SSD. So until I can get Xcode I am frozen. This is all getting to be too much. I think I'll just hang back until someone else can figure this out. It's been non-stop frustration.
Okay, I slept long enough. The no such command errors come up, because bash can't find the wine executable. This can be either because you haven't installed it or because it is not in your PATH variable, where bash looks for executables. I'm guessing, wine is simply not installed. Note that installing wineskins is not the same as a wine installation. It installs wine into a special directory only for its use. Until we get a working solution, it is probably easier to install wine directly or simply wait. Now on to the render issue. OSX only supports OpenGL 2.1 in compatibility profile. It supports newer versions in core profile, but in core profile some actions aren't allowed anymore. That's why you get the GL_Invalid_enum errors. Wine needs OpenGL to implement direct3d, which most windows applications use to draw to the screen. Newer direct3d versions also need newer OpenGL versions. We used the registry key to switch to the core profile, but core profile support in wine is still experimental, which is the reason it does some things it isn't allowed to. This means we either have to wait for wine developers to fix core profile or ask the SV developer to lower the requirement in XNA from HighDef to Reach. Afair there were some patches on the wine mailinglist in January, so maybe 1.9.4 works better? Also the gdi option can also be set in the registry. You can easuly change it back there, but I don't expect it to matter as it should only change the way 2d drawing is executed, while SV uses 3d drawing.
Why would you need Xcode? You can just install a package from https://wiki.winehq.org/MacOSX or did I miss something. Also 128 GB is plenty! I have Windows and Linux installed on my 128 GB SSD, so I have halve the space on either system! ;-D But I can understand, that you want to take a break. I actually don't think, we can solve the , unless someone writes proper OpenGL drivers for OSX, fixes the core profile in wine or Stardew Valley doesn't require the HighDef profile anymore. If it is really just the few errors from the last page, reporting that as a bug in the wine bugtracker would probably be the fastest solution. But first we have to check, that this is still an issue in wine 1.9.4.
Oh, and about the problems with the GOG version: It should be exactly the same as the steam version. If you get the FarmerSounds not found error, you have to first change to the directory, where the "Stardew Valley.exe" is, somwhere in "drive_c/GOG something" in your wineprefix directory. Then execute the game. You have to do that, because the game looks for its assets in the current directory, so it doesn't find them, if the current directory is not the game directory.
So ?f we werte to post about this on the WineHQ forum, what is the exact phrasing we should use about this? I already posted there once, but I didn't express myself well, so my question kind of got ignored. Is it possible to upgrade to 1.9.4 and then revert if it doesn't go well? What would be the terminal commands for that?
I asked the dev, and he said "Reach doesn't support multiple render targets, which I use for the lighting system. I'd have to redo the lighting," so that's not happening.
You should probably post that to the bugtracker. Describe your platform (Operating system, hardware, wine version). Describe the steps to setup the wine prefix (install dotnet40, xna40, and set maxglversion registry key). Describe the expected behaviour, running the game and describe what happens now with the wine output. Then provide further information, in this case we expect it at first didn't work, because wine on the compatibility profile of opengl, that OSX support, which provides only Opengl 2.1, is not enough for the xna HighDef profile, that the game needs. Setting maxglversion to 3002 fixes this, so the game does launch and atleast sound is okay, but the graphics don't work. Wine outputs a few GL_INVALID_ENUM and GL_INVALID_OPERATION, which probably are related to using a Core Profile and wine using opengl in ways only allowed in Compatibility contexts, most notable glLightModeli and glTexEnvf. That should be about it, but the may ask for further information. About up and downgrading wine, that depends how you installed it, but generally that shouldn't be a problem. If you have installed wine through a package, you would look for a newer version. If you used wineskin, I think you can switch version somewhere in the settings? And that we can't have a Reach profile version is to bad... But maybe we can get a native version instead or fix up wine ^⁻^
Cheers for the effort in this thread, it's nice to see. I'm also hoping for a way to play this on OS X.
My bug-report has officially been labelled as a duplicate of another know bug: https://bugs.winehq.org/show_bug.cgi?id=36789 A guy as far back as 2014 said "If I modify directx.c to put D3DPBLENDCAPS_SRCALPHASAT into DestBlendCaps all the time, instead of just when gl_info->supported[ARB_BLEND_FUNC_EXTENDED], then the game starts and runs fine. But I can't say whether thats a good idea or not." but A) No one ever said whether or not that was a good idea, and I don't know how to do that, so... anyone want to take a stab?
Well, I would try it, if I had a mac device. If anyone wants to try it, I'll provide him with as much support as I can. Basically the bug report talks about changing line 5027 in https://github.com/wine-mirror/wine/blob/master/dlls/wined3d/directx.c from Code: WINED3DPBLENDCAPS_ZERO; if (gl_info->supported[ARB_BLEND_FUNC_EXTENDED]) caps->DestBlendCaps |= WINED3DPBLENDCAPS_SRCALPHASAT; if (gl_info->supported[EXT_BLEND_COLOR]) { to Code: WINED3DPBLENDCAPS_ZERO; caps->DestBlendCaps |= WINED3DPBLENDCAPS_SRCALPHASAT; if (gl_info->supported[EXT_BLEND_COLOR]) { To do that, you'll have to build wine from source: https://wiki.winehq.org/MacOSX/Building#Building_from_Source That however isn't easy. It would be a no-brainer for me, I do such things at work and at home everyday, but for someone, who never touched programming, this can be a daunting task. What it does: It removes wines checking, if certain direct3d functions can be supported on the opengl context. That way wine believes, it can provide everything xna needs for the HiDef profile and xna now believes the hardware supports the HiDef profile. This isn't technically correct, because a certain edge case can't be emulated. If the application (in this case SV) uses that functionality, it can lead to graphics corruption and in the worst case even crashes. But if it doesn't even use that functionality, it won't even notice. It's worth a shot, but I'd suggest to not overwrite the local wine installation. How to do that: https://wiki.winehq.org/FAQ#Can_I_install_more_than_one_Wine_version_on_my_system.3F Easiest way is to simply not install wine and run it from the build directory. Also thanks for making the bug report!
I'm all up for giving it a go. I don't have much experience compiling but I'm not afraid of it either. I've been following the development from the sidelines and trying to get it to work myself so I'm too invested to give up now!
Good luck, to both of you. Remember that you don't have to set maxglversion in the registry, if you compiled it with that line changed.
Thanks. I've managed to build Wine into a separate directory (wine-build) though I cannot find the directx.c in the build directory. Am I missing dependencies? I installed dependencies using Homebrew: Code: brew install --only-dependencies --devel wine Is this not sufficient?
Thank you so much guys for trying to get this game to work with wine!! Last time i wasted days on it with Magicka and swore to never ever try it again
Hi there, I purchased Stardew Valley from GOG today and expect to play it on my Mac using Wineskin Winery. Before I ran the setup exe, I try to install the dotnet40 and xna40. Afterwards, I started the setup installer. At the end of the installation, it told me that I have already installed XNA 4.0 Framework, so I click "Finish" and then some errors about global var pops up. And then I tried to run the game ... Still stuck on this one.
Alright... I edited that in and added the key to registry but all that has given me is a program error: "The program Stardew Valley.exe has encountered and needs to close." This is the terminal dump it gives me: Code: fixme:heap:RtlSetHeapInformation 0x0 1 0x0 0 stub fixme:process:SetProcessDEPPolicy (1): stub fixme:heap:RtlSetHeapInformation 0x0 1 0x0 0 stub fixme:service:scmdatabase_autostart_services Auto-start service L"clr_optimization_v4.0.30319_32" failed to start: 1053 fixme:thread:SetThreadStackGuarantee (0x32fc74): stub fixme:mscoree:CreateConfigStream (L"C:\\windows\\Microsoft.NET\\Framework\\v4.0.30319\\config\\machine.config", 0x32f7e8): stub fixme:mscoree:CreateConfigStream (L"C:\\GOG Games\\Stardew Valley\\Stardew Valley.exe.config", 0x32f7e8): stub fixme:shell:URL_ParseUrl failed to parse L"Microsoft.Xna.Framework.Game" fixme:shell:URL_ParseUrl failed to parse L"Microsoft.Xna.Framework" fixme:shell:URL_ParseUrl failed to parse L"xTile" fixme:shell:URL_ParseUrl failed to parse L"Microsoft.Xna.Framework.Xact" fixme:shell:URL_ParseUrl failed to parse L"System" fixme:shell:URL_ParseUrl failed to parse L"System.Core" fixme:shell:URL_ParseUrl failed to parse L"System.Xml" fixme:shell:URL_ParseUrl failed to parse L"Microsoft.Xna.Framework.Graphics" err:winediag:wined3d_dll_init Setting maximum allowed wined3d GL version to 3.2. fixme:nls:GetUserPreferredUILanguages stub: 0 0x32d074 0x0 0x32d070 fixme:thread:GetThreadPreferredUILanguages 0, 0x32d074, 0x0 0x32d070 fixme:shell:URL_ParseUrl failed to parse L"Microsoft.Xna.Framework.Input.Touch" fixme:shell:URL_ParseUrl failed to parse L"System.Drawing" fixme:shell:URL_ParseUrl failed to parse L"System.Windows.Forms" fixme:shell:URL_ParseUrl failed to parse L"Accessibility" err:d3d:wined3d_adapter_init_gl_caps >>>>>>>>>>>>>>>>> GL_INVALID_ENUM (0x500) from extension detection @ /Users/X/wine-dirs/wine-source/dlls/wined3d/directx.c / 3716 fixme:win:EnumDisplayDevicesW ((null),0,0x32cbe8,0x00000000), stub! fixme:d3d9:D3DPERF_SetOptions (0x2) : stub err:d3d:context_create >>>>>>>>>>>>>>>>> GL_INVALID_ENUM (0x500) from glLightModeli(GL_LIGHT_MODEL_LOCAL_VIEWER, GL_TRUE); @ /Users/X/wine-dirs/wine-source/dlls/wined3d/context.c / 1860 err:d3d:context_create >>>>>>>>>>>>>>>>> GL_INVALID_OPERATION (0x502) from glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE_EXT); @ /Users/X/wine-dirs/wine-source/dlls/wined3d/context.c / 1863 err:d3d:context_create >>>>>>>>>>>>>>>>> GL_INVALID_OPERATION (0x502) from glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL, GL_SEPARATE_SPECULAR_COLOR); @ /Users/X/wine-dirs/wine-source/dlls/wined3d/context.c / 1866 fixme:ntdll:EtwRegisterTraceGuidsW (0xb70dba, 0x0, {8e9f5090-2d75-4d03-8a81-e5afbf85daf1}, 1, 0x32da9c, (null), (null), 0x108734c): stub fixme:ntdll:EtwRegisterTraceGuidsW register trace class {8e9f5090-2d75-4d03-8a81-e5afbf85daf1} fixme:shell:URL_ParseUrl failed to parse L"mscorlib.resources" fixme:shell:URL_ParseUrl failed to parse L"mscorlib.resources" Unhandled Exception: System.IO.DirectoryNotFoundException: Could not find a part of the path 'Z:\Users\X\Content\XACT\FarmerSounds.xgs'. at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share) at Microsoft.Xna.Framework.Audio.AudioEngine..ctor(String settingsFile, TimeSpan lookAheadTime, String rendererId) at StardewValley.Game1.Initialize() in C:\Users\Barone_\Documents\Visual Studio 2010\Projects\Farmer\Farmer\Farmer\Game1.cs:line 441 at Microsoft.Xna.Framework.Game.RunGame(Boolean useBlockingRun) at StardewValley.Program.Main(String[] args) in C:\Users\Barone_\Documents\Visual Studio 2010\Projects\Farmer\Farmer\Farmer\Program.cs:line 31 I am at a loss at this point and hope people smarter than me can figure something out.
Working!!! I patched the directx.c file as instructed These are the verbs installed with winetricks d3dx10 d3dx9 d3dx9_26 d3dx9_28 d3dx9_31 d3dx9_35 d3dx9_36 d3dx9_39 d3dx9_42 d3dx9_43 directx9 dotnet20sp2 dotnet40 steam xna31 xna40 This was the steam version, being run directly from steamapps/common/Stardew\ Valley/ Thanks guys!!!!