Roguelike Games created by Thomas Biskup, the Creator of ADOM

Tag: portraits

Realms of Ancardia (Dev Update 13)

First of all… wow, it’s already this special time of the year:

Merry Christmas days to all of you!!!

(or whatever else you decide to celebrate or not to celebrate –
I wish for love and peace for all of you!!!)

Enjoy a small glimpse into christmassy Ancardia:

Now for the game dev content stuff…

Wow, a lot of time has passed since the last update. Sadly development was not as focussed as I had hoped due to many real life commitments. Still a lot got done. And Krys did truly marvelous things on the graphical side so this update will contain tons of graphical additions. Kudos to Krys for his amazing work… now I feel really pressured to catch up on the dev side 😉

Random wilderness encounters

The random encounter system for wilderness encounters on the surface world map has been activated. There are several hundred different encounters available depending on terrain type (and this later will be expanded by environment factors like vicinity to settlements, dungeons, etc.).

Encounters can be handled in various interactive ways, combat being a very typical way of coping with an encounter. Later on there will be lots of other kinds of wilderness encounters, like travelling merchants you can trade with, caravans you might want to deal with, patrols from cities seeking troublemakers and many others. But for now it’s all about random (combat) encounters.

If you evade or flee encounters they might remain on the map for some time so that you can run into them again (or they block passage or continue chasing you). After a while random encounters vanish – but this adds a nice level of detail to the world.

Encounter screen:

In total there already now is like 10+ options about to react to an encounter that might be presented to the player based on skills, talents, race and other factors. Mind you, all of them still need to be implemented but I am very much looking forward to the variety offered by the game.

A map with several random encounters still present:

So you can evade encounters but they might remain on the map (see the red skulls) for a while before disappearing representing a prolonged threat, especially if for some reason you are in a hurry and trying to navigate difficult terrain.

Random encounters still are work in progress. There’s lots of stuff that still needs to be finished in regards to the actual combats. I hope that the next update will be a lot more complete in this regard.

Beautified character generation screen

The character creation screen has seen a glow-up.

Before:

After:

Krys has prepared a ton of these refinements and I will continue to add them over time.

Tons of graphics prepared

Krys prepared an amazing amount of graphical refinements, details and additions and I am quite pressed to implement all these wonderful things. The list below should give you a glimpse of how Realms of Ancardia will look and feel once it’s starting to be more complete. For now there are lots of fragments but IMHO they foreshadow a wonderful scenery for the future game. Here we go…

More decorations

Krys has designed dozens of decorative features for the game screens and windows, of which I will show only a few to get the feeling across we strive for.

Here is the updated status message window (not yet implemented):

And generally we agree that the game needs a lot of skulls 🙂 Enjoy the close-up:

Besides skulls there are many other improvements pending, e.g. a much nicer look for the settlement names:

Personalized character portraits

Realms of Ancardia eventually will include a portrait builder for your character. Krys already has prepared a modular system with tons of graphical tiles for the various parts that make up a face and he also prototyped the actual portrait designer with color palettes and everything else. Very much looking forward to its implementation in the actual game as we also can use it for NPCs.

As you can guess from the image above Realms of Ancardia (at least initially) takes place in a pretty tough world with hard characters.

Above you can see the prototype for the character builder. It allows to customize lots of aspects of the portrait allowing for almost infinite possibilities.

Here you can see it in action:

Skill icons

Krys designed icons for all our skins. Beautiful icons. And they can be used both in a graphical size to adorn screens and in a smaller in-font version where they easily can run in texts.

Standardization of the color palette

While working on the many icons, monsters, tiles, etc. Krys also defined a standard palette for the game so that it will have a coherent and unified look. I love the high standards he puts into the very basics of the game.

Item graphics

Next we get to icons. Like ADOM Realms of Ancardia will tons of items, some predefined, some randomly generated for each and every game. Krys has started to work on the graphics for the icons:

(they are all white because this allows us to color them at runtime BTW, based on materials, enchantments or whatever else strikes our fancy)

Monsters-in-arms

Having items means that we should show some of them. We have decided to go for a healthy mix, e.g. monsters will show weapons and shields to differentiate them a lot more. Here’s a sample:

Dungeons

Krys also already started working on dungeon tiles and setting up lots of features and extras. The following video gives you an impression (fair warning: all the videos are done in Krys’ Unity prototype which actually has a number of features my RoA engine does not (yet?) have – like the smooth scrolling and camera movement):

Naturally dungeons come to live with monsters and in this sample video you can see monsters with different equipment sets:

Krys also started working on special dungeons. Going from fire aspected dungeons in the following video…

…to a sample of how the tower of eternal flames or the temple of elemental fire might look like (should you be able to encounter them):

And as we were nearing the fire temple Krys also took at the old earth temple:

…and redesigned it for Realms of Ancardia:

Village people

As Krys was in full swing he proceeded to more detailed villages. Here you can see a sample of how a more detailed village environment might look like:

Improved cursor and tooltip handling

Krys experimented with fade-in/fade-out for tooltips and also worked on the cursor:

Wind?

Getting totally experimental here but maybe we will have wind…

Everything so far…

The following video shows a summary of many of the awesome things created by Krys – enjoy!

Introduced new header font

We now use a new header font for our dialogs. I think it’s beautiful and suits the mood of the game. Still we keep using our clean main text font because it’s so wonderfully readable.

Before:

After:

Beautified text input dialogs

The dialogs for text input have been greatly beautified. Both entering the world seed and the character name are affected by this:

Miscellaneous minor changes and additions

  • Implemented various caches for images and fragged border decorations. This greatly enhances UI fidelity because it reacts much faster now.
  • Dialogs now darken the background so that they are easier recognizable.
  • Added a means to display popup messages and close them by key or mouse.
  • All beings now have a size.
  • The possible genders of beings now are derived from available translations. If there are no translations for a specific gender, the gender is not available.
  • Fixed various problems with the internal actor system. Despite this being the fourth time I am implementing my actor pattern again and again a ton of complex bugs creep into this system. Finding and fixing them took quite a while – nasty bugssssss.

Total size of the codebase after this week

  • 51,679 LOC in 687 files for the actual Realms of Ancardia game
  • 29,334 LOC in 468 files in my own underlying TBRLAPI framework library supporting my most recent roguelike games
  • plus extra external configuration files, images, tilemaps, audio files, etc.

The running total is available here.

State of our internal ticket system

We use YouTrack to manage ideas and bugs that pop up. The listings are by no means complete – it’s more of a “don’t eventually forget to fix this bug / add that amazing feature” pipeline that gives a little structure to our development process without turning it into a managed project 😉

  • 179 open issues in total
  • 76 closed issues in total

Realms of Ancardia (Weekly Update 11)

Vacation time is over (sadly) which means that we return full throttle to working on Realms of Ancardia. I needed a day or two to remember all the things I forgot during the past couple weeks (so much for my literate codind skills 😉 and I again was sidetracked by weird mini project I felt compelled to complete (after getting addicted to the Vampire Diaries I felt the need to write my own vampire TTTRP – 104 pages later it’s no at Lulu for layout 🙂 ).

If you care here’s front and back of the rulebook containing 104 pages in novella format with compact rules for nice Vampyr sessions…

Now I am finally looking forward to adding actual fun gameplay to Realms of Ancardia – pardon the distractions 😉

Message log and command popup added

We have replaced the continuous message log to the lower right with a context specific popup. We feel that the extra “pop” is a good change to indicate that something important is going on compared to long text logs where it is easy to lose sight of important status changes. What do you think?

Also we now have a popup that shows commands that are available depending on the current context:

Implementation of settlement gate procedure started

Entering a settlement is a small detail – but it has many intricacies. Depending on the organization of the settlement there might be (guarded) gates, guards might raise taxes, random events could occur, you might gather helpful information about the settlement before actually starting to move through it (which can be useful – some settlements might be very dangerous or could affect your health, sanity or whatever).

This week I started the implementation of the procedure for entering a settlement but I probably will need another week to finish it due to the amount of detail to be covered and some lose ends from earlier weeks (e.g. attributing precise number of guards to the individual gates) in order to present a tangible challenge at the gate.

Here we go with a preliminary screenshot – the UI still needs some polish:

Scene graph implementation

Realms of Ancardia uses content-based scene graphs. Note that this is different from the common understanding of scenes and scene graphs in many programming languages where these termins describe graphical nodes and the graphical composition of a view.

In Realms of Ancardia a scene graph is a logical content structure that describe how a specific scene might work out.

Scenes can be highly variable:

  • entering a settlement
  • visiting a shop
  • talking to a stranger
  • examining a weird altar in a dungeon
  • etc.

Logically Realms of Ancardia uses a graph of connected scenes. Scenes can lead into each other (e.g. the generic Gate of Settlement scene might lead into the Negotiate Taxes with the Guards scene or the Pick a Fight scene or … whatever).

Scenes have graphical elements (e.g. images or videos to make them more tangible), text elements (e.g. the impression of a city you get when moving towards its gate) and interactive elements (how you respond to the scene).

This week I finished both the implementation of the architecture and the data structure for these scenes as well as of the graphical scene handler that takes an arbitrary scene graph and navigates the player through it, altering the game state, executing consequences, etc.

The screenshot above already is using the scene graph mechanism underneath.

Portraits

Krys did an amazing amount of working on devising a system for building individual portraits:

The individual parts are configurable and you can colorize each element:

Miscellaneous minor changes and additions

  • The spacing for the in-game stats has been adjusted slightly to use the available white space more reasonably:
  • Internal mechanisms for adding missing translations have been improved.
  • Fixed an integer overflow bug in internal random number generation.

Total size of the codebase after this week

  • 39,413 LOC in 651 files for the actual Realms of Ancardia game
  • 27,357 LOC in 451 files in my own underlying TBRLAPI framework library supporting my most recent roguelike games
  • plus extra external configuration files, images, tilemaps, audio files, etc.

The running total is available here.

State of our internal ticket system

We use YouTrack to manage ideas and bugs that pop up. The listings are by no means complete – it’s more of a “don’t eventually forget to fix this bug / add that amazing feature” pipeline that gives a little structure to our development process without turning it into a managed project 😉

  • 151 open issues in total
  • 59 closed issues in total

© 2025 My Roguelike Games

Theme by Anders NorenUp ↑