The Cat Trap Blog

A cat-alogue of experiences as a developer

Unity

Designing the Haggling Mechanic for Merek’s Market

25 Jan, 2022

By Dave Ward

We’ve spent the last 2 years working on Merek’s Market, a game about running a medieval shop and I thought it might be fun to do a deep dive on the development of the haggling mechanic and how that mechanic changed over the course of development. We’ll be looking at it from a design perspective so don’t worry, this won’t get too technical.

Read More

Logic Puzzles, Unity

Logic Puzzles Developer Diary #2

17 Sep, 2019

By Dave Ward

Following on from the last post, I’ve updated the visuals to something your eyes might enjoy plus added more nodes and more levels. Don’t take my word for it, load this video into your brain.

Read More

Programming, Unity

Logic Puzzles Developer Diary #1 – Basic Prototype

3 Sep, 2019

By Dave Ward

Lets have a chat about a prototype I’ve been working on for the last few weeks then we’ll take a high level tour of how it’s put together.

Idea

On a recent VR projects we developed a system where interacting with elements in the world could set off a sequence of actions. As an example, putting your hands underneath a tap would be the trigger for turning on water particles and start playing running water audio. Setting these interactions up could be quite fun and often logical at the same time. This seemed like a good jumping off point to make a puzzle game.

Without further ado, here’s what I made:

Read More

Unity

Unity Basics Tutorials

25 Nov, 2018

By Dave Ward

As the previous tutorial videos have been well recieved I’ve been hard at work writing a series for absolute beginners to Unity. The first 2 videos are already live!

Read More

Unity

Unity 2D Character Tutorials

23 Jul, 2017

By Dave Ward

To complement last Octobers Unity UI tutorials I’ve dusted off the microphone and created a short series on Unity 2D characters. What people seemed to enjoy most about my previous videos was how I cut straight to the point, trying to keep the content as concise as possible. I’ve kept that front and centre in the making of these new tutorials. Here’s a little run down of what can be learned in each video.

Sprites, Animations and Scripts

Cutting away the clutter to make an animating, moving character as simply as possible. This video covers:

  • Creating an animation and an animator that loops through a set of images.
  • Adding a script to your character that controls their position.

Sprites Sheets and Time

Improving upon the character from the last tutorial to make using him more efficient and robust. This video covers:

  • Using Texture Packer to combine all of the characters images into a sprite sheet.
  • Pulling from that sprite sheet to draw the character which reduces draw calls when more than one character of this type is on the screen.
  • Movement using Time.deltaTime to keep the characters speed constant during frame rate spikes and dips.

Skeletal Characters and Animations

An alternative to the first video where a skeletal character is created and animated rather than using images. This video covers:

  • Setting up a skeletal character with a sensible GameObject hierarchy.
  • Creating smooth and flexible animations that can affect individual body parts.
  • Moving between animation states at the click of a button

Depending on the popularity of these videos I’d be happy to carry on down this route or may turn to a different area of Unity.

See ya!

Logo

Read More

Unity

Unity UI Video Tutorials

10 Nov, 2016

By Dave Ward

Surprisingly, some of the highest visited pages on this site are still the pair of Unity tutorials posted well over a year ago. They’re here if you want to go have a look through:

Unity UI Tutorial: Canvas and Scalability

Unity UI: Tips, Tricks and Time Saving Bits

To make it even simpler to digest the UI information from the tutorials, I’ve uploaded recorded versions to YouTube. My favourite to make was the “Scroll View in 60 Seconds”. Scroll views were something that kept tripping me up when I was new to the Unity 4.6+ UI system. For whatever reason, I kept forgetting how to set them up correctly. All it takes now is 60 seconds 🙂

Read More

Castle Invasion, Unity

Castle Invasion Successfully Invades Steam Greenlight

18 Jul, 2016

By Dave Ward

Steam-ing Through

After two months of patiently wandering around the world of Steam Greenlight, Castle Invasion found the exit door and has been Greenlit. Hooray! A huge thanks to everyone that voted yes.

If this was a gif of what I’d caught in Pokemon GO everything would be a Pidgey

Read More

Mouse Bounce, Programming, Unity

Useful Plugins for a Unity Mobile Game

2 Oct, 2015

By Dave Ward

Mouse Bounce is chock full of 3rd party plugins with the aim of incentivising replay, sharing scores amongst friends and monetising the game. For any mobile game it’s expected to use at least some of the following.

Leaderboards/Achievements

Android uses Google Play Game Services to store scores and give users achievements. Both will need to be set up in the developer console, sit back and let this plugin take care of the rest.

Google Play Game Services

For iOS GameCentre is already built into Unity. Lucky you.

Read More

Castle Invasion, Unity

Creating an Enemy in Castle Invasion

11 Sep, 2015

By Dave Ward

Castle Invasion has a whole rag tag army of misfits who are trying to…you guessed it, invade your castle. This post is a short, sharp run through of how one of these enemies (a pitchfork peasant) is created in Unity 5.

Here’s an image of what we’re aiming for:

BasicEnemyReconstruction

Read More

Programming, Unity

Clean Code and Boss Battles

14 Aug, 2015

By Dave Ward

This post is definitely one for the coders. Other professions shy away now. My aim for this post is to put forward a simple method for writing maintainable, adaptable and tidy boss fights.

Picture a boss battle and you’ll most likely have an enemy that has a limited number of offensive moves and attacks with these moves in a pre determined pattern.

Barry

Barry the boss. Nice name for a dragon.

 

Read More