2023 Year End Review


With the year coming to a close, I wanted to provide a summary of all that’s happened with the engine in 2023 (168 releases since inception, 29 releases in 2023 alone).

Itch.io Rankings

In 2023, DragonRuby’s rankings have skyrocketed. On Itch.io, the engine consistently ranks extremely high under Popular (currently #11), Best Selling (currently #10), and Highest Rated (currently #3).

This will only continue to improve with every passing day as more and more people discover DragonRuby.

Turn Key Steam Distribution

Turn Key Steam Distribution was added to the Indie and Pro License tiers. You can manually create a Steam Distribution payload for any binary, but we wanted to streamline this process in its entirety. Turn Key Steam Distribution will create a payload for your game containing native builds for Windows, Linux, and Mac. It also uploads your game so that you can release it from the Steam Partner Page with one click.

Record/Replay functionality

DragonRuby’s hotloading capabilities are unmatched. On top of this, the engine provides a means to record gameplay while you’re developing. This recording can then be replayed against the current version of your code and trivializes bug reproduction. Here’s the feature in action:

Link to video demonstration

Sample Apps

The sample apps that ship with DragonRuby have grown to 175. These sample apps cover all aspects of the engine, from basic rendering to genre-specific reference implementations.

Here are some notable additions:

Camera

A number of sample apps specifically for camera work were added. These include sample apps that show camera shake, screen-to-world conversion (with zooming and easing), split-screen, z-targeting, and more.

Physics

Understanding the fundamentals of physics is critical to game development. I have yet to see a physics engine that was baked into a game engine that was easy to use and didn’t lead to rolling your own physics.

The physics sample apps in DragonRuby cover the fundamentals of Axis Aligned Bounding Boxes (AABB), Platforming Physics, Bouncing Ball Physics, and Ramp Collision.

Path Finding

The Pathfinding tutorials on Red Blog Games have been recreated in DragonRuby (with permission). These tutorials cover the fundamentals (from Dijkstra’s algorithm to A).*

C Extensions

We expose over 300 mRuby API functions. The C Extensions sample apps have been expanded to cover more advanced usages. This video demonstrates the speed of C Extensions by rendering 50,000 sprites at 60fps.

Link to video demonstration

Genre-Specific Reference Implementations

Full genre-specific reference implementations also ship with DragonRuby. These are just some of the topics/genres covered:

  • Ray Casting
  • Bullet Hell
  • Twin Stick Shooter
  • Dungeon Crawler
  • Fighting
  • Lowrez
  • Platforming
  • Interactive Narrative
  • Roguelike
  • Tactical (Isometric and Hexagonal)
  • Topdown RPG
  • Turn-Based RPG

Retroid Pocket 3+ Support

In addition to Steam Deck local deployment, explicit support has been added for the Retroid Pocket 3+. It’s an affordable test device that will prepare you to release your game on the Steam Deck and Nintendo Switch.

iOS Simulator Deployment with Hotload

The hotloading capabilities of DragonRuby have supported live code deployment to remote devices for a while now. We’ve added iOS Simulator as a remote hotload target. This video demonstrates the feature in action:

Link to video demonstration

Enhanced Web Builds

Web builds have been enhanced to support HD rendering and multi-threading. These web builds work on Chrome, Firefox, Safari, Brave, Android Mobile, and Mobile Safari (including touch support).

If you have a Pro License, your web builds will also support HD/HighDPI rendering.

Again, if the engine claims to support web export, then it better work across all major browsers and on all major platforms. A lot of work was put into making this is the case for DragonRuby.

Pixel Arrays, Sound Synthesis, and Portrait Mode unlocked in Standard License

The Standard License has been enhanced to include Pixel Arrays, Sound Synthesis, and Portrait Mode. These features were previously only available at the Indie and Pro License tiers.

C Extensions more mRuby API functions exposed

As stated earlier, we expose over 300 mRuby API functions. This gives you direct access to the underlying C API when you need to eke out every last bit of performance.

Render limits performance

The performance of the engine continues to improve. Here are the results showing how DragonRuby outperforms other engines:

Obviously, there is more to game development than just rendering, but I hope the links above show you that DragonRuby is plenty fast.

Community

Last but not least, I want to cover what’s been happening in the community.

Discord Metrics

Our Discord server has grown to over 2,000 members. I promise you that it’s one of the most welcoming and helpful communities you’ll ever join.

Rubber Duck Dev Show

The Rubber Duck Dev Show has consistently covered DragonRuby throughout the year. Here are some of the episodes: Link to episodes

DragonRuby Open Source Repo

Many parts of DragonRuby are open-sourced under the MIT license. You can find these artifacts here: Link to open-source artifacts

Palantir

Palantir is a tool that allows you to visualize your game’s state with high fidelity. You can find it here: Link to Palantir

We have a dedicated channel on Discord for Palantir if you need support.

DR Tiled

DragonRuby has Tiled support available as a library you can pull into your game. Here’s the link to the GitHub repo: Link to DR Tiled GitHub

Again, we have a dedicated channel on Discord if you need support.

Sockets

The community has been working on a sockets library for DragonRuby if you want to create high-performance multiplayer games. Here’s the GitHub repo: Link to DR Socket GitHub

Yep, you guessed it, we have a dedicated channel on Discord if you need support.

DR GitHub Actions

Community members have also been creating GitHub Actions for DragonRuby to manage CI (particularly useful for creating iOS builds on Mac hardware). Available in the GitHub Marketplace: Link to GitHub Actions

Review of Differentiators

Back in 2019, I put new game development on hold to build out this tech. I knew it wouldn’t happen overnight, and this type of undertaking carried with it a real risk of not panning out. Losing all that time would have been a huge blow to me.

Good news. Things ended up working out :-) We celebrated our 4-year anniversary back in November. I can confidently say that DragonRuby is the best engine for indie devs who want to build commercial 2D games. No other engine comes close to positioning you to succeed at releasing your dream game. Period.

It’s worth going into details as to what sets DragonRuby apart. I’m dead serious about the topics that follow. These aspects of the engine protect the one piece of capital we as indie game devs have: time.

Truly Hotloaded Dev Environment

The engine is truly hot-loaded. As you code, your game is updated live, in-place, while it runs, without losing game state. It works so beautifully, and the productivity gains can’t be understated. Other game engines claim that they can hotload, but they don’t deliver on this promise. We do.

Truly Cross-Platform

As an indie dev, every penny counts. You are leaving money on the table if you’re not releasing your game cross-platform from day one. DragonRuby is literally write once, run everywhere. No platform-specific hacks or workarounds. The export process for DragonRuby generates a binary that works on Linux, Windows, Mac, Raspberry Pi, iOS, Android, Web, and Steam Deck. We even generate Mac builds without the need for an Apple device. The community has created GitHub Actions to help you generate iOS builds on top of this.

As I’ve stated before, I’m dead serious about these capabilities. If an engine claims that it has cross-platform export, then it better work. Zero platform-specific hacks/workarounds.

Equitable Pricing, Zero Royalty

Tools must be developed sustainably. If you can afford to pay for DragonRuby, you should (and will). That being said, I will never put anyone out financially. If you are under 18, have an income less than $2000 per month, or are an educator using it as a vehicle to teach programming, then you get the Standard License for free (just email or DM me on Discord).

All license tiers (regardless of whether you got it for free) can be used to build commercial games, zero royalties. The Standard License is a one-time payment and is valid in perpetuity. For more information on the Indie and Pro License, take a look at the feature breakdown.

Indie Focused

The games I ship commercially are built with DragonRuby. I eat my own dog food. My extension, the engine, is tuned for the needs of indie devs. It’s a testament to the engine’s viability.

My livelihood depends on my ability to create and ship games quickly. The features of DragonRuby cannot be demoware. I can’t have game-breaking, platform-specific issues in the 11th hour. I can’t waste time leveraging a feature of the engine, only to find that it doesn’t deliver when things become marginally non-trivial. DragonRuby won’t screw you over with these kinds of issues.

Wrapping Up

I hope this post has given you a good idea of what has been happening with the engine. Expect Roadmap updates soon :-)

Files

dragonruby-gtk-macos.zip 110 MB
Version 164 Dec 24, 2023
dragonruby-gtk-linux-amd64.zip 108 MB
Version 163 Dec 24, 2023
dragonruby-gtk-linux-raspberrypi.zip 107 MB
Version 155 Dec 24, 2023
dragonruby-gtk-windows-amd64.zip 107 MB
Version 163 Dec 24, 2023

Get DragonRuby Game Toolkit

Buy Now$48.00 USD or more

Comments

Log in with itch.io to leave a comment.

Love it! Thank you so much for all your hard work in building this beautiful engine and helping hobbyists and indie game dev hopefuls alike have something so amazing to work with!