This post can be read on the Steam Community Page here:
It’s been a while since Amazing Frog? devblog 025. There is a lot going on in development and it gets difficult to explain. I am sorry and I should update you all more frequently. Amidst all the tasks we have been working on, it really doesn’t feel to us that much time has passed since the last devblog. Every day is Amazing Frog? for us.
My brain feels a little fried from working on 3 versions of the Amazing Frog? simultaneously, the sheer variety of types of tasks can leave you feeling all muddled up. It’s important to leave a trail of breadcrumbs to find your way back to what it was you were trying to solve a day, a week, a month ago. Sometimes you just want to open your laptop and make weird stuff happen in-game and have a laugh, but in-between all that fun is a lot of technical problems that demand resolution. It’s so important to think into the future when developing Amazing Frog?, especially V3. Our plans are big and I know I said it before but without the right infrastructure, we won’t be able to realize those plans. In the past we have often sidelined some of the core system issues to fast-track new content. Often, when things were not quite right in V2 we would say, “well that will get fixed in V3”. But as I mentioned before V3 broke everything and we started fresh. ………… somewhat as V3 being fully network-based and having completely new graphics has brought its own problems, so for many V2 issues we now thing resolve it in V2 so when it goes into V3 the transition will be smoother.
So whats been going on? Well, there are 3 major channels of development for Amazing Frog? and from week to week we switch back and forth between which one of these we concentrate on, or indeed sometimes Hal focuses on one and me on another.
These Development Channels are:
- V3 : The completely rebuilt and online version
- V2 : The Definitive Version (an updated, enhanced and extended V2)
- V2 Pocket: our first attempt to package up Amazing Frog? and put it out somewhere else.
V2 Pocket Mode
I think I’ll start with Pocket mode (The working title for the iOS version). If I was in your position, in our beloved Steam Community, I’d probably be thinking, “why are those two dum-asses working on an iOS version when they need to get us the V3 Multiplayer version out which has dragged on long enough already?” It’s a question that comes up virtually every day between us, should we drop it and move on? or keep moving forward slowly? We have a very clear purpose. A long-term purpose. A Plan. I may not always be able to explain what the plan is, but it always seems to make sense to me. I’ll try and explain why I feel we HAVE to do pocket mode and indeed more V2.
First off, Striking back and protecting our game. It drives me nuts seeing all the fake versions of Amazing Frog? on iOS and Android. It also bothers seeing all the fake versions of a lot of cool Steam Early Access games. I know people do worse things in the world, but it just grinds my gears when I think of people getting ripped off thinking they are getting Amazing Frog? when they’re just paying for a fake app that shows you an add and crashes 🙁 The two ways to solve this would be to chase each app legally or just release the real Amazing Frog? to this environment. We chose the latter.
Next, The Tech Clock is ticking. Tech is changing every day, the big changes in Unity really threw us last year invalidating most of AF? development. Being so deep into V3 with all this crazy new tech (I’ll touch on in a bit), the temptation was to abandon V2 altogether and just move on, which is what happened to V1 (the OUYA version)… we abandoned V1 so we could progress in Steam Early Access. we want V2 to reach its potential, after all, we will be working on V3 for some time and the more success we can generate from V2 the more it will help the development of V3. This would also be helped by a more definitive and polished version of the V2 system.
For Pocket Mode we created a new landscape, simpler but more refined. Naturally, this will be available on Steam as Pocket Mode (and most likely on Steam first). Having a smaller less demanding island for Pocket Mode in V2 not only helps it run better on mobile devices and less capable computers but also allows us to create a slightly alternative experience, ie giving you more things to do in V2.
V2 The Definitive Version
V2 Definitive and Pocket Mode are linked in development. Since Pocket Mode is generated from V2, but quite separate tasks. Overall with the V2 system, there were so many fundamental issues and things we needed to resolve. As I said earlier anything we skipped in favour of more content. The Z Fighting on posters the way the sea looks crappy from distances among other things required deep fundamental changes in how we do everything. Our first thought was: let’s stick the V3 blimp in and fix those bugs once and for all. In the end that kind of felt like a good plan for pocket mode, but for V2 on Steam, we wanted something a little more special in this next version before V3 takes over. We just felt that apart from fixing it and making it look better V2 needed some fresh secrets, more experimental features and the ability to unlock some of the things you may have already seen but not yet been able to use. It’s a big Update, with a lot of enhancements.
‘scuse the balloons, they really are the best way to get around when you need to take screenshots 🙂
We can talk about V2 when its ready….
V3 The Newer Version
Oh boy, I wish we could develop this faster. The more complex or detailed a thing the more time it takes I guess. It’s funny, thinking back to the games Hal and I used to knock out in a matter of weeks to where we are now. I love it, I love building something that that is ours, that has so much scope. As a developer working for someone else you don’t always get the chance to feel that sense of joy from your efforts. Having said that, the newer versions of Unity have been really inconsistent environments over the past year, which has made things difficult and disheartening at times. We have often been finding ourselves progressing in one area to then find that another area has become invalidated. Thankfully everything seems more stable now. I guess Unity had to figure some things out.
There are so many topics on V3. SwindonShire alone is one of the biggest tasks we have ever committed ourselves too. Building a sustainable, detailed and exciting world. We put a lot of thought into the SwindonShire. I’ve touched on various plans for the world over the course of these devblogs, and our plans can be fluid, but ultimately they hang around a core set of ideas. This image should give you a bit of an insight, it’s a map of SwindonShire that we use to discuss development in areas for V3 (a “redacted” version, don’t want to give too much away)
Although the landscape is essentially the same, Hal has been refining his process for the terrain. Now with a much higher resolution, it makes it much easier for Hal to sculpt detail, we’re so excited about it. I took these shots from a build I generated today. Currently, we have the terrain covered in a grid to help us understand things like scale not just in terms of size, but also in terms of movement so we can limit the physics etc. My version will probably be a grid for a bit, while Hal works on implementing all the details he has been working with. Like most of the development of the game, it’s important to get a solid foundation that can support future iterations.
It took quite a long time for us to gain some control over the lighting. We almost abandoned a Day/night cycle altogether. Weird inconsistencies with multiple scenes, global GI not doing what we expected, i could go on. For V3 Day and Night was something that was really important to us. A lot of our plans for gameplay revolve around it. We needed to make sure that we were in control and we were not just getting “cool effects” that look great on one building but don’t translate to the area next to it.
Also playability at nighttime is important, you have to be able to see what you’re are doing…
Time like just about everything else in V3 needs to be defined and controlled by the host. Unlike V2, V3 is completely networked as a game. We have explored and implemented so many ways of doing networking over the past year. If I am honest with you, I couldn’t say that I am sure that the route we chose is the best one. It’s probably more difficult, but It is most certainly the route we are the most comfortable with now. We tried third-party network solutions, we tried Unity’s solution and they were all great, but we wanted more control over what was sent and to who. Things are a bit barren this week in V3 screenshots because I am implementing the host signing the objects to the scene. Everything dynamic or controllable needs to be allocated by the host. eg there is a box on the floor because the host says there is. It moves and the host has to be aware of that.
The great thing about that is that the host is always taking snapshots data of the world, which makes it really easy to save data – just about everything in the game. ie it would be possible to play one day and come back to the same stuff the next day rather than a full reset like in V2.
I hope that’s a good explanation of whats going on with development. Here’s a run down of what my next few sets of immediate tasks are after posting this. in V3 Implement a moon light (it’s too dark at night), elbows ..there is something wrong with how I redraw the elbow and knee positions over the network looks kinda funky, touch controls sticking on IOS fix and test in another build.
So I’m going to jump to it.
Thanks for reading, updates coming real soon.