1. Arbitology: Dei Gratia Rex
  2. News

Arbitology: Dei Gratia Rex News

June's Journey

As Steam Sales and summer holidays progress, so too does work on Dei Gratia Rex. I had really intended to write about a much different topic, but development is strange sometimes. Before pitched battles can happen, we need to ensure that the troops on the field are sensible, and not only directly after mustering. That brings me to…


Feudal Obligations


In 12th century England, as in many other adjacent places and times, it was very common for the king's vassals to hold land on the condition of rendering military service. Indeed, this was so common that land was often reckoned in ‘knight's fees’ — a variable quantity of land whose proceeds are enough to support the outfitting and upkeep of a knight. DGR in fact uses this same unit for holdings.

However this military service wasn't unlimited. It is famously difficult to make generalizations about medieval law and society, but it was common for this term to last merely 40 days per annum. I've never personally played a game that tried to model that, but there's a first time for everything.



Of course there is no requirement that your vassals only serve for 40 days. If they agree with the reasoning for the war (remember, some reasons must be marshaled before war is declared) or personally like the king (or ideally both), the lords may choose to stay in the field.



If those conditions are not met, there are still other methods available.



Each approach tests various personality traits of both the king and the vassals. It's not realistic to retain everyone all the time, but certain arguments or concession grants will often convince some people. Further, the king's enemies will never agree to go beyond what is absolutely required — assuming they even do that!




Taxes


This is something I have been putting off for some time, but taxes (most of them, anyway: feudal incidentals like reliefs are another matter) are now collected!

That's actually a bit misleading. Outside of the Danegeld, which was a fairly unique institution in England, general taxes were not collected in this era. Tallage was possible of course, though generally unpopular. Both of those two taxes are handled via different systems in DGR in any case! What is new is that the proceeds from the royal demesne, the courts (selling justice was actually an important part of the budget in those days), and various other fines like customary taxes on the king's manors and revenue from the Royal Forest are now collected.



When researching when exactly these things happened historically, I found that the Quarter Days were customary for settling accounts. Even more interestingly, I found that 25 March, the Feast of the Annunciation (later Lady Day in England), was not only one of those days, but also the traditional start of the new year! I have been up to this point starting the year on 1 January as we moderns do. Apparently that just wasn't done in the medieval period; in fact a synod in Tours even banned it as pagan practice in the 6th century it would seem!

I'm a bit curious about that actually. In keeping with ‘hard historical fiction’ I would like to change over the start of the new year. However I feel as though that might be confusing for some players. I'd definitely love to hear some perspectives on this!

May Communiqué

First of all, I'd like to thank the people who reached out to me. Please don't worry, I'm doing fine. I was just lacking productivity and felt some shame about only being able to manage a quite sparse monthly update last month. Normalcy has in large part returned here. Besides it's not like there's a pandemic and mass protest going on, right‽ In all seriousness though, I do very much hope for the safety and wellness of everyone in this trying time.

Sieges


Finally, finally the planned content here was completed. A few events grew slightly too complex, and that was part of the problem. They are finished now however.


Routiers


Arbitology: Dei Gratia Rex is, so far as I am able, laser-focused on the 12th century. This is ever so slightly before the advent of the great mercenary companies which often appear in media; John Hawkwood's story belongs to another era. Mercenaries however still remained an important part of warfare. Who were they, though?



Feudal obligations for military service — in history and in DGR — only amounted to only 40 days per annum. Vassals may be motivated to join the king's war beyond this requirement due to loyalty and affection, a common cause, or perhaps an offer of favor or lucre, but these arrangements were unpredictable and subject to the vagaries of personal diplomacy. Mercenaries were frequently a safer, more predictable option. Assuming, of course, that coffers were sufficiently full to afford their wages.

The sources call these men many things. I settled on routiers as a general distinction, but the companies were specifically known by their place of origin. The sources speak of Flemings in the employ of William I, or Bretons and Brabançons hired by other rulers. Given the more fragmented state of Britain in this timeline, these are joined by Normans, Anglo-Saxons, and others in DGR.



When you no longer need these routiers they may freely be dismissed. On occasion, that may not be the end of their story though...


Research


A fair bit of time in May was spent reading. That ended up being a productive activity when still trying to work from home. Many events have been planned as a result of this research. Discussing some of those plans with a friend did lead to an interesting suggestion however: a bibliography.

DGR was conceived from the beginning as “hard historical fiction.” It isn't an academic work however. There are a few places in which I've consciously allowed mild anachronisms in the service of gameplay or narrative, and probably others where I have let them slip in wholly by mistake. That said, quite a few books and theses have been consulted in the composition of these events. Would a bibliography be a welcome feature, or is that perhaps a bit too dry for a game? I'd be interested in hearing perspectives in the comments.


What's Next?


Battles! These loom large in the imagination, but were actually quite rare historically. Skirmishes and small-scale engagements were fairly common, but armed contests between full armies were uncommon in this time period. Even for those who ordered their life around waging war, pitched battles happened once or perhaps twice per lifetime. As rare events, these engagements must be especially interesting; that's the goal anyway!

The April That Was

This month's update is a bit more personal than usual. I hope you'll indulge me.

April proved to be a bit difficult. Thanks to the pandemic presently plaguing us, I spent nearly all of the month at home, only occasionally leaving the house. Some people can handle that, but I can't remember the last time my productivity was this bad. That's not to say that nothing's been accomplished on Dei Gratia Rex, just nothing I feel is worthy of showcasing in one of these updates or in a Screenshot Saturday tweet. Beyond that I've had some unexpected setbacks in my personal life. Oh, and at one point I was 40 days from insolvency.

I also had some unexpected assistance. In my youth I acquired a modestly impressive collection of gaming equipment and collectable card games. Selling those would solve some problems, but actually getting that done quickly and at a fair price turned out to be considerably harder than I anticipated. Some friends from my local dev group, whom I've only known a few brief months, went out of their way to find buyers for me. I'm extremely grateful for their help. The burn rate for High Tower Games is non-zero, but is really quite low indeed. I'm no longer looking at insolvency, and may in fact be able to invest a little more into art and music. I do expect some further changes in my life in the near future, but change isn't necessarily a bad thing.

Beyond that, I did take a few days to participate in a game jam hosted by the aforementioned developer group. I used a super stripped-down version of the DGR engine to create a brief narrative experience which fed into a mechanical clone of the full-scale battles from the original Suikoden. I wanted to do more with it, but tight time limits on game jams sort of prevented that. I can link it if there's any interest, but was a bit unsure if it was on-topic for DGR-related spaces. Although it got essentially no traction on Itch, completion of a project was satisfying in and of itself.

What's next for DGR? Not to jinx it, but May will surely be better than April. The next update will have content worth reading. Thank you all for reading this and for supporting the project. I hope things have been as good as possible for you all given the circumstances.

March Musings

First and foremost, I hope everyone reading this is staying safe and well. The isolation and disruption is hard, to say nothing of those suffering the disease itself. Despite the difficulty, we will make it through though! Speaking personally here, I developed a bit of a cough the last few days, so I've put myself in as much isolation as is possible, even beyond what had been called for before that. It's likely nothing, but we all need to do our part to minimize contagion.

Anyway, on to video games!


No Fully Good or Bad Traits


When composing any interactive narrative, it is very easy to fall into a trap of making “good” and “bad” choices. When a choice is presented but there is an answer that is under all circumstances always right or always wrong, that is a false choice. It is instead a test to see if the player knows the event or not. This is something that I have actively tried to avoid in Dei Gratia Rex. Thinking about that led me to further endeavor to make no trait wholly good or bad. An example might help:



Here our grim king has been laying waste to the lands of his enemies. However up until that point, he had been a very kind man. This presents a personal contradiction. The king can accept that he may be more cruel than he thought. He could also waste precious willpower to table the matter, at least until the war is over. However, if he is not particularly bright, he might not even understand the conflict between his commitment to kindness and his tactics in war. It is generally better to be smart, but it's not always good!



Here our wayfaring king has chanced upon a village in Wiltshire which is operating a market without a charter. Naturally shutting down the market will cause economic damage. However, the burgesses exist in relative comfort due to their hard-won economic privileges; grating a new charter or else accepting a bribe to ignore will also quite naturally annoy them. The king in this case however is sufficiently shy that he can simply avoid the gathering altogether. This allows the market to continue, but also allows the king to prevent making a hard choice. For someone who has to deal with large amounts of people frequently, being shy is a curse. But not always!

I do want to make clear however, in light of both this and the previous entry about trait-constrained roleplaying, some options will only show up at all subject to certain conditions. The shyness example is such a case. If you are not already shy, you cannot will yourself to panic at the sight of the crowd.

I made a Tweet demonstrating this a while ago, using the debug REPL. I planned on including it directly in this update, but my only option for moving pictures here is .gif files at 3 MB or less. It just wasn't going to happen in any way that was legible.


What's Next


I must admit that the changes to routine have cost me some time. There's a reason I pay for a (very) tiny office after all, despite having essentially no money. All that's to say, there is still a bit more war content left to write. I really hope to have something beyond that to talk about next time!

February Report

This month saw the conclusion of the raiding and economic warfare content. Mostly of course — there's always a chance that it will be revisited for a few additions or touch-ups before the end. However that has already been discussed a bit. Beyond that, a lot of work was done behind the scenes on optimizations.

Also during the month I made a very brief tweet about "trait-constrained roleplaying." This has been in Dei Gratia Rex almost from the beginning, but it occurred to me I've never written about it. Since optimization may not be terribly interesting for people who follow strange, niche narrative games on Steam, let's start with that one!

Trait-constrained Roleplaying



Here we see our intrepid king on a mission to loot Somerset — I'm sure there's a good reason for this. During the course of this a dangerous opportunity presented itself! Naturally the choice is given to attempt this anyway or to avoid it in favor of safety. However in this case, our king is quite brave, and as such he would never countenance letting such an opportunity pass him by. One thing that often irked me about games in this space is that I could be a kind ruler, but happily do cruel things. Or I could be a gregarious ruler and avoid social interaction. I wanted to change that, and this is the method I struck upon.

On the other hand, DGR is a game of decision above all else. If a player were to find themselves locked out of a choice they really wanted to make because of something utterly unrelated that happened hours ago, well, that wouldn't be fun, would it? To that end, DGR allows limited sidestepping of this mechanic by spending willpower. By spending willpower, it is possible to make the king act in uncharacteristic ways — this usually affects his personality going forward. This is a resource that is in very limited supply and whose extent is intentionally never fully communicated. The choice of whether or not to spend this resource is another layer of choice on top of the surface layer choice, which I think is entirely congruent with the themes of this game.

If this sounds like "resource narrative" (or quality-based narrative or whatever you want to call it), that's intentional. All of the choices eventually lead back to a handful of resources which must be balanced. Willpower is one of these resources, though a less important one than the realm values that are always graphed and plainly visible.




Optimization


Ensuring that a system works is always the most important thing. Premature optimization is also said to be the root of all evil. Eventually however there comes a time to look at performance. In terms of actual gameplay I had not quite reached that point, even on the practically medieval hardware being used to develop DGR. (Seriously, I use a 10 year old desktop, a Windows 8 era minspec laptop, and even a CRT monitor. Perhaps one day I can upgrade.) However one tool I use to find bugs is to let a fairly stupid bot auto-play very large numbers of turns. This was beginning to slow down under the weight of the content. That's not good, as much more content is planned.

Choosing an event requires first making a list of all eligible events, determining their weight, then performing a weighted random selection from those candidate events. This involves a trip through the entire collection of events. As that goes into the four figures, it rapidly becomes less than ideal. As of this month, DGR now at runtime partitions the event space into smaller buckets of events that can occur at certain times. Performing a linear search across dozens of events at a time turns out to be much nicer than across thousands.

I also found a way to save memory by caching values. This isn't quite as important, but every bit helps. Many events end up pointing to "dispatch" events. For example during war, a common event briefs you of the situation and offers the common choices of what to do. Consequently, a great many events will return "war_main". Now the event to return "war_main" exists only once, rather than many functions with identical effect. All such redundant functions (including those for weight, eligibility, and much else) are now eliminated.

In any case, the bot can play faster now!


What's next


Finally getting out of the war content! It's important, but I'd quite like to write about other things soon.

Beyond that, spreading the word: DGR has to launch at some point. However even if it was ready to go today, I wouldn't press publish. When there's something that's enjoyably playable from beginning to end I'm counting on YouTubers. Between now and then though I'll try to get the game in front of people who might be interested. If you happen to know any such people and want to help, please send them a link! Wishlists are a very important metric to the Steam algorithms, so building those up is a bit of a priority before launch.

More to come next month!