Python For GD

Started by
5 comments, last by TomX 17 years, 10 months ago
I've been doing research on Python, and how well it does with MMORPG's (not that I plan on creating one in the near future ;)), and I came across some articles on the net saying Python wouldn't be suitable for supporting massive games. Is this a true statement? And if so, why wouldn't it be suitable for supporting massive games?
Advertisement
Two reasons are most offten cited:

1) Python is slow. This is largely a reaction from C/C++ oriented programmers, and although it is based on some fact (interpretted languages are somewhat slower than compiled), proper coding techniques can pretty much elimenate this (i.e. a very well written game in python can run as fast as a typical C game).

2) Python is a security disaster. This is a reaction from all those who think a multiplayer game can never be secure if anyone can read the networking code (even compiled Python code is very easy to decompile). In actual fact, security provided by proprietory code is illusory at best (DSniff is a prime example), and many open-source softwares are just as secure as commercial equivalents.

In short, as long as you utilize good coding practices, their is no reason not to write an MMO in Python. Overcoming predjudice suficiently to obtain funding for your project is another matter entirely.

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]

Quote:Original post by PHPCoder
Is this a true statement? And if so, why wouldn't it be suitable for supporting massive games?


To some extent. You wouldn't write, say, the networking, graphics or database code in python. But the python code could sit on top of that, implementing the game logic and content, making calls to subroutines written in C or C++ where needed.
"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." — Brian W. Kernighan
Why you want to make an MMO is beyond me, but that's not the point of this converation so:

Yes, it most definately is possible to create an MMO with Python. There is even living proof. The MMO EVE was created in Python. And, no, not just using Python as a scripting language, it used Python pretty much, if not totally, everywhere. EVE has a large fanbase of highly-dedicated members. Google it and you see what I mean.
Quote:Original post by Fruny
You wouldn't write, say, the networking or database code in python.


Typically you would use an existing Database implementation, no point re-inventing the wheel, so the only non-Python code needed there is a C to Python binding layer (which might as well be a unified database driver at the same time, to use different databases transparently).

And as far as I can tell, for the networking code, the only real reason not to write it in Python is if you use someone elses (again, no need to re-invent the wheel).

Tristam MacDonald. Ex-BigTech Software Engineer. Future farmer. [https://trist.am]

Quote:Original post by Ezbez
Why you want to make an MMO is beyond me, but that's not the point of this converation so:

Yes, it most definately is possible to create an MMO with Python. There is even living proof. The MMO EVE was created in Python. And, no, not just using Python as a scripting language, it used Python pretty much, if not totally, everywhere. EVE has a large fanbase of highly-dedicated members. Google it and you see what I mean.
I'm pretty sure its only the game logic that's done in Python.

Also, they use a variant called Stackless Python, which I hear is better for more performance-critical code. It has better support for concurrency too, making the server-side logic easier to implement, particularly.
Definately check out pygame: http://www.pygame.org/

This topic is closed to new replies.

Advertisement