Fin ‘N’ Kit DevLog #1

The Moo team is working on updating Fin ‘N’ Kit – an old mobile game I made two years ago with Gideros and Lua.

Because of some of the constrmain menuaints with Gideros when it comes to PC support, I’ve spent the day creating a Fin ‘N’ Kit C++ project using my Kuko framework, which is built on C++, Lua, and SDL2, with the intention that it will be our primary framework for all PC and mobile games (with Windows, OSX, Linux, and Android supported initially.)

In the Kuko framework, you can set up menus in .lua files, basically making use of Lua tables, so today I’ve mostly been working on menus.

So here’s some quick looks at the main menu and play sub-menu.

 

Screenshot-Fin 'n' Kit - Moosader LLC-1Haven’t worked on the Options or Help menus yet, but there is a language select menu in, with the languages English, Spanish, and Esperanto. We can add translations later, but these are the languages that people on the Moo team currently have expertise in.

The level editor is one of the big things to implement soon because that means that the Moo team can work on levels sooner, so we can get a collection of levels available for play upon first release of the game. Of course, we can also add new levels and themes over time.

The level editor will also be included in the game, just like with the current version that is available on Google Play.

 

 

Screenshot-Fin 'n' Kit - Moosader LLC-2Another thing that Lua is used for in the Kuko framework is language files, which allows us to have the game available in multiple languages. The menu lua files can take hard-coded text, or a text ID, which would correspond to a key in the language files.

 

Well, that’s all for now.

–Rachel

Other Stories

I want to finish the two unfinished Android games that I began last year, Delfino & Katyuno and Fantazio de Esperanto, so that I can work on my language learning RPG, but also so that I can try to collaborate with other people to make some games.

Specifically, I want to try to find people with stories to tell. Their stories, or fictional stories that they create from their own unique perspective.

For example, I might make a SHMUP-plus-Visual-Novel, with a story revolving about people who are asexual. I have my own experiences in this regard, but I want to also find others who can add their experiences to the narrative as well.

I also want to find people who have experiences different from my own, and work with them to create a medium for them to express their stories.

I feel stuck by the lack of time, I need to work harder to put myself in a situation where I can accomplish this.

Language Selection in Video Games

game

I like supporting multiple languages in my video game projects. Usually, I’m focused on English and Esperanto, since that’s what I speak, but there’s no reason other languages can’t be supported.

Usually on websites, I see flags used to represent language options – as an English speaker, the flag is usually either the U.S. flag or the Union Jack. Seeing either doesn’t really bug me; extra “u”s and “s”es where us Americans have “z”s. But, I can only speak for how I feel about this individually, for myself.

For other languages and countries, I have no idea how representing a language with a specific flag might come across. To support Portuguese, if I’m hiring someone from Brazil, do we use their flag? What country for Spanish? Or Arabic? Or Mandarin?

With a website, who cares if you have a list of text to select from, with the language’s name being written in the target language. With a game, how do we make a language select screen beautiful without cute flag icons? I do see flags used quite often in video games, like if you pick up a game from Europe, but honestly it might not be appropriate.

There is a good article on Flags are not Languages with ideas for how to present language options.The best option at the moment seems to just be to list out the languages with text.languageselect

Rayto: Language Fantasy Dev Log #1

What is Rayto?

Now that life is beginning to calm down a bit, I’ve been working on gaining momentum with my game development again. My current project is called “Rayto: Language Fantasy”, which I’m writing with C++, SDL2, and Lua 5.2.

Once I get more work done, I’ll post a video about it, but right I do not feel like there is enough to share to actually record gameplay. Because… I haven’t programmed any gameplay yet. But I do have a working menu system.

So this game comes in two parts, Kuko, the C++/SDL/Lua framework which is reusable (I had begun fleshing it out by writing Pickin’ Sticks, and now I’m extending it as-needed while I work on this new game), and Rayto, the game code itself. These are both Open Source, woo!

Oh, but what is Rayto? The idea is to make a bi-lingual life-sim-slash-RPG to help with language learning. Mostly inspired by a Harvest Moon or Rune Factory type deal, the purpose is to provide an immersive experience in a target language, while still giving hints and lessons to help the person learn the language.  It’s not the be-all-end-all, single-lesson-for-full-fluency, but it’s an aid. A game built around teaching vocabulary as well as having dialogue and story, presented in the target language.

So here’s a preview of what I’ve done so far.

The Magic of SDL

For a while, it felt like C++ was falling behind in usefulness, when it came to indie game development. With my C++ games, I’d have to compile for Windows, Linux, and OSX (or rely on someone else to build for OSX for me), but games that could be played in a browser, or on a phone, had some advantage – easier to play and easily portable for Web, more ubiquitous marketplace for mobile.

Over the past two or three years I’ve experimented with game-dev using something other than C++. I wrote a few games with Java and LibGDX, I made some browser-based games with JavaScript and the HTML5 canvas, and I’ve published a few small applications using Lua and the Gideros framework.

Since then, SDL2 has come out. And, while Gideros has actually been a joy to use, Gideros does not currently offer support to export for Desktop, and I would like to be able to offer some of my apps for more than just Android.

Looking at SDL2, it looks like you can have it all now – Cross-platform PC, iOS, Android, and if you’re using something emscripten, you can even build your C++/SDL game into a JavaScript/Canvas project.

So, finally, it seems as if I could possibly have my cake and eat it, too.  When I’m programming for myself, I want it to be in a language I enjoy, and I want to be writing software and games that I care about – otherwise, why would I do it in my free time?

I am currently working on writing a framework on top of SDL for use with my PC/Mobile games – I will be reworking Pickin’ Sticks LXXIV, Dolphin & Kitten, and Fantazio de Esperanto to all be using this new framework, and they will be extended and, hopefully during the year, completed. I’m excited!

The Problem with Video Game Character Creators

For video games where you build your own character, why does it only give you the option of “male” or “female” to choose from?

The first character creator that stood out to me, honestly, was in My Sims, an adequate Wii game spin-off of The Sims. You create your character in it, but you don’t assign any gender – you have access to all options in the editor.  Of course, all the characters are chibi so there isn’t really a “body type” difference in the characters you see around town, so why bother having that constraint?

But what if more games did that? Even if you did have different body-types, why not have all the options available, and not have to assign a gender? The lead character is usually addressed by their name anyway, and the Singular They could be used when your character isn’t directly being addressed.

I’ve had some people just recently argue with me about how “Singular They” is an abomination to the English language and that they refuse to use it, however. (Really? English? English itself is an abomination…) So I have a different suggestion for your character creators to get around this.

Don’t assign gender to your character in a character-creator. Assign pronouns.

The programming is not going to be much different from switching between he/she in the dialogue. You could store variables to be swapped out based on the pronouns. (He Him His – She Her Hers – They Them Theirs – and so on).

But that doesn’t go far enough – since these values are going to be stored in variables anyway, why not allow the user to type in their own pronouns?  Just have them enter in the three-or-so variations of the pronoun that shows up in the given language.

pronounbox

Many games allow the user to type in their own name – so give it a try, let people enter their own pronouns. Let people choose any option in the character editor.

Update, February 19th

I recently watched a GiantBomb Quick Look for Sunless Sea, and during the character creation process, I saw that they ask the question, “What term of address do you prefer ashore?” with options like “Madam”, “Sir”, “Citizen”, and more, which is a nice, story-integrated way to deal with this.

address

You can check out Sunless Sea’s official webpage here.

Do you know any other games that do this?

Languages, Text Parsers, and Video Games

I can speak English and Esperanto. I’ve started learning a handful of other languages, though I tend to have a hard time sticking with one. Oddly, sticking with Esperanto is easy, perhaps because I already have communities I’m part of, and uses for it, while with other languages – say, Korean – I really only get to use it at the nearby Korean grocery store.

But, I’ve decided to start learning Chinese. I decided that a couple of weeks ago, but so far I haven’t done much studying yet, just skimming pieces here and there. Do I start with reading on grammar? Do I start by studying Pinyin? Do I start by learning the building blocks of the writing system? Hm.

I’m a bit restless when it comes to sticking with a single textbook, and I want to start using the language as soon as I can, so then – do I memorize phrases and investigate how words are put together?

I began compiling a list of the verbs, nouns, and adjectives I find myself using the most in Esperanto. It’s hard to really quantify what English I use in my day-to-day life because it’s so engrained, but that’s one of the good things about being familiar with Esperanto – I have more of an explicit idea of what I’ve learned over the past three years, so it could perhaps be a blueprint of what I would need to learn for another language.

Building this list of words and common ways I end up combining them actually reminds me of writing a text parser for a text adventure (or something like the old King’s Quest games).  Actually – wouldn’t it be kind of fun to learn some basics of language through mixing and matching verbs and nouns together to interact with a virtual environment? (OK, maybe it appeals to me because I grew up with Sierra adventures…)

Though a problem with this method of “learning the patterns and extrapolating from there” would be more difficult for an irregular language, when you can’t always be sure that it will be something like “Verb-command-form [the] noun”

On a similar note – games can be a great way to give a controlled, somewhat immersive experience. If designed properly, a whole game could be in the target language, while not overwhelming the player with more nuanced parts of grammar.

If I pick up a new multiplayer game, for example, I pretty much always want to play Single Player first to get a feel for the maps, weapons, gameplay, etc. Similarly, I am going to be pretty shy when it comes to actually practicing a new language, I want a “safe sandbox” to practice in first.

And, with respect to old Sierra and LucasArts games, I know that I, personally, have heard a number of non-native-English speakers say that those games were a big part of how they learned English.

So, what might be a good way to apply language learning in a game medium? What games have done this, and done a decent job? Hmmm…