2014-11-06

Sigh

8951 words right now. I fell behind working on code instead of writing the last few days. I'm committed to catching back up though.

I've been stressed out about the limitations with using Unity for text based games. I knew the problems before I started all this, but I hoped that I could figure out workarounds. My biggest concern is with the user interface and accessibility.

Ideally I could hook up games in the system to accessibility features provided on each platform. I believe this is possible with Unity on mac, win, ios and android by making plugins. Unity has nothing built in to access these features. Actually Unity's stance on accessibility as far as I can tell is basically good luck. The problem for me making these plugins is that desktop native plugins require Unity Pro and my current project budget is nil.

That brings me to search for alternative multi platform game systems where I can port the system.

Xamarin would be the easiest switch since the core of Fate is already in C# without dependencies on Unity. The downside there is that it costs to develop for mobile and I would still have to write accessibility plugins for each platform's accessibility apis anyway.

Cocos2dx looks promising as a cross platform/open source engine, but I would need to convert Fate to C++ (no small task). I also haven't dug up any clear answers about how or if Cocos2dx interacts with the various platform's accessibility apis.

I've looked into Haxe as a potential solution, but couldn't find anything about accessibility with OpenFL, haxepunk etc.

There is of course Java or cpp with qt/whatever or c and gtk? or javascript/html5/css. I just hate/haven't used those. Yeah, my current outlook on all of this is kind of negative. I'll figure it out eventually (I hope).

2014-11-03

Stupid bugs

First, a little nanowrimo progress update. I am at 6387 words. I've been thinking about posting my wip as I go, but I'm not sure if it is worth it with what little I have so far. The story is my first attempt with survival horror (zombie apocalypse). It has some extra sprinkles of things like drama, supernatural phenomena, romance, mystery and a pinch of comedy.

As for my fate system, I finally squashed the bug I've been hunting down the past week. The issue started when I added the ability to give nouns in the world system a unique displayed name. I ran into a problem with needing to create unique names for things that didn't really need them. For example I had to give elevator buttons in the game a bunch of unique names like Floor 1 Button, Floor 2 Button, etc. when all I really needed was Elevator Button on all of them. Implementing that feature meant setting up a clean way to add it to the source code. After some thought, I ended up with a noun declaration like this:

:: Elevator Button|Floor 2 Button [noun(Floor 2)]

It feels pretty natural with the way links can have a displayed text value on the left that is different from the passage or whatever they point to on the right. Adding new features means writing unit tests first, but my downfall was not adding the right tests. I tested the feature with the importer but forgot to add tests in the world system. The end result is I spent a week adding all kinds of new tests trying to pinpoint what was going wrong in the importer. Debugging in Unity is a painful process, but I tried and failed to find the issue. Finally I went over a higher level step through of the system and found that the import process was fine. The issue was with the world system silently discarding nouns with similar displayed names during initialization. The lack of any warning or throwing an error about it really messed things up in finding the problem.

Anyway, with that fixed I can sleep a little easier. But I know what you're thinking, 'Why should I care?'. Well, I don't know, you're the one reading this. >_>

2014-11-02

Sidetracked

I've been aware of nanowrimo the last few years, but I always found/made reasons not to do it. I'm giving it a try this time around, with a game story thing. I should probably look up the rules and such, but it's a lot easier to just start writing. I'm at roughly 4199 words including various link syntax. I want to keep the thing simple enough to import it to Twine if Fate isn't up to snuff by month's end. I've been struggling with a nightmarish bug with Fate that I can't track down the source of.

This makes the fourth project that I've started this year, and I'm at 0/4 for finishing anything, but, well... I'm working on it.