Archive

Tag Archives: DevBlog

I always hate doing these updates where there’s not a lot of progress to report. The last couple of weeks in particular have been devoid of any progress on the project, or even any work on it – at first because of a shoulder injury, which was making it particularly difficult to focus on any of the complex problems I needed to solve to work on the code part of the project, and then on a short family vacation. Before that, I was working regularly on the project – well, except for the week or so where the new meds I was trying out were making me too groggy to think straight – but, still, not making a lot of progress.

Part of the problem with working on a project the size of a game is that sometimes even the components of the project, the discrete chunks you’ve written down as tasks on a task list, come to substantial undertakings in their own right. Especially when one’s focus is split between several of these, it can be entirely possible to spend a lot of time working on them, not running into any particular roadblocks and making what feels like good progress in the moment, and look back and not see anything new actually finished. This is basically how things have been for the last month – In particular, the storytelling system has taken much much longer than I’d expected it to, leading me to do a bunch of rewriting of the music system. The reason why the music system had to be rewritten was so that I could readily sync the storytelling lines with the music when I wanted to, in a way which I didn’t have to custom code for every story and every music track. I now have a system where any music track playback can intelligently jump around – that is, once I put in a number of valid points it can jump to in a track, say if a certain section can end in three different ways, I can give it a destination range in the music and it will find the shortest path to get there. I didn’t expect to have to read up on pathfinding algorithms for my music code, but here we are.

Now that I’ve got that component of the storytelling system figured out, there’s still one major roadblock to finishing it: Text rendering. This is something that should be easy in Flash/AIR, but just due to how I have entity rendering set up is a bit tricky. At this point, I have two options: Either I modify the entity rendering system, which would be a nuisance but not too difficult, or I find a way to convert the text into graphics rendering commands that I can send to the entity draw command queue. I’ve found a library that does this, but it hasn’t been updated for 8 years, so it might not be an ideal choice. If it doesn’t work out and I don’t find an alternative, though, then I’ll just have to rewrite the entity draw command system, because writing a whole text renderer to handle this problem would be an obscene waste of time, albeit presumably an educational one. At some point, as well, I’ll have to create a typeface for the game to use, possibly several. I think that will be fun.

The other two major things I was working on last time were the health bar and the awakening animation. The awakening animation has turned out to be a bit of a quagmire as well – I had the motion of standing and grabbing the weapon looking pretty good when I realized that I hadn’t really planned out how it was actually going to fit into the level where it was supposed to happen. This was something I can only describe as an extremely foolish oversight on my part. I’ve begun reworking the animation and I think I figured out a way to do so without completely starting over (again), but it required me to redraw the tree which was the main prop in that area. Honestly, I’m glad I was forced to do so, because the previous tree looked pixelated in a way which I had thought looked okay – but, I can see now, really did not. It looks much better now.

Of course, now I have to be concerned that making this tree look better will make the rest of the game look worse in comparison, and lead to an endless cycle of revisions. For now I’ll just have to enjoy the journey I guess, because I can’t say when things will start looking ‘good enough’ to me.

As for the health bar, progress is being made on it, but the storytelling code took priority and I didn’t want to split my attention between two programming tasks. I’ve also been working here and there on music for the next area, but though I have a number of promising ideas down, most of which will probably find their way into the finished version somewhere, none of them really feel like the right place for the song to start. For now, there, too, I keep experimenting, waiting to be visited by the spirit of satisfaction.

So, for this next month, I intend to finish the storytelling system, finish the awakening animation, finish the health bar. From there I’ll probably start in on other necessary animations – though I also think it quite likely that I’ll look at the tilesets I have to bring their level of quality up to this tree asset. It’s gotta be about the pleasure of the journey, because at this point I have frankly no idea when this project is going to go anywhere. I wish I knew how to work on it faster, but at this point it seems like it’s work slowly or not at all, and hope one day to accidentally, habitually, fall into a more rapid pace.

Advertisements

Another month has gone by, and though a short vacation, a nasty little cold, and a number of other minor distractions got in my way, I still managed to make a little bit of progress.

First, and most importantly, I put quite a few hours into writing the music for the first boss of the game. I may have gone a little bit overboard on this one: The concept I wanted to pursue was a track with multiple phases that mapped to different parts of the boss encounter, bouncing back and forth between them until finally reaching a conclusion. I’m not sure if I can possibly create a boss encounter that stays interesting long enough to accompany this track, coming in at almost 9 minutes long, but it will be fun to try once the rest of the chapter is complete.

The phases of the track are:

0:00-1:47 Intro
1:47-4:13 The Chest
4:13-6:16 The Mask
6:16-7:49 The Heart
7:49-8:40 Conclusion

This one honestly ended up getting quite a bit out of hand, and I spent quite a bit more time than I’d originally expected to on it, but I’m quite pleased with how it turned out. I also just enjoyed doing music work again! I’m going to carry on with composing the soundtrack even though I’ve effectively completed all the tracks for the first chapter of the game now, which is the part of the game I’m focused on finishing. The reasons why I’m going to continue doing music work, despite otherwise attempting to contain my efforts to this first chapter, are several-fold: first because, as mentioned, I like making music and I want to do more of it, second because if I can’t make this game in a timely fashion I can damn sure make its soundtrack, which is a discrete sub-creation that I can be proud of in its own right, and third because I find music so compelling that I think just having the soundtrack to the game will motivate me more to finish the rest of it. There’s also a fourth, more pragmatic reason: Inspired by UNDERTALE’s soundtrack, I’m really trying to integrate motifs from different characters and locations into tracks with a narrative connection to those characters and locations. It’s going to be really hard to do that until I know what those motifs, for later parts of the game, actually are! I’m not really going to be able to consider chapter 1’s soundtrack complete until I’ve written the rest of the soundtrack and know better what my overall thematic tools and goals are.

Anyway! Aside from music, I’ve been working on a few things. I’ve been feeling my way around programming the main narrative component of the game, the storyteller. This is going to be something pretty similar to what Supergiant does in their games with an ongoing narration element, except I would like to integrate these narrator lines a little bit more closely with the music, syncing the lines up with particular parts of the track and so forth. Additionally, I want to have text appear in the world synced with the audio, so it’s a bit like playing a storybook. Figuring out how I’m going to pragmatically handle the synchronization of these elements and making them play nice with a player who may or may not be interested in the narrative taking place is going to be a challenge, but I’m getting close to having a simple version ready to test so that I can iterate on it.

I’ve also been thinking a lot about what the interface of the game is going to look like. There are really only two elements that need to be displayed under normal circumstances: The player’s current health, and how many sparks you’ve collected, which also maps to your max health. I could just have a red bar along one side of the screen, but that felt inelegant. A sphere that fills and empties like the health meter in Diablo might have been a bit more thematic, since there’s some sun/moon symbolism I’m playing with in the game, but it felt like a circle would take up a lot of screen real estate for how much info it would impart and probably wouldn’t look very good. What I’ve come up with instead is an idea that’s… actually a little bit difficult to express here. It’s basically a life bar along the left side of the screen, except it looks like an engraved stone tablet. Only a small part of the tablet is visible early on, but as you gain more power the tablet expands and you can see more of it, and the engravings on it. I can actually directly tie the health meter into the narrative of the game in what I think is a pretty interesting way. However, because you don’t gain power at a constant rate, but instead end up collecting more and more as you defeat more powerful opponents, I’m going to have to figure out a curve that reveals the tablet at a rate that’s satisfying over the course of the game. I have a logarithmic function in mind that may work well, but it will have to be tested. I’ll also need to figure out how to have the tablet build up in such a way that it feels satisfying, and ensure that no matter what its interim shape is it still gives satisfactory feedback as a health meter. This will all take a bit of experimentation, but it’s an idea I’m excited about.

Finally, I’ve been working on the game’s first animation. I mean, I’ve already built several animations, but this is the first one that will play in the game: The player character awakening, standing up, and taking her weapon at the very beginning of the game. I started creating this animation, and then had to start over after working on it for a few hours because my first take on it sucked. I think my second take on it has potential, though it’s still very rough the motion feels good to me.

The actual removing-sword part of the animation still needs to happen, and of course all of the detail and the tween frames need to be added, but I think I’m on the right track this time.

So, the plan for August is to finish working on these things, write the music for the first area of chapter 2 (I’ve already started), create more main-character animations, and maybe get some basic sound design in. Of course something else may capture my fancy and I’ll end up working on that, but as long as I stick to my big task list I think I can maintain forward progress.

Well, I’m back to working on EverEnding. That side-project ended up being exactly what I didn’t want it to be, an excuse to work on a whole bunch of tools without ever making an actual game to go with them. We’ll call it a learning experience. What did I learn? I learned that I have a habit of avoiding the scary unquantifiable parts of a project in favor of working on parts that feel like safe investments – that I feel, somewhere inside myself, that if I pour my efforts into making tools and systems that that’s a safer gamble to me than pouring them into the actual core of a game. Art is scary! The more time you have to put into making it, the scarier it gets – in the first place, making art is like putting a message in a bottle and letting it out to float on the sea, and it only gets more stressful when you spend more than a year creating that message. The solution is not, I think, to spend another year developing new bottle and paper and ink production facilities to make creating each message that tiny bit less terrifying, but it’s an appealing option to take whenever it presents itself.

Oh, also in addition to those big existential questions I guess I learned a lot about making a scripting system and working with OpenFL. So that’s good too.

Once I decided I’d basically dead-ended, it was clearly time to head back to EverEnding. However, I’d left the project in uh… not a great place. I’d completed about half of the OpenFL port, and lots of systems weren’t running and I’d left lots of bugs in the systems that were running. Eventually, after lots of debugging and deliberation, I ended up rolling back a number of the changes I’d made and reverting back to Adobe AIR… for now. The reason for this is that switching to OpenFL would not only require me completely rewriting all my rendering systems, it would also make a couple of the special effects I’m planning extremely difficult. I really want to be actually working on a game now, so I figure rather than resolving all these issues right away I can defer them for a while. A big thing that enabled that is that OpenFL now supports Adobe AIR as a target platform, so with a few checks in my code to handle cases that are unique to OpenFL (most of which I’d already implemented) I can have something that can run on that version of OpenFL with no changes and, perhaps soon after, build to other OpenFL target platforms. Even if I’m not prepared to implement OpenFL just yet, with my experimentation here and with the side-project I think I have a pretty good idea how I’ll handle it when that time comes.

So, back to working on EverEnding: There were a few big design decisions I’d been deferring, one of which was specifically how to handle the narrative of the game and the other was creating some sort of special moves the player could unlock over the course of the game. I think I figured out a good system for creating a narrative in the style of sort of a story-book, with narration synced to music and text fading in – this is probably something I’ll want to prototype, though, to make sure it actually feels right. The special moves are like 75% figured out, but only the smallest slice of that stuff will be in the first chapter of the game, which is the one I’m focusing on right now, so I can figure out the last of that later. After I got that stuff basically sorted, I created a big task-list for creating chapter 1 of the game. I already had a task-list, but I made one that was bigger and more thorough, and had accompanying time estimates for each task. I tried to overshoot every estimate, but if they’re accurate than I have something in the region of 1300 hours to put into the project before the first chapter is complete. That’s a lot. Then again, I’ve put that much time into TF2, and I didn’t even make that game.

I have my work cut out for me. I’m going to start scheduling myself a bit more strictly again, though I may only get a few days to work to that schedule before I have to leave for a family thing, but with all this down and planned out I feel – well, not exactly optimistic, but determined I guess. I just turned 35, I’m starting to get the tiniest bit of grey in my beard, I got a blood pressure monitor for my birthday. I really do need to actually finish a project.

This might not be the best time to write a DevBlog, but it’s also way overdue and having not done it is stressing me out, so I may as well get it out there. After a short vacation followed by a short cold, I finally managed to get the scripting system more or less up and running. However, whether it’s left over from the cold or because of my mood, finishing the scripting system didn’t leave me with a sense of relief or of completion, but just a sense of having reached a dead end. Now I have a potentially powerful and interesting tool at my disposal, but in order to actually use it I need to restructure my project to accommodate it, and I still don’t really know what that project is or is going to be.

In and of itself, that’s not a problem. I didn’t know what the project was before, and I have one more tool for tackling the project than I did before, so no problem, right? At worst I have a month or so of wasted time, which isn’t great but it’s hardly worse than some of the other setbacks I’ve dealt with – and, as wasted time goes, creating a parser for a scripting language is far more educational than most time wastes. The issue is more that, at the moment, I have no real drive to pursue the project, or really to pursue any project.

This happens sometimes, and maybe I just need to wait it out. Or maybe I need to do something different, or maybe I just need to figure out a new approach. I don’t know. I’ve just been very tired, and not knowing where I’m going or how I’m getting there is making me more so. The world seems exceedingly broken at the moment, and putting long-term work into a project when I can’t feel confident that anything about the world I’d be making it for is will still be the same when it is complete just feels like a waste of time. Games are generally what I’ve been passionate about, but at the moment games feel like a bit of a dead end.

In all likelihood, I’ll feel better soon enough. I’ll feel more alert, some aspect of the project will catch my interest again, and I’ll build an idea and purpose around that. In the meanwhile, I think I need to take a moment and look around. Maybe something else will catch my interest, maybe something a bit more solid. Maybe I’ll get back to work on EverEnding. I don’t know. I’m just waiting right now, and trying to rest, and trying to figure out a direction to go in. I don’t think that we really need any sort of grand calling in life, but we do need something to pursue, and right now I’m not sure what that is for me.

Oh well, this one was kind of a downer. Hopefully I’ll figure something out and next month’s DevBlog, if that’s even an appropriate title any more, will be less bleak.

Well, I keep on getting distracted, but the distractions are all part of the project itself. There’s a distinction between the process of making a game and the process of making the game engine, the game editor, the game tools, even though these are a prerequisite – and, clearly, I’m more willing and able to focus on those right now than I am on making the game itself. I think this is okay for the time being: Part of what I wanted to do with project is to let myself go where my enthusiasm guided me to go, and clearly right now that’s in working on the tools. Now, whether that’s just because I’m more intimidated by the idea of working on content stuff, well that’s an open question. Eventually I’m going to run out of tools to work on, so I’m not stressing out about it. Yet.

Anyway. What are these tools he keeps talking about?

Well, first, I’ve got a somewhat working version of the room creator I was talking about last time. I got the solution to the point where it did maybe 80% of what it was supposed to and then tabled it, since I didn’t want to get sidetracked for too long with nothing to show for it.

You can see that some of the logic is there, with it placing the walls and some of the tiles connecting the angles correctly, but there’s a couple of tiles that are incorrect and some that just aren’t getting placed. Part of this is just the order tiles are getting placed in right now: Since each tile has to fit with each other tile, the tiles that get placed first don’t have to meet as many constraints as the ones that get placed last, and often end up being incorrect. Obviously I have to iterate through the placement more than once, but how do I know when I’m done? How do I know which tiles I still need to match with and which are now outdated by the new placements on the second loop? This is probably a problem that’s been solved, so maybe I can look it up. That may be another reason why I set the problem aside – it didn’t seem urgent to solve any more, now that the remaining issues were relatively small and easy to describe. Most of the time, at least when it comes to programming, a sufficiently detailed description of the problem contains a solution.

After getting that sort of working-ish, I focused on creating the entity editor. Once I can build levels and place entities, I basically have everything I need to create a game. However, there’s a huge range in what constitutes a level and what constitutes an entity, and some big decisions need to be made in order to meet those simple requirements. Up front, though, I had a pretty good idea what an entity was supposed to be: I want an entity to be an object with, most of the time, a position, dimensions, and behaviors in the game world. With a bit of shuffling UI around, I came up with this entity editor:

The top bar is a toolbar where I can drop any entity I want to use more than once and save it for later. The top-right is an editing window where I can rewrite any of the entity’s scripts, and the bottom right a selection window that I can use to look at and edit any of the entity’s properties. What is going to be interesting as this progresses, I think, is that any one of the entity’s properties could be a script, could be a script that rewrites another property to be a script, could be a script that copies another entity into a variable which gets used by another script to spawn versions of that entity, and so forth. What I want here is a system that eradicates as many barriers as possible between creating, editing, and scripting entities. To begin with, I used an XML-based scripting language since that saved me a lot of the trouble of parsing the scripts, since I could just use Haxe’s built-in XML parser. However, I’ve decided instead to roll my own scripting language – after some misadventures in using a very full-featured Haxe parser, which I guess we’ll just consider research now, I decided that my needs were simple and specific enough that I should really just make my own.

While I initially considered making a new simple animation system, I decided that too much good work had gone into the EverEnding animation system to discard it completely. However, the rendering paradigm I used for that project was completely incompatible with the standards used in OpenFL – one of the big reasons I wanted to step away from that project for a while, since bringing it up to those standards was a huge logistical pain in the ass. This was, therefore, an excellent opportunity to work on something that could benefit both projects. The necessary approach was so different that, in the end, I had to fork the class, but when it comes time to work on EverEnding again I can work on integrating both versions together in a way that captures the strengths of both. For now, I have a fast and efficient way to render every entity I want to the screen.

Aside from this stuff has been some minor progress in other areas, like making decisions on what the tileset should look like, fixing bugs in the collision code, and making a rough character sprite for use in testing. However, if you’ve been following the project, you might have noticed streams abruptly ceased a couple of weeks ago, which is rather contrary to my original concept of the project as something which I worked on entirely on-stream. Unfortunately, I came to a point where a few aspects of my life and this project came into conflict with one another: As I alluded to in my Problem Machine blog post a couple of weeks ago, I tend to have sleep patterns which could be generously described as ‘erratic’. I’ve been trying out ways to restructure the way I live and work in order to help address this issue, and one of the biggest changes I’ve made is to try to get a few hours of work done immediately after waking up, before taking a shower or eating breakfast or anything. So far I find this approach tremendously beneficial, starting my day off on a good precedent and ensuring that even if later on I do end up feeling fatigued or depressed I still have a few good hours of work done, relieving much of the pressure to do work that was keeping me up later and later at night. Unfortunately, while it’s a bit stressful to stream myself work, and it’s a bit difficult to get used to waking up and working right away, the idea of waking up and streaming working right away is just too much to countenance at the moment. With time, this may be something I can approach – it may be helpful to get away from my conception of streaming as something where I need to have a constant running commentary, for instance. Or maybe I can just eventually get to the point where I’m more comfortable vocalizing my thoughts immediately after waking up. At the moment, though, trying to do two things which aren’t readily in my nature at the same time just felt like too much. Hopefully, in time, the dev streams will return. In the meanwhile I’ll probably continue streaming gameplay a few nights a week, though this past week I have been remiss due to fatigue.

That just about does it for this month’s update. Next, I plan to finish this scripting system, fix the remaining issues in the room generation code, and probably start building out the first few rooms and entities and some more finished looking art. I think by next update we may be able to start getting into actual content, rather than tools – but who knows what rabbit holes I have left to fall down?

The new project is underway. I frequently miss working on EverEnding, and so far I haven’t gotten to do the sorts of things I really came to this project for, but I’m also getting really excited about some of the ideas I have for the future while I lay the necessary groundwork to proceed.

So, what have I been working on? There’s a lot, really. I got the basic collision system up and running, though that part is still glitchy as hell. I’ve created a simple but potentially very flexible scripting system which I’m going to use for all entity behavior in the game, which is going to make modifying entities in the editor largely a matter of literally copying and pasting the behaviors I want between entities and should make saving and loading pretty straightforward. However, the bulk of my time so far has been taking up on developing tiles, tools and editors for using them, and an understanding of how they’re going to be implemented in the game.

This is the tileset I’m testing with right now. It’s pretty ugly and rough around the edges, but right now I’m just trying to figure out a way to make all the tiles that I need for the game world fit into the minimum possible amount of space in a format that makes some degree of visual sense. If you do any art yourself, you may have noticed that the perspective here is, to put it mildly, kind of messed up. I’m working off the model established in the tilesets of the early Legend of Zelda games, particularly Link to the Past. The angles don’t really fit together or make sense, but it still creates a cohesive space for the player to navigate without obscuring anything the player needs to see. In the long run, the Escher-esque nightmare presented by this kind of world design may work in my favor, since I want the world to seem kind of surreal – but more on that later.

The big issue I’m facing at the moment is creating a tool to automatically fit these tiles together. There’s a small immediate and a big future reason I want to do this: The small reason is that figuring this out will allow me to build tools into the level editor that let me really quickly make rooms and connect them in a way that looks natural without having to individually place a bunch of tiles. The big future reason is that eventually I want to be able to generate rooms entirely using code using the same algorithm, and create procedural environments for the player to navigate.

That segues nicely into what my plans are for the project. Actually, none of these are plans yet, these are just ideas for now – plans will mostly wait until I have a playable chunk of game and can begin making hard decisions about what works and what doesn’t, what’s feasible and what isn’t. The setup I want to explore, here, is being trapped in a big creepy house – there are other people here, and it’s a bit up in the air how long they’ve been here. Some of them talk like they’ve been here a few days, some of them seem like they might have been here for centuries. Everything is blocked off in different ways though, bricked and boarded up, papered over, hidden behind secret passageways, and in order to begin to find your way out you need to explore and find tools both to open up passageways and to fight off the creatures that have taken over parts of the house.

That’s the basic idea. Let’s call that tier 1, where I just make a little Zelda clone and call it a day.

Here’s a more interesting version of that idea that I’ve been playing with. There aren’t monsters in the house, but in order to actually make progress you find different beds to rest in. Each bed you rest in puts you into a dream where you play as whoever the bed belonged to, and in reliving their story you can perhaps change it, and by so doing change the state of the house. Or maybe you just find the tool you need in the dream and bring it back directly, or perhaps you are able to recruit an NPC by telling them something they’d forgotten a long time ago. The dreams, of course, are infested with weird nightmare monsters, and you need to be able to defend yourself in the dream, so procuring equipment is still necessary.

That’s tier 2. This would be a much more substantial project, but I think there’s room to do some interesting things here.

I have an even bigger idea, though, and this is one that could get really out of hand. Take tier 2, but each dream world contains other beds, and you can keep pursuing nested dreams deeper. Past one or two levels, dreams begin to be procedurally generated, but the resources you get in each dream can be brought out of them and used to progress through the next. The game becomes an adventure game containing a roguelite, where progressing through the roguelite sub-game allows you to progress naturally through the world of the main game. Eventually, perhaps, getting lost in these many nested dreams could become a genuine danger.

Tier 3 is fun to think about, but for now I have to focus on tier 1 – or, really, tier 0, which is building the toolset that will allow me to build tier 1. That’s where I’m at right now, but if progress continues at this rate I should be able to have my toolset done by the time of the next devblog and can really start building out the most basic version of the game.

Oh well this is awkward.

Effective, um, like 5 days ago, the EverEnding project is going on hiatus. For how long? I’m not sure! I’m pretty confident it’s not permanent, but I’m also pretty confident it’s going to be for at least a month or two, and maybe as much as a couple of years depending on how those next couple months go.

The natural question to ask at this point is: Why? Good question! I’ve been feeling for a while that, while I still feel passionate about this project, I also have it backwards. I really feel that the optimal game development process is about getting a simple version of the game up and running and then iterating on that and navigating by your artistic sense towards the most interesting version of that game. However, with EverEnding, I’m constantly stopping and planning and designing and concepting before I even have part of the system up and running. This is still true even now when, OpenFL port notwithstanding, there’s nothing stopping me from getting the game playable and iterating on that bit by bit and improving it that way, rather than constantly trying to make Big Design Choices and Sweeping Revisions. I keep thinking about the forest that will grow here someday and forgetting to plant the trees.

Which segues naturally into what I’m going to do now: I haven’t decided. Or rather, I’m specifically avoiding deciding anything but the most basic generalities of the project. It is going to be a game, and I’m going to be streaming its creation – I dunno if it’s a stream anyone will be interested in watching (so far it seems not to be, judging from the 4 streams I’ve done already) but these streams are just as much for me as for any hypothetical audience. The streaming is to keep me honest, keep me focused on the task at hand for a couple of hours with no web browsing or procrastinating. It also provides a way to document the history of the project, so I can see exactly how much progress I’ve made in a week or a month or a year from now.

Now, while I’m trying to avoid deciding as much as possible, I know this much about the project: First, it’s a top-down adventure game in the vein of the Zelda series. Second, it takes place in one big area instead of discrete dungeons, probably a mansion, possibly haunted. Third, I want to fill it with secrets and details, most of which I’ll figure out on the fly as I work on it. Right now the working title for the game is The Third Story, as a slight play on words both for a large mansion and for uncovering the stories contained therein, but that’s likely to change any time I think of something better. For the time being I’ve been mostly just laying the foundational code – which is mostly pretty tedious to watch, likely one reason the streams haven’t been popping. However, as the project progresses I want to do all of the scripting and level-building within the game itself – so, once I reach that point, the streams will be a lot more level editing/scripting and a lot less walls of code.

That’s all in the future, though! For now, the game is just blocks that move around and spit text at each other – no graphics, no collision, no sound. I intend to keep up the monthly DevBlogs here, but the contents will be related to the new project. I don’t want to rule out the idea of doing more work on EverEnding, though: Since I’m developing this new thing in OpenFL, I should be accumulating a lot more familiarity with how things work in that API, and this may give me exactly the energy and confidence I need to finish the port and get the project up and running again. Also, just looking at and listening to the materials I’ve created already makes me a bit homesick for the EverEnding project, so I’m not sure how long I want to stay away… But I’m confident this is the right thing to do. For now.

I already feel tremendously better morale-wise, just being able to work on a project where I feel like it’s always moving forward. If nothing else, I’ll be able to apply some of the methodology I’m picking up here – not just in terms of OpenFL and game development, but also in terms of livestreaming and documenting development and using that process to bolster my creative energy.

It feels good to be seen – even when no one’s watching, just to be willing to be seen is worth a lot.