When comparing pygame vs Stencyl, the Slant community recommends Stencyl for most people. In the question“What are the best 2D game engines?” Stencyl is ranked 7th while pygame is ranked 19th. The most important reason people chose Stencyl is:
Visual scripting in Stencyl is based on the [MIT Scratch](http://scratch.mit.edu/) project, which was designed to teach programming. Script elements fit together like puzzle pieces, ensuring that data and function types cannot be mismatched.
Ranked in these QuestionsQuestion Ranking
Pro Easy Python syntax
Pygame uses Python as its scripting language. Python is widely considered one of the easiest languages to grasp even for beginners.
Pro Very easy to understand
The API is very straightforward.
Pro Good canvas system
Pygame has a drawing system that allows the user to create and draw on an unlimited number of canvases.
Pro No coding required, great drag & drop interface
Visual scripting in Stencyl is based on the MIT Scratch project, which was designed to teach programming. Script elements fit together like puzzle pieces, ensuring that data and function types cannot be mismatched.
Publish iOS, Android, Flash, Windows and Mac games without code.
Pro Haxe scripting available for advanced users
Power users can also write code in Haxe (similar to Actionscript 3) to create their own custom classes and extend the engine.
Pro The original concept for Ghost Song was created using Stencyl
The original concept for Ghost Song was created using Stencyl 3.x
Pro Great performance on every platform
Stencyl exports your games to native code so they have great performance on every platform.
Con Very basic
Pretty much just a wrapper for SDL.
Con Messy documentation
The docs are messy, and some basic functions are infuriating to work out. There's even some places in the documentation where it's clearly wrong about how a method is called/what the arguments really do.
Con Deathly slow
Con Nonexistent community
No good forums, wiki, or other ways to reach other Pygame developers.
Con Hasn't been updated in years
Hasn't been updated in years.
Pygame uses a really old version of SDL and is missing some of the features developed for SDL2.
Con Pygame is a language, not a game engine
Physics, AI, networking, and input are not supported.
It needs much to improve for mobile games, it was left in the era of Flash games. In Android you can not even put the native keyboard, you can not access things like native camera, GPS or native text input.
Con Only available via subscription
There should be an option to buy it outright, especially considering it is written by a one man team....this is not exactly an Adobe level enterprise with shareholders, so there is no excuse!
Con Slow release cycle
Con Not a powerful engine
Should be used for basic games only.