Tiny TrackZ R&D

Sometimes when we write a game, we possibly take our research a little too seriously 🙂

Back in 2008 when we first started writing SlotZ Racer, I delved back into my childhood hobby of slot car racing and spent a lot of time playing, setting up tracks and racing Adam before I even started on the main code.

Just after SlotZ Racer was released in early 2009 I already started thinking about using the track system to do a railway game. Our dad used to be a big model railway nut, so we’d grown up building and running OO model railway layouts that either took up a spare room or an extended shed. It’s something neither of us had done in a while though, so I put together a prototype of a game called “TrackZ : Pocket Railway” (continuing the Z naming theme from SlotZ 😉 ) while I bought myself a small N Gauge set to experiment and generally play with to us back into the right mindset for model railways.

By the time we had the original prototype of TrackZ ready, Adam and I had both built N Gauge layouts. Mine being the original “Ives Yard”, built on my desktop around my iMac as an Inglenook Sidings style shunting layout (although with longer sidings).
SANYO DIGITAL CAMERA

Around this time, our publishers Freeverse were being bought out another publisher and there was a general change in direction as to what type of games they were interested in publishing. It was also getting obvious to us that TrackZ was turning into a huge project that could take us a couple of years to write if we carried on making it into the same sort of feature set as SlotZ Racer with a track editor (as railways are a lot more complicated!). So reluctantly we put the project on the back burner while we moved onto other games.

We didn’t stop railway modelling though. By that point it had become a proper hobby again, so here’s some pics of what I’ve been working on since then as my R&D for Tiny TrackZ…

My layout is called Ivebridge. It incorporates the original Ives Yard layout at one end but is now a much bigger layout with a lot more scenery.

Ivebridge ShedIMG_0001

While Adam spent some time working on his smaller Dunmarsh layout, he recently expanded the range of his hobby and he’s now helping out at the Isle of Wight Steam Railway, restoring a full size coach to its former glory..
Screen Shot 2015-08-04 at 15.32.17

Above all this though, we love writing games. So while researching the subject matter for them is fun and sometimes becomes a full on hobby in itself, the games are the fun bit!

Tiny TrackZ is due for release on iOS on August 13th with the OS X version to follow.

New Stuff and a change of direction!

It’s been a while since I’ve posted anything, mostly because we’ve been working really hard to get Tiny TrackZ ready for launch in August (we’re even sponsoring the Touch Arcade podcast for a couple of weeks on launch, so tune in!).

We decided earlier in the year that we were going to change how we sell our games from now on. Our Play Nice system has been an interesting experiment in seeing if we can provide Free to Play games without over the top and unlimited micropayments and still earn enough revenue to fund game development. However it’s not really done well enough to pay the rent. We’re also not entirely happy with how free games are perceived and simply put, we’re having to do a lot of extra hard work to make games work for Play Nice without any real benefit.

So from now on, we’re keeping it simple. All our new games will be paid games. We’re also having a moratorium on sales and none of our paid games will be free for a day or at all, so if you like one of our games, you can buy it without worrying if it’ll be cheaper at some point (it won’t. In fact, the price might even go up).

We’re not ruling out having extra content added to our games as an IAP option but this will be extra content and not a payment to keep playing the game or change how the game plays.

Once Tiny TrackZ is released, I’m going back over all our old games and working on updates as well as new paid versions of the Play Nice ones. We’ll be keeping the Play Nice ones on the App Store, but they’ll also have straight paid versions for players who just want to play and pay.

Zenos!

We’ve got a brand new SlotZ Racer special edition out! It’s called SlotZ Racer Zenos Special and we’ve written it in collaboration with Zenos Cars, a brand new British sports car manufacturer!

http://www.zenoscars.com

We even got to have a test drive of their 250bhp turbocharged E10S on the roads around Brands Hatch (and some fast passenger laps around the track with their test driver Emma!) so we have first hand experience of just how much fun this car is 🙂

SlotZ Racer Zenos Special is on the App Store now and even includes MFi controller compatibility so you can play the game with any compatible game controller. (It’s actually set up for 4 player mode using controllers, but we’re still getting the bugs out for an update). All the new features in this special edition, along with the E10 and E10S are coming to SlotZ Racer 2 HD in an update soon too.
https://itunes.apple.com/gb/app/slotz-racer-zenos-special/id953253365?mt=8

Strange Flavour are Back on the Mac!

After starting up as a Mac only games company on April 1st 2004 and having hits with Airburst, ToySight, Airburst Extreme and Bushfire (not to mention an Apple Design Award for ToySight) Strange Flavour have been somewhat absent from the Mac games market for a (cough) few years while writing games for the Xbox 360 and the odd hit or two for the iPhone.

We’ve always been a Mac team though (even our Xbox 360 titles were written on Macs) and while commercial pressure and some sensible direction by our excellent publishing partners Freeverse focused us on the iOS market, we’ve always wanted to be writing more Mac games and a recent switch in how we develop our games meant we’ve been able to jump back in!

Strange Flavour’s first new Mac game will be the Mac version of Fast Fishing and it will be released on our birthday, April 1st (also the birthday of another company to do with the Mac). While based on the same development version as the iOS version of Fast Fishing, the Mac version has no ads, higher resolution artwork and is written specifically for Mac controls. Future updates will also allow you to link both versions of the game and we’re working on an Oculus Rift update which will be a free update for the Mac version.

Following soon* after Fast Fishing will be another new title, Tiny TrackZ, which will be one for railway fans 🙂

Fast Fishing Mac screenshots:

http://www.strangeflavour.com/SFGames/FastFishingMac/FFMacScreen1.jpg

http://www.strangeflavour.com/SFGames/FastFishingMac/FFMacScreen2.jpg

http://www.strangeflavour.com/SFGames/FastFishingMac/FFMacScreen3.jpg

http://www.strangeflavour.com/SFGames/FastFishingMac/FFMacScreen4.jpg

http://www.strangeflavour.com/SFGames/FastFishingMac/FFMacScreen5.jpg

Strange Flavour are a small two- man games company based in the UK. Starting with the Mac games Bushfire and Airburst just after the launch of OS X, they turned full time with the start of Strange Flavour Ltd. in 2004 and a team up with their publishing partners Freeverse. After writing the game Flick Fishing on iOS it went on to become an international hit, reaching number one in the iPhone games chart and selling four million copies. Flick Fishing Free was also downloaded over 20 million times and players racked up over two thousand years of gameplay.

Contact:

Aaron Fothergill

CEO/Lead Coder

Strange Flavour Ltd.

aaron@strangeflavour.com

www.strangeflavour.com

* Please note, the person who wrote this press release is also a coder, so the word ‘soon’ has a somewhat more flexible meaning than what most people think of it as.

Creating Mac App Store games with Unity

**** Technical stuff warning **** If you’re not a Mac developer, skip this one. It involves nasty stuff that’ll make your brain melt!

 ***** Update. Looks like we didn’t catch everything required. process edited with more correct info thanks to Apple’s DTS team ******

So, I’ve finally submitted the first beta of Fast Fishing to the Mac App Store and had to jump through a few hoops to get it right.

Most of the issues appear to have been caused by the way Unity builds its Mac apps without using Xcode and one issue which I’ll get into in a bit caused by its file system. They’re not insurmountable but as Mac Games aren’t that high on the Unity dev list and the addition of the App Sandbox in Mavericks and Yosemite, it can be a bit awkward finding reliable information on how to get it all right..

The good news is, I’ve got a build of Fast Fishing successfully uploaded to the Mac App Store (soon to be submitted), so I thought I’d share what I had to do to make it work 🙂

 

Firstly, as I mentioned, Unity has an annoying issue with its file system. Anything in your project folders gets a .meta file created for it (I’m assuming to help track it within the Unity editor). This is normally fine as long as you remember to build your target app *outside* your project folder, except for when you use any plugins..

Because your plugins are stored within the project folder, their bundle files all have .meta files in them. When it comes to signing, these meta files break the signing and as they’re data files in the root of the bundle (which is bad).

So before you do anything to sign your build, you need to right click the app build and “Show Package Contents”

Fast Fishing Show Package

You’ll find your plugins in the Contents/Plugins folder and for each bundle you’ll need to Show Package Contents too. Go through each of those folders (and any sub folders) and delete any .meta files in there.

Once you’ve done this it’s wise to make a copy of your de-metad plugins folder so for the next build you can simply replace it with your clean copy.

The other thing that Unity doesn’t quite handle is your Info.plist file which contains various bits of useful info about the bundle and things like your Copyright info. Again, I make a separate copy of this to clone into my builds each time.

Unity does create an Info.plist file, but it’s missing various items and others are rather generic “Unity Player” ones. So a bit of editing and addition is needed..

You’ll need to add the Application Category line with the specific App category/sub-category that your game is in, as well as the Copyright (human-readable) line with your copyright info.

It’s also the place to modify the Get Info String to your game’s name and copyright. Make sure the bundle identifier matches that of your game and its provisioning profiles (I’m working on the assumption that you’ve read Apple’s documentation and have development and more importantly, distribution profiles already done and downloaded for your game) as well as checking the Bundle Versions String, short is your App’s main version number and Bundle Version is the build number (this has to be different for each build you submit to iTunes Connect).

Screen Shot 2015-02-16 at 17.56.21

 

Copy this info file over the Unity generated one in your package (and make a backup) and you’re ready to start signing..

As the game’s going to work on Yosemite and Mavericks and be downloaded from the Mac App Store it *MUST* have the App Sandbox enabled. This protects users from any bugs in your code accessing and breaking things it shouldn’t. However it does mean you have to specifically add any features your app needs.

You create an entitlements file in Xcode (actually the easiest way is to create a dummy Mac application and add entitlements to create the initial file).

You’ll need the App Sandbox entitlement (set to YES) and if you’re accessing anything on the internet, you’ll need com.apple.security.network.client set to YES too

To cover Game-Center you have to manually add the following entitlements in your entitlements file (normally Xcode would handle this for you..)

 

com.apple.application-identifier   xxxxxxxx.com.mycompany.gamename  where the xxxxx is your team ID

and

com.apple.developer.team-identifier  xxxxxxxxx   where xxxxxx is again your team ID

(these are also handy for iCloud and Handoff).

I put my entitlements file in the root of my Unity project folder

Another key step is to include a copy of the provisioning profile in the app bundle before signing it. It goes in the app bundle at Contents/embedded.provisionprofile.  Again, this is something Xcode would do for you normally that you have to do manually when building with Unity.  Do this for both development and distribution builds including the correct development or distribution profile.

 

After messing around with it to get it working I actually created a short script to handle my signing. It also copies the Info.plist file into the game package just so I don’t forget 😉

Note we have to sign the libmono.0.dylib and libMonoPosixHelper.dylib bundles that Unity adds in Frameworks too. Essentially *ALL* code has to be signed so the App Store knows it’s you that created it and it’s not been bolted on later by anyone with naughty intentions.

here’s the script…

cp “/Projects/Fast Fishing Mac Info/Info.plist” “/Projects/Fast Fishing.app/Contents/Info.plist”

codesign -f -v -s “3rd Party Mac Developer Application: Strange Flavour Limited” “/Projects/Fast Fishing.app/Contents/Frameworks/MonoEmbedRuntime/osx/libmono.0.dylib”

codesign -f -v -s “3rd Party Mac Developer Application: Strange Flavour Limited” “/Projects/Fast Fishing.app/Contents/Frameworks/MonoEmbedRuntime/osx/libMonoPosixHelper.dylib”

codesign -f -v -s “3rd Party Mac Developer Application: Strange Flavour Limited” –entitlements “/Projects/FastFishing_Unity/Fast Fishing.entitlements” –force  “/Projects/Fast Fishing.app/Contents/Plugins/BigDamnMacPlugin.bundle”

codesign -f -v -s “3rd Party Mac Developer Application: Strange Flavour Limited” –entitlements “/Projects/FastFishing_Unity/Fast Fishing.entitlements” –force  “/Projects/Fast Fishing.app/Contents/Plugins/P31MonoBridgeMac.bundle”

codesign -f -v -s “3rd Party Mac Developer Application: Strange Flavour Limited” –entitlements “/Projects/FastFishing_Unity/Fast Fishing.entitlements” –force  “/Projects/Fast Fishing.app/Contents/Plugins/SocialNetworkingPlugin.bundle”

codesign -f -v -s “3rd Party Mac Developer Application: Strange Flavour Limited” –entitlements “/Projects/FastFishing_Unity/Fast Fishing.entitlements” –force  “/Projects/Fast Fishing.app/Contents/Plugins/StoreKitPlugin.bundle”

codesign -f -v -s “3rd Party Mac Developer Application: Strange Flavour Limited” –entitlements “/Projects/FastFishing_Unity/Fast Fishing.entitlements” “/Projects/Fast Fishing.app” –deep

echo “Fast Fishing Mac Signed”

Here I’m signing my own BigDamnMacPlugin (which is a bunch of bits Unity doesn’t do that I need for my games) as well as the various Prime31 plugins I’ve used. (great plugins btw. awful IKEA level of documentation on the Mac versions 😉 ).

It’s worth reading up on codesign in the developer documentation. Very handy tool.

Next we need to build the App installation package. This is the file that gets uploaded to the Mac App Store and can be used to install the game for testing purposes..

I’ve done myself another script here, even though it’s just a single line. It’s a long line 😉

productbuild –component “/Projects/Fast Fishing.app” “/Applications” –sign “3rd Party Mac Developer Installer: Strange Flavour Limited” “/Projects/FastFishing.pkg”

Both codesign and productbuild use your distribution certificate to sign and then package the build.

Please note that your distribution build can’t be tested locally. For local testing, use the same script but without the entitlements (and your developer provisioning profile in the bundle instead of the distribution one). When installed via the app package your sandbox ID will be needed to activate the game.

When you launch the game, you should see a dialog pop up that tells you that the game was purchased by a different account, so you need to sign in with one of your Mac App Store Sandbox test IDs here for the game to launch. Don’t use your normal login, it must be a Sandbox ID.

If this works, your game should launch and elements such as Game Center etc. should work. If you’ve got a feature that’s not working, that normally works when the game’s not signed for the sandbox, check the console logs to see if the sandbox is denying anything. You may need to add more entitlements.

*Note*. If like me, your sandbox test ID isn’t for the US store, your first login will be prompted by “This account uses the UK store” or otherwise and the App Store will try and change countries to whichever one you set it up for. It will fail of course because your App doesn’t exist yet 🙂 Don’t worry about this. Once it gets over it, just launch it again and it’ll be fine 🙂

Now you should be able to use Application Loader (launched from Open Developer Tool in Xcode’s menus or direct from the Xcode package folder) to select the .pkg file you’ve created and upload it to iTunes Connect. The app name *must* match the App name you’ve got in iTunes Connect for it.

 

Hopefully this will help someone avoid the issues I had trying to get this working and there’ll be more games on the Mac App Store.

Thanks to Apple’s DTS crew for their help with this. Fast Fishing for Mac has now been approved and ready for sale on 1st April (our 11th birthday!).

Fast Fishing!

Oops! in all the mayhem surrounding the Fast Fishing launch a couple of weeks ago I forgot to post our press release up here!

Good Fish Come To Those That Bait!
Strange Flavour, the award-winning creators of the number-one selling iPhone game Flick Fishing (download by a whopping 20 million players!) are pleased to announce their amazing new fishing game, Fast Fishing!

Bait your hook and cast your line through 22 stunning levels and catch fish quickly enough to avoid running out of time!

Unlock new Gizmos, Rods and Reels as you fish in six different eye-catching areas that boast multiple fishing spots. From the tranquil Shiny Pond to the dramatic Doom Deeps, each spot contains many different types of fish as well as some older and wiser fish that will be hard to catch.

If you feel like a change of pace in gameplay, you can play the Zen Mode and fish in any spots you’ve unlocked for as long as you want in a session.

Fast Fishing can be downloaded and played for free, but players also have the option of purchasing extra space in their tackle box for more gizmos, rods and reels. These spaces also give you Chocolate Crowns which are used to access the Zen Mode areas and can be tossed into the water to tempt bigger fish.

As with all new Strange Flavour games, Fast Fishing uses our PlayNice system to make sure players don’t end up overpaying for their play, while rewarding the developers with a reasonable amount for their (hard!) work.

Strange Flavour are a small two- man games company based in the UK. After writing the game Flick Fishing for their publishing partners Freeverse, it went on to become an international hit, reaching number one in the iPhone games chart and selling four million copies. Flick Fishing Free was also downloaded over 20 million times and players racked up over two thousand years of gameplay.

Fast Fishing will be available on iOS on 22nd January as a Universal app. A version for OS X is just having the finishing touches put to it, along with an Oculus Rift version.

For screenshots and a video please visit the links below.

Strange Flavour wishes you very happy fishing!

Video

Screenshots

http://www.strangeflavour.com/SFGames/FastFishing/screenshots/FFiPad1.png
http://www.strangeflavour.com/SFGames/FastFishing/screenshots/FFiPad2.png
http://www.strangeflavour.com/SFGames/FastFishing/screenshots/FFiPad3.png
http://www.strangeflavour.com/SFGames/FastFishing/screenshots/FFiPad4.png
http://www.strangeflavour.com/SFGames/FastFishing/screenshots/FFiPad5.png
http://www.strangeflavour.com/SFGames/FastFishing/screenshots/FFiPhone61.png
http://www.strangeflavour.com/SFGames/FastFishing/screenshots/FFiPhone62.png
http://www.strangeflavour.com/SFGames/FastFishing/screenshots/FFiPhone63.png
http://www.strangeflavour.com/SFGames/FastFishing/screenshots/FFiPhone64.png
http://www.strangeflavour.com/SFGames/FastFishing/screenshots/FFiPhone65.png

Back to the Mac :)

It’s been about a decade since we last released a Mac game, which is way too long. Despite being a Mac only studio in terms of how we work (even our Xbox 360 games were written on Macs) various things have got in the way of releasing a new Mac game. It took me a while to get over not being able to use Codewarrior any more and by the time I got the hang of all the new API stuff on the Mac side, we were deep into writing iOS games.

The good news is that now we’ve started using Unity for our game development it makes it a lot easier to write Mac games alongside our iOS games and Fast Fishing will be on the Mac App Store soon!

The Mac version of Fast Fishing has all the tweaks and features that are going into the first update of the iPhone version so it’ll be pretty great!

Our next game (provisionally titled Tiny TrackZ) is being written as a Mac game too and should be launched very soon alongside its iOS counterpart. I’m going to be blogging the progress and some screenshots of it during development.