Create Flash, HTML5, iOS, Android, Mac, Windows and Linux games with no code with Stencyl. This is the source to Stencyl's Haxe-based game engine.
- Haxe 3.2.0
- Stencyl 3.0 Stencyl's engine is written in Haxe, a language similar to ActionScript 3. You can edit Haxe directly from any text editor, or you can use something more complete such as FlashDevelop, Sublime Text, MonoDevelop or Eclipse.
Report all bugs and enhancement requests on our Issue Tracker.
Developing alongside Stencyl
To make changes to the Stencyl engine, simply edit the files in your Stencyl installation directory under
plaf/haxe/lib/stencyl/1,00. You don't have to restart Stencyl for the changes to take effect.
If you have the engine files elsewhere (a fork of this repository, for example), you can direct haxelib to use that alternate copy (including when compiling from within Stencyl). Use the command
haxelib dev stencyl [alternate stencyl-engine path] to set this, and later
haxelib dev stencyl to revert to the Stencyl-installed engine. This could be useful to permit use of an engine version that's under active development without altering the original, installed copy.
For those who desire a more traditional workflow, the engine can be run standalone, outside of Stencyl.
To do this, run any of the following commands from within the checked out directory to run the engine by itself using a minimal test project. You do not need to run the build-stencyl script unless you wish to run a game within Stencyl.
haxelib run nme test TestProject.nmml flash -debug haxelib run nme test TestProject.nmml ios -simulator haxelib run nme test TestProject.nmml ios haxelib run nme test TestProject.nmml android haxelib run nme test TestProject.nmml windows haxelib run nme test TestProject.nmml mac
To edit the data for the standalone test game, peek inside of Assets (contains the resource definitions, graphics, sounds) inside of Scripts.
Extensions expose native mobile functionality to the Stencyl engine. Read this page for details.
If you're running the engine standalone, viewing the engine's logs involves external apps.
- For Flash, use Vizzy
- For Windows, use XXXX?
- For Mac, use OS X's Console app.
- For iOS, use OS X's Console app. Also peek at the contents of ios-log.text.
- For Android, use DDMS (Android Device Monitor).
- Rob Alvarez
- Mike Marve
- Dario Seidl
- Justin Espedal
- Nathaniel Mitchell
- Greg Sicard
- Alexandre Vieira
- Mike Morace
- Simone Conia
- Jason Irby
- Robin Schaafsma
- Chris Finn
Copyright (c) 2013 Stencyl, LLC Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.