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.

Planners vs. Pantsers

A little blurb about the writing process, some info on Devilspawn, and a hint of life advice mixed in.

A common divide in the writing community is that of Planners and Pantsers. For those who are unaware what this divide is, the former is as their name suggests. They plan their story, outlining, creating all the major characters beforehand, and knowing, from the beginning, exactly what the story is about. Ultimately, things will change – perhaps things don’t go exactly as they expected, or they noticed plotholes that weren’t evident in their initial plan.

Pantsers, on the other hand, do the exact opposite. Their name is in reference to writing ‘by the seat of their pants.’ They do little to plan beforehand, simply starting to write and seeing where the story takes them. They create settings and characters as they emerge, often having a vague idea of where they’re going with things, but with no clear path to get there.

The divide between these two is most evident in that each often finds their own methodology superior. Planners will give new writers the advice to outline and plan everything beforehand. This will often result in a very hardlined story and the finished product will look very much like the first draft. Pansters will give new writers the advice to let the ideas flow through them – let themselves have a trash (or other, less savory, words, if they prefer) first draft. Then, write the second draft in such a way that it seems you knew exactly what you were doing the whole time – much like a Planner first draft. So, ultimately, it would seem, they end up at the same point, just with a different methodology to get there – a methodology dependent on the personality and thought processes of the author.

This can also be compared to the Meyers-Briggs Type Indicator (MBTI – a popular personality assessment) dichotomy of J and P (Judging and Perceiving, respectively). J’s, within the MBTI, are those who dutifully plan, creating schedules and itineraries, while P’s are those who tend to be more laid back about planning – they still plan, but, for those who strongly lean to the P side, every plan is penciled in; nothing is set in stone. It is known, among those who properly hold to the MBTI, that being strongly one way or the other is unhealthy, and, should someone strongly lean one or the other, they should practice moving more toward center, living in a more moderate manner. As stated by Aristotle (and, to a degree, Solomon before him and Paul after), the key to living a good life is moderation.

The same could easily be said of Planning and Pantsing. To lean more toward one side or the other will not result in an opportune story. Planning everything beforehand – having an outline, with specific characters, settings, and whatnot – disregards the minute, yet important, details that, on the surface, have little impact on the story, but can, in the end, inspire fantastic subplots or twists the author never would have thought of otherwise.

On the other hand, pantsing everything – writing with a vague direction – will result in unfinished stories, with a shoehorned ending that attempts tying up every plot thread in a neat little bow while leaving plenty of frayed ends and holes in the finished product that can be difficult to fix with new drafts without scrapping or adding entire chunks of a story.

I have, of course, seen ups and downs with both these methods in my own writing. My beta readers’ favorite characters (one of which ultimately became the actual main character in Devilspawn: Tara) wouldn’t have existed had I planned everything beforehand. As well, any time I try to plan something, I forget those small important details in the planning that are so important to the story itself. But, when I plan little, I find an issue with knowing where I’m going. With Devilspawn, I got to nearly 70,000 words in the first draft with no end in sight. I did as I previously described and shoehorned in an ending that was satisfactory to my beta readers of the time, but felt lackluster to myself. It felt like it was the ending of an entirely new book as I introduced new plot threads by tying them up. Ultimately, this is what led me to write Devilspawn as one novel in two books – the first book is what was the first two-thirds of the first draft, with more details and shorter, though more frequent, time jumps, made to be longer than the entirety of the first draft (the original first draft was around 85,000 words while the ‘first draft’ of Book I is over 90,000), and ultimately tying up the two main plot threads: Agathon’s search for his brother and his loved ones’ reaction to his disappearance. The second book will take on a couple subplots from the first book as main plots to round out the narrative itself.

As well, I’m much better at making up characters as I write than making them up beforehand. My original plan for Agathon and Sarah (a supporting character who was originally planned to take much more of a front-line role, similar to Tara) was hot garbage; both characters, and the ones I made up while writing (because when I was making the Satanists because my brain went ‘yes, 7, that’s a good number’ – should you read the book, you’ll notice I removed one as he turned out to be underutilized and didn’t serve a strong narrative purpose) turned out to be much better than the ones I prepared beforehand. I believe this to be the result of the fact that I was creating the lore for characters, rather than actually making character’s as described by Matthew Colville in his video on Lore vs Writing.

But I digress.

On the nature of Planners vs. Pantsers, I propose this: do both. If you are good at planning things out beforehand, do that – but not too much. Maybe plan a few chapters ahead as you’re writing (this is what I’m doing with Isle of the Dreamer, though the actual second chapter was never outlined at all and the outlined second chapter will be the actual third chapter). If you aren’t too good at planning things ahead (like me, see the paragraph above), write chapter by chapter, asking yourself at the end of each if you’re moving toward the end of your novel (if your novel is the sort which has a main plot). In both, remember to keep the end in mind.

So I suppose the two main takeaways can be found in the Bible: do everything in moderation, and keep the end in mind.