Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Release Platforms

A topic by clericbob created Jun 17, 2020 Views: 808 Replies: 14
Viewing posts 1 to 7
(+2)

Hello all,

I was wondering why some developers choose not to release their games on every platform that their engine supports.  I see a lot of Unity games on here that are exported exclusively for Windows, or occasionally for Windows and macOS, but often developers seem to forget to export to Linux.  I run Linux usually, and while Wine and Mono can run Unity games compiled for Windows, they are often buggier and slower than games that are compiled as native Linux binaries.  The same can be said for most cross-platform game engines.  Additionally, Wine installs are large and pervasive, and nearly impossible to remove fully - some Linux users choose to avoid Wine for those reasons.

I understand that exporting games takes time, but wouldn't it be relatively simple to run the export overnight when you aren't using your computer in order to support more players?  Is there some other reason that I'm not thinking of that devs would prefer to support fewer platforms?

Would love to hear some thoughts from the community.

(1 edit) (+3)

Hiya there!

I think in a lot of cases it comes down to being unable to test the builds for other platforms and to know for sure if they'll run without issue or not. Since unexpected issues might crop up when compiled for those platforms opposed the main one they develop for. I know that's a fear I always have when I push out builds for projects of mine, that technically run on Windows/Mac/Linux, but I have no idea how well--and would hate to potentially mislead someone if it didn't work as intended.

This is a fantastic answer. I have had developers before respond to my bug report of their Linux game with "Sorry but I never even launched the game and don't have Linux installed to test with". As a paying customer that infuriates me.

Moderator(+2)

I agree with FrostWorks, its all a matter of having the time to ensure the build is of quality for the users.

Imagine selling a game for £10, and you exported a build for a platform but couldn’t test it, so you just uploaded it as-is. Now imagine that the engine has a feature that is not supported by that platform, so when you compile for that platform, it tries to do a workaround, that doesn’t look as you’d expect, and now your game looks glitchy.

Now you have to deal with customers that spend £10, and are not satisfied by the quality you delivered.

That’s at least one of the reasons. I don’t have numbers, but I’ve heard some platforms are not worth (financially) developing for. I like to think that most indies don’t think like that, but I can understand those who do.

(+1)

I agree with FrostWorks and Dark Dimension. I only published a Linux version of my bowling game because one person asked for it, but I didn't have a linux machine and had no idea if it ran or ran well (in fact, I only tested it for the first time yesterday after installing linux on a 2009 MacBook Pro). 

Which brings up the other issue, if only one or a  handful of linux users are going to download the game, then is it really worth the time to not only build, but get it to build (maybe there are scripting differences/limitations for linux, maybe some third party libraries or content aren't compatible), maybe you have to adjust for performance or controls (I had to separately tweak controls on Windows and Mac), and if you end up having to do builds and uploads and updates and support just for that small audience, it may not be the best use of a dev's time, and for indie devs, time is the scarcest resource.

I'm actually a bit confused about where to state the release platform on itch.io. I created a profile only today, & I can't see where you add that it's a game for Android. Is this automatic? I can add genre, tags, but I can't state that it's Android only. When I look at other games it has logos for Windows, Mac, Android etc, does that get added when you upload a file? 

(+2)

“does that get added when you upload a file?”

Yes. You’ll get checkboxes for each file you upload to say which platform(S) they’re intended for.

Ah okay great thanks, I haven't uploaded anything yet - so I'll have to upload a demo!

(+1)

After you upload a file to your game page, you'll see an entry like this when you edit the page. I changed the display name to something other than the file name, and since I used butler to upload and specified "android" as the channel name (which is why the green android text label shows up at the right) it automatically selected the Android checkbox. If I had manually uploaded the build, then I'd have to check the Android checkbox (but only the first time).

Here's the butler doc, but it might be a good idea to try a manual upload first to get a feel for the options before figuring out how to use butler.

https://itch.io/docs/butler/pushing.html

(+1)

Ahhhh, sure, thanks so much for explaining this! I didn't realise I had to upload a demo first. 

I guess because I'm hoping people will support my project on Patreon (before I even have a demo), I wanted to make sure up front what platforms the game will support. 

(+2)

I agree with everybody - I wouldn't have realized that my game was glitched out on Mac if my brother, who has a Mac, tried it out.

Of course, you can install a virtual machine to test your game out on other platforms, but if you have a Mac like my brother, you would have to pay the hundred dollars or so to buy a copy of Windows.

Another problem I have with building to multiple platforms is that, at least for Unity, building to multiple platforms is so painful, having to switch the platform, wait 3-5 minutes, build, wait 3-5 minutes, and then repeat three or more times.

Fortunately, I made a tool that automatically builds for me, with minimal technical settings like SuperUnityBuild. You can download it here. :)

(+1)

That looks cool! I had some Unity editor scripts for switching targets and initiating builds https://github.com/technicat/fugueditor but yours sounds more seamless (and I haven't used mine since last year so I don't know if they still work). Another option is Unity Cloud Build which was convenient for not tying up my underpowered Mac in long builds, but sometimes the builds queued for for days and if something went wrong I could never tell if it was a problem in the cloud build, Unity Collaborate, or something else...

(+2)

Yeah. I tried out Cloud Build once, but it was just weird and complicated. Also, I built my computer to specifically be for gaming and game dev, so my computer can handle building a couple applications at once.

(+1)

I don't want to upload a project for a platform I haven't tested, especially if it is a paid download.

If I had a machine to test on to verify that everything worked correctly things would be different. Is there any way I can get a virtual mac and linux machine on my windows machine?

(+2)

You can install a Linux system on VirtualBox. I’m not aware of a method for Mac.