-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows incompatibility in mpf game spawn process #25
Comments
The odd thing with this exception is that the GMC window moves on to attract just fine, and then to base mode/etc. as expected. Nothing seems to have stopped working or be otherwise amiss, and I never had to press use the "Pause Running Project" button to unpause (as I have in some previous GMC crashes I've seen) |
Mmm, unfortunately I don't have a good machine to test this on but maybe making some of the flags platform-dependent? If you can get a working command to run, we can branch the behavior based on that! |
Yeah for sure. What's the expected behavior of |
The -o option looks like an older BSD command, maybe mac? Windows To avoid complexity of launching a shell to enable the pipe , consider testing the return text from
Note, it looks like we are gifted a newline before output. Linux |
Looks like OS.get_name() will identify the platform -- https://docs.godotengine.org/en/stable/classes/class_os.html#class-os-method-get-name I played with OS.execute to see what shell Godot actually calls to -- seems like it's CMD. (Looks like we can force powershell or any other command using execute I can put together a patch with the platform detect and nix/windows variants per @founfabug and test it on Windows and maybe a ubuntu as well. Do either of you have a Mac? I'll default mac to the same as Linux for now. |
From my reading the mac ps command does not support the -q option, and the existing -o line won't do the job either. |
When using the Godot editor option "Launch MPF with GMC" on Windows, the Godot instance and MPF game instance both run, but there is an error in the followup process in godot code.
That's from this chunk of code
called from
_spawn_mpf
as the launch healthcheck.I tried running
ps <pid> -o "state="
in my mingw window and in powershell, and the ps command exists, but has issues in either shell (in cmd it doesnt exist at all). In mingw I getps: unknown option -- o
. In powershell it's a longer error starting with:Get-Process : Parameter cannot be processed because the parameter name 'o' is ambiguous. Possible matches include: -OutVariable -OutBuffer.
Is there something we could replace the o option with that would be more cross-platform compatible? I haven't done research yet, maybe tomorrow.
This issue was first spotted in discord in another user's debugging of unrelated gmc game-specific config problems, but then I replicated it in my current minimal gmc-integrated game as well.
The text was updated successfully, but these errors were encountered: