About CatOnMars (twitter: @CatOnMarsLin)


Ludum Dare 34
Ludum Dare 31
Ludum Dare 30
Ludum Dare 28

CatOnMars's Trophies

CatOnMars's Archive

Happy Ludum Dare Weekend

Posted by (twitter: @CatOnMarsLin)
Friday, August 22nd, 2014 5:40 am

This is the second time I’m doing for the compo.

I will use the same toolsets(Unity, sfxr, blender, photoshop) as my previous entry.

Also I will use my previous entry as my project template.

Wish you all have a nice weekend~

Post-Mortem: KERNEL

Posted by (twitter: @CatOnMarsLin)
Sunday, December 29th, 2013 2:56 am

The game

KERNEL is an action  game about left-hand right-hand coordination.

You can play and rate it Here.

How I made it

  • Idea Generation: “You only get one” is a rather general theme. It can fit into nearly every established genre. So, I decide not to care too much about the theme and just make a game that I want to play. I usually design games by asking “what if”s, “What will happen if you only get one player with a 2-player co-op game?” Will it be fun? I don’t know, so let’s prototype it quick and dirty, and see if its fun.
  • Tech: I use Unity 3D 4.3 because I want to try it’s new 2d features and learn more about Unity. I found it quite neat, but it has no tile-map support, and the default sprite shader did not support lighting.
  • Collision detection/response: IMO one of the most confusing part of Unity is its physic engine. In Unity, if you want your gameObject to be handled by physic engine, you must attach a rigid-body component to it, or the OnTriggerXXX() will not be triggered. But what if I just want to detect collisions, and I want my objects’s motion controlled by my own code instead of controlled by the physic engine? You still have to add a RigidBody component to your gameObject, and set gravity, drag…etc to zero. Enabling the “IsKinematic” will make your game object outside the physic pipeline, so those OnTriggerXXX() event callbacks will not trigger. It’s useless to me, so I decide to implement my own collision detection/response scheme using Unity’s built-in functions. Since I decide to make a rectangle-based, non-tile-mapped level, I should only implement rectangle to rectangle collision. I used the “Linecaster” in Unity to approximate the 4 edges of a rectangle. See pictures below:


The blue thin lines are where collision detection happens. To prevent double collision at one side, I made the lines shorter.

  • Level Editing:

Since I have no mood for opening photoshop and draw some thing, I decide to make the level solely by primitives in Unity.

And because of the collision detection, I must only use rectangles! So, everything in this world is consist of rectangles, including characters and texts.

The resulting level looks like this:

Somewhat like a snake, isn’t it?

  • Effect:

In order to make the graphics more pleasing, I use a bloom post-effects provide by FXLabs plugins (I have to use it since Unity Free does not support RenderToTexture.)

Here is a before-after picture showing the “neon-cubes”:

What went right?

  • The Gameplay:  The gameplay mechanics shows some potential and IMO it’s quite fun.

After the compo many new design ideas emerge in my head based on this double-control scheme. I will polish more and put them in a new version if I have time.

  • Graphic style:  The “neon-cube” style works quite well as I expected.
  • Level design: I think the length of the entire stage is quite suitable for this compo. It last about 3 minutes and a half if you did not die any once in this game. And personally I like how I  present  the title : )
  • Amazing feedbacks: People here are really awesome, they give constructive feedbacks! I really thanks anyone playing my game and commenting on it! For example, one person point out that this game is natively co-op, and if you play this game with your friend, it will be fun too! I like this comment very much : )

What went wrong?

  • Control: The control is a bit floaty, the friction is too low. It made this game very hard to do precise movement.
  • Difficulty: Because of the control, easy stages became really difficult.

Details: There are still many bugs and improvement I have no time to solve or polish in this compo session:

1.After death, the collision is not well handled because of state switching. This will make the players happens outside the wall.

2.The ending part is not complete, it will looping levels.

3.Visuals are not polished enough.

4.Did not complete the narrative part:

Initially there’s a story of this game. The main character is called “KERNEL”, on the contrary the level itself is called “SHELL”, it’s a huge spaceship. The gaming process is to control the kernel to reach the core part of the SHELL and injecting the control program to it’s core. In the end, the level will transform into a huge snake like spaceship and fly away into far galaxy…blah blah. Anyway, I did not complete that : (

  • Learning a Engine during compo session: Frankly speaking I did not use Unity very frequently and I think I still not familiar with it enough. Next time I must ensure that I know all the basics of Unity before participating in a game jam!


This is my first time writing such a long post in English. Thank you everyone for tolerating some grammar/spelling or collocation error in my post. During this LD I learned very much and I really enjoy this. See you next time : )


In! LD28

Posted by (twitter: @CatOnMarsLin)
Friday, December 13th, 2013 2:43 am

Greetings~   This will be my second LD. Last time we gathered a team of 3 people and complete a puzzle platformer for Jam.

This time I will aim for the compo.

Tools I may use:

Unity 4.3:  It’s a good chance for me  to harness the power of new 2D features.

Gimp/Paint.net/Photoshop: Since my companion artist has left me (no drama here…), this time I will try to push pixels all by my self.

bfxr/sfxr: If timing allowed, I’ll made some interesting chiptunes! Otherwise I will go for online free sound assets and put my game in jam.


Last time we start generating game ideas before the theme announcement, and incorporate the theme into existing ideas.

We found it’s a rather bad way to make games for LD, this approach make our gameplay mechanics restricted and twisted.

So, this time my only strategy is to  HAVE FUN!


Posted by (twitter: @CatOnMarsLin)
Friday, August 23rd, 2013 7:59 pm

螢幕快照 2013-08-24 上午10.40.44

Hello everyone~

Here is our first in-progress screenshot.

We are planning to make a puzzle platformer in which you are forced to switch character every 10 seconds,

your goal is making your way to the exit for every alien…


stay tuned~

Let’s Make This Ludum Dare Awesome!!

Posted by (twitter: @CatOnMarsLin)
Thursday, August 22nd, 2013 6:53 pm

Hello everyone~

This is my first Ludum Dare, we will work as a team and make funny game for the jam~

I am Soooooo excited and it’s gonna be awesome~



GameEngine/Framework: Unity3D + 2d toolkit

Art: SAI,Photoshop

Sound: Adobe soundBooth, sfxr

Free Art and Sound resources: Open Game Art Bundle


Good luck and good day~

[cache: storing page]