Friday, 30 September 2016

New Development Blog - In Progress

Though it isn’t ready to shout about yet, myself and a small team have been working hard on our Rogue-like game for hand-held devices.

I started a separate dev blog for it, though the posts have not all been fully published yet.
The blog can be found here:

We have created a wicked tile set for the first level environment!

I’m learning a lot about layering and tiling textures, there is more to it than myself or Sarah thought possible....

Friday, 17 June 2016

Pooka: Magic and Mischief in soft launch

Today was an exciting day, it marked the day of my first official credit on a released game!

The game has been in the works for a long while, but all the hard work and effort that went into this game from the whole team at Oysterworld has really paid off.

It is currently in south launch on IOS in Canada and Australia and soon to be released globally too.

You can watch the trailer here:

Official website for the game is currently in progress.

My role on Pooka was as one of the Game Designers. I joined the team midway through production and contributed to a wide range of aspects of the game.  Whilst helping to evolve the narrative and lore for Pooka I worked on concepts to cut back on writing for tutorials and teach the young players how to play without text to improve UX. I worked closely with the other designers to effectively balance gameplay,  and alongside the code team to test and implement new gameplay elements. When it came to the economy for this F2P title I created and managed the database for the monetisation for the time I was on the project.

I am very happy to see Pook out in the world for people to play.

Saturday, 28 May 2016

28/05 R&D

It has been a while since I have had the time to work on my own projects. This past year has been filled with plenty of inspiration though and I have met some very talented individuals.

I have a reluctance to make F2P. I believe it has a sour taste that a lot of developers – especially ones with old-school gaming roots – are put off by. When I go the app store, I often have a greater appreciation for apps that are P2P because I believe that I am paying for a quality game. To me that is more important than settling for a shoddy clone. App stores are currently over-saturated; it is difficult to find a quality product these days.  

With that said, I set out to come up with a base concept for a P2P mobile game. I wanted to release a quality product, not necessarily expecting to make any large monetary return. I was 100% set on making a P2P title until I began looking deeper into advertising and sales.

It seems that with F2P games, the most downloads will happen early after release and subsequent downloads and play time will dwindle over the days to follow. According to similar sources, only a tiny percentage of downloads will result in a user committing to a purchase. All of this certainly seems to put a downer on releasing a F2P title.

For P2P the main thing to consider for downloads is the pay barrier. All games require decent marketing to succeed, but for P2P this is imperative since the initial pay barrier to play the game will immediately block a huge portion of potential downloads.  Even if a customer likes the look and sound of a game, if it is not advertised correctly it could make or break the sales.

I expected P2P downloads to be lower than F2P games - which is true overall. I found that reading the statistics for the second year of Monument valley being on sale to be really interesting [see above]. What really shocked me was the number of downloads recorded from the popular mobile app; a lot more than I initially thought. What interested me more was the number of those downloads that were made when the app was set as 'free' or put on sale - 21/26 million of the downloads - which is a ridiculous number.

My own opinion is that I will always prefer to purchase a decent game outright and keep hold of that. I have invested money into F2P games, but it is often on the very rare occasion that I have invested more than a week into a game. I have always despised the types of advertisements F2P games often employ to 'trick' the users into clicking them. My favourite F2P tactic has been for the developers to offer an in-game reward to the player for willingly participating in 'consuming' the advertising. These V2P tactics that mutually benefit both developer and player mean that the player is left feeling like they have contributed to the developer, rather than being duped by them.

The goal I am setting myself is to design a simple game for mobile devices, with room for further development and economy. To encourage more downloads I would like to make this a game free; using both F2P and V2P monetary systems to bring back some revenue if possible. I want the controls to be relatively simple so that the player would need minimal tutorials before getting straight into the game.

No matter what the mechanics for this game will be, it will be critical for me to focus on good retention practices and the economy which will need to be simple and rewarding rather than frustrating and unbalanced. It needs the F2P equivalent of positive reinforcement for the player.

As I work on the concept I will be on the lookout for a small group to work with me on the game – likely a programmer and an artist. Watch this space.

Monday, 13 October 2014

Hydra Particle System update 13/10

Quick update on some of the things I missed in my last blog post!

Collision has now been implemented, you can choose between 3D and 2D collision modes for each emitter, select what the particles will collide with and the effect the collision will have on the particles. Video of 2D collision here.

[Emission Shape]
Shape emission has also been implemented, and we are currently in the process of adding and testing bezier curve emission. Users should be able to place and reposition points in the scene [or using the inspector] to create a shape of their choosing to emit from.  The curve can be a closed or open shape in the 3D space. Video here of bezier curve being used in the editor. We are also discussing the possibility of having particles emit/travel along the placed bezier curve.

[Texture Sheet Animation]
Particles can now be animated from a texture sheet, it gives the user the chance to be very precise when it comes to the look and development of specific particle effects, such as the smoke dispersion example above.

Though colours have been a part of the particle system for a while, the colour blending has now been completely rewritten. We previously had settings that were hardcoded such as colour-over-speed and colour-over-camera-proximity. Now you can control the order in which the colours are blended and layer them up. This also gives us the opportunity to add more modes at a later date. As you can see from the above screenshots [right] there is an expansive variety of colour blending options to choose from.

I have been testing the optimisation in our most recent version of Hydra Particles on my PC and can successfully have up to 2200 particles on the screen before the FPS begins to dip below 60. We have also had some testing done for us on Android platform with the following results:

Testing on a Samsung Galaxy S3 with APK v0.2.0

600 particles at 60FPS
900 particles at 60FPS
1200 particles at 35FPS
1500 particles at 25FPS
1800 particles at 20FPS
2100 particles at 15FPS

Between 600 and 1500 particles it runs pretty smooth, even when at 25FPS. Nevertheless for a mobile device 600 particles on screen are already a lot of particles, and at the current performance speed is truly top notch.

Surprisingly and contrary to what I was expecting, when activating the collider it doesn't slow down at all the performance. 

Thursday, 2 October 2014

Hydra Particle System Update 02/10

[.gif of flames test using Hydra Particle system]

It has been a few months since my last update on our particle system, but it has come so far since then!

We have set up some performance tests set up for the emitter for both Web and Android to allow for people to try it out for themselves.

Not only is it now crammed full of new features and had an interface upheaval, but it has been optimised considerably to run quicker on a number of different platforms. We have also decided to cut down the number of different renderers we were going to offer, since the benefits didn't quite out-way the draw backs. We are working solely using the Mesh Renderer now [baked] which combines all the particle into one single mesh.

[New interface]
Inspector has been tidied up considerably to make the Emitter easier to work with.

[Quaternion Rotation]
Per-particle rotational value, with the opportunity to lock the rotation and angular velocity to a specific axis. Works with curves/constant values

[Freeze position/rotation in an axis]
We have added the option to fix the positions and rotations to a specific axis which is excellent for working with 2D.

[A number of new forces]
A few additional forces have been added to give a wider range of ways to manipulate the particles.

Directional - Directional force simply adds a specified velocity to the particle velocity (useful for things like wind).
Gravity - A directional force that applies the gravitational force specified in the project physics settings.
Gravity Well - Attracts particles based on proximity to the gravity well.
Target Force – Similar to Gravity Well. Rotates the velocity towards or away from the force center - based on proximity.
Look at Force - Turns particles to face the force position when in proximity to it
Dampen Force – Lose or gain velocity over time.
Turbulence - Uses simplex noise to offset the particle velocity

Sunday, 13 July 2014

Hydra Update 13/07

 We now have the option to set up billboard particles which follow the camera as an alternative to 3D mesh ones that we have been working on up until now.

I have slowly been testing and documenting the particle system and trying to make shaders using the node-based Shader Forge plugin. I am currently trying to set up a shader that will allow parts of a mesh to glow whilst not diminishing the original diffuse colours as this first example I tried, though the emssion 'glow' seems more prominent:

Thursday, 3 July 2014

Hydra Update 03/07

 We've been working on organising our particle system in a more effective manner.
 Below is a breakdown of some of the components we are currently implementing. The particles system is being designed with 3D particles in mind, though we are hoping to implement billboard particles too at a later time.


Emission - number of models per sec
Simulation - Slow mo/fast forward
Energy - life span

Velocity - Rate of speed at which the particles are emitted
Rotation - Choose the rotational axis that each particle will turn on and the velocity at which it rotates
Scale - Size to which the meshes scale to

- There is the option for most of these component pieces to be randomised


We're going to be providing access to 3 separate renderer options, as they all have pros and cons for different uses. All renders will have the options for casting/receiving shadows, setting a mesh and setting materials

Efficient to draw just heavy on CPU side - slow processing - hard limit on number of verts

Our first experiment with GL particle renderer was slow - disappointing
This should have been fast to process and should be fast to draw cant figure out why - should be the fastest and most efficient of the 3

Fast to process but generates a ton of draw calls - one draw call for each material used


Gravity - This should act in accordance with the settings for gravity under Edit >> Project Settings >> Physics

Gravity Well - Can be attached to an object to pull the particles in