Forum > Games Discussion

Exanima

<< < (12/13) > >>

Asid:
Coffee Diary - June 2025
Mon, 2 June 2025

Hey Exanimates,

Insider testing has been ongoing for most of the month, which went surprisingly smooth for a first round of testing after so much development down time. We've patched the test build a few times now, but many of the issues being reported were older things we've been catching up on and we've spent most of the time making improvements rather than bug fixing.

We've only added a few fundamental roles and a little dialogue so far to test the core functionality, we did run into some tricky issues, but everything seems to be running smooth now. We should be able to focus on adding more role based behaviours and dialogue now that the foundation is solid. We've been getting a lot of useful feedback and suggestions from testers, and had some in-depth discussions. We're still figuring out what the right balance is for NPCs being talkative and reactive and we'll be experimenting with things over time.

Core AI received a lot of fundamental changes in terms of emotions, personality etc. with the goals of making personality more important, providing some more rational behaviour even without role involvement and supporting better interaction with roles. For now we've mostly been trying to get things balanced out and working again, though during testing we did expand quite a lot on some core behaviours and reactivity and how these work together with various activities. NPCs must now juggle many things, like for example following someone, searching the environment, looting, noticing interesting things, keeping an eye on potential threats and conducting a dialogue all at the same time. Tricky stuff, and no doubt we'll keep tweaking and improving core AI and these sort of things, but we seem to have everything in a pretty good functional spot already.

Looting behaviour was another big focus in testing. Derrin as our test case for these new features, now moves around the environment independently searching objects, containers and bodies, calling out items he thinks the player might find useful and looting and equipping himself independently. There's a lot of nuance to choosing which items are worth taking or holding on to as well as coordinating this more independent behaviour. We've made some pretty big improvements and adjustments during testing, mostly trying to make this as smooth and practical as possible. Making AI as capable of interacting with the world as a player is a big part of our vision, but we do also see this as an important gameplay and quality of life feature. We'll definitely keep expanding on and tweaking this, but it's quite functional already. Testers have noted that seeing Derrin move around and engage and interact with the environment instead of just standing there is very impactful and really brings him to life.

A while back we developed a new pathfinding system for dealing with dynamic paths involving physics objects, multiple layers, vertical clearance and potentially more modes of movement, and we've now made some more improvements. The system is complex and has not been free of some issues since we introduced it. During testing we particularly found it's not great to have smart and talkative NPCs if they then just walk into a pit while carrying all your loot, or get stuck in silly ways. We did a deep dive into the pathfinding system, to make AI take less unnecessary risks, not get stuck and a few other solid improvements. We've identified a few more things we can improve, but already things are in a much better state. Exanima is a complex game at a very fundamental level, and this has obvious advantages, but we're well aware that it can also lead to some tedium and annoyance. Now that we've developed our core tech to this extent, we see ourselves focusing more on making a smoother and more enjoyable experience and quality of life in general.

This update also includes a significant overhaul of our apparel system to solve many issues with clipping and animation and massively streamline our workflow, as well as some performance and other benefits. Just about every item in the game had to be reconfigured for it and often adjusted in some way if not completely reworked. Inevitably there were some things to fix up and here there, but we're all caught on any clipping and similar issues reported so far. Things are looking very good on this front.

There were some notable graphical improvements in this update too, with some new tech for ground displacement, detail shadows, lighting and shadows in general and many asset improvements too. We've had testers often express how impressed they've been with the graphical updates and how good the game looks now. We're always aware of things we can do to make the game look even better, but we try to avoid working on graphics tech as there's so much else to do and we want to keep the game potato friendly. These were relatively low investments and scalable upgrades with a big return and we're very glad we did them.

Finally, as we're very close to public testing we'd like to briefly introduce the role system, what it's supposed to do and what to expect from it, as there are clearly still many misconceptions. This is also important to clarify what we hope to gain from testing and what kind of feedback we'd like to see.

What the role system is not, is a specific set of AI features and capabilities. This is a very important distinction from other AI systems you may be comparing it to. Such a "one and done" system would not be enough to do what we want from it. We're all about delivering that quality hand crafted experience. We do not want dynamic, but ultimately shallow NPCs. The role system is essentially a content tool, a narrative tool. Roles are very broad in their scope, they can provide unique behaviours and dialogue for specific characters, or they can, as the term "role" suggests, be adopted by any character. Characters can have many roles at once and know each other by various roles, these roles change dynamically. Every role provides new interactions, and these can lead to more roles with more interactions and so on. This means that as we build our library of roles, we create more and more emergent behaviours. So in a sense, it is a collection of AI capabilities, one that we can keep expanding on, but above all else it is a dynamic story telling tool.

This means that just because we added the system, you won't suddenly see the undead taking up new professions and starting book clubs. While that is entirely within the realm of the system, our aim for now is to very carefully craft what we would call "foundational roles". These would be the roles describing the most common behaviours, activities and relationships, that other roles can then build on, specialise on, or add to. Our first goal is to make NPC companions that feel as close as possible to human players. This is particularly difficult, it involves some intricate roles and mechanics. We want to gather feedback and ideas and learn everything we can from this particularly complex and important case before designing many more roles.

You should hopefully get an idea of the direction of this with your first experiences of it, but basically keep in mind that our intent for now is to build on these fundamental aspects and make them really good, not to add a bunch of fluff and drown out the essence of it with noise. Ideally your feedback would reflect this, and you will be critical of the foundations before asking about the colour of the wallpaper. Tell us how you wish the AI had reacted during moments of gameplay, without focusing too much on the specifics. Also bear in mind that part of our vision is non player centric design. A player will inevitably do things an NPC will not, but they are just another character with their own set of roles. The AI is incapable of distinguishing between player and non player characters, so think of roles and interactions as always interchangeable.

Since testing began we've mostly been working on things and making some additions that we didn't really expect to, but now we're back on track. We're working on introducing one last role based interaction and reviewing some dialogue now so we expect public testing to begin soon. A big thank you to the testers who have been very thorough and patient and have been giving us great feedback.

Best,
Bare Mettle

Asid:
Coffee Diary - July 2025
Mon, 7 July 2025



Hey Exanimates,

Before we get into what we've been working on, let's address what many of you want to know: public testing will begin in a matter of days. We hoped to start some time ago, but we've been making changes to how some important things work, because we saw a better way to tackle some of the more complex role features. We're currently fixing a few things from the last round of insider testing we did a few days ago, and then we'll go to the Steam testing branch.

The past month we moved past testing core role functionality and we've been trying our hand at some actually complex role based behaviours. So far all AI decisions have been driven by an emotion system, with roles only really being able to nudge things in a direction and provide some specific interactions and reactions. That didn't really allow for more rational behaviour, and often creates a harsh disconnect between how a character acts and what interactions they can engage in. We've been working on a much tighter integration between roles and emotions, allowing roles to both influence emotions more directly and to make explicit and considered decisions based on emotions and low level behaviour. You could basically see this as making the difference between a wild animal and a thinking, rational human.

We had developed the core features for this already, but when it came to actually using them we realised there was a better, but fundamentally different approach. This has quite an impact on core AI and places a much bigger emphasis on roles for low level behaviour, so things will need to be tweaked and adjusted over time, but has many advantages. This leads into what we previously discussed as "foundational behaviour roles". They provide the most important emergent behaviours and relationships based on unscripted events and actions. We're again using Derrin as a test case, where he could previously only be provoked into combat without this being reflected in subsequent behaviour or dialogue, he can now respond in various ways, choosing to plead for mercy, run away and try his luck on his own or negotiating a truce with the player. He will respond differently to intimidation or outright hostility, or hold grudges and so on.

A big part of this is also making dialogue more dynamic and situationally appropriate. Where game dialogue is typically something that happens separately from the rest of the game, in Exanima dialogue can be conducted while doing anything else and while everything continues to happen normally. It's entirely possible to attack someone at any point during a friendly conversation for example, or for it to be interrupted, or simply be or become inappropriate in an emerging situation or emotional state. This creates a lot of very difficult problems with many cases that are not easy to predict or account for. As well as building contextual awareness into the dialogue system and dynamic reactions, there is the problem of dialogue being interrupted and resumed naturally, possibly taking a new direction based on what happened.

We've added various new dialogue and re-written most of the existing dialogue. Besides just improving some of the hastily written old stuff, we've tried to make dialogue feel like a natural back and forth between characters, in keeping with its real time aspect. This however means that dialogue branches often and quickly explodes into a large volume even for short conversations. This is made much more complex still by the previously mentioned contextual changes, dynamic elements and resuming interrupted conversations. Our systems and tools were designed for this, but it's our first time navigating these complex cases and we're still figuring out the best ways to author and handle all this as we go.

We've also been making unique events and interactions more generalised and versatile, so that they can work with many roles. This means characters might respond differently to these based on their roles or that characters can easily be substituted for others. One example of how this would be used is for Derrin (and other characters) to appear on playthroughs other than Unknown's, providing an opportunity for different lore exposition and a more meaningful alternate playthrough. On that note, we're also finally working on introducing the proctor uniform and armour set. This is an elaborate and very unique set with eleven pieces that can be combined in different ways.


After a first round of improvements to pathfinding went through testing, we worked on it a fair bit more. We solved some remaining issues and made characters better at navigating complex paths, far less prone to getting stuck and they now try to find a safe and comfortable position to stop in. There's still some pathfinding related improvements and tweaks we'd like to make such as characters moving better in groups, moving out of each other's way and dodging moving objects, but for now the focus was mainly on making companions better at avoiding dangers and sticking with the player. While role testing and general polishing continues, we're still finalising new content, but also working on a few things besides. We're not sure exactly what other features we will include in the main update just yet, but as we've overcome these big development hurdles we're shifting focus to completing and adding new features and smaller content additions. Some of these will come in small updates following the big one.

Best,
Bare Mettle

Asid:
Coffee Diary - August 2025
Mon, 4 August 2025



Hey Exanimates,

Public testing of role system features has been ongoing, the main focus was how roles can interact with emotional states and dynamic events and behaviours. We encouraged people to try to break Derrin's behaviour by doing unexpected things or manipulating him in various ways with mind powers at any point including during dialogue and seeing if he behaved naturally and dialogue could be resumed with responses appropriate to what transpired and what was said previously. This was a particularly complex role setup to test the limits of the system. People found a couple of isolated issues, but for the most part this has been working well. We've also seen lots of thorough testing of every possible item combination for the new apparel system, which we've been fixing quickly thanks to the new system, and just general bug and issue reporting. We've done a few hotfixes and one big patch to address most of this, with only a couple of rare bugs and mostly minor issues still to resolve. Things are looking pretty good and feedback on all the AI and graphical improvements has been very positive.

The big difficulty we immediately faced was with the AI's emotion system and how they understand and respond to behaviour. Until now we dealt mostly with extreme loyalty, extreme adversity or a sort of chaotic neutrality, but now we are trying to model a much broader and more nuanced spectrum of relationships and behaviours, that are also to be supported by and interact closely with dynamic roles. We intend for this to work in any setting and for any person or group of people where loyalties and intentions are unclear. This could include various civilised settings, like perhaps a town square or a tavern, where there are certain expectations of behaviour even from strangers. NPCs must be able to intelligently read and carefully judge situations and respond accordingly, not simply be provoked to violence indiscriminately. Why is this person acting like this? Who's the target of their behaviour? Why? Whose side am I on? Could they want to harm me or someone I care about? Are they trying to protect us? Should I help them? Should I be concerned, scared, angry? Should I get involved? What would be the consequences?

The new Derrin is a good test case for this, as he can now be quite wary of the player yet still cooperate with them, choose to aid them in combat against targets, while also reserving judgement on those targets and avoiding hostility, being ready should the player seemingly turn on him, and yet forgiving of accidents that could be seen as hostility. On the other hand there are also undead with only perhaps a passing sense of loyalty to each other and who attack recklessly with little regard for who's in their way and will sometimes get angry at each other. This is all a result of constant and careful judgement of actions and balancing of emotions, not a set of simple triggers with set outcomes.

To achieve this we had to make some major revisions to core AI, improve emotional responses and introduce much more sophisticated methods for judging behaviour and intentions over time, particularly in group situations. These are now brand new systems that will need fine tuning, but from the last round of testing we're seeing that we're already very close to a solid baseline for raw core AI. This is all designed to be supported by roles, which can build more complex behaviours, relationships and outcomes, essentially acting as a layer of higher level thinking based on these raw emotions. We've also been revisiting our personality traits, and studying ways in which they can interact more with these systems to produce more varied behaviour at a fundamental level.

As those who have been following us long enough know, dynamic and reactive NPC behaviour has always been critical to our vision and perhaps our most ambitious goal, which like everything else has only grown more ambitious over time. Just like physics, the goal isn't and never was about combat, or about some impressive gameplay moment, but a world that consistently responds plausibly to anything you might do. We design the world, everything in it and how it works to make it feel like a real place, not a game level. We realise this can seem a bit abstract and the path is long and arduous and there are compromises involved, but that's what we're all about. Exanima's currently limited scope may not seem like the best platform for this, but we need the functionality and the tools before we can build the world. There is much to come in Exanima and beyond that will be built on this. There are many years of study, planning and also uncertainty behind this, with problems that only seemed to get more complex the more we tried to tackle them. Finally solving its intricacies and developing it into functionality is a huge accomplishment for us.

We will continue to monitor and patch the test build, with some additions to role interactions here and there, but we will now focus mainly on finalising and polishing the new content for the full update. The main addition will be a large new area, "The Gardens", which is full of new and different content, but we have quite a few things in the works, some of which may come in smaller updates soon after the big one. If you haven't played the test builds, then there are many big improvements, additions and overhauls throughout the game.

We'd also like to remind you that we use Discord to track issues, gather feedback, discuss and provide release notes for patches and hotfixes on the testing branch. If you'd like to contribute to testing and share your thoughts please join our discord server: https://discord.gg/Z5aV2bF

Best,
Bare Mettle

Asid:
Coffee Diary - September 2025
Mon, 1 September 2025



Hey Exanimates,

We've pretty much hit pause on roles, AI and this round of testing to focus fully on getting the big content update ready. We released a major patch in testing with some important changes, various additions to the current roles and dialogue, refinements to AI and lots and lots of fixes. As it tends to go with testing periods we fixed a lot of older issues as well as new, there's always a few highly specific and old issues that remain on the backlog for now, but everything seems to be in a really solid state and testers have been very thorough. Thank you.

We made big improvements to core AI and how NPCs perceive and respond to behaviour, following on the tricky issues we discussed last month, but a big change in this patch was to how emotions interact with roles and dialogue. This is a difficult problem because accounting for all the different emotions, how they can change or be meddled with by mind powers at any time, can easily create a disconnect with how characters behave and role based interactions and their effects. There were just too many conditions and outcomes to consider, and odd results can be quite immersion breaking or create problems with role logic. This pushed us to design a better system that could constantly monitor changes in emotions and dispositions to alter outcomes of ongoing role actions and influence, but the real problem was how to design and maintain role behaviours that could account for these complex conditions, especially when the emotion system is being constantly refined. Role design tools that are clever and intuitive to use were a big part of the solution and mitigating the complexity. Ultimately we succeeded in both a much more robust system while also making it easier to design more varied and appropriate responses.

At this point we feel like the role system is well and truly off the ground, and while we will continue to tweak it and add more roles and interactions based on these features, we're now focusing on finalising the new content and some features for the next major release. The new area, The Gardens, is very distinct both in terms of overall design and completely new assets. We're currently mostly polishing up various things to ensure consistent quality and visual harmony, but also animations and behaviours for some new encounters. As usual we're careful with avoiding spoilers when it comes to new content, so we won't give details. A lot has gone into features, tools and art to make all this work for some time now and we're committed to delivering a high quality final product.

While not yet usable by players, we're also introducing a new thaumaturgy domain and have been working on its effects and mechanics. Each domain comes with its unique challenges and this is no exception. The core systems for thaumaturgy and AI using it are now well established and in this case the unique visual effects are the main focus. As is hopefully apparent from the visual effects in the game so far, we're keen on things being more sophisticated and convincing than your typical sprites and particle systems, while also very mindful of the extreme performance impact that complex effects can have. We had very specific visuals in mind for this domain, and some optimistic theories about how they could be accomplished. From a rough, but promising prototype we ran into some tricky problems getting to a polished effect, but we solved them all and it's looking just like we hoped it would.

Best,
Bare Mettle

Asid:
Coffee Diary - October 2025
Mon, October 6, 2025



Hey Exanimates,

It's been a very hectic month working on many different things, but also a nice change of pace from endlessly working on a single huge game or engine system. We're trying to get all the new content ready for release, and there's a lot.

The Gardens is the largest map yet and also the most complex, varied and unique. There's a lot of new nature and other assets and additions to the terrain which we're currently polishing and optimising. With so much work on terrain, we also made some nice improvements to our tools. Good content creation tools are always a big part of our development efforts, we think they are extremely important, we plan to continue making content indefinitely and also releasing the tools to the community. Optimisation has been a particular concern, as vegetation is notoriously expensive because of the complex 3D models with many layers to render. Usually this is featured outdoors where the lighting is simple, but in this case we also have to deal with many local lights and shadows, multiplying the cost. We wanted to maintain good performance without sacrificing the visuals, and while our engine is very well optimised, this is just a much bigger rendering workload than we've ever had it deal with. Making sure all assets are well optimised is part of what we're doing, but we've also been trying to squeeze even more performance out of the rendering engine.

We did a thorough investigation of performance bottlenecks, not really expecting to find much we could do, but when we looked at the results we started having some ideas. When something is already well optimised, even small optimisations can make a relatively large difference. Beyond optimising various special cases, we went looking for approximations. Real time rendering in general is all mathematical approximations of the real world, and often approximate versions of the expensive mathematical functions doing those approximations. Basically there's always some wiggle room in how approximate your approximation of an approximation is. Combinations of these can have a compounding or mitigating effect on each other, one approximation could help correct the error of another, or make it worse. After a bunch of experimenting we came up with various things that could perform much better with minimal detriment, or that might make the lighting look a little bit different, but not objectively worse. This helps us alleviate the expensive nature of the new area, but as a result we have improved performance in general. We can use these on lower settings to boost performance with minimal visual compromise, or even on higher settings for elements where the difference is just not noticeable, such as grass and most vegetation.

Speaking of grass, we've been overhauling our 3D grass and small plants to improve them visually and to support larger and more realistic plants for dense undergrowth more efficiently. As part of the terrain system this level of vegetation is subject to some special optimisations and careful procedural generation that can realistically produce better results than someone placing thousands of little plants by hand, while saving lots of time and rendering performance. This becomes increasingly important when producing and maintaining large natural environments. Being procedural also means we can easily scale back the density of this vegetation for lower end systems if necessary. We've also made other visual improvements in revisiting some of the rendering, an important one being better support for the detail shadowing with lower or disabled supersampling settings. Detailed and immersive visuals with smooth performance are very important to us and we're genuinely excited about how our latest efforts have come together in the new content.

Still on the topic of vegetation, while we don't consider this an urgent feature, we are also working on plant physics. Everything in Exanima interacts with physics, and plants should be no exception. We don't want plants to just wiggle and rustle when touched, but to bend and push back realistically. We considered various approaches here, and as usual performance is a big concern, but also with our very small team we can't be creating detailed physics models of every plant. We're still early in its development, but we've come up with a way of automatically generating accurate simplified physics structures for plants that can be simulated and deform them efficiently. This likely won't be featured in the earliest releases of the Gardens, but we are actively working on it.

On a totally different topic, we've been trying to finally tackle some important physics related issues that have been discussed recently in the community. This stemmed from a discussion on a functional unstuck feature, but it's relevant to several problems with positioning characters. A case some of you are probably familiar with is finding NPCs in weird spots, stuck inside something or each other, or reacting violently to some unseen force somewhere nearby. This happens for example when characters are repositioned while you're unconscious or away, and if they are colliding with something in the new position all sorts of bad things can happen. Identifying a collision free position for a character to occupy is a difficult problem, but is also needed for a good unstuck feature and for NPCs to move away from other characters or dynamic objects around them. But this alone isn't enough or always possible, we also need to pose characters to avoid near objects and gently nudge them into the space without disturbing objects and causing violent reactions or other issues. Not the most glamorous aspect of development, but these are some of the challenges we face with the game's complex physics and scope.

We have of course also been working hard on the new thaumaturgy domain. We have a few fully functional powers now, we've finalised all sorts of mechanics and visual interactions, done the sound design, figured out some new control and other mechanics for players and also started working on the domain tree images. This one is a bit more fleshed out than Energy, and there's a cool surprise in there. If you're wondering why we'd put effort now into player mechanics and UI, that's because we've decided to introduce the acquisition of powers from others when they are defeated in this update. If you weren't aware, the domains you start with are your "innate" ones and you naturally learn their powers, but when you witness the death of another shaper you might unlock powers that are from their domain, as well as absorb some of their "potential". This can be invested in powers to make them and their domain stronger. We still want to introduce more progression and reward mechanics, and these are some important ones. With the big core engine and game systems developed as they are now, we're finally really switching focus to enriching the gameplay experience, with things that are relatively much easier to develop, but add lots of perceived value.


Best,

Bare Mettle

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version