Advertisement

How much porting a game from PC to mobile?

Started by January 21, 2017 07:54 PM
16 comments, last by Brain 7 years, 10 months ago
I already know you can't give me an answer but at best an estimate.
I mean let's say a classic First Person Shooter for PC you can get the source code to work on it.
Than you want to fully port on a Tablet iOS or Android in order to be played with a gamepad bluetooth.
I mean a real porting of exactly the same game on mobile devices like the following sample:



I would like to know an estimate about costs and time needed to do this kind of existing PC games ports.

Is very possible with newer games to get an average frame per second on mobile i need to reduce graphics details and resolution.Do you think with a FULLY PORTED pc games on Android/iOS is possible to play against the same game on PC in multiplayer?
I guarantee that if you paid me 50 million USD and gave me 15 years to do it, I'd get it done for you.
Advertisement

I guarantee that if you paid me 50 million USD and gave me 15 years to do it, I'd get it done for you.


Funny...

I guarantee that if you paid me 50 million USD and gave me 15 years to do it, I'd get it done for you.


Funny...


I'm not even remotely kidding. I can do it for that price and that time. Doesn't matter what game. If the game already exists, has source code, source assets, and an existing toolchain, I can figure it out and port it in that time.
Republique went the other way - they made it for mobile first and then ported to PC. They also planned for this and used a game engine that already supported those platforms.

If this game is using a PC-only game engine, then I'd optimistically guess you'd need an engine programmer to sped roughly two man-months per engine "system" to port it - or easily a year of work. That alone could cost $80k-$150k.

If it's on a portable engine, then you'll probably want to first port the game to the latest version of that engine and then just "build" for your target platforms. That's probably a few months of bugfixing.

Then you've got performance issues. If the original gameplay doesn't work on your target hardware due to perf problems, you may have to scale it back, which requires thr hands of a gameplay programmer and designer.
Then there's content issues - the actual 3D artwork may not be suitable for phones so may need re-authoring. That could be months of art time.
Then there's the renderer - the same rendering techniques might not work so well on mobile, so you could need a graphics programmer to rewrite their pipeline, shaders and data processing tools...
And the networking - if this is a multiplayer game originally designed for DSL and you want it to work on 3G/4G, that will surely warrant a rewrite...

So at a guess, cost would optimistically be anywhere from ten grand to around a quarter million or even a half million (or more depending on how much stuff is incompatible).
If you know what the original budget of the game was, it probably won't cost more than that...

Republique went the other way - they made it for mobile first and then ported to PC. They also planned for this and used a game engine that already supported those platforms.
If this game is using a PC-only game engine, then I'd optimistically guess you'd need an engine programmer to sped roughly two man-months per engine "system" to port it - or easily a year of work. That alone could cost $80k-$150k.
If it's on a portable engine, then you'll probably want to first port the game to the latest version of that engine and then just "build" for your target platforms. That's probably a few months of bugfixing.
Then you've got performance issues. If the original gameplay doesn't work on your target hardware due to perf problems, you may have to scale it back, which requires thr hands of a gameplay programmer and designer.
Then there's content issues - the actual 3D artwork may not be suitable for phones so may need re-authoring. That could be months of art time.
Then there's the renderer - the same rendering techniques might not work so well on mobile, so you could need a graphics programmer to rewrite their pipeline, shaders and data processing tools...
And the networking - if this is a multiplayer game originally designed for DSL and you want it to work on 3G/4G, that will surely warrant a rewrite...
So at a guess, cost would optimistically be anywhere from ten grand to around a quarter million or even a half million (or more depending on how much stuff is incompatible).
If you know what the original budget of the game was, it probably won't cost more than that...

What you mean with "portable engine"?
Already for mobile or with crossplatform engine ready?

I was able to play Half-Life 1 the real version of PC and many compatible pc version mods.
The only thing i had to do was to download an Android App "Xash3D" on Android.Than i create a single folder named xash on my sdcard root and just copy inside the original "valve" folder from my PC of the game Half-Life 1 directly purchased with my Steam account.
And obviously mobile touch controls are not that good cause the game was originally designed for PC but if i play with a professional bluetooth gamepad
the experience is just amazing and is working smoothly also with midrange androids phones.Plus i'm able to play in some multiplayer rooms.Obviusly with a decent WiFi connection...

The only thing is not really plug and play for most of users.They might not even realize what the app xash3d is made for.And even if they understand is hard for them to understand how it work with all the passage of trasferring data from PC to mobile...Than need to set all the parameters to make it work properly with a gamepad bluetooth.
But at the end the result is "excellent" is was really able to play Half-Life 1 PC full version on an Android smartphone/Tablet.

Let's use this sample Xash3d is not affiliated in any way with VALVE developer of the famous Half-Life saga.They just create this app to run the game on mobile using the real PC folders.I guess is a sort of engine emulator.
But let's say hypothetically Valve corporation provide me the source code allowing me to create a full APK wich is not only an empty app but include directly the game files of their old Half Life 1 i can understand how the experience could be worst than now with Xash3D wich is already pretty perfect.Don't think a 1999 old PC game couldn't run smoothly as Half-Life do on most of nowadays midrange mobiles trought Xash3D.
To create an APK of Half-Life 1 or similar ported on Android i need that much money close to half million usd?
Do you think the russian developer of Xash3D spent that much?
Cause i mean he didn't include the file in the APK just for a matter of agreement of with Valve corporation but if it was allow to do that was really easy for him include the files directly with Xash3D downolad...99,99% of the job was the realization of Xash3D app certainly not copy and paste existing Half-Life 1 PC folder he don't even need to change a single original file to make it work on mobile opening with Xash3D...

Ok is possible Valve Corporation would never give any authorization to use their PC files they are still selling on Steam for 9.99 usd just for PC.
But i'm trying to understand if what the russian developer did with Xash3D is possible to replicate with others less famous "old PC games" getting the same excellent smooth result on latest mobile devices...
Is hard to me to create Xash3D wich is totally free and only 50000 downloads the russian developers had to invest the money you told me close to half million dollars.Or at least would be crazy with no sense to do that or not?
Advertisement

But i'm trying to understand if what the russian developer did with Xash3D is possible to replicate with others less famous "old PC games" getting the same excellent smooth result on latest mobile devices...


Possible: It's always possible.

Having freely available source code for the game in question (https://github.com/ValveSoftware/halflife) is critical.

If you don't have the source code then there's no real hope of making a port. You could make an emulator, but emulators typically have horrible performance. You could reverse engineer the game - this is possible, but incredibly difficult (I would personally charge about 20x more for reverse engineering than simple porting).

If you have to modify the assets, it can get ridiculously painful. Complex games could have several thousand things you have to modify. If you can't automate the process, you'll spend a long, long time on asset conversion.

There are some games which no current generation mobile device could run with a decent frame rate. The more CPU/GPU complex the PC game is, the less likely it'll run well after being ported to a mobile device. Then you have to cut certain features to get it to work properly - you might find that there's nothing you can cut after a certain point.

But i'm trying to understand if what the russian developer did with Xash3D is possible to replicate with others less famous "old PC games" getting the same excellent smooth result on latest mobile devices...

Possible: It's always possible.Having freely available source code for the game in question (https://github.com/ValveSoftware/halflife) is critical.If you don't have the source code then there's no real hope of making a port. You could make an emulator, but emulators typically have horrible performance. You could reverse engineer the game - this is possible, but incredibly difficult (I would personally charge about 20x more for reverse engineering than simple porting).If you have to modify the assets, it can get ridiculously painful. Complex games could have several thousand things you have to modify. If you can't automate the process, you'll spend a long, long time on asset conversion.There are some games which no current generation mobile device could run with a decent frame rate. The more CPU/GPU complex the PC game is, the less likely it'll run well after being ported to a mobile device. Then you have to cut certain features to get it to work properly - you might find that there's nothing you can cut after a certain point.


1)You asked me 50 millions of usd and 15 years and honestly are very very very far from my budget sorry to say ;-)

2)Try to guess how Xash3D did to port Half-Life 1 on mobile cause i have no idea.But let me tell you I don't know if is an emulator or a ported game or reverse engineering but it work and really smooth on midrange smarphones with a more than decent framerate.

3)Obviusly when i'm considering to port a PC game to Android i'm not thinking about something like Crysis 3 but pretty old PC games similar to Half-Life 1 can work with the power of latest mobiles.
For sure i'm not that crazy to think latest high quality PC games can run on a smartphones since they usually need Nvidia GTX powerful GPU...


I have no idea so i ask to you how and why you think this russian developer was able to run smoothly full Half-Life 1 on Android?
This russians seems to be genius to me...
The source code for the Half-Life 1 gameplay is freely available, so any skilled programmer could port it...
However the source code for the HL1 engine (GoldSrc) isn't available, so this Russian project that you mention is actually a replacement engine that's been written from scratch. That's a huge amount of work. If you were hiring someome to do that kind of work, it would cost a lot of money.


The android version of that engine is partially a native port, and partially an x86 emulator.


This project is open source under the GPL license, so you're actually permitted to use his work in your own products, as long as you also release your own source code.

the russian developers had to invest the money you told me close to half million dollars.Or at least would be crazy with no sense to do that or not?

Those numbers assume that you aren't an engine programmer.

If you are an engine programmer and are happy to do a years work for free, then you get one year's worth of engine programming for $0.
If you are hiring an engine programmer, then you get one year's worth of engine programming for $100k (or whatever number your programmer asks for).

So if that guy is working for himself as a hobby, then he can slowly produce software that would normally cost a business a large amount of money to develop.

So the difference is what you can do VS what you can scavenge VS what you can commission.

The source code for the Half-Life 1 gameplay is freely available, so any skilled programmer could port it...
However the source code for the HL1 engine (GoldSrc) isn't available, so this Russian project that you mention is actually a replacement engine that's been written from scratch. That's a huge amount of work. If you were hiring someome to do that kind of work, it would cost a lot of money.
The android version of that engine is partially a native port, and partially an x86 emulator.
This project is open source under the GPL license, so you're actually permitted to use his work in your own products, as long as you also release your own source code.

the russian developers had to invest the money you told me close to half million dollars.Or at least would be crazy with no sense to do that or not?

Those numbers assume that you aren't an engine programmer.
If you are an engine programmer and are happy to do a years work for free, then you get one year's worth of engine programming for $0.
If you are hiring an engine programmer, then you get one year's worth of engine programming for $100k (or whatever number your programmer asks for).
So if that guy is working for himself as a hobby, then he can slowly produce software that would normally cost a business a large amount of money to develop.
So the difference is what you can do VS what you can scavenge VS what you can commission.

Ok let's assume Valve(and is not) was agree to release all the source codes a developer asked for not only the gameplay wich is availabe as you told me but also of the engine.So hypothetically no limits from Valve to provides all the files/info you want to port on Android Half Life 1 the full version PC game on mobile.
Try to figure out an estimate about how many peoples you need the time and the cost to finish the project and have Half-Life 1 full version apk working on android.That's obviously the best scenario with Valve providing all the info you need.

Than try to estimate the cost of the work developing Xash3D as it is.
Hiring engine programmer or whatever you need and the time to do that.

I understood the russian guys did for fun by themself cause they are skilled programmers with a lot of free time.
But let's say you are not skilled programer but you want to get the same result.How much you would spent in term of money and time hiring peoples working for you to develop a Xash3D style project?


Interesting to know if would be more expensive the first option with all the codes you need from valve

or

the second options hiring someone doing exactly what the russian guys did

This topic is closed to new replies.

Advertisement