Okay so today marks a month since I posted this gif. A bunch of stuff has happened since then and I kinda wanted to highlight it because it's all crazy to me.
First off, I hadn't intended to make any kind of social media push for several more months, as I wanted to have more content-packed posts to make on a semi-regular schedule, something that I can't keep up with right now because I still have a day job and a wife and kids. When I posted the above gif, I was more or less going against my better judgement and testing the waters with the visual overhaul that I was setting out to perform.
Long story short, that post kicked off a snowball of hundreds of new followers, thousands of likes, and hundreds of thousands of views on the content that followed, resulting in the need for the website you're currently viewing this blog post on.
As much as it caught me off guard, I can't thank everyone enough, as the attention this content has received has resulted in dozens of new connections and correspondences, some of which include a gaming journalist, dozens of talented soundtrack composers, and some very successful commercial game developers that I feel incredibly humbled to have gotten to chat with. My passion for game development has exploded beyond a point I thought was possible, and I've been more productive than ever as a result.
I noted in another post that I removed the top-down restriction for the primary camera in Woodbound, and that it would require quite a few changes to the overall framework for several systems as a result. The first thing that I tackled in that vein was basebuilding.
In the top-down iteration of basebuilding I had laid out, the mechanics assumed that the mouse was always available as a target pointer, so to build stuff you would enter in the bounds of any floor tile, highlight the edge you wanted to build on, and then select the piece you wanted to put down, like so:
That meant that the camera yaw rotation was controlled using the Q and E keys. (or L1/R1 buttons on a controller.) Now that the mouse is dedicated to the camera control primarily, there's nothing to dictate where the previous target pointer would be on screen. I started out testing it by keeping the pointer in front of the player, which worked decently for basic stuff like firepit placement:
But for building placement, it was a huge hassle. Trying to gauge where the pointer would land based on the characters facing rotation was painfully difficult, since camera rotation and player rotation are separate, so trying to keep placement based on floor tile edge targets was a no-go. The addition of a combat camera (over the shoulder, locks character yaw to camera yaw to allow for strafing) helped out placement behavior, but severely limited the field of view and rendered pitch pretty ineffective for helping visualize placement.
So I set out to re-do how building is handled from the ground up, getting some very helpful feedback from some very helpful friends. Ultimately I landed on a grid-snapping system where the mouse regains its exclusive pointer control (unless the shift key is held, in which case camera rotation takes precedent again) which utilizes the pieces that I already have in place while allowing for more freedom in placement by not locking everything to the edges of floor tiles, and still allowing for ease of placement and reliable distance/angle targeting so that buildings have proper frames and overlap checks:
On top of being much easier to use, this system is much more performant than the old version, leveraging hierarchical instanced static meshes, and cutting down on inter-actor casting and leftover logic containers. The next step (beyond re-adding wall/doorway/other piece placement) is to create more complex HISM array templates that use individual board mesh instances to match the size, shape and design of the existing textured block pieces, so that building construction over the life of the construction phase is visualized board by board. Essentially you will lay out the blocks like in the gif above, and then when you finish visualizing placement on the grid, the block pieces will be replaced with board-by-board outliners that will require you bringing the resources to each piece (or for ease of play sake, your NPCs will bring the resources and do the building, but you can do it yourself if you really want to) and each board outliner will be replaced with an actual board. (Similar to The Forest, where each log in a cabin is placed one log at a time.) This'll be a really cool way to drive home the amount of effort it takes your NPCs to build their houses, and hopefully make it more worthwhile. It'll also make base damage and destruction look rad as hell. (More on that in another post.)
The camera pitch control addition also changes how I wanted to approach combat in the game, something that I'm actually kind of excited about. The top down approach aligned the whole game into more of an RTS style title than anything else, which is partly what I wanted, though I liked the idea of approaching portions of the game with an RTS feel, while allowing the player to become part of the army of NPCs they're commanding. The camera unlock further pushes this feeling of inclusion for the player, allowing you to have a nice overview of stuff around you, create NPC tasks and assign roles, while also allowing you to reel in your camera up close to your character while you and your NPCs are in the thick of whatever task you're performing, whatever battle you're in, whatever ruin you're uncovering. Plus, the ranged combat prototype feels great:
I really want to post more content that I have, but I also feel like if I post too much too often, the changes people will see will seem too small and too rushed. So following today's post, I'm going to take a step back from social media for a bit so that I can stay focused on adding more features and getting Woodbound into a state that people can actually get their hands on. I've caught myself in this loop of getting stuff done, but then posting it too quickly and robbing the additions of their potential by revealing too much too soon, while attempting to keep social media traffic and hype going. It feels a bit like I'm trying to force attention onto Woodbound instead of allowing it to earn attention naturally. So I'll still be working, I'll still be answering emails and PMs, but I'm probably going to be a bit quieter than I have been for a little bit. Thank you again to everyone who's been so awesome so far, I really appreciate all the love, and I love you all.