-3
\$\begingroup\$

I want to program an online 2D MMORPG with graphics like in this game. Since I develop in javascript and python mainly I chose python for my first games and the game library pygame which is pretty straightforward and awesome. But since many people go for c++, c# etc. I wonder if I still could achieve what I want to with python. Is anybody experienced with performance with python and pygame in cases like this? should I rather go for c++? Should I use a combination of python and C, or maybe even python and c++?

\$\endgroup\$
9
  • \$\begingroup\$ I don't think that the language really matters as long as your game framework is good enough for what you are doing. You didn't mention which platform you are targeting. You should just pick the language you know or the one you want to practice. After compiling all the languages are the same set of commands, it doesn't matter, language is just for the programmer \$\endgroup\$
    – dimitris93
    May 11 '15 at 9:02
  • \$\begingroup\$ @Shiro At first I target Windows Computers. I just thought that I might have performance problems if I would go for python and pygame \$\endgroup\$ May 11 '15 at 9:09
  • 1
    \$\begingroup\$ @IbrahimApachi Yes, I think you should use C++. Since you're not used to c++ you will have a hard time figuring out how to create an MMO. Only learning c++ is nothing, getting your networking to work is such a massive task. Try making a simple multiplayer game (1v1) in c++ and then reconsider creating an MMO. Good luck :) \$\endgroup\$
    – Dries
    May 11 '15 at 13:15
  • 1
    \$\begingroup\$ @IbrahimApachi I guess you can. Search for some networking libraries in python. Still, building the whole architecture for your game will be very hard. I would definitely NOT recommend doing this when you're a beginner. \$\endgroup\$
    – Dries
    May 11 '15 at 14:20
  • 1
    \$\begingroup\$ I couldn't agree more with @Dries. I am curious of how many of those people who post everyday about "How can I make a 3D FPS/MMORPG" actually ends up doing anything remotely close in difficulty. Makes achievable goals first. Multiplayer aspect in the make makes it a lot more complicated. Try making a tic tac toe online game see if you can do that, then aim higher. \$\endgroup\$
    – dimitris93
    May 11 '15 at 15:02
1
\$\begingroup\$

As an answer to this question and to most of the comments.

Try making some other games first. Since you are a beginner, creating a multiplayer tic-tac-toe (as Shiro suggested) will be hard enough. Even if you can manage to create that creating an MMO is a massive task that most of us, and definitely the beginners, will underestimate.

For example: how will you track player movement on other clients, if you're going to do PVP how are you going to send messages so that the other player knows he's been hit. What about, connecting and disconnecting to servers. Will you be creating a Peer-to-peer game, will it be a server-client architecture (with a dedicated server). How will you manage lag and hackers? This and many other questions will arise, which you will probably not think of when you start this.

If you want to continue doing this, create a simple chat system using python first. (you can do this with telnet, which is included in the basic installation of python). If you can manage that, create a VERY simple 2-player game. If you can manage that, go on to creating a game where people can connect to a main pc (p2p host or dedicated server) and see if you can make the players move and make the server send that information to all other connected clients.

TL;DR: It's great that you want to try this but slow down, think about it, realise that this is not just "connecting pc's and I'm done".

\$\endgroup\$
1
  • \$\begingroup\$ It is really awesome that you mentioned some milestones which I have to achieve. I will try all that stuff out :D thank you very much :) \$\endgroup\$ May 12 '15 at 6:07

Not the answer you're looking for? Browse other questions tagged or ask your own question.