Latest blog entries
I also post updates on Patreon, where you can get email notifications of new posts.
You can download a copy... read more
Alpha 5 is now live, with new content, systems and bug fixes! 🥳 You can download your copy on itch.io, or by using the embedded link below:
If you find any bugs, issues, balance problems or suggestions, please let me know on Discord or by email so we can keep improving the game! Thank you to everyone who have played previous versions and sent in their feedback and ideas. 🙂
Revamped diary engine
The diary engine has had a major overhaul, thanks to a grant from the NZFC Interactive Development fund. Rather than pawns writing diary entries immediately after an event occurs, the event may now become the topic of a future diary entry. As soon as the pawn wants to write a diary entry (generally once a day), they will select the most important topic to write about at that time.
We’ve added in pawn traits, which affect how they deal with different situations. For example, a pawn that loves digging will work faster if... read more
Back at the start of last year, my plan was to release the first Early Access (EA) version of Adaptory towards the end of this year. While I could release Adaptory before the end of this year, my understanding of the Steam Algorithm™ is that your EA release should be as good and polished as possible, so the game can get lots of hype and positive reviews to climb the discovery queue.
Therefore I’ve made the decision to release EA in the first half of 2024, and to not go ahead with a Kickstarter campaign. Our recent grants from NZFC and CODE has made these decisions possible, and we’re going to release a much better game as a result!
The specific month is still TBA, but the plan through to EA includes:... read more
Hi, Adaptory fans! Story Director Cass chiming in here with a little bit of background on how the story elements of the game are progressing. Hopefully I’ll be able to provide a little insight into what we hope to achieve with the narrative elements of this game, along with some updates on what we’ve done so far.
When Jevon first contacted me about coming on board to help with the story elements of this game, I was excited but a little intimidated. I’ve made a few text games in the past, and mostly work in the theatre world, so I’m... read more
I’m very excited to share that we will be at Gamescom Köln in August!!
The trip is partially funded by CODE NZ, who have been incredibly supportive! New Zealand is extremely lucky to have this organisation supporting NZ gamedevs.
While we’re there, I’ll take some photos and share them on Patreon 😀read more
Alpha 4 is now live! This release does not have any new content in it, but it has a rewritten data model that should run simulations up to 2-10x faster. All things going well, this should be the final model used through to EA/1.0 release.
If you’re able to download a copy and give it a go, please let me know if you find any weird bugs! I’ve had to touch almost every part of the game so there is bound to be a few areas I’ve missed.
You can download a copy on itch.io, or by using the embedded link below:
... read more
(Warning: technical gamedev post)
As alluded to in my previous post, I’ve spent most of the last month or two working on the internal data model of our base building/simulation game Adaptory, to improve the performance of the background simulations. At a high level, it’s looking really good: games now run on average 10x faster (depending on the complexity and size of your game world).
In the rest of this blog post, I’m going to do a bit... read more
It’s been quite a while since the last blog post, because I’ve been deep in the weeds with data structures and modelling.
During our demo at Armageddon Expo WLG I found that the game would start to slow down after about 15-60 minutes of gameplay. Upon further investigation it was due to certain algorithms and the way data (in particular, items and errands) was being stored and modified every tick. I want the game to support big worlds and huge bases, so this had to be fixed!
The good news is that the majority of the architecture... read more
I’ve released a small update to Alpha 3 today, which has a number of small bug fixes, and also introduces fullscreen mode (
F5) and experimental support for UI scaling.
You can download a copy... read more
Alpha 3 is now live!! 🥳 You can download a copy on itch.io, or by using the embedded link below:
This release is packed with new systems, gameplay, sounds, and art for you to play with. And there’s a lot more coming!
If you find any bugs, please report them to our Discord server or send me an email. We’ve tested this build on a number of machines and setups but I’m sure there’s a few sneaky bugs hiding in the woodwork. Thank you for all your feedback and support while we create Adaptory 🙂
In Alpha 3, we’ve introduced random world events that will challenge your base’s ability to adapt. The frequency and intensity of the random events increase based on the number of tiles that you have dug, and... read more
Alpha 3 is fast approaching, make sure you sign up to the mailing list to get notified! Over the last two weeks I have been focusing on improving the gameplay by adding two major new features: pawn happiness, and beds.
Pawns now have a happiness meter which will go up and down based on what they’re experiencing, and later this year we’re going to use pawn happiness to trigger different types of diary entries.
To start off, pawns will work faster when they’re happy, and slower when they’re particularly sad; they’ll also express their emotions using... read more
Over the last week I’ve been introducing random world events to Adaptory. As you play through the game, your base and team will be challenged with random events, starting with:
- Solar flares, which shut down all of your electrical buildings for a time; and
- Meteors, which crash down from space and make a mess with their contents all over your base.
The intensity and frequency of the events will increase based on your progress... read more
I’m really thrilled to be able to share this news: Adaptory has been announced as a successful applicant to the NZFC’s Whakawhanake Te Ao Niko – Interactive Development Fund!!
The news hasn’t quite settled in yet, but we’re honoured to be alongside some really inspiring projects from other New Zealand studios. This grant unlocks some funding which we’ll be putting into developing the character generation, diaries, and story-telling events of Adaptory.
Thank you so much NZFC!read more
I’ve finished most of the new liquid and gas shaders and they feel a lot nicer. Here’s a video comparing the before and after:
I’ll be using these new beautiful graphics to update the Steam page for Alpha 3, which I think will help with wishlists a lot!
Over the weekend I also quickly put together a brand new mechanic. One of... read more
Over the last week or two, I have been revisiting the way liquids are rendered in Adaptory. And I think they look awesome!!
I’ve received a lot of feedback about how the gas and liquids weren’t very clear in Alpha 1 and 2. I found that the rendering was quite slow on less powerful computers. And I thought I could make them look a lot better.
I’ve essentially rebuilt the liquid shaders... read more
Alpha 2 is now live!! 🥳 You can download a copy on itch.io, or by using the embedded link below:
Over the last few months I’ve added electricity, refined diary entries, added in the first background music, fixed a bunch of bugs, and generally improved the whole user experience. If you’ve submitted any feedback, thank you!
Very excited to share that Adaptory is now listed as Coming Soon on Steam! 🥳
If you can wishlist and share the game, that will help a lot 😀
Today/tomorrow I’m releasing Alpha 2 of the game on itch.io – which involves sending out mailing updates, blog posts, writing release notes, all the jazz. There’s a lot more interesting gameplay in the next version, I hope you all enjoy it.read more
Happy new year again 🎉 I hope you’re having (or had) a great break. I took the month of December off to recharge, but now I’m back into gamedev (and loving it). 2023 is going to be a big year!!
Right now I’m working on a new gameplay mechanic that should be in this release. Introducing: electricity!
Some of the new buildings include:
- Consumers, which require power to function (such as lights or refinement machines);
- Generators, which generate power on demand (such as solar panels or coal burners); and
- Batteries, which store any excess generated power, to be released later.
There are also... read more
Adaptory Alpha 1 is now live and free to play!! 🥳 You can download a copy on itch.io, or by using the embedded link below:
This is a first alpha that anyone can download and play for free. It’s got about 15 minutes of gameplay – it’s mostly showing off the core systems and gameplay mechanics.
If you get a chance to play it, I’d love to know what you think! I’m particularly looking for bugs, crashes, or anything that doesn’t make sense.
This is the first release of many – next up I want to add... read more
I’ve been adding lots of cool new things to Adaptory as we ramp up to the alpha release! 😊
For the alpha release, there will be a simple goal; you need to send a distress signal using your transmitter. In order to do that, you’ll need to collect the brand new resource transmitite and supply it to your transmitter.
There are now doors as well. When closed, doors are impervious to gas and liquids. You can place them as blueprints in the... read more
(Warning: technical gamedev post)
One of the reasons I started making Adaptory is that I wanted to try making a game that has multithreaded simulations. Most simulation games have a loop similar to:
- Take current game world
- Apply a bunch of simulations
- Save the changes
- Go back to 1
Generally this loop is done on a single thread, meaning the update performance is limited to the processing power of your CPU. I like playing huge game worlds and I’m always frustrated when a game I love starts hitting limits.
On the other hand, most computers these days... read more
A nice short update! Pawns now wield magical multitools that they use to do things like digging, building, and supplying errands.
I’ve also added a little animation to show when they’re sleeping, as opposed to dead:read more
I’ve been such a busy little beaver this month! One of the two major branches I’ve been working on is now complete… pawns now have hair styles, thanks to @careously!
You’ll see the pawns’ hair at the start of the game, and also when they’re not assigned to a specific job. At the moment, the hair style (along with pants and shirts) is assigned randomly, based on their gender (m/f/x).
In this update,... read more
We’ve finished up the initial character art for clothing, skins, and expressions. and I think the pawns look great. They have a lot more personality now, and it should be fairly easy to add more options.
I’m still hoping to release a public alpha on itch.io this month, however the timing might be a little tight. Wish me luck!read more
Which meant I had to rewrite the graphics code. That was three weeks of work I wasn’t expecting!
But – Adaptory now plays on Mac OS! The game is unoptimised and the builds are unsigned, but it’s a start.
Very excited to be finally sharing this news! Adaptory is getting new art by @careously!
Over the last few months I’ve been exploring these new styles with Care and I’m really happy with where we’ve landed. It is quite a change – the new style is less gritty, and more playful – but I think it’s going to look awesome once it’s finished. Seeing the new art come to life was incredibly rewarding.... read more
Over the last week I’ve been revisiting the story/setting, the high-level development timeline, and the marketing plan. Today, the plan is still to go via Itch, then Kickstarter, then Steam/Epic. I think it might be a good idea to get an early copy on Itch ASAP so I can start collecting feedback and ideas, and then gradually publish new features every 4-6 weeks.
(And a quick reminder that if you’re on Patreon, you can download a playable pre-alpha of the game today!)
In the meantime, work on the user interface bits and pieces continues:
It’s been a while since the last blog, probably because there’s a lot of stuff happening in the background! While I’ve been waiting for these moving pieces to land, I’ve been spending more time – again – on the user interface.
Since this game is designed to have playtimes of 10-40+ hours per session, the quality of the UI is important. It needs to feel comfortable, pleasant to use, and fast.
So I’ve fallen back to my design library roots and I’m putting together a simple UI kit. Despite being constrained by an incomplete CSS 3 specification and a few layout bugs, I’m pretty happy with the results so far:
I think tooltips are going to be important to be able to display context to the player without overwhelming them with text:
Over the last week, I’ve been improving how to give orders and errands to your pawns. While they’ll normally be autonomous, sometimes you might need to help them get out of a hole. Which they may have dug themselves into.
So, I’ve added a “move to…” command:
You can also now cycle through all of the things present on a tile. Each selection dialog shows you more information, such as what the thing is made out of, what... read more
After the last post where I talked about adding spatialised sounds – that is, sounds that feel like they exist in a two- or three-dimensional world – I continued looking into adding reverb to the sounds, to make the game world sound more real and alive.
Originally I thought the best solution would be to pre-compose sounds with reverb at different distances, but because the game camera can move so fluidly, it didn’t work. If you moved the camera, sounds became choppy and uncomfortable.
So I’m happy to have come up with a solution using the native OpenAL bindings, where I can add any number of filters and effects to playing sounds:
I’ve spent most of the last week on budgeting and applications, but in between the spreadsheets and the writing, I’ve been working on a framework for creating in-game events. I’m planning to use this to help deliver the story and setting for the game world, to create tutorials, and so on.
At the same time, I’ve also been revisiting the sound engine. I’m adapting gdx-sfx that provides 3D spatial sounds. When you zoom in, nearby sounds get louder, and when you move the camera, far-away sounds get quieter:
In the future I’d love to extend... read more
Very excited to announce that the game now has a name!!
Adaptory is a riff on a couple of themes that form the core of the gameplay:
- adapt, because you will be challenged to adapt and thrive to a deep and changing world;
- story, because I’m hoping that the game will help you to create your own stories; and
- factory, because deep down, I love base-building games that include setting up production industries and automation (like Factorio).
📆 Release schedule
The game will be... read more
This week, I’m focusing on my application to Kiwi Game Starter 2022, which “is the NZGDA’s annual game development award and startup programme for interactive games businesses and startups.”
The submission involves lots of business and marketing practice, which is really good for me. But more excitingly, the submission requires a playable demo of your game!
Which means that next week, I’m going to be releasing a very early pre-alpha to my $10 Patreons. The pre-alpha is very short, and only on Windows, but it is playable.
So if you’d like to... read more
It’s been a good week. I’ve implemented sleeping/passing out, updated some icons, cleaned up the animation machine logic, and added more depth to the element simulation.
(Now, pawns will gain – or lose – heat from their surroundings. This doesn’t have any immediate impact, because they don’t feel hot or cold or pain yet.)
I also spent time revamping the sound effects, which was actually a lot more fun than I expected. Pawns now make footstep noises when they walk around, making the game world feel more alive.
That means I’m happy to now share the first unedited demo video of the game, complete with sound:read more
For the last week, the most interesting things I’ve been working on have been the pawns – your friends that have found themselves in this awkward base-building situation, and with your help they will survive, build and thrive.
Previously if a pawn was running low on oxygen, it wasn’t very obvious; they’d become sad, and eventually run to somewhere that did have oxygen, but that was it.
Now pawns will show you that they’re running out of oxygen with a helpful bubble:
It’s... read more
(Warning: very technical gamedev post)
I did some quick testing on the performance of Java and Groovy (my preferred scripting engine), to see where various game logic should occur, if it’s being called potentially tens of thousands of times per second.
Using Java 1.8 on Windows, Groovy 3.0.8, for 300k iterations of a simple
a < bcheck. I ran the benchmark five times so that the JVM and... read more
Over the last week my focus has been on the physical materials that are present in the game.
The first task was to select which elements and materials I actually want to be present. One day I’d love to support as many materials as possible; but for now, focus is necessary.
I’ve identified 43 elements and materials that I’d like the game to support. These include your standard water, ice, steam, and oxygen, which I’ve already demoed so far; but I also want to support some slightly more esoteric ones, including molten plastic, concrete, and super-heated gold. I’d like... read more
I’ve continued to focus on user interfaces for the last week, and I’m happy with where it’s at now. I’ve finished a lot of things that should form a stable foundation for all my work going forward:
👍 Debug console
There’s now a debug console, which you can access with the tilde key
(Internally the console is using Groovy, which means the console has access to all sorts of amazing features. You can even do math with it.)
👍 Better sandbox... read more
I’m deep in user interface code again.
My previous approach was fine, but it was a quick and dirty implementation. I knew I’d need to clean it up before I can start adding more complex interface elements (like dialogs, menus, events – all the things you need in a game).
It’s been a long time since my last post where I wrote about the first liquid and gas shaders in the game. Since then, I have been deep in the weeds with two deeply interwined challenges, so it’s been difficult to write about them separately!
The first challenge I tackled was having variable liquid levels; a tile of 1000kg of water shouldn’t look the same as 1kg of water.
For now, I’ve implemented this with a fairly basic tileset. It’s better, but I’d like to revisit it at some point in the future. I have an idea of doing... read more
(Warning: technical gamedev post)
I noticed the following tileset layout is quite popular in asset packs:
But at first glance I couldn’t work out how you could display ostensibly 28-1 different possibilities (since each tile can have eight neighbours) with only 47 tiles.
Being stuck in the weeds continues, with great success! Over the last two weeks I have focused on the rendering code for the game, to make the game more pleasant to look at.
Using a concept I’m calling “texture offsets”, tiles keep track of their relative movement, which allows the illusion of gas expanding:
I’ve been deep in the weeds of the physics/element simulation, which I think will be a big part of the game.
Hoping to have a bit more to show off next week, because there’s still a few bugs I’d like to iron out first, but here are two shots of the simulation in action:
Happy new year! 🎉
I had a refreshing break with lots of games, including discovering Timberborn, which is a great base builder with a novel scarcity/weather mechanic. And beavers!
I used my first week back as an opportunity to reflect on my progress to date and where I’d like to go. As part of that I fleshed out my very first game design document.
And whoa, there is a lot that I’ll need to implement in order to achieve my vision for this game.
I then attempted to capitalise on my experience and skills as a software developer/team... read more