Hi everybody
Is it possible to make an MMORPG using Corona SDK? How will the server be? written in LUA?
Thank you very much
- Dilip [import]uid: 58067 topic_id: 13395 reply_id: 313395[/import]
Hi everybody
Is it possible to make an MMORPG using Corona SDK? How will the server be? written in LUA?
Thank you very much
Only the client part could be created with Corona. For the server… well everything can be used what fits and can run as a server app. [import]uid: 5712 topic_id: 13395 reply_id: 49176[/import]
@MikeHart I’m sorry to ask again but what language (with a good learning curve) would fit for the server part? can you drive me to the correct path? Thanks again! [import]uid: 58067 topic_id: 13395 reply_id: 49178[/import]
Ok, good learning curve is the keyword here I guess. I would use something like
BlitzMax
these days. It’s from Blitz Research which also have Monkey in their arsenal:
For Monkey, there is the MNET module available. I can’t say atm if you can create a server app with it but might look into this later in November.
[import]uid: 5712 topic_id: 13395 reply_id: 49185[/import]
Dilip, a few days ago you asked in IRC if anyone is interested in joining your project. Well, I am. How can we get in touch? [import]uid: 28742 topic_id: 13395 reply_id: 59015[/import]
@TheTrac3 Sorry for the late response but I’ve been doing a lot of things these days
. Mail me at alucardesings@gmail.com, add me to Facebook Dilip J. Ramírez R. … Or Twitter @dilip_ramirez.
Hope to get in touch with you! [import]uid: 58067 topic_id: 13395 reply_id: 59438[/import]
The server part could be easily handled by something like PHP or Ruby and mySQL database. And if you don’t already know PHP there are a LOT ways to easily outsource that – for cheap.
You can communicate between Corona on the client and PHP on the server using HTTP, no problem.
Jay
[import]uid: 9440 topic_id: 13395 reply_id: 59441[/import]
@Jay I think that HTTP protocol is by no means faster than TCP or UDP for this kind of applications… I’v been reading about Erlang for the server side, and Mnesia as the database but I haven’t made any prototype yet becouse i’m learning the language. Any other ideas? 
Dilip [import]uid: 58067 topic_id: 13395 reply_id: 59442[/import]
I didn’t mean that HTTP would be faster or fastest, I was trying to point out the server end of things can be done *easily* (comparatively speaking). Most developers already know PHP so there’s no need to learn something new.
There are all kinds of cool new tools/languages programmers can dig into, but you didn’t say you wanted to be a programmer – you said you wanted to create a game.
To my way of thinking you should do as little programming as possible so you can focus on game creation.
If you decide to learn Erlang and Mnesia you’ve pushed back the creation of your game farther into the future. Of course, if you don’t already know PHP and mySQL then you have to learn something (or outsource it), but I have a hunch you’d get up to speed faster with PHP/mySQL than Erlang/Mnesia. Tons more info online about the former.
Take a look at this page:
http://highscalability.com/flickr-architecture
At the time that was written (late 2007) Flickr was serving more than 4 billion queries per day on a PHP/mySQL system.
Not saying that’s the “best” way to go, just saying something as “typical” as a PHP/mySQL-based site can probably handle an MMORPG.
Just some data for you to think about.
Good luck with the game!
Jay
[import]uid: 9440 topic_id: 13395 reply_id: 59611[/import]
You should decide sooner rather than later if you want turn based interaction between players vs. real-time interaction. HTTP is much slower than raw TCP/UDP. If turn-based is okay, you can write PHP/SQL scripts to perform various actions on your webserver and use a polling strategy. If it must be real-time, I would look into PubNub. PubNub only has two functions: send and recieve. All the other logic needs to be written by you.
So each player in your game is listening to the PubNub channel, but you also need a moderator listening to the PubNub channel that listens for player input and tells all the players what has happened – sort of like a DM in a role-playing game. This moderator, unless you want to quit your job and moderate all the games yourself, should be a script running on a server somewhere. Any program capable of maintaining a TCP connection can do it. PHP can do this quite well actually but you need to execute the script via command line as a script run via HTTP cannot persist the way you need it to.
Hope this helps. [import]uid: 70391 topic_id: 13395 reply_id: 59614[/import]
I don’t want to sound too discouraging, but a MMORPG is an enormous, massive, beastly endeavor in any language or platform, even one as nice as Corona. 
Yes, it’s probably possible using Lua and the tools available, but consider the scope of such a project before shooting for the stars. You would need a team; there’s basically no way you could manage it alone in a reasonable timeframe. You would also need extensive knowledge of LuaSockets and networking. Then you would need to do extensive testing on how much the server could handle during peak traffic. And so on, and so on…
Again, I’m not saying that you should give up before trying, but one surprising (frustrating?) thing I’ve discovered in the past year of using Corona is that even with all of its built-in wonders and “one-line” coding power, developing even a moderate game is ALOT of work for one person.
Brent Sorrentino
Ignis Design [import]uid: 9747 topic_id: 13395 reply_id: 59615[/import]
I second the amount of work.
I mean crap, just for (made up game to follow) a dude to go around shooting stuff, that stuff is randomly generated from a table, give a score and save that score to a table, and put it together so it can post to facebook, open fient etc then doing the art work, sound, level design, etc…phew.
I’m a one man show, I would flip out and die if I had to think about doing an rpg, let a long an mmorpg 
It’s funny corona so freaking awesome to work with and it’s easy to work with but to do something that is decent takes a lot of time!!!
(for an example, look at Jay’s horse crazy story - that was very very small scale and look at the trouble he had. I did learn some lessons from that story)
ng
Best of luck to you, that’s very ambitious project you have but yea, hope you got a team of people to go to bat for you
[import]uid: 61600 topic_id: 13395 reply_id: 59618[/import]
First, an MMORPG is definitely possible with Corona, due to it’s Async HTTP support, and an RPG is already possible despite that.
As far as the server goes, I wouldn’t recommend running it on a mobile device (e.g. a Corona app with Lua). It should be on a server somewhere… the language you write it in is completely up to you. You just need a way to pass messages to and from the client/server. [import]uid: 52430 topic_id: 13395 reply_id: 59647[/import]
Thanks for everyone that puts ideas and thoughts to the conversation; I do know PHP, and I’v been working in Web Design for about 7 years, and I want to make something different, something that outstand among other kind of applications. Forgive my mistake, I want to make an MMO, not an MMORPG, but later (and after seeing the proccess of creation of an MMORPG) I want to make one.
TCP/UDP protocols are the best option for real-time interaction; of course you can make with PHP a similar thing (maybe using Nodejs or something like that), but most of the succesful games have been made in the TCP/UDP protocols, and that’s what I want to do. I was testing Pubnub, but I realize that the system is for low traffic apps, like green.castle says; but it would be too expensive for the kind of game I want to build.
Again, thanks again and I hope this thread has more posts since it’s an interesting point to talk about 
Dilip [import]uid: 58067 topic_id: 13395 reply_id: 59648[/import]
@jonathanbeebe of course the server part wouldn’t be handled by Corona and Lua, it would be on dedicated servers with another language such as C++, Erlang or java! Corona is for the client part, but I haven’t been able to do a successful connection to a test TCP server I did, since that LUA it’s not multithread
[import]uid: 58067 topic_id: 13395 reply_id: 59651[/import]