The post can be read on Steam here
LATE – Apologies for not getting the devblog out last Friday I did say i would try and do one very two weeks. It can get really distracting, there is always just one more thing to program. This week i got distracted with what i would describe as the underlying architecture for my “interactive object system”. That sounds really conventional I guess and … I dunno… maybe it is. Its about three ‘forces’ being able to control everything cars, cannons, sharks, NPCs, guns etc… Those three ‘forces’ being a player ,the network and AI. Its something I have wanted to get my teeth into for a long while. I remember on the OUYA we had lorries (Trucks) cruising up and down the main street in Swindon, and cars supposedly driven by NPCs. They were on rails and I hated that. I liked what they did in the game, you know standing in the road and then suddenly a lorry takes you out… but I hated how they felt so incomplete they disappeared to nothing (this is all pre the great wall of Swindon). I said to Hal back then when we started on Steam that I would not put cars back in on rails… The only time you would see another frog driving a vehicle other than a player would be via network or AI. Any way thats the point I am trying to make…? The devblog is later because I got distracted this week with laying the foundations that would enable NPC frogs to ‘decide’ to drive from A to B.
A New Game?
So Development. Often, especially when things get tricky and begin to weigh down on the mind, it can feel like we are making a completely new game. This feeling come from all the completely new models and from rebuilding all the systems from the ground up in order to be configured to work over a network for online multiplayer and work with the newer physics.
We are not building a new game,of course. It just feels like that sometimes. The process is more like transcribing rather than rebuilding and we have been transcribing to Unity 5 for a long while now. While sometimes i look at what is infront of me and I think… oh U4 had this and that and that etc… as some point soon it will all drop into place. But I have to get the basics sorted first.
The ‘Frog Object’ is coming along nicely. This time around the NPCs will be using the exact same system as the main frog. This was our original intention when we added NPC frogs with the first Steam Versions. We wanted them all to have the ability to be controlled just like your frog… but it didn’t work out like that and in the end to bump the numbers of NPCs I had to build a different frog object for them. It was a sacrifice we made in the Unity 4 version, knowing we would revisit in Unity 5. Now that we are in the process of rebuilding the frog system I have put better optimisation routines to allow for the same object to be used as an NPC frog and player frog. Aside from having more reliable control over the player frog and network support, it is leading to better AI implementation and allowing the NPC frogs to have all of your abilities. Hal and I have always wanted the NPC frogs to each have a place in the world, its complicated to organise, but before any of that can take place we have to get the underlying frog object right. For example lets say the frog that works in Frog Milk Coffee Co had to be at work at 8am to open the shop but if killed on the way to work maybe the coffee shop will be late opening. If you kill a frog it would be nice if it re appeared at the hospital. Incidentally they have just build a new NHS centre in the game zone in real life… How nice of the real Swindon Council was that! It fits with the game’s development plans.
Recalibrating the Frog Physics
Hal made the new cannon, the Fan and barrels etc.. a while back. In fact the newer models were introduced into the Unity 4 version with a separate set of “lesser” materials. But this week He also made a new set of trampolines. One of the first objects ever created for Amazing Frog? One of the main things we are working on now is how new frog physics works with each of these objects. Its not an exact science – more bounciness.. less stickyness… floppier…spinnier… For now, I have a collection of instances of these objects in the main carpark and repeatedly slam the frog’s faces into them to see how things are working. When we feel they are working more of less how we want them to, we will implement the new placement system. This is one of the great things out Unity 5, it’s scene organisation. Its not like it wasn’t possible in Unity 4, but it was not as simple to implement as now. We can set up multiple set ups of placements of fixed objects, like trampolines, fans, cannons barrels etc with ease. What determines the different set ups we have yet to decide -time, mission, user etc. But first things first … calibration then i want to do a test where i get a load of NPC frogs to chase me onto the bouncey castle.
The new building is coming along really well and being one of the key areas in Amazing Frog? as when you come out of the hideout its your first point of contact with Swindon, we really want to make it right. Its not just about how it looks, its important that frogs can throw themselves around the interior with wreckless abandon. It just feels very authentic now and a massive improvement on the simple model that had been there since the beginning. Also these screen shots that we put in these devblogs are development screenshots. The lighting on them is not finalised. As you know lighting is a tricky issue for us since we are going for a day night cycle., but we will be aiming to maintain the “feel” of Amazing Frog? but just with more detail.
So In theory i need to put devblog 17 out next Friday, since I was late. I’ll try but for now, we’ll get back to development. I am hoping to come back real soon and update you on this NPC stuff, I’m very excited about how thats going. Also it might be good to explain how we plan to deliver the first beta. In theory I would like it to be a separate build to the U4 version so you can keep both on your machine without having to redownload. I’d be interested to hear peoples thoughts on that.