I really need to get out of the habit of starting these posts with “gee, it’s been a while since I posted on the blog”
I’ve been working on mech game for about six months now (according to Bitbucket I started it on February 9th), and shockingly I’m still making
slow progress on it. Networked multiplayer works, the base code for all weapons is largely implemented, and I’ve even got some basic animation done for the Geon 3 chassis.
— Chris Langford (@Chris_Langford) July 23, 2016
And yet, once in a while still get this overwhelming “what the fuck am I doing?” feeling. The sense that I’m biting off way more than I can chew with this project, and it’s never gonna get done or work right. Even though I’ve got the basics all laid out already, I still feel like I won’t finish it. Like it’s gonna be shit. And both of those things could realistically happen. That’s a pretty intimidating feeling at times.
Part of it comes from this tendency I have of reading into things and getting super granular on subjects that I really shouldn’t be worrying about right now. For example, yesterday I was researching different ways of handling the network aspect of the game and the Low Level API offered by Unity, which is basically a multiplatform UDP implementation. Right now I’m using unity’s High Level API, which does a lot of things behind the scenes to make stuff work, and for the most part it’s fine – but there’s a part of me that doesn’t like the black box nature of it and wants to get a deeper understanding and tighter handle on what’s happening. So I started reading up on the LLAPI and spinning your own networking code and serializing data to send as packets and packet compression and suddenly I’m drowning in this pool of information that realistically is totally unnecessary right now.
This isn’t the first time I’ve done this. A couple years back I felt that Unity was too much of a black box, so I went about writing my own entity component game engine in C++ with SDL2.
I did get it working (and pretty well too, all things considered), but it took me months just to write up a framework that created a window and bounced some sprites around. Whereas if I had just dealt with my weird feelings towards Unity I could’ve written a 3D pong clone in a fraction of the time.
So after delving down the rabbit hole that is advanced networking techniques, I started getting all those dreaded “this project is too big and I just suck so let’s quit and be done with it” thoughts. It took a good chunk of time, focus, and lecturing from my better half to remind me that I gotta keep this stuff broken into manageable parts. This morning I started writing the code for the weapon management system, so I think that’s a good step in the right direction.
This was a far longer ramble than I intended it to be, apologies for the longwindedness about largely nothing. Future posts should be a bit shorter as I’ll be posting more frequently about smaller updates on mech game.