Category Archives: Development Blog

Wasteland Orchard Released!

This year I took a short break from Order of Athanor development while I took care of some IRL stuff (mainly moving and taking care of some home projects). During this time I took on a side project, which is now released!
Wasteland Orchard is an idle/roguelite game and is completely free, using rewarded ads for monetization.

Description

The world is a barren wasteland, ravaged by storms and radiation. Can you grow an orchard to rebuild civilization?
Select your desired resistances and fruit attributes as you cross-breed more trees and plant more seeds! Explore more of the procedurally generated map each run to gather more resources and trade with townsfolk.

Your trees in Wasteland Orchard continue growing while your away so check back daily to harvest, plant, build, and explore more of the world!

  

Gameplay

Wasteland Orchard is an idle farming game with roguelike elements. The goal is to survive progressively more-destructive storms as you expand and grow an orchard of trees. Choose which resistances and other attributes you want for your trees by cross-breeding trees and carefully selecting the best seeds. Time passes and trees continue to grow and produce fruit while you are away in typical idle game fashion, with the world map and game events being randomized every run.

The play-style is to check on your trees, harvest fruit, and expand your orchard once or twice or a few times a day if you like, making use of the refilling time-warp feature which lets you fast-forward time for a bit. With various gifts, restocked shops, new trade offers, new upgrades, and new animals arriving at your orchard, the daily check is meant to be always rewarding and interesting for the player.

Collect rare golden seeds to acquire permanent upgrades that persist through future runs!

I have a few content updates planned for the coming months as I shift back into Order of Athanor development, so if you have any ideas or feedback on what you liked or would like to see in Wasteland Orchard, let me know!

-Dustin

nom

Order of Athanor – A Dynamic Action RPG where Players Design the World

Order of Athanor is an action RPG currently in development where the entire game’s world will be built as directed by the players, featuring a 2 week cycle of suggestions, voting, and a game update that adds the new content. It will be released through Early Access on Steam for PC, with a TBA release date (likely 2026).

Every two weeks (called an “Epoch”), the player community will suggest virtually any idea they want for content they would like to see in the game. The suggestions will be compiled and then voted on in-game by the players. The top-voted suggestions will then be added into the game in the next epoch. I’ll write some more details on this as it’s own post soon, describing the timeline, voting points, and limitations in more detail.

A mockup of the poll
Gameplay

The gameplay will be a mix of combat similar to the Mana series, with an Alchemy system similar to the SNES classic Secret of Evermore, a personal favorite game of mine. This is like “magic” in most RPGs except ingredients are required to cast spells instead of MP. Spells will be very powerful and often used in strategic situations to provide more interesting strategic combat vs spamming the same spell multiple times, to complement the ingredient-based mechanics. The game is party-based, with the ability to freely switch between characters at any time when they are in your party. The ability to play co-operatively with your friends is something I’d love to include if the demand for that is great enough.

In addition, I’m focusing a lot on making the fundamental battle mechanics as fun as possible, with a variety of spells and skills available to use. The environments will be very interactable by both the player and enemies, with various objects available to be thrown, burnt, frozen, exploded, rolled, or otherwise used to suit both the player and enemy’s combat strategy. Dungeons will also feature a variety of Zelda-like puzzles both required for completion as well as particularly difficult optional puzzles for bonus items. There will be multiple ways to defeat enemies, secret passages and treasures to discover, and various side-quests available from the world’s wacky citizens.

Story and Characters

The game begins with a small team of adventurers Laila, Olivia and her dog Barry, Theo, and Dr. Graves exploring a jungle to search for some ancient ruins that are rumored to hold a mysterious power. This section makes up the prologue of the game and will provide the player with some content to play immediately on the game’s release and familiarize themselves with the gameplay mechanics. The party finds more than they bargained for in the temple when they are ultimately transported into the strange, new world of Athanor, which is empty initially but eagerly waiting to be built with whatever players can imagine for the first Epoch.

Within Athanor, the party must work both together and against the native citizens of the world, to find out what the heck is going on, and to ultimately find a way to return home. While exploring this new world, you’ll encounter a wide assortment of powerful, suspicious, or curious characters, including more playable characters that have a shared interest in helping you with your mission.

Every character in the game is well aware of the world being built around them, and this theme of world creation is in fact central to the story. They will eagerly rush to explore new areas and meet new citizens of this unpredictable world, with varying motives of both good and bad. The fundamental story will be fully written when the game is released, with it’s focus on the interpersonal relationships of characters and communities to allow for flexibility as the world is quickly built around them.

You’ll be able to freely move with no interruption during optional dialogue sequences like this one

Order of Athanor is an ambitious project, but I’m extremely excited to work on it. I have a very talented team of Artists, Audio Designers, and Writers helping me with this project, with more possibly being added later in development to meet demand during release. This is an extremely unique project, but it’s an idea I’ve had for several years, so it’s wonderful to finally be able to work on it today.

Community is critically important to this project!

If this game sounds interesting to you, I’d love to hear what kind of content you’d suggest for the world of Athanor, so please leave a comment either here or on any of my socials! I invite you to follow the development in my community Discord server, or follow me on Twitch where I stream weekly development streams. I’ll be streaming regularly during the development of the game, and after release, at least once an epoch to go over the suggestions for that epoch.

If you’d like to see past streams, I post those on my YouTube, and I also post quick 1min shorts to recap what I finished on my streams on both YouTube and TikTok.

You can also catch new updates and read about the development progress on the game  here on my blog, or Twitter, Facebook, or Instagram.

Watch the development on Twitch        Join the Discord Community

Exploring using ChatGPT as a Game Development Tool

I’ve been exploring using OpenAI’s chatbot ChatGPT as a gamedev tool a little bit and have come up with some mixed results. Sometimes it is very impressive but other times it only appears impressive but is actually incorrect. Most of the time for me it’s somewhere in the middle area of “That could sometimes be useful I guess.”

Code Optimization

The first thing I tried was asking it to optimize a bit of code that was a small, simple function that I just thought looked ugly when I went quickly looking for an example to give ChatGPT. It’s a function that takes a 2D point and quad parameters, and returns the minimum distance from the point to a point on the edge of the quad, or 0 if the point is already inside:

I was initially extremely impressed! This code looks nicer, and it says it’s more optimized. I was particularly impressed with how it has no definition for my custom TileNavMeshQuad class, nor was it explicitly told that the pos property of the quad corresponds to the top-left corner of the quad, but from my existing code it correctly guessed how everything is structured.

But wait – this is incorrect; this ignores diagonal distances to a corner of the quad for when the point is both beside and above/below the object. Let’s ask it to fix that. In thinking of how to word my request of what I wanted, I decided to just be pretty vague to see it if understood what I meant. Also as an aside I felt kind of weird being polite to a robot? Like I intentionally didn’t want to personify it. So I dropped the please from my request.

Awesome! It understood what I meant, and now includes diagonals. I was honestly kind of caught up in excitement at this point, thinking I was getting some nicer, optimized code. But I notice one more error, it doesn’t return 0 if the point is in the quad like my original function did so I tell it that and it fixes that problem:

Ok perfect! ChatGPT has rewritten my code to do the same thing but faster. So I go to test just how much faster…

And I find that it’s in fact about 5x SLOWER than my original code. So I tell it:

Cool, it adjusts the order of some checks to improve the performance. I do another test and this is faster, but still 1.5x slower than my original code. I didn’t want to just say “faster” again, maybe I should say “as fast as possible?”

Here ChatGPT stored some calculations in some variables once so that they don’t need to be calculated “every time,” but in this case they’re still only used once. So this basically does nothing. I tell it:

Some very general advice that doesn’t help here. It’s at this point I’m realizing none of this really helped me at all. I took another look at my original code and noticed it was in fact already very optimized. I know ChatGPT can optimize ugly code from seeing some examples from other people, but it doesn’t actually test out code. It seems to just confidently provide some code and tells you it’s optimized when the ideal response to my original prompt should be “I don’t know how to make that faster.”

Idea Brainstorming

I switch up tasks and think more about things that would actually help me in my current project. Maybe some brainstorming?

This was pretty cool. I had already thought of pretty much all of these things, except for pools of water and cobwebs, which are good ideas I may now consider. The drawback is it’s all fairly generic ideas, so you’ll still need some individual creativity if you want your game to stand out more, but perhaps this could be a handy time-saver for some tasks? The alternative is either googling or browsing various sites with collection of concept art or photos for inspiration.

I try another example:

A pretty extensive list of monsters, but they are of course fairly generic. It does provide some nice little explanations of why they are relevant to a desert.

I decide to do a little test. I decide on a new area for monsters, and first give myself one minute to brainstorm on my own to which compare to ChatGPT’s. I decide as an example a swamp environment, and in one minute came up with:

toads/frogs
witches
mosquitoes
giant bugs
giant birds
snakes
leaping fish
spiders
mud golems

I then ask ChatGPT to do the same:

Not bad. There is a bit of overlap in our ideas, but ideas like slimes, goblins/lizardfolk, the undeads that were trapped, and large predators are all pretty different than what I came up with. Nothing amazing, but for an instant response from just typing a response, it could be a nice springboard for ideas on a new area.

I feel like I’m not using ChatGPT to it’s full potential, which includes longer conversations, so I provide a more unique task and ask it to elaborate more on the swamp monsters:

Some possible fun ideas to consider! I like how it tries to explain the connection between the monsters and ruins, providing reasons for their existence and behaviors. This is something that my quick barebones list was lacking.

Pros and Cons

I’m still searching for ways I would actually use this and so far the brainstorming ideas seems to be the most helpful. I think tasks like that may work best since they are very open-ended and there is no one correct answer, unlike most coding problems, where ChatGPT may confidently give you an incorrect answer.

It is pretty helpful at explaining code, however, as well as spotting errors. These could be a nice use case. In one test I took this random reddit post of someone asking for help with a complex regex expression, copy and pasted their post verbatim to ChatGPT, and was given the same correct solution as the top commenter of that thread, which was impressive. ChatGPT could possibly drastically reduce the number of reddit and stackoverflow threads of “why isn’t this code working?”

There are a handful of cons as well, however. In some other attempts I asked for some help with a general issue I faced with some collisions in Unity, asking how I could achieve something, and ChatGPT explained a non existent feature of “conditional fields” for physics layers.

Sometimes people talk about ChatGPT as if someone without programming knowledge can use it to make a game which is far from the truth. You still need knowledge to test it’s answers, and tell it when it got things wrong. For me I was originally most interested in using it for coding tasks but that seems unlikely now, aside from very occasionally tasks.

It is also still limited in scope to what you give it. I keep an (embarrassingly long) todo list of tasks I need to do to fix things in my game, and went through it trying to find tasks that ChatGPT could help with and didn’t really find anything. I tried a few but didn’t have any luck getting something useful. The main problem is that for example my todo task of “fix game pausing issues during cutscenes” involves my cutscene system, entity movements, and other map updates spread through hundreds of lines of code across dozens of different classes and subclasses that’s needed just to understand the system enough to fix the problem. I’m sure it won’t be long until a bot can be given access to your entire project for this however.

ChatGPT is so open-ended on what it’s capable of that it’s kind of difficult to think of new use-cases, so I’m sure new ones will pop up as people continue to explore its capabilities and as the model is improved. It’s also worth mentioning that ChatGPT itself is a tool that can take some practice to efficiently use. Currently I don’t think it’s a perfect magic answer to any individual problem, although it does show promise with being helpful at some tasks.