13 Jun

NewbQuest Ep.4: Richard Flanagan, Game Designer of Fract OSC

In this episode we interview game designer Richard Flanagan who is a member of the team who created FRACT OSC.  FRACT is a musical puzzle exploration game for Mac and PC. FRACT is best imagined by asking: what if Myst and Tron had a baby that was a giant synthesizer you could wander around in? If that sounds awesome to you, you’ll really enjoy it.

For those interested in music and sound technology, particularly real time synthesis, the project is very interesting.  The musical puzzles in the game combine pre-recorded music tracks with real time subtractive synthesizer sounds powered by Miller S. Puckette’s Pure Data (or PD) sound generation environment.  This is an area of real time sound and music generation that I’ve been very interested to see pursued further in games and so was delighted to talk to Richard about it, along with the larger process of developing FRACT OSC.

You can subscribe and download the show via iTunes, and if you do I’d love it if you had time to leave an honest review.

You can also check out the show via the NewbQuest YouTube channel, if you prefer that format. If you do I’d appreciate if you’d subscribe or leave a comment over there.


To learn more about Richard Flanagan and FRACT OSC head over to FractGame.com.  If you enjoyed the interview the best way to support him and his team is to buy the game on steam.

09 Jun

The Art of Screenshake (with Unity 2D script)


Nuclear Throne by Vlambeer

This is a great presentation by Jan Willem Nijman of Dutch dynamic duo Vlambeer.  He talks about crafting the feedback that your player receives when playing your game, including things like screenshake, camera movement and explosions. There are some very useful ideas in here. I put together a simple unity script aimed at Unity 2D which implements screenshake by moving the camera on collision which was inspired by this, grab it below.


To use this script:

  1. Assets > Create > C# Script
  2. Name the new script “CamShakeSimple” (as in the class name)
  3. Add CamShakeSimple to the game object that will cause the shake, in this case it’s setup to shake the camera when this 2D object collides with something.
  4. Drag your main camera into the newly visible slot in the inspector called “Main Camera”
  5. Now when this object hits another it will use the relative velocity of that collision to shake the camera.  Other ideas might include shaking the cam when you fire a bullet, fall from high up, or any number of things.
  6. Note that if you’re using this in 3D you’ll want to remove the two instances of “2D” from the collision portion.


using UnityEngine;
using System.Collections;

public class CamShakeSimple : MonoBehaviour 

    Vector3 originalCameraPosition;

    float shakeAmt = 0;

    public Camera mainCamera;

    void OnCollisionEnter2D(Collision2D coll) 

        shakeAmt = coll.relativeVelocity.magnitude * .0025f;
        InvokeRepeating("CameraShake", 0, .01f);
        Invoke("StopShaking", 0.3f);


    void CameraShake()
            float quakeAmt = Random.value*shakeAmt*2 - shakeAmt;
            Vector3 pp = mainCamera.transform.position;
            pp.y+= quakeAmt; // can also add to x and/or z
            mainCamera.transform.position = pp;

    void StopShaking()
        mainCamera.transform.position = originalCameraPosition;


To give credit where it’s due, this is a combination of code fragments from this thread:


and this one:


05 Jun

Pollen DevLog 2: Clouds, New Enemy Spawning, Sounds




Pollen is a game project I’m working on in Unity, it’s basically my first game and I’ve been working on it part time since October 2013 while teaching myself programming and game design fundamentals.  I’m calling it a low poly butterfly action rogue-like like.  It’s probably more ambitious of a project than I should have attempted as a first real thing but I am nothing if not ambitious.  It’s been slow but I’ve also been teaching myself a lot of stuff in the process. It’s been deliciously fun.  In this devblog I demonstrated my new sound effects, new clouds and new dragonfly enemy type.  This is a short devblog where I show some gameplay and explain the latest stuff I’ve done.

05 Jun

NewbQuest Ep.2: Shawn Allen, Game Designer and Artist for Treachery in BeatDown City




In this episode we interview indie game developer Shawn Allen who is working on Treachery in Beatdown City, a side scrolling beat ’em up with RPG elements  which just successfully funded on Kickstarter. We talk about being an indie developer, the Kickstarter process and making art for games.

The Kickstarter video for the recently funded campaign is a great intro to Shawn and his world:



In our interview we had a great conversation about his choices for an 8-bit, retro art style along with ways he was trying to work within that convention to create something new, the challenges of the indie lifestyle, creating a game targeting Playstation and working with Sony, collaborating with artists, musicians and coders and much more.


You can subscribe and download the show via iTunes, and if you do I’d love it if you had time to leave an honest review. Note: right now the show hasn’t appeared in the iTunes directory, for now use this link to subscribe.


You can also check out the show via the NewbQuest YouTube channel, if you prefer that format. If you do I’d appreciate if you’d subscribe or leave a comment over there.

To learn more about Shawn Allen and his game Treachery in Beatdown City you can head over to www.beatdowncity.com and you can follow Shawn on Twitter at @anuchallenger

Thanks again to Shawn for taking the time to come on and talk, and to you for checking out the blog and the show!

05 Jun

NewbQuest Ep. 1: Interview with Noel Berry, Game Designer and Developer of Skytorn



In this first episode of the brand new NewbQuest podcast I sat down with Noel Berry, who is the game designer and lead programmer on Skytorn.

Skytorn is a procedurally generated action adventure game, set in the ruins of a fallen world.

“Centuries after a mysterious cataclysm tore the world apart, humans have taken to the skies – ferrying their kin in airships, searching the remains for artifacts and survivors. Explorer Aiva ventures out on her first dive, landing on an uncharted island. Alone and armed only with a shovel, she is determined to carve her own path.”

  • Plummet through the clouds towards unique unexplored islands.
  • Observe, hunt or protect strange wildlife.
  • Converse with cryptic strangers.
  • Fend off predatory creatures with your trusty shovel.
  • Uncover ancient structures filled with secrets.
  • Challenge towering monsters to deadly combat.
  • Use the dynamic environment in creative ways to survive.



We had a great conversation about Skytorn, game development in general and Noel offered some really helpful advice for those of us who are starting out in the process.  A few topics we discussed include:

  • Are Flash games still a useful place to enter game development and try to monetize?
  • What tools should you use if you’re new to game development?
  • Is participating in game jams a good way to get started as an indie developer?

You can subscribe to the show via iTunes as a podcast, and if you choose to do so we’d love it if you’d subscribe and leave us a review.

You can also watch the video of the interview via our YouTube page and if that’s your preferred format we’d appreciate if you could like, subscribe or comment over there.  Somehow I only recorded Noel’s camera for the video, which is a little weird. Whoops! Still working out the bugs, but the show must go on.

I’d just like to offer a big thanks to Noel for taking some time to come on the show and to you for checking it out!

To learn more about Noel you can check him out at his website, for more on Skytorn you can head to it’s official site and to follow Noel on twitter you can head here.





23 Nov

Newbquest Dev Blog 5: Simple 3d Procedural Level Generation, Physics Based Weapons


In this latest update in this series of dev blogs documenting my progress learning Unity, procedural content generation and scripting I show how I have created a very simple procedural level generation system and physics based weapons for my flying six degree of freedom roguelike game Butterfly.

I’ve been very interested in the roguelike hybrids that have appearing recently, games like Spelunky and Risk of Rain.  I love the idea of procedural content generation, especially with regard to levels.  I’ve been experimenting with it myself and have come up with a very simple system that is working for my current game project Butterfly.  I can’t tell you how excited I was when I actually hit play on Unity and it spawned that first randomized level!  So coooooool.

I’ve also added some pretty cool physics based stuff to the game including re-working my homing missile system to be physics based instead of using transform manipulation.  The result is a lot more graceful and less glitchy.  In the process I have been learning a TON about javascript and unityscript and am really enjoying that.  I’m actually getting to the point where I can imagine and write scripts that do the things I want without having to google for hours to find something pre-built.  That is an incredible feeling.

I have to also take a moment to express how much fun it is working with the Unity platform and community.  The people on the forums and Unity Answers site are just incredibly friendly and helpful and I have learned a huge amount just reading the existing body of questions and answers.  If you are on the fence about choosing Unity as a platform I really can’t recommend it more highly.

26 Oct

Butterfly Dev Blog 4: Shields and Ammo

In this update I added a shield system where you press and hold a key to spawn a shield around you which blocks projectiles.  The shield has a ‘capacity’ resource which runs down the longer you hold it. When it runs out the shield stops working. When you release the key, the shield will recharge and fill back up in between engagements. I also added an ammo function which tracks how many missiles you are allowed to fire and disables the firing capability when you run out.  For me both of these tweaks are an attempt to add more frequent and relevant decision making to the game. I want the player to be having to make as many decisions as possible over the course of the game and so am trying to add mechanics which force them to consider their next action, even if they are doing so very quickly.  The balance between something fast paced and strategic is interesting to me and something I’m hoping to explore further as I go.


17 Oct

Newbquest Developer Blog 2: Game Design and Music Sample

Trying to keep the rhythm of posting something every day or at least every day I work on the project.  Today was a long day at work so I am sharing a short piece of music and a game design document I created in Xmind.  Xmind is a cool, free mind mapping / flow chart tool which you can download here.  I enjoy it for this type of project design work and you might too.

Was this interesting at all? Not sure if this type of non-unity focused content is interesting or useful for anyone but I’m still figuring out the format here. Thanks for checking it out!

16 Oct

Newbquest Developer Blog 1: Butterfly Intro

I’m back! It’s been a while. I was very busy, but now, here I am.  I’ve decided to experiment with a new format for this blog which will focus on posting short video developer blogs, showing the progress I am making with learning to make games in Unity.  This is a short intro to my current level of progress, as I work further on the project I will provide more detailed explanations of what’s going on and what I’m up to. This first short video is showing what I’ve created so far and explaining a few of the systems involved.

The project I’m currently working on has the working title: Butterfly.  The basic idea is that you fly around in 3d space  as a butterfly and shoot missiles at other butterflies.  Although at the moment it’s quite absurd my goal is to develop it into something more visually beautiful. I’d like it to be a visual audio experience as much as a game and so I’ve got some placeholder audio and visual assets in there to start.  Once I get things going a little less shakily I’ll post some web players so you can try the mechanics yourself.

A few notes about my approach.

My goal in posting these videos and blog posts is to try to meet other people who share my interests, and to hold myself accountable and motivate myself to make progress. I feel like having an audience, even if it’s very small, will help to keep me on track.  I was very inspired by what the people at Overgrowth are doing with their documentation project. I am not as cool as them, nor is my game, but hey.

I am very inspired by the Lean Startup methodology so a big part of the reason I am sharing this in such an early state is to try to get some impressions and feedback from anyone who looks at it.  I welcome all feedback, positive, negative and everything in between.  If you think this is a dumb idea, that’d be great to hear! If you’d like to see it go in another direction, that’d be great too.  My goal is to try to build up this simple prototype and iterate on it until it becomes something cool and fun and to try to do that in a fairly public way through this blog.

I’d love to hear from you! Feel free to leave a comment here or on the YouTube page where the video lives. I promise to reply to everyone.