February 2023 Status Update

After another very long hiatus, I have another update, this time about all my projects.

I made my last post almost a year ago with the best of intentions: to engage with my audience and work as an author/programmer full time while working a part time job. Then one positive pregnancy test, house purchase, promotion, and child-birth later—here we are. So here’s another update on the status of all my projects and where they currently stand.

Devilspawn

Due to a variety of circumstances, including those mentioned above, the most recent round of beta reading for Devilspawn was brought to a screeching halt around June. Since then, I have only sent out 3 chapters. Since consulting with some of my beta readers and author friends I have once again decided to split Devilspawn into three separate volumes, as each of the three sections of the novel can stand alone, enhanced by the other two. I have lately been working on compiling the first of those volumes, which has been beta read and is entering another round of editing.

Other Writings

On that note, after struggling for some time with finishing the next short story in the Maxwell Novacek series, I have decided to put it on hold for the foreseeable future. It is likely that I will return to it at some point in time, but I do not know when that will be. I have, however, begun working on other writings, set in the Paladins of the Crimson Cord universe of Lorelai (though with significantly less traumatic elements), that the perfectionist part of my brain has a much looser hold upon. I hope to be able to give at least some preview to them soon, though I am planning on releasing them as novellas rather than online short stories (I may still post excerpts online after the novellas have been released).

Lady Luck’s Chosen Few

One area where I have made a lot of progress is in my work on Lady Luck’s Chosen Few. Within the past year, I have gained a much stronger sense of direction and have a more solid foundation prepared that I have already pushed to the website, with expanded rules hopefully on the way. There is still work to be done, but I believe the new state of LLCF is far more playable and far more in line with my original vision.

Kyklos

Finally, we come to Kyklos. I don’t want to supply any promises I may not be able to keep, but I believe I may at least have a gameplay demo ready within the next year. I have made significant progress in the last year fine-tuning my pixel-art capabilities and learning how to better structure the overall code for the game. As of yet, I do not have any new images I’m ready to release, but I will be making a roadmap post with accompanying images whenever I do.

Conclusion

If you’re interested in following my progress, consider subscribing to XavierMakes so you never miss an update. If you wish I would have more progress, consider spamming the Facebook page instead of asking my family members when my next story is coming, so I have a constant reminder that people actually want to see more. Until next time (hopefully in less than a year from now), happy making!

A New Project: Untitled Game

Xavier describes his creative process in making a (currently untitled, text-based) game and discusses other topics such as programming, game development, and linguistics.

I’ve begun work on yet another project, because I have difficulty focusing on only one project at a time (or, rather, I have difficulty focusing on one project for an extended period of time, resulting in me rotating which project I’m working on).

The project itself is a currently untitled and I’m not sure what the main story will consist of (though I have a general idea), but I know a few things about it:

  1. It will be created using a game engine (story-making tool?) called Twine. That means that it’s going to be a text-based game, kind of like those old choose-your-own-adventure books.
  2. The game will take place in Kithria, the world I have created for low-fantasy stories, games, and whatnot.
  3. Like most of my other works, it will explore various social themes, including (but probably not limited to) racism and sexism.

Below are some of my thoughts so far as I’ve been working on the game.

Working with Game Engines

Disclaimer: I am aware HTML is technically a markup language and not a programming language, thus why, when I’m referring to both, I use the term ‘computer language’.

HTML is relatively simple as a baseline. Before I started working on this game, I had a little experience with HTML during my time as a CS major and the web developer for the Daily Egyptian. I could take a template that already existed and mess around with it to make the website I wanted. As well, I could make a (admittedly garbage looking) webpage from scratch fairly easily. What I could not do was create a beautiful webpage from scratch. And I still can’t. But Twine is based in HTML, so it should help me learn, maybe. Right?

Wrong!

I learned a similar thing when I first started working on Project Divus, in which I played around with Unity a bit. For those who don’t know, Unity is a game engine that is based in the programming language, C#. Making a game using Unity, however, requires more knowledge on how Unity works than how C# works. This is because Unity has its own classes, methods, and functions built in that the programmer needs to know how to call properly. Unless you’re adding completely unheard of functionality, the chances of you needing to know C# seem to be pretty slim, and knowing C# won’t make you proficient in using Unity.

This also applies to Twine. The only actual HTML I have used in the 6+ hours I’ve spent working on this game (at the time of writing) is to make a table so my buttons don’t look weird. Other than that, it’s all been calls to macros built into Twine or SugarCube (a sort of secondary engine built on Twine), none of which are accessible in basic HTML. Both pieces of the engine (Twine and SugarCube) have their own documentation, just like basically every computer language (Unity also has such documentation).

This all comes down to one main idea: engines themselves are, in effect, child languages of whatever language they’re based on. This is perhaps why creating an engine is so difficult and time consuming – in fact, many developers forgo it because creating a proper engine can take years for a relatively simple game – because you are trying to build a new language.

As well, this goes to show that just because someone is proficient in a given computer language doesn’t mean they’re proficient in engines based on it and vice-versa. Although, knowing a single language from a family of languages makes it far easier to understand other languages; e.g. object-oriented languages, such as Java or C#; or Romantic languages, such as Spanish, French, or Latin. Obviously knowing one language won’t make you fluent in the others, but I know of plenty of university students who have been able to decipher Latin documents because they know Spanish.

Nothing in Game Development is Simple

I already knew this was the case. Most people who have tried game development already know this to be the case (probably). Those who don’t know this to be the case would be anyone who has never tried to develop a game or watched someone develop a game (or who has used a very simple drag-and-drop engine, which generally aren’t powerful and are less of making a game and more making a level in a game unless you really know what you’re doing and you put a lot of time and effort in, but I digress). Making what you think could be the simplest addition to a game takes a long time. I mentioned before that I have spent 6+ hours working on this game in the past two days. All that time was spent on character creation (which I’ll discuss later), and that part isn’t even done.

On top of that: if you’re not careful, a single wrong word can spend hours to fix (especially if you, say, wrote a line of code that you knew you would be using again and just copied and pasted it to the new location only to later realize it was wrong). On the bright side, none of the bugs I accidentally included in my code took hours to fix. They each took half an hour, and there were approximately a lot of them. Most of that time, of course, is finding out what you did wrong; often, once you’ve found the problem it’s fairly simple (though it’s usually either changing a single character or sifting through the whole document to find every mistake). I once had a project to create a parser for a programming language in one of my CS classes; it took me 2 hours to figure out how to fix it (with the help of my manager at the DE of the time) and all I had to do was change a 0 to a 1.

So, yeah, programming ain’t a walk in the park. But you probably already knew that.

Trying to Make Things Interesting

I mentioned, like, a bunch of lines ago that I spent over 6 hours over the course of the last 2 days working on character creation for this game. That’s because I’m trying to make things interesting. You see, appearance (and gender) in this game is more than an aesthetic choice. My plan is to make it where characters in the game will make judgement calls based on what you look like. If you’re a Shelezar but look like a Mikri and the character happens to be racist against Mikri, they’ll treat you as such. If you’re a woman and you’re interacting with a character that thinks women are lesser than men, they’ll treat you as such. The flipside is also true: if you look like a Kapfian, military personnel may favor you because Kaps are known for their combat prowess. If you’re a woman, members of certain cultures will favor you because that’s their culture. And setting up the appearance mechanics – the part where the player determines the character’s appearance on top of the part where the game goes through and sees what people group they might be confused with – took me most of those 6 hours. That means that I definitely need to make that appearance mechanic matter. Because you shouldn’t devote time to something that won’t matter. It’s bold because it’s a life lesson.

The main issue I need to find out now (before I move on from character creation; that’s right, it’s not done yet) is whether I want to follow through on another idea I had: basing the game mechanics on Lady Luck’s Chosen Few. Right now, the mechanics I have set up for the game are fairly simple and much more reminiscent of standard TTRPG mechanics: a number is generated and modified by four attributes the PC has (in this case Endurance, Strength, Agility, and Wit) and the result of an action that has multiple (more than one) pass-fail states is determined based on the final number. It’s simple and it’s easy. Making a game based on LLCF mechanics will be far more complicated. That being said, trying to work those mechanics into a text-based game like this will be a lot easier than trying to work them into a more standard video-game. So, I still need to make a decision on that.

Conclusion

So far, I’d say I’m happy with this project. Despite the pitfalls I’ve run into, it’s going pretty well and I’m making some decent headway. Admittedly, I should maybe not be putting another project on my plate, but I’ve decided to disregard that fact in an effort to add one more thing to have consistent updates that I can share publicly, alongside Isle of the Dreamer. So I’m making this now.

Creating Kithria: Freedom of Creativity

Xavier explores the process of creating a world, Kithria, and addresses the issue of assuming inclusion or exclusion in fantasy tropes.

World building is a long and arduous process. Depending on how its gone about and how much detail is desired, it can take anywhere from a few days to a few decades. I started world building as a hobby when I was around 10 years old.

I was sitting around, in Junior High, with my rudimentary understanding of how the world works, and thought, “Hey, maybe I can make my own world.” And that was when my creation of The Void Jumper’s Continuum began (as described here). Since then, I have experienced multiple renditions and restructures of the VJC, and attempted creating many more worlds alongside it – mainly to use in tabletop roleplaying.

VJC was much easier than any other world I have tried to create, of course, on account of I have had to do very little other than take our own real world, take aspects of various mythologies around the world, make a few twists and turns here and there, add my own unique pieces (such as the Zedekiah, which I may explain in a different post), and call it my own. Making those other worlds was much more difficult.

My most recent rendition of this would be the world of Kithria, the setting for both my web novel, Isle of the Dreamer, and the default setting intended for Lady Luck’s Chosen Few. Kithria itself began as a world I created for D&D to be used in the web-series D&DE (RIP). I created it as best I could to incorporate the standard D&D races and monsters into its lore and history, and to have as unique of cultures as possible while sticking to that. In that state, I was pretty happy with it. But then I came up with the idea for Lady Luck’s Chosen Few.

I wrote up a few basic rules, got some groundwork laid, and then it just kind of sat there. It was probably in a working state at that point (at least as much as it is now), with one exception. You see, LLCF is designed to be played as a story, not as a game. To simply plop characters down in Fantasy Land and go at it didn’t seem practical in my mind, but at the same time I had no world to really use. Every world I had made in the past was for a system intended for high-fantasy: Pathfinder, D&D, Open Legend, etc. While they certainly could have been used for Mid to Low Fantasy, that wasn’t the purpose of the system and anytime I tried, it simply went off the rails when my players all decided to be magic-users.

Then, D&DE got cancelled – it was a disappointing process as I watched delay after delay come about, extending it further and further. It was only when I gave up on that project, however, that I finally gained some direction with LLCF. You see, my issue there was that I felt I had to start from scratch. I had to build my own low-fantasy world from the ground up, something I had tried to do a million times before, but always seemed to fail at for the aforementioned reasons. Now, I had a chance. And what better way to do it than with the world I just created. The world that was originally designed to be low-fantasy, made with the pressure of being in public domain, subject to the scrutiny of, like, 10 people (but possibly the entire internet)?

Now, it should be important to at least give a brief overview of Kithria’s original creation. I’m going to skip the original brainstorming, though, and go straight to the point where D&DE started becoming a reality. At that point, there were four human races (five if you include orks), three elven races, and two dwarven races. At that point, I had little intention to include any more races, trying to limit it. On top of that, my original intention was that magic would be rare. That was the plan. But, best-laid plans. Players threw fits and I felt a need to include more. I added, for that reason as well as others, two races of halfling, three of gnome, all the goblinoids, an additional elven race, half-orks, half-elves, the Touched (my own spin on Tieflings), dragonborn (as a human race in the lore), and kobolds.

Most of it, I was content with, but the only added part I was particularly happy with were the gnomes (who had been given reason to their pranking antics and were perhaps the most horrifying creature in the world – I say were because, when I created the LLCF version, I also added the Haklos, an original race of mine that is wholly alien).

All I had to do to create the world I wanted for LLCF was gut the world, getting rid of everything that didn’t have a reason. For once, I didn’t feel obligated to include things because they were part of the default. I didn’t feel like I needed to include certain things and omitting them had to have a specific reason. I felt I could work from the opposite direction: only including things because I had a specific reason. And because I felt I could omit things, I felt my world-building benefited.

No longer did I feel bound to include standard fantasy races, and I felt like those that I did include, I could do what I wanted with. I removed goblinoids, dwarves, halflings, dragonborn, and kobolds entirely; I made my elves a bit more mysterious and a lot more powerful – and a lot less numerous; and I made humans a far more diverse race, with 8 different human ethnicities (9 if you include orks) rather than the original 4 human races (6 if you included the orks and the Touched). For those who aren’t certain of the difference, I am assigning the terms as follows (using real-world examples): race would refer to European, Asian, African, or American; ethnicity would refer to German, English, Spanish, Italian, etc.

As well, I felt the freedom to completely change the geography of the world – something I did incorrectly when I made Kithria before – to be more fitting for these 8 different human ethnicities. Each ethnicity, you see, comes from a different region of the world; originally, each human race was tied to a different continent.

This resulted in another major change: Kithria went from the name of world at large (four continents closely connected together), to the name of the continent, with multiple regions (in a similar vain of the Roman provinces). Kithria went from the four continents of Kapfas, Shelez, Gelth, and Mikron to two continents: Kithria and ‘the Southern Continent’. The former is now made up of 7 regions: the cold highlands of Kapfas, the mountainous lowlands of Barush, the river-crossed Felseth, the forested lands of Gelth, the desert basin of Imin, the lush plains of Biria, and the rocky plains of Shelez; and the latter is made up of one charted region on its northern edge, facing Kithria: Mikron, a region full of lush rainforests and foreboding wildlife.

From these unique regions came unique cultures, shaped by the geographical features of their places of origin. However, I believe I have gone a little off-track, so I’m going end this post here – but my process of creating cultures is where I’ll pick up next time I talk about world building.

Just remember: don’t let the norms of world-building and fantasy limit what you create, or force you to create things that you don’t want to in the first place. Start your world-building not by asking yourself what to omit, but instead by asking yourself what to include. By limiting your options, your world-building will be much better as a result.

So, I guess that’s the main takeaway: sometimes bounds can be limiting, but they can also be more freeing than having none at all.

Lady Luck’s Chosen Few

Another project I’m working on is a tabletop roleplaying game (ttRPG – for those who don’t know what that is, D&D is the most popular ttRPG) called Lady Luck’s Chosen Few. It is intended to be a rules-lite system that is easy to pick up and easy to play. The creation of it began a few months ago after reading a blog post by The Angry GM (post itself here) about disregarding Tabletop conventions (such as ability scores) to create a better system.

In short: the article explains that when sitting down to create a Tabletop RPG, you should not ask yourself, “How am I going to handle ability scores?” but rather answer the question that ability scores were created to answer, “How am I going to resolve situations that characters get themselves in based on chance, where the character’s capabilities are taken into account?” Another way to word this is, “How is action resolution handled?”

From the problem this article presented, the idea evolved into: I want to make a ttRPG that is easy to pick up and play, is more oriented to low-fantasy settings (magic is limited or extremely dangerous and mythical creatures are a rare sight), where death lurks around every corner, combat can be easily resolved in a few minutes (thereby lowering its prevalence in the system), and character creation is based on a character first mentality, rather than stat-based.

After the jump is a brief introduction to the rules so far.

Character Creation
A staple of the game itself is that the player’s characters (PCs) are extraordinary, not because they were born that way, but because they made themselves that way by garnering the attention of some cosmic force which now guides their path. Character creation requires determining 3 simple things: what your character looks like, how they behave, and what the life event was. None of these have to do with rules or game mechanics.
After determining those three things, play can begin. But, obviously, there needs to be some way to define a character’s capabilities through game mechanics, otherwise, everyone’s the same.

Action Resolution
Any action that has a higher than ~20% chance of failure requires the roll of a standard six-sided die. Before the action is rolled, a certain threshold is determined by the Game Master (GM – controls all the NPCs [non-player characters] and the environment). If the player who is controlling the character rolls at or above the pre-defined threshold, their character succeeds in whatever they were trying to do. If they roll below that threshold, they fail. Each roll can be affected by a character’s ‘Aptitudes’, which apply to different situations on a case-by-case basis. Any given aptitude will, at most, affect a player’s roll by 1.
Practically, any injury received counts as a death blow – a roll is made to determine if a character survives that death blow.

Character Capabilities
To represent their connection to some cosmic force, a given character has a stat known as ‘Luck’ (hence, the name of the game). They can use this luck in two ways: spending it (lowering the current value) to increase a roll by however much is being spent, or burning it (lowering the max value to gain an aptitude).
Characters also start with a Wealth stat (that can only be burnt) which is used to determine what equipment they can have.

I will likely put the rules for this system on its own page of this blog as I am able.