1. Odd Realm
  2. News

Odd Realm News

July 2021 Dev Log

Hello my friends!

I hope everyone is doing well and today I wanted to update you all about Odd Realm's 0.10.0.0 version.

I'm making some fantastic progress but I'm still working on finishing things which I had started earlier in the year. Namely, a bunch of room related changes and improvements. I had mentioned in a previous post that I had overhauled the room UI because it was desperately needing some TLC. At the time, I wasn't able to finish that work because I was running into a lot of core game issues and decided to fix that up. As you are all aware, that added quite a bit of time to 0.10.0.0's development timeline. Anyway, now that that stuff is out of the way, I came back to finishing up those room changes/additions. I'm very excited about the changes and I think they are going to add so much to the game, so I want to show off some things.

If you are unfamiliar with the new functionality of rooms, take a look at this article which describes them thoroughly: article.

To summarize, rooms are block designations which can be assigned functions, owner groups, and stockpiles. This means you can mix and match these things to create your own custom room. For example, a Home with a bedroom function, occupant owner group, and food/water stockpile.

But let's take a look at what that would practically look like:

Here, I'm taking the Storehouse room and assigning it to an area that I want settlers to bring items to. The Storehouse is a very basic room that has the sole purpose of item organization. It comes with the following template settings:


'Hauler' owner group: This is a preset that auto-adds anyone with the carry skill active to the room. Each owner group can be assigned to any room functions. In this case, Storage.


'Storage' function: This function, like all functions, can be added to any room and lets entities auto create carry jobs. This will ensure entities move items into this room based on the assigned Stockpiles.


'All' stockpile: This is also a default preset for the room which just states that all item types are allowed. It also shows (as you can see in the gif) which items are currently in the room. Players can mix and match item types with item names. i.e., Resources + Beverages + Coal. Stockpiles are also assignable to any functions. In this case, it's assigned to the Storage function, and, so, entities assigned to the Hauler group will make sure items specified in the stockpile get placed in the designated room area.

At this point, I'm sure you're thinking, 'wait, isn't this just a zone designation?' Yes! That's exactly what this is, but now you have waaaay more control. And because this has all the functionality of zones, I've decided to remove them completely as they are redundant. Don't worry. It's still super easy to designate item areas using this new rooms functionality because everything is already preset.



You can probably imagine how this stuff will work with other room functions. The 'Farm' room, for example. It has your 'Farmer, Forester, and Shepherd' owner groups, your 'Garden, Arboretum, and Animal Enclosure' functions, your 'Food and Water' stockpiles. Now, you don't have to have that specific set, and that's the beauty of the system. You could just have 'Farmer' + 'Garden' + 'Seeds' and be off to the races. I have created default templates to designate these things, but you can create and save out your own, and they'll appear on the room designation toolbar.

Outside the room stuff, I've added/changed a few other things:

Players can now hold 'SHIFT' to select blocks which locks the block's tooltip to the window. This lets them inspect the tooltip contents.


Also, I've added the new 'pregnant' and 'companion' statuses to entities that can get pregnant and have companions. Pregnant entities take a few days to have their child. This is really just a little 'realism' touch to replace children randomly spawning.

To wrap things up, let's talk about timelines. I'm still doing a lot of work on the room stuff (little features/polish/bugs/tests), and I'd say I have about 2-3 weeks of work left. After this, I'll need to jump onto getting the beta build ready, which will take 2-4 weeks. I'm shooting for having the beta ready for the end of August, but I don't want to promise anything. That's just my own personal goal. It could easily take longer, but I want to give you all a bit of an estimate because you wait so patiently.

Ok! That's it for now. Hopefully you're stoked about these new things. I really can't wait to get the update out there and into your hands. Thanks again, everyone, for being so supportive and motivating me.

Waylon

June 2021 Dev Log

Hey everyone!

Today's dev log will be rather dull because I don't have a whole lot of new content to show off. I'm at the stage where I'm working on bugs, polish, and finishing implementation for previously shown features. That's good, though, as that means the date for putting this update into beta is drawing near. I hate not being able to tell you guys a specific date for when that will be. I want this to be my last dev log before then, but due to the scope and complexity of the update, there's a lot of hidden tasks that arise as I go. This update is more like a sequel than it is a general update and as a result is an absolute ton of work for me. Thank you for understanding that, and for being patient with me. :)

Now, I've seen a few comments recently about how long this update is taking and some have even expressed that there is nothing in this next update so I wanted to recap some of the things that have been added:

-Tech tree. Allows for Humans to unlock magical props/items.
-Capturing mechanic and respective props.
-Diets. Allows players to specify the diet by race and indicates what foods are harmful or have negative long-term effects.
-Unlimited save slots plus a bunch of extra save info is now displayed.
-Variable map sizes. Maps can now range from 16x16x16 up to 256x256x64.
-New hills biome variation which allows for previous biomes to be flatter.
-Player progression is now saved to realm, rather than tile. Things like diets, uniforms, tech tree unlocks, currencies, etc, will be saved even when the player's settlement is lost.
-Players can now settle any tile, even ones they've abandoned or had a game over at. Also, game overs will not force players to start a new settlement. The game will continue to play for as long as they player wishes. They can choose to start a new settlement at that same tile, or start a new game, or load the last save.
-Room functionalities. Players can now mix and match room functionality to allow for more specific room clusters. i.e., A room with a bedroom, kitchen, and workshop could be set as a room template that you name 'home'. The game has several default templates, but players can add/remove/edit new templates if they choose. Rooms can also be placed on several z layers.
-Combat and move order entity states have been re-written to be less buggy.
-62 new tools and weapons.
-A billion QoL improvements: draggable windows, lists for active zones/jobs/rooms, modifier keys for hotkey edits, tooltip additions/improvements, better text contrast, item and entity tracking can be added/removed/edited on the top bar and clicking top bar items will take you to the next point, and much, much more!
-Entities will no longer be able to scale any height. They can climb a max of one tile up, but will need ladders/stairs to climb higher.
-Light permeates the ground layers now. This is to allow for better exploration underground, like you'd see in a game such as Terraria.
-Save/load speed improvements and general performance improvements. I re-wrote the entire backend of the game to allow for bigger maps and so the game's performance has been drastically improved.
-Transparency for a bunch of textures. Because I re-wrote the renderer, I'm able to properly do transparency for things like glass. You can sort of see in the below gif that the house has some transparent windows as a roof.

And the list goes on... There are a million smaller changes, fixes, and polish tasks I've done over the year and if you'd like to see them, you should check out the Trello where I jot down finished tasks, or checkout my previous dev logs.



One small thing I can show you is that a lot has been added to the game's overlays. Above you can see what's displayed when building, for example. One addition is the path permission up/down arrows to indicate where entities can move up (green arrow) and down (red arrow). With the new restrictions on climbing height, this is an important bit of info, which will help players plan out castle walls and such.

Ok, back to work for me. Thank you so much everyone for your feedback and encouragement. I appreciate this community.

Take care


May 2021 Dev Log

Hello!

Today I'm going to show off some stuff related to migrating and saving. I get quite a few comments regarding these two systems and how they can be improved. Especially the migrating system which is pretty much just a prototype in the game. The save system also needed an upgrade, not only because it didn't have that many features, but because I literally had to upgrade all the tech for it to make it so players are able to go back to settlements they've abandoned or been killed at.

Before I get into that stuff, a quick note on where this sisyphean update is at. I'm getting closer each day to being able to put this out into beta. This save system stuff slowed me down a bit because it's so complicated to save out a player's session based on information that spans the game, and individual tiles you settle. So, I still don't have any hard date to provide as for when the update can go into beta. Thank you for waiting so patiently.

Alright, first up, migrating. I'd say a large majority of Odd Realm's negative reviews/comments relate to migrating and how punishing/wonky it can be. Which sucks because I added it in as a fast solution to let players leave their current settlement, not to be the final product. And, because I had to start working on it to allow for the re-settling of tiles, I figured I'd dedicate some hours to fixing it up.



Here are the main changes:
  • I've made it so the overworld works with the game's timescale. This means that all the overworld stuff will move along with your current settlement time. Later on in development, there will be hundreds of entities moving around the overworld, and their movement will determined by this moving game time. Need to request a merchant to stop by? It'll take 3 days of game time to send out a messenger, then have a merchant arrive. Or, at least, that's the vision. For now, because time passes while at this map, your migrating entities will also become hungry and thirsty based on this too. Which leads to the next point...
  • The migrating party no longer uses some bespoke system of food management for survival. They use exactly what they would while walking around your settlement. So, Humans will, say, get hungry and thirsty over time, then try and eat and drink items that you've brought with you. This means that the game is waaaaay more forgiving whereas, before, you'd lose settlers super quick to starvation and such. You now have a lot of warning to tell you someone is starving and about to die, rather than having a random party member die. Which was annoying because it could have been someone super important to you.
  • I've done a complete overhaul on the UI to let you easily edit your party members and their inventories.



  • You can now toggle the overlays to hide/show FX and UI which might obfuscate your view of the terrain.
  • You can now return to a settlement you had previously played. Every tile now saves out its information.
  • Many of the player settings are saved to the game session rather than to individual tiles as they were previously. This means things like uniforms, room templates, diets, and tech trees are maintained as long as you keep playing the save file.
  • Added a time menu to the overworld screen to help you control game time.
  • Players no longer have permadeath and can play previous tiles.
  • Added overworld indicators to show things like current player settlement, and migration party position.




These additions don't mean that the overworld map is done by any means. As I've mentioned before, I want to add a lot of things like interacting with other kingdoms and travelers through the overworld map. And I'll start adding those things in later updates. For now, this is a huge upgrade to more easily allow the movement on the map.

As for the save system, here's what's new there:



  • Unlimited saving slots.
  • More info: Date saved, realm name, nation, population, biome, seed, in-game date, and world dimensions.
  • Preview window to show what your settlement looks like.
  • Ability to delete saves.


Some things I'll need to add in the next update because I don't want to spend any more time on this. Things such as:
  • Copy, duplicate, overwrite, general editing.
  • More info about the nation. i.e., total settlements and currencies.


Save slots are now auto-created and the game will auto-save at midnight without you needing to select a slot. The save folder now shows slots as the realm name + session ID:



That's all for now. Thanks everyone for the support and patience. Hope you all have a nice weekend!

Waylon

April 2021 Dev Log

Hey gang!

For today's update, I won't have a lot of new stuff to show off as I'm currently focused on cleaning up things from the recent world size changes. However, I do want to show off some things which I'm excited about and I've touched on in the past. Before I do, let me give you an update on where I'm at with the... update.

Hokay. So. The change to the world sizes (making them variable)--as shown in last month's post--was a huge amount of work. The 128x128x64 map size you're used to was ingrained so deeply in all the systems, that it was like trying to remove a pack of wild hyenas from a butcher shop. I don't even know what that means, but it was frightening and difficult and I might have cried. Needless to say, I've spent the month since last month's post working on that and I've still got a lot of work to do. I think by the end of April, I'll be back to where I was before I made that change but with that added world size variability. The not great news is that, when I made this change, I still had a bunch of work to do finishing up all my room management stuff. This means I'm at least two months out from finishing this humungo update. At least. So, thank you all for waiting patiently. I say this every time, but you all are incredible. We're almost there!

With that little update out of the way, let's chat about map sizes.



The above gif is the 256x256x64 map. It's absurdly huge. Now, I was very worried that this map was going to absolutely obliterate my computer. However, it's quite fast! In fact, the load times for all maps has been decreased by a lot. Let's use the 128x128x64 (which you play on now) as our baseline. Before these changes, that map size would take about 15000ms (15sec) to load in editor. (These load times are way less when I finally build the game, so keep that in mind too.) After the new changes, that same map size takes about 8000ms to load. For loading the 256x256x64 map, it's about 40000ms. This is way faster than I expected, and the beauty is, once built out, it'll be even faster. Probably like 25000ms. Additionally, the saving time has been sped up from 5000ms to about 200ms. Again, in editor. With saves that quick, I'll be able to auto save without you really noticing. You won't have to see that loading screen. Instead, I'll show you a quick, 'game saved,' prompt in the corner.

256x256x64 map on my 1920x1080 screen

The nice thing about having variable map sizes, is you can also choose to play on a 256x256x16 map (if you don't care about the world depth so much) which loads suuuuuuper quick. There are lots of options for you. Heck, play on a 16x16x16 map if you like.

Another thing I wanted to show off is a feature that lets you choose your starting settlement point:



After you start a new settlement, the game lets you select the world position where you want the settlers and items to appear. I've received a lot of complaints about your settlers starting out on rocks in the ocean and such, so this should fix that. Also, because water tiles are now available to settle, choosing a starting location on water will auto-create a raft for your items and settlers. You'll need to figure out yourselves how you're going to survive on the open ocean, but I have faith that those of you brave enough will manage.

I also wanted to talk about the updates to the game's lighting system. Now, it works very similar to what you'd see in games like Terraria where light permeates ground and lets you see a bit:



*This above gif is much darker than what you see in game. The light permeation works with spotlights too and the intention is that players will be able to find hidden underground ore and dungeons easier. Plus, the lighting changes allow for real-time spotlights, meaning I'll be able to make torches/headgear candles to allow for settlers to light up stuff around them. This will be in the next update though.

Lastly, the rendering system for the game has been updated to allow for proper transparent tiles, so I can now have things like tree leaf blocks that don't need to be fully opaque tiles. I'll need to update the textures, but it's nice that the renderer works properly now. This means I can have transparent glass too!



They need an art pass, but the above gif shows you an example where the 'leaves' block isn't one solid tile, and you can see through bits of it.

Alrighty, that's all for now. Thank you for reading and for supporting the game. Hope you are all doing great. :)

Best,

Waylon

March 2021 Dev Log

Hey everyone!

I have some news for today's dev log that I'm so excited to share with you all.

A lot of people have requested that they be able to change two settings for the game:
-Overworld map size.
-In-game map size.
I had held off changing the game to allow this because the defined map size was deeply tied to so many integral systems. This means that changing anything even remotely tied to this would result in adding a lot of work to my plate and further pushing out the update release. As well, increasing the map size introduced problems with the cost of pathfinding which, at the time, I didn't have a solution for.
I had planned on tackling this change in the next update because I've made you poor souls wait almost a year for this update and you've all been so patient with me. However, one issue with me changing the map size is that I can't easily maintain backwards compatibility for your save files. Players would have to start a new game. That said, I'd rather players make new saves for this version, a version so different you'd probably do so anyway, instead of the next, where you'll likely be more invested in the file you've put so much work into. I *hate* having to make you start a new game, so I apologize for that.
So, long story short, I've spent the last four weeks implementing the variable map sizes and you can now select from the following options when you start a new game:



Overworld map sizes:
  • Tiny 64x64
  • Small 80x80
  • Medium 96x96 (Default)
  • Large 112x112


Settlement sizes:
  • Tiny 32x32x64
  • Small 64x64x64
  • Medium 128x128x64 (Default)
  • Large 256x256x64


As well as these new options, I've totally updated how players exist in the 'Realm'. My intention as I go along in development is to have players forming their own faction, and having that as an entity on the overworld map which other factions will engage with. The first factions you'll see are nothing new: Humans, Ancients, Ardyn, Gwdir, and Tomek. Later I will be changing this to fit with the actual lore behind the game where factions can have one race or multiple races, as well as diverse relationships. So, you could have multiple human factions to select from as an example. As well, I want to give players the option of making their own from scratch, but this stuff will come in a later update because factions rely on the other races being implemented. But, the idea is you'll be able to create a faction with Ancients and Humans, for example. Anyway, this stuff is a ways out but I'm excited to share my plans with you all.

I've also updated the overworld map UI to be way more functional. Things like being able to zoom in and out and see which tile you're hovering over on top of a full UI pass for all the windows to clean them up and make them easier to understand.



Plus, you'll now be able to settle tiles which you had a game over at. If you do so, the map will be slightly degraded and overgrown to show that it was abandoned for some time. In the future, there will also be some fun events special for this type of settlement.
Oh, and settling on a friendly faction tile will now give you control of the entities and items at that tile. It's a cheeky way of starting the game out with some advantages, but I don't see a reason to keep players from doing this. Settling on a hostile faction will, of course, still have them attack you.
The last thing I wanted to talk about is that I've added a new biome variation call, 'hills'. Technically, I'm adding a 'plains' variation but visually you'll see a new hill tile. A lot of players have requested flatter maps, so that's now an option.



Ok, so with all that out on the table, I do want to say thanks for all the kind words you write in response to these. You folks are so patient and awesome and I'm happy to have a community like you. The update has a ways yet to go before it can be released, but I hope these dev logs give you an Idea of where I'm at and that I'm passionately working away.
Also, special shout out to one of our community members, Morin, for updating Odd Realm's wiki page. You are doing amazing work and I thank you and anyone else that has been working on it. :)

Thanks and have a great week!