Gaming Your Way

May contain nuts.

Mr.Peabody and Sherman game

I'm not a 100% sure of our contractual obligations, so we're going to say we had nothing to do with this game.

We didn't make this over the Christmas break with our friends at Producto Studios, actually we weren't even there when whatever happened, happened.

So if you'd like to play this game that we had no hand in at all, it's here: http://www.mrpeabodyandsherman.com/lostintime/

( Also check out the main site, because you know, advertising: http://www.mrpeabodyandsherman.com )

I'm pretty sure that's all legally binding and there's no way we can get into trouble.

Squize.

Work stopped play

A bit of client work has come up this week, so I've not managed to touch DN8 today.

One thing I did mange to do yesterday though was to give the particles some colour, I'm really pleased with them.

They're a lot more colourful than in the original game, they have a nice 8Bit colour wash feel to them. Rather than going the tint route of the original, which is expensive, I just created a 260 frame tween in the Flash IDE and got it to spit all the frames out as pngs, dropped them into Texture Packer and the game just picks the next one in an array every time we need to plot one.

I think unfortunately that's where I'm going to have to leave the game for a couple of days, there's too many other moving parts work wise right now to be able to try and claw some free time back to work on it, which is kind of annoying as next up would be some explosions and all the particles which go with them. Oh well.

Squize.

Thursday I don't care about you...

Quick update today, as it's Friday and I'm sure we've all got places to be.

The first level baddies are in now, and the particles which show their path.

You can shot them to earn points, but no explosions yet ( That's the next big thing ). I noticed the frame rate drops slightly when the path is onscreen, so I'm going to have to look at that as well ( It's not too bad right now, but when we have a silly number of bullets running every little saving helps ).

Basically I'm trying to get all the costly in terms of CPU / GPU stuff in as quickly as possible and then optimise that so we keep as close to the magic 60fps as possible. I'm lucky in a way that I've got an iPad3 to test on, it's the slowest device out there ( iPad 1 doesn't count, that's really not worth targeting ).

Hopefully Mondays update should have more in the way of particles, as they always look good.

Squize.

We have the pow pow pow

Only the 2nd day of trying to update the progress on DN8 iOS and I'm struggling already ( I had fuck all sleep last night and then an early morning, I'm dead on my feet. I always know when I'm working early as everyone I chat to on IM says "Who's that ?" or "Shit the bed ?" or a combination ).

So, basic title screen in place with a play button and rollOver, the majority of the HUD done ( Working scores and everything ) and a player sprite which you can move around and it has the tilt animation in there.

And guess what ? Bullets too.

I don't think I've actually used any of the original code in this yet, which was the plan, but with looking at the baddies I think some copy and pasting is going to happen there as I really can't remember what I did.

Before I go, I got caught out with a couple of Starling things. Adding a blend mode to an image forces a draw call, as does using alpha. I know there's that whole starlingStage.alpha=0.999; work around, but it feels like that will be costly to do it on every child clip, so I've got a few specific container sprites that I add the blend mode to and use that alpha trick, so I've just got to remember not to use alpha in anything outside of those.

That's probably gibberish isn't it, so time to stop.

Squize.

And, back.

It's been ages since I've posted anything, and there are lots of reasons why ( Well, just one reason, work ).

I haven't stopped since Lost Outpost shipped, hence me not being able to go back and fix the bugs on that. I had a large html project to finish around the same time O2 was launching, so I couldn't give it as much attention as usual, and from that straight into an iPad project ( I guess I'll write more about that sometime, hopefully it'll be signed off soon ) and then my planned Christmas break was spent doing a quiz game ( A link as soon as it goes live ).
Then last week I did my first html5 game, which was cool, more on that once it's live. So basically lots of stuff that I can't talk about yet, that makes for a golden blog post.

With the iPad project I had to re-register as an Apple dev, and learn how to use Starling along with Away3D, and that inspired me to look at an old project.

This bad boy is coming to iOS ( And maybe Ouya / Android )

I've only been working on it one day, but I was thinking a blow by blow account of it's development may be interesting ?

Currently there's very little to it, I ripped out the original planet code and got that running ( I had to alter things slightly, the really large planets killed the framerate, I think it was a fill rate issue ) and just today I started on the title screen you can see there, with the graphic equaliser effect I always wanted in the original.

One nice thing I played with yesterday was reading the accelerometer, so as you move the iPad the screen moves ever so slightly, like in iOS7, to create a parallax effect.

I'm really hoping to have this run at 60fps, as it looks so beautiful running at that speed on the iPad. I optimised the crap out of the Starling particle extension the other week, partly for the client iPad project and partly as preparation for this, so I'm hoping we can keep the particle porn we had in the browser version.

I guess that's it for now. I don't really want this slipping into a big project, so we'll have to see what features get kept from the original and if any new ones will be added. I'm not super confident I can make my money back from working on this, so I've got to be a little bit pragmatic in terms of the scope.

Squize.

Happy Birthday us

7 years ago today Olli and I started this whole GamingYourWay thing, and the internet got that little bit worse.

This has now been my longest relationship, which fills me with equal parts pride and despair.

Anyway here's to another year of stumbling about blindly and swearing when there's no real need.

Squize.

2013 in words and pictures

Let's stroke our ego, because that's all that this is.

January:

The start of the year meant forgetting about having been off in America the previous November / December and getting back down to O2. This month saw the start of level 4, the water works / sewer level, which just took forever to do ( To put it in perspective, I think we did the last 3 levels in the same amount of time as level 4 took ).

We also celebrated our 6th birthday, and were pleased that both DN8:Pulse and Outpost:Haven got nominated for in the best shooter category in the annual JIG best of comp. Obviously less pleased that with two games in there we still didn't win Jack, but we never really expect to.
I also posted a fairly large post about why Multiplayer is a pain in the nads. Don't believe me ? It's here.

February:

I wrote some stuff about the new node based pathfinding I'd added to O2. I re-wrote it slightly and posted it on Gamasutra. It's a really quick method of doing "Good enough" baddie pathfinding, although it still had some minor issues.

Olli introduced us to his racing game, and the fun of checking a user edited track for errors.

Personally I would let the player make broken tracks, but that's why Olli is better than me.

I also posted a bit of an open debate about re-spawning baddies being a type of game design cheat ( A cheat which I embraced, naturally ).

March:

We pushed out an alpha demo of O2 to the Facebook page. Unbelievable really the gap between that and the finished game.

One of the reasons was the level design, something I really went into with this post ( Which must have the most literal title of any post on the entire blog ).
There was some client work this month, but I honestly couldn't tell you what it was, as it just seems to blur. I think it could have been an additional level to a game did back in December whilst out in the US, but it could just as well have been anything. 

Olli covered off the map / track format for his racing game, and that's all we wrote.

April:

This was a good month. I took a couple of days off to add the hidden game to O2, just as level design was killing me.

It was great just to have two days coding for the sheer joy of it, a pattern for the month actually.

As well as that I added the Trip Wires to O2, which I was really pleased with. I loved the similar mechanic in Bioshock 2 ( Can't remember if they were in the first one ? ).

Also this month the flame thrower got some much needed love. It was far too ugly ( And slow CPU wise ) in Haven, so I re-coded it and it's in my mind the best effect in O2, it looks great.

At the end of the month I entered Ludum Dare for the first time.

The game had some nice aspects, but generally it was flawed. I did originally start using Starling for it as a way to learn it, but soon got pissed off with that.

I enjoyed it, but I doubt I'll do it again. I learned two key things.
a) I didn't have time to vote / play other peoples games as much as I should have, which is just crap.
b) I've done so much crunching over the years spending a weekend doing it isn't fun. That means I didn't spend enough time on it, and yet still missed the deadline.

There's a big old write up of it here with I assume a live link to play it.

May:

Another pretty good month. I think the good months are the ones where I could just get my head down and work on O2 without having to break off to do client work.

Firstly I re-coded the level plotting routines so they were split up over frames, which stopped the feeling of the game hanging the previous approach caused.

The C4 weapon was added, which I really like, it's great when a ton of Owlmen are fighting over it and pushing it along.

I had to re-code the wingman AI to use the new node based pathfinding the baddies did. That wasn't too bad, but like all things it affected a ton of other stuff, mainly the bullet classes which I had to go through, so we could have those human baddies in level 8.

Discovered a bug with Chrome / Pepperpot ( That's Chrome's built in Flash player, which obviously doesn't work exactly the same as the true Flash player ) that still hasn't been fixed.

Aside from that we made a start on level 5, which was the first one Lux laid out. It was so nice being able to put the planet in the background and add parallax, and the lens flare works better than I could have hoped.

June:

I hit the nothingy age of 41 this month. Time just creeps up on you.

Less good month as I took on more client work to help fund O2. BTW I don't often link to the client work as it's usually done under a NDA, where we can't take any credit for it ( And a lot of stuff I've done recently has been for one company, and it's behind a sign-in so I can't even do a cheeky link with implied credit ). It's not that I'm ashamed of client work, my bank account definitely isn't, but most of the time there's nothing we can really show.

Olli did a great post about Unity colliders, which you can read here.

And I added the sentry gun to O2, and made a start on the re-designed console.

July:

Olli teased more images of his racing game, MTR.

I was still stuck in re-structuring hell. O2 isn't a complete re-write from scratch of Haven, but I'd say it's at least 80% new code, possibly more. The hard points were added to Swarm mode, because we just didn't have enough to work to do anyway ( Worth the effort I think though ).

The really big announcement this month was of me going into partnership with Lux under the Garage Collective banner. It was a really huge step for me, only looking to release games under the GC name from now on after working so hard on trying to establish GYW. As you can see, I'm still in the GYW camp with Olli, it's mainly about the game branding rather than a complete clean break ( Olli and I haven't fallen out or anything ).

August:

Olli did some client work, can I just say, I never get jobs like this:

He also posted about another Unity project, which you can read more about here.

As for me, well this is pretty much when the O2 crunch started as Lux had come over full time. Aside from client work it didn't really stop until the game was complete, I was having something like one day off every 5/6 weeks and it sucked like crunch always does.

September:

Big big month. We renamed O2 to the more familiar "Lost Outpost" cause of an existing trade mark. Cheers for that Activision.

The first trailer went out,

And we put the not yet really finished game up on FGL ( Where we got straight 8's in the review on there. Totally fucking pointless ).

Also we ventured to Greenlight, in fact if you've not given us some voting love you can now by clicking this link. Thanks.

Olli did a ton of posts about his Hellstrom project, which was an interesting insight into building a Unity game.

October:

For me this was just fucking hellish client work and trying to sneak some hours to actually try and finish Lost Outpost. Even though the game was up for bidding it was still a constant crunch, it never let up ( Hence only one post from me in October, although to be honest the only other one I could have made was "Reasons why I went on a killing spree" such was my state of mind. I was fucking broken by that stage ).

Olli broke off from Hellstrom to give MTR some love, and what love it was.

November:

Another big month.

On the 16th we finally sold Lost Outpost, to maxgames.com
On the 19th Lost Outpost was officially gold.

And on the 29th if finally went live ( We actually delayed it a week, I jokingly said to our mate PhotonStorm "I bet the new Kingdom Rush comes out on the same day" and lo and behold. Arse. To try and give ourselves a fighting chance of being noticed we bumped it back a week ).

Olli showed some more MTR action, and him unboxing his swanky new day one Xbox One, but this month belonged to Lost Outpost after the forever development time.

December:

For me this was more client work, I'm working on a prototype game for iPad. My first time, and my first time properly working with Starling ( Which is great, I've love to find the time to have a hack of that code as it could be speeded up a lot as it has to be so general for ease of use ).

I'll hopefully write more about that this month, also we've taken on a new html game, which I will actually be able to link to when it's live.

The other big news this month was that we finally retired the proper gamingyourway site, it just redirects here now. We were never updating it so it was time to kill it off.

And I think that's it. Even less output that last year, again. Lost Outpost was the main factor in that, and I really doubt we'll do a game as vast as that again ( In Flash ). The market is still at a crossroads where there isn't the same money there once was in the Flash market ( LO sold for around a third less than Haven ) and the money isn't there yet in the HTML5 one, at least for not for large games. That will change, but it's a case of waiting for the change and paying the bills in the mean time.

I'm really proud of Lost Outpost, it's the best thing I've ever done. We've done ok review wise, got a daily 2nd on NG ( Haven was beaten by a movie on there too, we've never had a daily first on there with any of the three Outpost games ), got a weekly 3rd on Kong which was surprising as our games never do well there, it was more a case of nothing really great coming out at that time rather than our game being adored.
There are still bugs in it, it's just impossible to find the time to fix them, which is such a pity, it really hurts me leaving it like that.

I'd like to thank all the guys who helped out on it, you know who you are, and you were all fucking excellent. Thank you.

Now let's see what 2014 brings... I'm guessing less Flash and more HTML5, which is a real shame. Hopefully some Unity, but I'm sure I've been saying that for the past couple of years.

We both hope you had a great Christmas and a happy New Year, and thanks as always for sticking with us, we're going to strive to be better this year like every other.

Squize.

Some boring numbers

Lost Outpost went gold the other day ( I should really have mentioned that here shouldn't I ? ) and it's currently waiting for sign off with the sponsor, so I thought let's go through some numbers just to try and show why it's taken forever to finish.

For the 10 levels ( Plus 5 Swarm levels ) we use 396 tiles, or 1,653,371 bytes worth. When compiled all the levels come in at 2,232,249 bytes.

99% of the images have been converted to png8 to save file size ( All done by hand ) which come in as 1510 images, or 17,942,059 bytes ( This includes the tiles ).

We have 272 sound effects ( Including 7 pieces of music ), when published as a swc that's 5,547,127 bytes. To give it a bit of perspective, Outpost:Haven was our most sound heavy game before this, with 158 sounds. There are 10 different shell casing sounds, an additional one just for shot gun shells, 3 different samples for a crate being shot and 12 vocals for the automated announcement system on Haven.
I went a little bit crazy with the sound I think.

 

 

In regards the source, this is more vague. Not so much the numbers themselves, I'm not just making them up, but the meaning of them. When someone says they've coded something and it's taken 2000 lines, it doesn't really mean shit as everyone codes differently. Personally I'm murder for lots of white space and for using a Class for everything ( I've been told I'd break one line out into it's own class if I could, which aside from making me laugh is very close to the truth ).
So yeah take the following with a pinch of salt, it's quite meaningless, hence me comparing the code in Lost Outpost to Outpost:Haven's as a kind of benchmark ( I can only compare my own code to my own code as my style if fairly consistent  ).

Outpost:Haven had 266 Classes, taking up 2,304,945 bytes. This includes 27 Classes that weren't mine, general utility stuff.

Lost Outpost uses an unbelievable 425 Classes, 4,317,541 bytes. That's fucking insane. Oh hang on it's not too bad, the same 27 Classes that weren't mine in Haven are included in that figure too. So less than 400, that's nothing...

30 unique physics objects ( Crates, desks etc. ), 133 "Non-Baddie" items. These are items which the baddie handler routine controls, but aren't strictly baddies, so it goes from the spinning fan shadow to music triggers to flushable toilets to the medi-packs you collect etc. 6 Classes are for the hidden game ( With it's assets coming in at a mere 255k ) and a majestic 37 Classes for all the particle effects, with 9 of those being various smoke effects. The overkill for the particles was for performance reasons rather than me over engineering for the sake of it.

The in-game terminals were a mere 3 Classes, although they came in at more than 4000 lines of code ( I guess if you deleted all the white space and comments, that would be about 40. I'm joking, but not by much ).

PDA, which is the inventory, maps and the log screen, was a mere 14 Classes but had more code than all the particle effects combined.

And I've started to bore myself, so it's time to stop. Just to recap, Lost Outpost is a huge fucking game which should equate to over an hours worth of total story play time.

Squize.

They're nearly here

So Lost Outpost has been sold, to maxgames.com, and we're just fixing the last few bugs and adding the branding. We can't give a launch date yet, but it should be next week sometime. 

We're so nearly there, and we can't wait.

Squize.