Monthly Archives: May 2015

Graphics and assets plays a great role in making a game, I don’t believe that AAA graphics can make a crappy game good, but a good game can certainly decrease in value and appeal due to poor graphics.

Unfortunately I have the drawing/designing skills of a 6 years old, not my strongest suit, but I am working on it.

Usually at this early stage of development graphics and asset should not really concern me, but giving my previous statement I decided to start looking for some free asset and new tools in advance.

Most of my previous projects were made using free asset but with a lot of manipulation and adjustment.
On my first android game Jasper Jump, I was working with a close friend, Shuky Kappon, who is a little more in touch with his graphical artistic side than me, so we came up with the design for Jasper and I used a cool program called Spriter to create the animations, we made most of the asset for this project ourselves but I also used some free assets to save time, since it wasn’t easy and it took a lot of time.

Than came MathNESS, although I used free assets this time too, I put more effort into it and it all fit together very nicely, the game itself is also more complex and the idea in my opinion is great, this game has by far got the most downloads and pay per view ads revenue than all my other games, I believe I will come back to it later on and make it even better, it has some great potential.

On my latest game, Squidish, I decided to push myself a little further and I designed and animated the squid character myself, It’s not a complicated character, but for me it was a challenge nonetheless and I am very happy with the result, for the blowfish design i had help from another designer.

So coming back to my Unnamed Platformer Project, or UPP if you will, I do intend to make some of the assets and animations myself for this game, I already have a concept and theme in mind and even made some small assets already, but it will be impossible for me to do it all by myself so as I said at the beginning of this post, I am in search for assets.

In my search I found this cool link for indie game developers, it has links to a bunch of free assets libraries and an endless list tools, if you’re an indie developer or you’re thinking of becoming one you should really check it out!

Here are some of the platforms type i have incorporated for now, but i will probably add some more later.

1. Normal solid platform – a standard platform, with no access from below.
2. Jump/Fall through platform – similar to the standard, only you can access it from below, or drop down through it.
3. Pipes – Another variation of the standard platform.
4. Dissolving – Once touched the platform will dissolve and will not reappear again.
5. Disappearing / Reappearing – Fades in and out, player can stand on platform when it’s over 80% opacity.
6. Falling – Platform will shake and fall once you step on it.
7. Bouncer – Jumping on this one will shoot you up higher than a normal jump, holding down the jump button will do an even higher bounce.
8. Sine Moving – left/right, up/down, diagonal.
9. Sine Rotating – 360° rotating platform, player will stick to this platform and will receive it’s angle.
10. Slippery – player will move and accelerate faster and decelerate slower on this platform.

The first thing I decided to attack on my new project is probably the most important thing in a good platform game, controlling your character.
The control scheme I choose for my project is pretty basic but still needs to be very tight, so lets break it down,

#1 Walking

I used 4 parameters to define walking; speed, acceleration, deceleration and fraction.

Speed is the maximum speed the character can reach while walking.
Acceleration is the time it takes to reach from speed 0 into walking speed, this gives the character a more real response as he gains momentum while walking.
Deceleration is the time it takes the character to stop walk, this usually should be much faster than acceleration, to give the player a more precise control on where the characters lands when walking/running/jumping through a level.
The last one is friction, this is an extra value I can apply to platforms to make to character react differently, for example walking on a sand or mud surface I will decrease the character’s acceleration and speed and on a wet or icy surface I will increase the speed and deceleration to make it slippery.

Running is basically like walking with higher/lower values, you want higher acceleration and speed and a slightly lower deceleration.
Besides the basic running functions I used the running button to enhance certain aspects of other mechanics, for example when you’re wall climbing, you can jump/climb higher by holding down the run button, you can also use it to give a little extra boost to your jumps or enhance other game mechanics you got implemented.

This time I used 5 parameters; strength, acceleration, sustain, gravity and maximum falling speed, lets break this down.
Jumping strength is the maximum value the character can jump to, this is important for you level design, knowing your character’s limit and working with a grid will make it easier for you to place your platforms in the right place without needing to test it all the time.
Sustain is the amount of time the player can hold down the jump button to reach an higher jumping level.
Acceleration is the time it takes the character to reach a full jump, tweak this parameter to achieve different reaction from the jump button, you want the player to be able to reach the top jump value pretty fast but still you want another 2-3 steps in between for variant jump heights.
gravity is just gravity :), it’s the force that pulls you down, this can be low for low gravity levels or negative if you want to push the player up instead of down.
Maximum falling speed, once your reached the maximum jump strength or you have released the jump button the character starts falling, this parameter controls how fast you’ll fall, the difference between this and gravity is that this is used only when the player is falling while gravity pushes the player even when he stands still on a platform, you can use different combination of this, for example, you can start the level with a positive gravity value and a negative falling value, so the character will start on the bottom floor, but when he jumps he will be pushed up and stick to the ceiling.

The mechanics I used for wall climbing are different from the normal jump mechanics, I don’t use acceleration or sustain, I have 2 pre setted jumping heights, small jump for default and high jump for when holding down the run button, the gravity and fall speed are still affecting the character.
In addition when the player jumps on a wall I push him a little back on the X axis, depending on the direction he is climbing, I also decrease the falling speed when he is close to the wall so he’ll slide down and not fall and last thing is when you press the other direction of the climbing (left/right) I gradually push you out and not in the walking/running speed, so when you jump from wall to wall you won’t lose grip in the process.