Jump to content

  • Log In with Google      Sign In   
  • Create Account

Interested in a FREE copy of HTML5 game maker Construct 2?

We'll be giving away three Personal Edition licences in next Tuesday's GDNet Direct email newsletter!

Sign up from the right-hand sidebar on our homepage and read Tuesday's newsletter for details!


can python be used to create professional games


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
13 replies to this topic

#1 mousetail   Members   -  Reputation: 1251

Like
1Likes
Like

Posted 03 January 2013 - 06:40 AM

Is it possible to create professional, commercial games with python?

If not, is there any other engine/language that is both professional, fast, and easy to use? 



Sponsor:

#2 MrDaaark   Members   -  Reputation: 3555

Like
4Likes
Like

Posted 03 January 2013 - 06:55 AM

The only thing that makes an app 'professional and commercial' is when the author(s) polish it and bring it to market. Doesn't matter what language is used.

Python has been used in a ton of commercial products. It's been used in tons of games, and lots of art packages and other programs as an embedded scripting language.

Check out Panda3D if you want to see a good engine for it. There is also PyGame, and Blender's built in game engine if you just want to prototype something quickly.

#3 mousetail   Members   -  Reputation: 1251

Like
0Likes
Like

Posted 03 January 2013 - 07:04 AM

It's been used in tons of games, 

do you know any examples? all i seem to find are all open-source and free.



#4 jbadams   Senior Staff   -  Reputation: 19018

Like
2Likes
Like

Posted 03 January 2013 - 07:06 AM

Anything (within reason) is possible, and there are even a number of successful commercially available games developed using Game Maker and similar packages, so there's no reason a skilled developer couldn't do the same using Python assuming they choose a project of reasonable scope and put in the requisite effort.

There are two significant difficulties you might be likely to face using Python to create your games, although both can be worked around:

  • Python can sometimes be slower than some other languages, largely due to it's interpreted nature. Possible solutions to this include using alternative distributions such as PyPy, Cython or IronPython, or making use of modules written in lower level languages (often C or C++) for performance critical tasks.
  • Distribution isn't as straight-forward as with a compiled language where you end up with an executable file you can deliver. This is also a solvable problem however, using packages such as py2exe, PyInstaller, etc.

Python has actually been used in a number of big commercial games, usually as a scripting language on top of an engine implemented in a lower-level language -- a good example of this is the Panda3d engine, which is written in C++ but can be programmed using Python, and was used for a couple of Disney MMOs amongst other projects.


If you're happy to use Python, then yes, you should absolutely proceed with it, and yes, you can make a professional quality commercial game if you put in the time and effort to do so.

If you're looking for alternatives you might consider Unity, which can be programmed with C#, UnityScript (similar to JavaScript) or Boo (similar to Python), or even something like Construct 2 or Game Maker.



#5 Nanook   Members   -  Reputation: 505

Like
1Likes
Like

Posted 03 January 2013 - 07:11 AM

EVE Online uses Stackless Python



#6 jbadams   Senior Staff   -  Reputation: 19018

Like
3Likes
Like

Posted 03 January 2013 - 07:13 AM

It's been used in tons of games, 

do you know any examples? all i seem to find are all open-source and free.

The two Disney MMORPGs I mentioned above are ToonTown Online and Pirates of the Caribbean Online, both of which are built on Panda3d.  EVE Online purportedly uses a lot of Python code in a variant of the language called "Stackless Python" -- see the quote about halfway down this page on the Python site.  Civilization IV used Python for scripting.  I'm sure there are probably other examples. smile.png



#7 KnolanCross   Members   -  Reputation: 1333

Like
1Likes
Like

Posted 03 January 2013 - 07:17 AM

Define professional? A triple A game will hardly be written in python, as you will use some comercial expensive engine such as Unreal or CryEngine.

If you mean a comercial game, then yes, you can use python. Here are my 2c:

 

- If you intent on using Panda3D, you should know that it compiles for desktop and web browser, has been used for Toontown and pirates of the caribbean online. The biggest pain using Panda3D is the model format (egg). There is a project to add support to OBJ files.

 

- I don't know of any commercial game using pygame, but I haven't used it in a long, long time. I also know there is an android subset (link: http://pygame.renpy.org/ ). I do remember someone compiled it for IOS, but can't find the link, sorry wacko.png

 

- There is also Kivy, a framework exclusively for mobile. They have made a few games to check if Apple Store would accept them, here is a link with more info: http://kivy.org/#contest

 

- AFAIK Unity3d accepts a python-like language named boo.

 

EDIT: must remember to press F5 before posting, went to check for links when the post had only one reply.


Edited by KnolanCross, 03 January 2013 - 07:20 AM.

Currently working on a scene editor for ORX (http://orx-project.org), using kivy (http://kivy.org).


#8 jbadams   Senior Staff   -  Reputation: 19018

Like
2Likes
Like

Posted 03 January 2013 - 07:47 AM

A more useful question you could ask might be "is Python reasonably well suited to the game I want to create, and are there libraries available that meet my needs?"

...and to answer we'll need to know what type of game(s) you're interested in creating. :-)

(Posted from mobile.)

#9 SuperVGA   Members   -  Reputation: 1118

Like
2Likes
Like

Posted 03 January 2013 - 08:46 AM


It's been used in tons of games, 

do you know any examples? all i seem to find are all open-source and free.
 


They used it in Sid Meier's Civilization IV.

Imagine your favourite game moddable through python...
But games completely implemented in Python I don't know about...

#10 PurpleAmethyst   Members   -  Reputation: 324

Like
0Likes
Like

Posted 03 January 2013 - 11:20 AM

Demonware use Python.



#11 Angus Hollands   Members   -  Reputation: 717

Like
2Likes
Like

Posted 03 January 2013 - 06:26 PM

I don't know of many games that are truly Python based. Because the drawing libraries are usually C++ it often makes sense to use Python as a scripting layer on top of an engine framework. And, this has been done regularly.



#12 Exodus111   Members   -  Reputation: 148

Like
-1Likes
Like

Posted 05 January 2013 - 03:31 AM

Just to answer the OP directly.

NO, you cannot make a commercial, 3D FPS/RPG/SHOOTER/etc, IN Python.

But, you CAN totally make it WITH Python.

 

What does that mean.  It means that you can program the game in python, and use modules that calls on lower language (like C, or even C++) to run the game for you.

Panda3D is one example of this.

 

-Exo



#13 Kylotan   Moderators   -  Reputation: 3338

Like
2Likes
Like

Posted 05 January 2013 - 08:14 PM

Just to answer the OP directly.

NO, you cannot make a commercial, 3D FPS/RPG/SHOOTER/etc, IN Python.

But, you CAN totally make it WITH Python.

 

What does that mean.  It means that you can program the game in python, and use modules that calls on lower language (like C, or even C++) to run the game for you.

Panda3D is one example of this.

 

-Exo

 

If you take that logic to its conclusion, then you can't make a AAA game 'IN' C++, because somewhere down the line it inevitably uses a module that was written in C or even assembly.

 

Surely the main question is, "can I write a professional, commercial game where the only language I use during development is Python?" and the answer is most certainly yes. Writing the next Call of Duty is unlikely but there are many games that don't require that sort of performance and which can feasibly be sold.



#14 kubera   Members   -  Reputation: 944

Like
0Likes
Like

Posted 18 January 2013 - 08:35 AM

I have found a python code in Battlefield 2.

The game has been developed in C++ rather, but Python has been added as a scripting subsytem.






Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS