With many tools and frameworks to create games, GameMaker has stood the test of time as a beginner-friendly tool to easily create 2D experiences. To allow these developers to easily bring their skills to web3 to create fully decentralized experiences, we've created a GameMaker template for Paima Engine allowing developers to easily get started on their web3 journey.
GameMaker is renowned for its intuitive drag-and-drop interface, which simplifies game development for beginners while offering some scripting capabilities for advanced users. However, GameMaker's ease-of-use also makes leveraging it in Web3 difficult historically given web3's heavy reliance on Javascript which is not natively provided by GameMaker.
To facilitate bringing GameMaker experiences to web3, we've created a Web3 template for Paima Engine. Paima Engine is a leading web3 engine to create everything from partially to fully decentralized web3 experiences using Javascript. Our new template allows easily combining GameMaker for the UI development and multi-platform support (everything from desktop, mobile, consoles to browsers) with Paima Engine's state machine framework for creating onchain games.
Our project Tarochi (currently live on the mainnet), serves as a prime example of the power of this integration. With over 10,000 monthly active users, it shows that you can using GameMaker with Paima Engine to create compelling experiences. Now, with this template, any developer can take a shot themselves at making the next hit web3 game with ease.
Connecting GameMaker with Javascript
Javascript is critical for web3 development as nearly every tool is written either in Javascript or at least tools that can run in the browser like WebAssembly. This is partially because crypto wallets are primarily used as browser extensions, and therefore the easiest way to connect to them is through the web. This is while web3 experiences on desktop and mobile are typically not as good and often require custom tools.
Fortunately, GameMaker supports compiling games to the web using HTML5 (which is not an option for other game engines like Unreal Engine). However, games written in GameMaker itself do not use Javascript - instead leveraging a custom language called GameMaker Language (GML) which makes it hard to connect these games to popular web-based frameworks for interacting with web3 in general.
To tackle this, our Game Maker template introduces a custom-built adapter to connect your GML code to Javascript written with Paima Engine. This allows you to manage everything from wallet connection, leveraging Paima Engine features and even calling other web3 libraries directly from your Game Maker application.
You can use this adapter for more than just web3 connections. In fact, in our game Tarochi we used the same concept to build the menus and overlays in our onchain game using Vue.js (a popular frontend framework for Javascript)
Comparison with Other Game Engines
While engines like Unity and Unreal offer powerful tools for game creation, they often come with a steep learning curve not just in tooling, but in programming language you have to learn (C# for Unity, C++ for Unreal Engine). Unreal Engine, additionally, does not combine with browser-based deployment which makes it harder to use for web3 applications. Game Maker, in contrast, is not only easier for beginners but also fully supports browser-based games. This is crucial for Web3 games that benefit from being as accessible as possible across different platforms.
GameMaker is also free to start and free for non-commercial use making it easy to get started with a one-time purchase license making it often cheaper than other options (no revenue share, no cost-per-install or other costs).
Additionally, Game Maker is well optimized for 2D gaming experiences. While 2D games are definitely possible with Unity and Unreal, they are more optimized for 3D experiences and those are the default game types for those game engines.
Some popular titles you might know built with GameMaker:
- Undertale
- Hotline Miami
- Katana Zero
- Risk of Rain
and more
Demo video
Conclusion
Want to build your own game with Paima Engine? There's never been a better time to get started!
- Docs: https://docs.paimastudios.com/
- Codebase: https://github.com/PaimaStudios/paima-engine
- Templates: https://github.com/PaimaStudios/paima-game-templates
Want to just follow along? Find us on social media:
- Youtube: https://www.youtube.com/@paimastudios
- Discord: http://discord.gg/jZ59ArVaxv
- Reddit: https://reddit.com/r/paima
- Twitter: https://twitter.com/PaimaStudios
- Telegram: https://t.me/paimastudios