Cost of porting to Mac OS, iOS, and Android

Started by DD, Mon 11/02/2013 17:18:11

Previous topic - Next topic

DD

Hi everyone!

I am one of the producers in a team raising money to build a 2D point-and-click adventure, and we want the adventure to be available on Mac, iOS, and Android. Although some people in the team believe that we should build the adventure in Unity, I believe that building it in AGS will be considerably faster, cheaper, and conveniently tailored to our needs. Our problem, of course, is that at this point we can only make a PC build of the game with AGS.

How much would it cost to make iOS, Android, and Mac OS ports of AGS in 6 months or less? I am talking about tested, fully functional ports, just like the PC version. I know that Wadjet Eye is willing to port their great games, and that got me very excited. Would anybody be able to make an estimate, so that we can incorporate it into our expected budget for the game? It would be very appreciated.

Thanks to all!

Joseph DiPerla

Well, as you can see on our forums, AGS is already ported to most of those OS's. Look here for daily builds of versions for Android, Windows, iOS and PSP: http://jjs.at/daily/ and this is the source code repository: https://github.com/adventuregamestudio/ags/commits/master

I know that JanetC from Wadjet Eyes is working hard on getting a version working on Mac. However, at the moment, you can make the games however you want in AGS and it will function across Linux, Windows, iOS, Android and PSP. If you would like and try, you can compile the source code to work with Allegro 4.4 on Mac OS, but it will only work with MacOSX 10.6 and up from what I understand. But as far as packaging the game for the individual OS, you will have to perform that yourself. Look for my app on the play store for google, called AGS Stream. It installs freeware games for you. I am working on creating a way to package your games for Android so you can sell them commercially. I want to build it into the Editor itself.

I hope this helped some what.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

BigMc

Quote from: Joseph DiPerla on Mon 11/02/2013 17:43:30
on Mac OS, but it will only work with MacOSX 10.6 and up
MacOSX 10.6 and down ;)

Bernie

An easy way to bundle AGS games for Android as stand-alones would be the best thing ever. Thanks for all the work you're putting into this, Joseph.

DD, a relatively cheap commercial alternative would be GameMaker:Studio. It has built-in pathfinding, easy scripting and supports many platforms, including iOS and Android.

Joseph DiPerla

Bernie, you shouldn't be thanking me. Thank Chris, JJS, Crimson, BigMC and the other members of the team. Without their efforts, AGS would not be what it is today and neither would a port to these OS exist, thus, having my app be completely useless ;)
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

Bernie

Right you are! Thanks to everyone who's been supporting and working on AGS! :smiley:

I've tested the Android build with a bunch of games, it's fast and solid. The only problem for a normal AGS user would be making a stand-alone release.

Joseph DiPerla

I'm almost there.. ;) However, my language is Basic4Android. So, at best, I can release something next week which would allow you to package your games, but you would need Basic4Android which would cost you at the very least $50. I could release it for that and over the next few months work on a way of building the game out of the editor. It would allow many users to go commercial with their games. What do you guys think?
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

DD

Thanks to everyone for the comments! I had been reading in the forum about the issues with Mac OS 10.7 and up. I guess that my question would then be how much it would cost to upgrade the AGS engine to make it compatible with Allegro 5. It seems to be a complicated issue.

Bernie: I had attended a Game Maker workshop a while back, and I see that it has improved considerably from those days. I will definitely consider it! Has anyone used Game Maker Studio on a point-and-click adventure?

PS: Joseph, that sounds great! A great step for AGS, indeed.

Crimson Wizard

#8
Quote from: DD on Mon 11/02/2013 18:32:54I guess that my question would then be how much it would cost to upgrade the AGS engine to make it compatible with Allegro 5. It seems to be a complicated issue.
I am actually going to try do this in nearby future. BTW, the more I read Allegro 5 documentation, the less complicated it seems... Hopefully I am not missing anything.
Can't tell the cost, I work for free now :).
But I really hope other ppl, like JJS and BigMC, and maybe some others, will join too.

Bernie

Joseph: Spending $50 once for a commercial release isn't so bad. :) It's still cheaper than most other commercial options out there.

As for adventure games in GameMaker:Studio: It works really well. You can make a fully functional classic adventure game 'engine' in it. You can use the GM room editor to set up your rooms, place hotspots and obstacles the pathfinding takes into account, and more. All you need is some general programming experience.

Here's what you'd need to do by yourself in GM:S:

-A queue system for blocking functions, very much like in AGS (kind of a requirement in adventures to run sequences)
-Write a saving function to save room and character states (basically remembering object positions and visiblity, using ini_* functions works on all platforms)
-Dialog system (display & maybe dialog options)
-Inventory system (easy when using a ds_list variable)

A two-room demo made in GM:S (win exe, is a bit big due to bgm and lots of unused gfx): http://www.origamihero.com/boney.zip

If you need more info about GM:S, feel free to PM me. I'm afraid this may be a bit too off-topic for this thread.

AGD2

I suppose the question is whether anyone here who's already familiar with AGS would be willing to prioritize working on porting AGS to Allegro 5 (and getting Mac porting functional) - essentially treating the task like a real job or work-for-hire over a specific period of time?

I know several commercial AGS game developers are chomping at the bit for this and would perhaps be willing to pool money into paying someone to prioritize and complete the task. Himalaya will also be launching a Kickstarter shortly for Mage's Initiation and I'm going to factor in a stretch goal to assist with potential porting costs. Assuming it is raised, I'd be happy to contribute that funding towards the cost of paying someone to prioritize getting the AGS engine (and ports) up to speed.

DD

Quote from: AGD2 on Tue 12/02/2013 15:31:48
I suppose the question is whether anyone here who's already familiar with AGS would be willing to prioritize working on porting AGS to Allegro 5 (and getting Mac porting functional) - essentially treating the task like a real job or work-for-hire over a specific period of time?

Yes, that would be the question! The people at Wadjet Eye were also trying to get this done, so making a money pool among all the parties involved would be a good idea. Yet, the question remains: how much would it cost? Hopefully we can all join forces in this.

JanetC

Quote from: AGD2 on Tue 12/02/2013 15:31:48I suppose the question is whether anyone here who's already familiar with AGS would be willing to prioritize working on porting AGS to Allegro 5 (and getting Mac porting functional) - essentially treating the task like a real job or work-for-hire over a specific period of time?

I have asked this specific question before and got little response - everyone is basically too busy with real work to commit like that :(

However they assure me that it will get done eventually.

DD

Quote from: JanetC on Tue 12/02/2013 16:18:20
Quote from: AGD2 on Tue 12/02/2013 15:31:48I suppose the question is whether anyone here who's already familiar with AGS would be willing to prioritize working on porting AGS to Allegro 5 (and getting Mac porting functional) - essentially treating the task like a real job or work-for-hire over a specific period of time?

I have asked this specific question before and got little response - everyone is basically too busy with real work to commit like that :(

However they assure me that it will get done eventually.

I believe that our hope lies on freelancers who are ready to take on this job, and would be willing to give us a quote and a timeframe. I am assuming that making it a paid job would turn this task into real work.  :)

I know that Dave Gilbert has already started a thread about this in the Employment section, so I guess we can wait for more people to contact him. In my case, I hope I can have a clearer idea of the feasibility of this port by March, or I will probably go with Unity like the programmers suggest. The C# syntax + already-working adventure engine + designer-friendly IDE made AGS a possible alternative, and I still hope to be able to use it.

Bernie: Thanks for your GM:S tips! I will get in touch with you shortly.

JanetC

Quote from: DD on Tue 12/02/2013 17:54:17I know that Dave Gilbert has already started a thread about this in the Employment section, so I guess we can wait for more people to contact him.

We haven't got any positive responses on that.

Quote from: DD on Tue 12/02/2013 17:54:17In my case, I hope I can have a clearer idea of the feasibility of this port by March, or I will probably go with Unity like the programmers suggest. The C# syntax + already-working adventure engine + designer-friendly IDE made AGS a possible alternative, and I still hope to be able to use it.

Unity is a very fine engine, especially if you want to use 3D graphics, which AGS doesn't do.

DazJ

As I've said a million times, having the ability to package our games up as an APK would be a true God send. Imagine the possibilities for indie developers?

selmiak

I should start a kickstarter for that and run away with teh monies :D

besides that, did I mention I <3 you all. Please do this!

Crimson Wizard

#17
Quote from: DazJ on Sat 16/02/2013 14:51:15
As I've said a million times, having the ability to package our games up as an APK would be a true God send. Imagine the possibilities for indie developers?
APK is for Android right? I never worked with Android personally. But what exactly is needed to make such packages?

We already have working Android port: http://www.adventuregamestudio.co.uk/forums/index.php?topic=44768.0
Josepth Di Perla have some program for installing Android games: http://www.adventuregamestudio.co.uk/forums/index.php?topic=47475.0

What is missing?
I would like to provide some help, if that will be in my power.

selmiak

Quote from: Crimson Wizard on Sat 16/02/2013 23:52:01
What is missing?
I would like to provide some help, if that will be in my power.


A simple compile for android button and a compile for iOS Button in the editor will do for now...

Crimson Wizard

Quote from: selmiak on Sun 17/02/2013 00:01:15
A simple compile for android button and a compile for iOS Button in the editor will do for now...
Oh, that's nice. I think no money is needed for that. :)
The task should be quite simple.

Di Perla said he is going to do something like this: http://www.adventuregamestudio.co.uk/forums/index.php?topic=47622.0 (don't know what his progress is).
You can also ask any other C#-proficient AGSer, who already worked with the Editor, like: tzachs, Alan v. Drake, Calin Leafshade (I think).

DazJ

Quote from: Crimson WizardAPK is for Android right? I never worked with Android personally. But what exactly is needed to make such packages?

We already have working Android port: http://www.adventuregamestudio.co.uk/forums/index.php?topic=44768.0
Josepth Di Perla have some program for installing Android games: http://www.adventuregamestudio.co.uk/forums/index.php?topic=47475.0

What is missing?
I would like to provide some help, if that will be in my power.

Those ports are great, I mean that - and I use the AGS port on my HTC to play classic AGS games. But to play those the player has to download the AGS Port and copy the game itself to their SD Card/phone which for a casual Android game-player, isn't something they'd be likely to do or know how to do.

A single APK file is what's downloaded from the Android Marketplace and self-installs on the customer's phone without the need for any of the above. Basically, you can have your game there on the Google Marketplace/Play Store alongside other classic titles such as Angry Birds, Broken Sword, and so on :)

Joseph DiPerla

Quote from: Crimson Wizard on Sun 17/02/2013 00:10:36
Quote from: selmiak on Sun 17/02/2013 00:01:15
A simple compile for android button and a compile for iOS Button in the editor will do for now...
Oh, that's nice. I think no money is needed for that. :)
The task should be quite simple.

Di Perla said he is going to do something like this: http://www.adventuregamestudio.co.uk/forums/index.php?topic=47622.0 (don't know what his progress is).
You can also ask any other C#-proficient AGSer, who already worked with the Editor, like: tzachs, Alan v. Drake, Calin Leafshade (I think).

It should be done in a couple days. Its basically a packaging system that includes or downloads the game data onto your system. Its basically AGS Stream, but only for one game, this way you can sell it or put it on the play store standalone. The whole thing can be compiled with Basic4Android or the Android SDK no problem. All you have to do is edit a couple of files manually and you are all set. The tricky part for me is setting it up in the AGS editor to package it and compile into an APK. Its really only a matter of editing two or three text files and using a shell command to run the command that signs an APK Key and compiles the package using the Android SDK and Java SDK. It literally may take 1 hour for someone with experience in C# to implement such a feature. For me though, since I am a beginning beginner (Yes, I know what I said) in c#, that part may take like a whole month for me to implement, lol :D .
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

DazJ

Lol Joseph, take as long as you want - you're a true champion mate :)

DazJ


Joseph DiPerla

I am still trying to figure out how to get this done appropriately. First thing is that I am having trouble with downloading files for Samsung Galaxy 3, Asus tf201 and Galaxy Nexus 7. So I needed to take a different approach which is to use the google APK Expansion file option. The only thing about this is that it limits your game to 4gb(Divided into two files of 2gb each). The next thing I am trying to do is include AGS as part of the build so that a user wouldn't need to install AGS necessarily just to be able to run the game. Essentially, this will allow you to make the game look as if its a standalone and professionally made game. Lastly, I need to get the game Preferences working appropriately.

Once I get this all sorted out, I will release the project. The last thing I want to do is have someone use this, make a commercial game and then lose money because the app didn't work on all the necessary devices. :P
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

DazJ

I thought Play Store's limit was 4GB anyhow? Are you still planning on releasing a modified version of the AGS Editor for this, or provide it as a service? :)

Joseph DiPerla

The play store allows the main APK file to be 50mb or less. However, if your app is larger than that, you can use the expansion pack (Which can be any file extension you want, but typically it would be either .zip or .obb) option which basically means that you can upload a) The main file b)The expansion pack which you will need to decompress from your app. You are allowed to upload up to 4gb, however, the Google play store only allows you to do that in increments of 2gb. So lets say you have a 4 gb game, you would have to upload 1)maingame-50mb.apk 2)Expansion1-2gb.obb 3) Expansion2-2gb.obb.

What the play store then does when you goto download and install an app is Download the main app and then the rest of the expansion files automatically. Yes, seems kind of dumb. Why not just allow for one big file in the first place??? My guess... to avoid bloated software or because its typically harder to upload more than 2gb at a time, killing bandwidth. It would also save on bandwidth for when patches need to be updated, rather than just uploading everything all over again. Who knows... Anyway, After that, it is the developers job to locate where they have been downloaded (Android has a set destination, so thats not too much of an issue), if it was successful and then unpack it. There is a process to getting this done right, so its taking me a bit of time.


As far as how this will be released, there will be two versions. One is the Basic4Android Source. All you would have to do is change your game's screenshot, edit a text file (For game name and description), change the package name of the app then compile.

The second version is the Java version. Basically B4A generates that automatically. So, if you do not want to use B4A, you can compile the app using the Android SDK. This will require a few additional steps (Which B4A would take care of for you automatically, while the Android SDK does not), which would include editing the the manifest file and creating a signature key.

I do plan in the future, after I have this all settled down, to add it, either via plugin or hardcoded, to the editor so that all you would have to do is click "Compile for Android" and it would take care of everything for you as easy as one, two, three. :)

Hope this made some sense. Its past midnight and my brain is fried today.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

BigMc

Quote from: Joseph DiPerla on Sat 16/03/2013 04:21:29
What the play store then does when you goto download and install an app is Download the main app and then the rest of the expansion files automatically. Yes, seems kind of dumb. Why not just allow for one big file in the first place???

Because the apk has to be updated for each and every small change. If you need hundreds of megabytes for an app for a mobile device, you better make sure the large data files only need to be downloaded once.

DazJ

B4A sounds the way forward. And thanks for clearing up the APK file size thing. It does make me wonder though how we exactly apply updates to an app created with AGS when the whole compiled game is basically one large EXE file.

Will you also be implementing options in to the compiler such as 'Force/Stretch to Fullscreen' and 'Fixed Orientation: Horizontal/Vertical' etc? Look at me, pushing my luck ;) lol

Daz.


Joseph DiPerla

Hehe. That part is not up to me. Those are features hardcoded into the AGS Engine and Editor themselves. All my app/tool does is convenient package the compiled game into an Android APK. For that stuff, you would need to ask JJS, CW, CJ, etc... :D
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

s_d

I used to see lots of AGS games distribute several data files in addition to (or mostly in exclusion of) the EXE.  So that functionality is (or at least was?) present at one time.  That's not including the vox files (for example), but actual, numerically indexed data files.  I think the code to handle that is still there, in the engine/interpreter code, as well (last I looked).

Perhaps that could be a way to "naturally" split the game assets.  Another contributor, rofl0r, has some nifty tools up on github for slicing and dicing the AGS data files.  They are bugged in a number of ways, but I found the sources kind of helpful in understanding the storage format of the game data files.

trothmaster

I know you mentioned Unity early in the thread and were against it for time reasons.  I'm in the middle of programming my 2d point and click adventure in unity and you are right, Unity will take you a long time to get the basic framework together.  Right now what I use for hotspots in Unity is colliders.  You can have a mesh collider which can form to any shape you want.  For pathfinding I use an implementation of the A* system and limit it to 2D.  In Unity you can have two types of camera, an orthographic(2d) cam or a perspective(3d) cam.  I use the orthographic cam and then assign a baseline to all the objects so that they appear above or below eachother according to the baseline.  I assign the baseline dynamically based on screen position.  Handling sprites is done using sprite sheets.  I built my interactive dialogue system using XML and then I use a parser that puts the dialogue into proper classes and then into lists.  I have a custom editor i built for the XML that enables quicker entry.  For game sequences I built a state machine that can take XML directions or call a custom C# script if the sequence requires more then the pre-defined methods.  If anyone is interested in talking more about it i'd love to!

Bik - Eat some sandwiches and save the galaxy!
www.bikgame.com

SMF spam blocked by CleanTalk