MacOS Catalina - Releasing on Steam

Discuss how to use the Ren'Py engine to create visual novels and story-based games. New releases are announced in this section.
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
Post Reply
Message
Author
User avatar
Zetsubou
Miko-Class Veteran
Posts: 522
Joined: Wed Mar 05, 2014 1:00 am
Completed: See my signature
Github: koroshiya
itch: zetsuboushita
Contact:

MacOS Catalina - Releasing on Steam

#1 Post by Zetsubou »

Let me preface this question by saying that I know very little about MacOS.
Maybe I'm doing something wrong, maybe this is just how it works in OSX. Bear with me.

I've just gone through the process of notarizing one of my games (following the Patreon article) and uploading it to Steam.
I've uploaded the signed & stapled DMG file as-is. Steam distributes this file correctly, and I can get it to open on a client computer.

The problem is, DMG files don't seem to mesh with the way Steam works.
Trying to run the DMG file directly didn't seem to work at all, so I wrote a .sh file which runs "open MyGame.dmg".
That works. Hitting Play in Steam executes the .sh file, and the DMG is opened.
But that's it. The game doesn't launch. The player needs to extract the contents of the DMG, or run it out of the DMG.

Is this how it's supposed to work?
I uploaded the DMG as-is because I figured that was the whole point of the notarization process: build and upload a trusted file, which Apple has checked, and don't tamper with the end product.
But the end result here is that players need to either run the game from the DMG by manually clicking on it (which doesn't seem to work with Big Picture mode) or extract the DMG file anew every time a game is updated. In either case, the simplicity of clicking on the Play button and running the game is gone.

Is there a better command than "open" which I should be using for this?
Should I be extracting the DMG after all?
Finished games
-My games: Sickness, Wander No More, Max Massacre, Humanity Must Perish, Tomboys Need Love Too, Sable's Grimoire, My Heart Grows Fonder, Man And Elf, A Dragon's Treasure, An Adventurer's Gallantry
-Commissions: No One But You, Written In The Sky, Diamond Rose, To Libertad, Catch Canvas, Love Ribbon, Happy Campers, Wolf Tails

Working on:
Sable's Grimoire 2

https://zetsubou.games

User avatar
PyTom
Ren'Py Creator
Posts: 16093
Joined: Mon Feb 02, 2004 10:58 am
Completed: Moonlight Walks
Projects: Ren'Py
IRC Nick: renpytom
Github: renpytom
itch: renpytom
Location: Kings Park, NY
Contact:

Re: MacOS Catalina - Releasing on Steam

#2 Post by PyTom »

My guess is you probably want to take the app out of the dmg, and uploading that to Steam. (Or just using the app that's the intermediate product.)
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom
Software > Drama • https://www.patreon.com/renpytom

User avatar
Zetsubou
Miko-Class Veteran
Posts: 522
Joined: Wed Mar 05, 2014 1:00 am
Completed: See my signature
Github: koroshiya
itch: zetsuboushita
Contact:

Re: MacOS Catalina - Releasing on Steam

#3 Post by Zetsubou »

Thanks PyTom, I'll upload the .app for now and see if Steam complains.

The .app passes "stapler validate".
If I do a "./notarize.sh MyGame status" it comes back as approved.
However, it fails "spctl -a -vvv -t install", which suggests that GateKeeper won't accept it.
eg. "spctl -a -vvv -t install MyGame.app" gives the error "a sealed resource is missing or invalid".
(The DMG passes all tests)

I guess it'll depend on Steam's validation process.
I'll try to test on Catalina (currently testing on Mojave) at some point and make sure it works.
Finished games
-My games: Sickness, Wander No More, Max Massacre, Humanity Must Perish, Tomboys Need Love Too, Sable's Grimoire, My Heart Grows Fonder, Man And Elf, A Dragon's Treasure, An Adventurer's Gallantry
-Commissions: No One But You, Written In The Sky, Diamond Rose, To Libertad, Catch Canvas, Love Ribbon, Happy Campers, Wolf Tails

Working on:
Sable's Grimoire 2

https://zetsubou.games

User avatar
Obscura
Eileen-Class Veteran
Posts: 1431
Joined: Fri Mar 09, 2012 6:58 pm
Projects: Coming Out On Top
Location: United States
Contact:

Re: MacOS Catalina - Releasing on Steam

#4 Post by Obscura »

So looking through the discussions on this, I wonder if this may(?) have to do with enabling all the entitlements when signing the app? I was looking at this discussion (I think you need to be logged in as a Steam developer to see it):

https://steamcommunity.com/groups/steam ... 990736602/

Someone in the thread also said they solved the issue by selecting “Disable Library Verification” when hardening the runtime (not sure what that means, lol).
Coming Out On Top - An Adult Gay Dating Sim
website

User avatar
Zetsubou
Miko-Class Veteran
Posts: 522
Joined: Wed Mar 05, 2014 1:00 am
Completed: See my signature
Github: koroshiya
itch: zetsuboushita
Contact:

Re: MacOS Catalina - Releasing on Steam

#5 Post by Zetsubou »

Interesting. I'm not sure if I'm having the same problem though.
I put a game through review just yesterday and the Valve reviewer didn't have any problem with the MacOS build. I've also been able to play the build through Steam on MacOS without issue.

That being said, the above commands do fail on the version downloaded from Steam. (But not on the files I have on my local machine which I then uploaded)
The manifest on Steam lists all of the correct files and file sizes. Everything looks good. But once the game is actually downloaded, some of the file sizes differ from what the manifest says, which I suspect is causing the verification to fail.

I'm not sure if there's a problem here or not. No notarization issues were noted during review, and the game runs fine on MacOS Catalina when downloaded through Steam. For now I guess I'll assume it's all good and wait for a problem to pop up.
Finished games
-My games: Sickness, Wander No More, Max Massacre, Humanity Must Perish, Tomboys Need Love Too, Sable's Grimoire, My Heart Grows Fonder, Man And Elf, A Dragon's Treasure, An Adventurer's Gallantry
-Commissions: No One But You, Written In The Sky, Diamond Rose, To Libertad, Catch Canvas, Love Ribbon, Happy Campers, Wolf Tails

Working on:
Sable's Grimoire 2

https://zetsubou.games

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4084
Joined: Mon Jul 21, 2008 5:41 pm
Completed: Too many! See my homepage
Projects: A lot! See www.winterwolves.com
Tumblr: winterwolvesgames
Contact:

Re: MacOS Catalina - Releasing on Steam

#6 Post by jack_norton »

Or simply ignore MacOS completely. 90% of indie devs I know, including myself, are going to do it. Some of them earning six figures a year so would be definitely worthwhile to do a mac port, but they still can't be bothered to do all this mess just to have our grace Mac decide to allow us running the games lol
follow me on Image Image Image
computer games

User avatar
Obscura
Eileen-Class Veteran
Posts: 1431
Joined: Fri Mar 09, 2012 6:58 pm
Projects: Coming Out On Top
Location: United States
Contact:

Re: MacOS Catalina - Releasing on Steam

#7 Post by Obscura »

After going through some of the notarization process yesterday, I totally understand why devs are going that route, Jack. You pay $99 a year to have the privilege of sitting through a convoluted process (IMHO), which you'll need to repeat for not only every Mac version of any game you have, but every update of that Mac version you release, as I understand it. Good grief. :roll: It's a lot of busy work for just one game, I can only imagine what this is like if you've got an entire catalog of games to notarize.
Coming Out On Top - An Adult Gay Dating Sim
website

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4084
Joined: Mon Jul 21, 2008 5:41 pm
Completed: Too many! See my homepage
Projects: A lot! See www.winterwolves.com
Tumblr: winterwolvesgames
Contact:

Re: MacOS Catalina - Releasing on Steam

#8 Post by jack_norton »

Yes it's simply not worth the time! And imagine during a beta of a RPG with 3-4 updates each day... lol insane
follow me on Image Image Image
computer games

User avatar
Zetsubou
Miko-Class Veteran
Posts: 522
Joined: Wed Mar 05, 2014 1:00 am
Completed: See my signature
Github: koroshiya
itch: zetsuboushita
Contact:

Re: MacOS Catalina - Releasing on Steam

#9 Post by Zetsubou »

If I could go back in time 2 weeks, I'd tell myself not to bother. This whole thing has already eaten too much time and money.
But now that I have a developer license, a Catalina VM, and scripts to automate the process, I figure I'll keep at it, if only because I don't want that effort to go to waste.
Finished games
-My games: Sickness, Wander No More, Max Massacre, Humanity Must Perish, Tomboys Need Love Too, Sable's Grimoire, My Heart Grows Fonder, Man And Elf, A Dragon's Treasure, An Adventurer's Gallantry
-Commissions: No One But You, Written In The Sky, Diamond Rose, To Libertad, Catch Canvas, Love Ribbon, Happy Campers, Wolf Tails

Working on:
Sable's Grimoire 2

https://zetsubou.games

Post Reply

Who is online

Users browsing this forum: Bing [Bot]