Hey there! Here's a run-down of what happened in March!
GDC Happened! That time of year when we travel to sunny San Fransisco along with tens of thousands of game developers; get super excited about our industry and come back full of energy and ideas. This year I focussed on attending lectures I wouldn't normally go to, and a whole bunch on starting and running studios, making indie games etc. Unfortunately all the indie talks were massively popular and often people couldn't get in (bummer!) GDC is also the time when you get to chat with people from other parts of the world that you've not seen in a while and catch up, and to also make new friends too. The VFX community always makes me smile, and every year I look forward to having drinks and a good laugh with other fx artists. I even got a gift this year from my awesome friend Taro!
One bad thing that happened with GDC is that my stress symptoms came back hardcore. The stress of trying to figure out what to do with work, where my focus lied etc combined with jetlag, running around to meetings and lectures all the time. These things combined hit me pretty bad and my body wasn't happy. I decided that I needed to make my decision and move forward, so when I got back I handed my notice in and decided on an end date for my time at Arrowhead, which will be the end of June. Until then I'll be down to 70% so I can focus on my project even more.
After the decision to change the game, I worked hard on gutting out the old stuff, and adding the new. So, the basic gameplay flow is now in! You can place building foundations, customise the outside of the building, place objects that are tied to that building, and unlock characters based on the building types you create! Essentially when you place a piece of furniture, it gets added to the corresponding building's "ingredients". Each time a new piece is placed, the list of potential buildings are checked against their "recipes" and if there's a match, that type of building is created. Every day, the list of buildings you've made is checked, and residents join your town if there's anything new.
2 Tables and 6 chairs is a cafe... obviously?!
I have a note here saying that I rewrote the interaction system. Can't remember the specifics, but I essentially created an interact object queue. When you interact with something it gets added to that queue, and these objects can in turn add things to the head of the queue. This means the game keeps track of what you're interacting with, and what you were interacting with previously. When you exit interaction with your current object, it'll step back through the interact queue until there's nothing left. This means things like menus, conversation, and all aspects of interacting with the game are handled through the same basic system, which should hopefully make it cleaner, and easier to debug. With this, I changed the object placement "mode" of the game. Previously it was it's own special object that behaved in its own way; now, with the new interact system, it's essentially and intractable object that the player interacts with, just like a menu or anything else. This has helped streamline this part of the game more, and gets away from big one-off behemoth systems that I despise.
Previously items in the game were done in a way that I felt was a bit heavy, and were different depending on what type of item they were (building piece, placeable object, wall pattern, bush, etc) I realised pretty much everything you add to your world in the game shares a common base, so I decided to create an ItemBase class, from which different variations inherit.
I also bashed out some quick test-meshes too:
So now everything that you "purchase" in the world comes from a common place, which makes handling the process of "buying" things more streamlined, and a lot cleaner. This is also expandable and more flexible. It also helps me with the next thing I got started on this month...
Saving and Loading!
I was super nervous about this stuff, and I guess I still am a little, as I've never gotten far enough in a game project to get into saving or loading. But this month I decided to give it a go and got the basic bits and pieces and up running to save a load things. It was pretty straightforward, and now I feel a lot better about implementing it for the full game. With the improvements I'd made to placing items above it meant creating save data for your town was simpler than it would have been before. What's also nice now is that I can continue to build the game with how it's going to be saved and loaded in mind, hopefully preventing me from some major rewriting and scary things further down the line! Just goes to show kids, if something makes you nervous, you should just do it and then you'll be all the more wiser!
This layout was saved, and then.... loaded!
So that was a rough outline of March. It's suuuuper tricky trying to remember what happened in what month. I promise you, some super cool stuff has happened so far in April!
My very good friend from the Lionhead days has released his super-fun language learning game. Instead of boring flash cards you learn by battling monsters! HOW COOL IS THAT!! It's mega addictive, and you learn stuff too!
Check it out! ITS FREE!