July's update comes a bit later this time (so much for trying to get them out more on-time) I have good reason though, as I've been sorting out some freelance and teaching work. It's nice to have money coming in to the company! And it's also good to get a bit of distance from the project, to clear the brain and come back fresh and full of ideas. More about the freelancing stuff later!
New exterior designer
My previous idea when it came to customising the outside if buildings was that it would be done in-place. So the camera was placed in front of the building and the player would customise the building as it stood in the world. After a while I realised there would be quite a few problems with this. For example, things could block the camera view to the building you were working with which was quite annoying.
The old interface
I also felt that it was tricky to work with the UI also, as there was a lot of distracting noise on screen with other characters moving around etc. Trying to find a clean way to show the interface and not make it feel cluttered while the game was visible would be tricky. I decided therefore to make building customization be its own screen.
New Building Customization Screen
This also gave the nice feeling that you as a player were “alone” with your creation, that you could focus just on the building and nothing else. (Technically you are still customising the building in-world, it's just rendered with a separate camera that shows only that building, eliminating everything else from the screen)
I'm happy with the first results. Next steps I would like to try would be perhaps stylistic ones. Changing the background image depending on the customisation category you're in, for example.
I also changed the UI used when placing objects. This was for a couple of reasons. Right now it's undecided what platforms the game will be on. This is intentional as I want to remain flexible throughout development. I would love to release the game on console (ideally the switch) but I'm also aware of the huge market available on iOS when it comes to games of this genre. One of the reasons therefore of changing the UI was to make it more accessible for touch devices. It was initially designed around a controller, with the player moving the furniture around while also choosing new items in the menu all at the same time. This isn't possible with touch, and so the menu is now a big on-screen pop-up.
New placement UI
This means that a lot more items are shown on screen too for the user to browse from. I adore inventory and customization menus that have a lot of icons shown at the same time. For me there is something very alluring with seeing a lot of items at the same time. I think it's a very “kid in a candy shop” feeling, bamboozled with so much choice it becomes exciting, haha. By showing more icons I can also present groups of objects that belong together in a clearer way; whether it be styles or special items used for specific building types. This type of grouping became apparent when starting work on the bakery item set. As there's a group of objects specific to that building I wanted a nice way of showing them together although they may be under a larger category like “special”, for example.
As patterns for walls and floors are treated as placeable items they are also shown in this menu. This new change has meant that unlike before, you can't see a preview of the new pattern while changing your selection (the menu is in the way of the seeing the room) I'm going to keep an eye on how it feels, but right now the player needs to press another button in order to preview their new selection before purchasing it. At the moment this isn't clearly communicated and it's a bit hidden, my hope is that by communicating it better to the player it won't be an issue, but like I say, I'll keep an eye on it while testing and see if it is a big issue.
While coding the new UI stuff it became apparent that I needed to make translation work a bit smoother for UI. Previously each menu item that had text would require a line of code to translate it to the language the game was in. This became a bit of a nuisance so I made a quick component that can be added to a UI prefab that when the UI is shown goes through all text objects in it and translates their text to the correct language.
Fixed issues/now using collision for places object
This month I fixed up some issues with placement of objects inside buildings. Previously a building would contain information on its size and while moving furniture around this information would be checked to stop the player from moving objects outside of the room. This came with a whole bunch of problems, and also added an extra step when adding building parts (having to manually set the sizes) Now I use collision of the object to stop it going outside the collision of the room. I've had to set it up specially so that it collides only with the building during placement as it would be extremely frustrating moving furniture around of it collided with everything already in the room. Right now this works pretty well, but there are a few little issues I'm going to clean up. One of which (this also happens to the player) causes the object to pass through the walls at speed…
I wanted to start work on getting a villager in, with proper model, animations and some dialog to start testing the gameplay (and to replace the old characters that were distracting from the style of the game) I settled on the Baker character. This meant I needed to build bakery specific items that would turn a building into a bakery.
Low Poly Bread!
I created bakery items, and some cute little bread loafs to place around and create a bakery. I then got started on creating the Baker model. Translating the very 2d styled character sketch I had done to 3d proved to be tricky, but I'm reasonably happy with the results.
The Baker in their Bakery
I feel the model resembles the animal a lot more closely but still remains playful. Next month I'll look at getting a Base set of animations in for them. Part of going through the process of building items and characters is so that I can see how easy it will be creating all the assets for the game, as I'll be doing the same steps again and again. Any areas that seem like they're going to get annoying after several hundred items I can then focus on improving work flow for. This also means if anyone hops on and helps out with assets it should be a more pleasant experience for them too!
While working on the Baker I got a little distracted thinking about how I was going to do faces on the characters, which lead to me adding a face to the avatar. It's pretty inspired by a more Japanese style, found in games like zelda: wind waker. I played around with the scale of the eyes and their style quite a bit. To be honest I'm still not 100% sure im happy with where it's at. It has meant though that I've been able to test out ideas for characters blinking and also looking at things in the world. The avatar now looks around when idle and looks at nearby things with their eyes instead of the full head.
Blinking and Looking around
Adding simple eyes to the Baker also pushed the character into a slightly more pixar/3d animation look which I quite like. It's extremely tricky getting faces right, it's amazing how just a small tweak in eye position for example can completely change the age and personality of a character!
Baker looking a little intense...
As mentioned above August is a month of freelance and teaching work for me. I'm going to be teaching VFX at Futuregames in Stockholm for a few days before heading over to Copenhagen to help a small studio out with effects on their ios title. This means most likely no updates on the game during the month; you’ll have to wait until September’s (sorry)
Oh yeah, I got started on one of my side projects over July too. I'm building a file browser! I think the file browser in Windows totally sucks and the one on mac is just “Fine” so I've decided to build my own in my spare time. We'll see how it goes. I decided to use python, in order to get familiar with PyQt for UI (useful for other tech art stuff) and so that I can have easier integration with 3D applications. I'm starting with a file browser with the hope to expand it into an asset management system for video games/animation; taking what I learnt from the one I developed over my time at Arrowhead, and improving upon it.
Thanks for reading! If you have any thoughts/feedback please leave a comment! What would you like to read more about? More in depth or more conceptual? Let me know; these posts are for you!
Pssst: Did you know I’m on Twitter?
Give me a follow over there to get small updates and random brain farts when they happen!
Pssst: Sometimes things go a bit wonky...
One of the less successful eye tests...