Next installment of my game (Code name "Tunnelship") for the apple tv.
Nothing huge this week but got some more gameplay basics ported over from
Droppyship and added some utility stuff.
What I've done so far
The camera is working now instead of just flying through walls,
and the ship collisions work. I also added coins to collect, though I am not sure if
these will be actually coins in the final or if they will be some other resource. I fixed
up the shaders a little bit so they don't look so dark but these are all still placeholder
assets and shaders for now.
I also hooked up the IMGUI library, along with Synergy
which lets me share my mouse and keyboard with my Apple TV. I haven't done anything with it yet but it should
be super useful for debugging. Note that this is only exposed to the c++ side of things for the moment, I'll have to add
some glue code if I want to talk to the Haxe gameplay code.
I did not manage to fix my stability problem. I've got some kind of crash in the hxcpp GC, something in the way I've set up the project breaks things. (I am ashamed to admit I just disabled the GC to record this update). Sometimes a clean build or a trivial change will make this go away for a bit, so it's quite annoying. So this week I'm going to try and dig in to that and lock it down. If I can fix that, I'm also going to try and get the basic loop for the economics metagame in there.
Hey there! I'm starting to dust off this blog and am going to try and post
more dev diaries about my work in progress. I'm more of a hobbyist than a
serious indie dev so sometimes months can go by without any progress at all,
but maybe this will help.
Each week I'll try to post a little "State of the Project" video and just run
through the current state of the game. Right now it's pretty bare bones and
there’s no shortage of bugs and glitches. But since this is the first dev blog
that's to be expected.
My current project has the working title "Tunnelship" for the Apple TV and
tvOS. (I’ve actually picked a real title and backstory, more news on that
soon). The game is a 3D one-button arcadey cave-flier with a resource trading
metagame. That's a mouthful. Fly spaceship through cave, collect stuff, sell
it. It's kind of a spiritual sequel to Droppyship, the original Droppyship was
more of an engine test and a fun side project because I was really into the
flappy bird thing at the time (you were too, admit it). This one going to be
hopefully have a little more depth and replay value with the trading metagame,
and will also have several ships each with its own mechanic (including the
Droppyship of course), and more environments.
My goals for the project are pretty modest. Since this is a hopefully self-
sustaining hobby, my financial goal is to make enough to be able to buy the
ipad pro. Which is actually a pretty tough goal if you know anything about iOS
indie financials -- games on the app store either hit it big or make a few
hundred bucks. My technical goal is to prove to myself that the Haxe/Luxe/iOS
combination can ship a serious game, this is still pretty uncertain for me
right now. And my personal goal is to make a game where the visual quality is
equivalent to a AAA console title (but with several orders of magnitude less
content). Maybe that's a bit ambitious but I've always been a graphics
programmer so that’s where I want to try and push things. Also it’s a lot
easier to cheat if I'm just rendering a tunnel and not an open world, right?
What I've done so far
I’m writing this game mostly in Haxe, using the Luxe engine. Luxe doesn't
officially support the tvOS target yet, but it's similar enough that the iOS
target works with a little hacking. I’ve been tinkering with Haxe/Luxe for
almost a year now, mostly for game jam projects, and I’m really falling in
love with the haxe language. It’s just so beautifully pragmatic. It’s a
language for getting stuff done. Plus you can target the web, which seems like
it’s more and more of a requirement these days. Eventually emscripten will
probably get us to the point where that’s true of any language (provided
you’re careful choosing what libs you build on), but from my experiments it
feels like it’s in very much a “proof of concept” phase, whereas the web
output I get from Haxe feels like I could ship it today.
So far, over the last month or so, it’s been mostly laying the foundation.
I’ve got Luxe running on the Apple TV, including hacking in some support for
the MicroGamepad and the GameController framework. I’ve mostly ported the
original Droppyship gameplay to Luxe (though it’s missing some minor details,
like collisions. :) ) And I’ve started work on the “metagame” screens.
I’ve been accumulating little bugs, and have a handful of crashes and other
problems. Most of these I can work around, but I need to take a step back and
try and clean them up and get a solid foundation. I’d also like to throw in
some debugging/tuning stuff so I might try and drop in IMGUI and maybe see if
I can figure out how the hxcpp debugger works. And right now the shaders are a
bit broken, I’m not quite at the point where I’m ready to do any serious
shader work but maybe at least make it not look like garbage.
But I’ll be happy if the game is pretty much at the same point next week,
maybe with the core loop ironed out a little bit, except feeling rock solid,
which is does not feel right now. That’s it for this week.
That’s it for this time around. I don’t know if anyone will read this, but
maybe it will help me keep on track with dev. I’ll try to post one of these
every Saturday-ish. Maybe I’ll try and do some livestreaming of development or
something, I’ve been watching a bit of that and it looks pretty fun. Anyways,
if you are reading this, and have any questions about the game, or about the
tools or tech I’m using, or iOS graphics or app development (cause that’s what
I do) or just want to say hi in general, please don’t hesitate to ping me on
Twitter at @joeld42, or email. Or I think the comment form on here still