About CNIAngel (twitter: @CNIAngel)

Hello! I'm a Java software and game programmer (or at else trying my hardest to be). I love RPGs and indie games.

Follow @CNIAngel
My Tumblr Blog
Twitch TV Live Feed


October Challenge 2014
Ludum Dare 30 Warmup
Ludum Dare 29 Warmup
Ludum Dare 28
Ludum Dare 28 Warmup
MiniLD 46
Ludum Dare 27
Ludum Dare 27 Warmup
Ludum Dare 26
Ludum Dare 26 Warmup
Ludum Dare 25
Ludum Dare 24 Warmup
Ludum Dare 23

CNIAngel's Trophies

Largest Breasts For An Indie Game Dev Award
Awarded by HackThePanda
on December 17, 2012

CNIAngel's Archive

Gift Wallpaper

Posted by (twitter: @CNIAngel)
Tuesday, November 25th, 2014 7:01 pm

Saw that people were making wallpapers again so I thought I’d make one. It’s pretty simple but not half bad.

A wallpaper made by myself, @CNIAngel

A wallpaper made by myself, @CNIAngel


You can grab it by clicking here :)

Guess I’m in again.

Posted by (twitter: @CNIAngel)
Thursday, April 24th, 2014 10:08 am

Hey all. CNIAngel. I make games. I don’t know how many LDs I’ve done in the past but they never turn out good 😛 Gonna keep doing Ludum Dare tho. So good luck everyone.






One Memory – Final Update

Posted by (twitter: @CNIAngel)
Saturday, December 14th, 2013 5:23 pm

So I was hoping to finish this game, but I was just recently forced into a responsibility that is going to take all of my attention. Long story short, I have to quit this Ludum Dare.

Good luck to everyone that is still going.

One Memory – Update #1

Posted by (twitter: @CNIAngel)
Saturday, December 14th, 2013 3:07 am

Ludum Dare is going pretty well. I have my idea figured out fully and my selection screen is working smoothly. After a brief nap I start to work on the memories.


Memory selection

At it again

Posted by (twitter: @CNIAngel)
Sunday, December 8th, 2013 4:42 pm

Doing Ludum Dare again as usual. Same tools as always.

Java (LibGDX), Aseprite, and SunVox.

Have fun everyone.

I was already in but here’s a post anyway

Posted by (twitter: @CNIAngel)
Sunday, August 18th, 2013 11:09 am

It’s time for Ludum Dare again. I’m pretty sure this is my 5th time doing LD but only my 3rd time submitting something (hopefully).


Language/Framework: Java/LibGDX

Art: Aseprite

Music/SFX: SunVox/BFXR

IDE: Eclipse

Source Code Hosting: Github

Remember to have fun everyone!

Really late post of a 7dRTS game but that’s okay

Posted by (twitter: @CNIAngel)
Saturday, August 10th, 2013 3:01 am

So my buddy Jan Marcano and I teamed up to make a game for 7dRTS. Due ti my internet connection problems and his family trip we didn’t really finish in time. So here’s what we left off with. We may finish this up or not. Hard to say at the moment. Enjoy it tho :)

Desktop Version (Only tested on Windows): Download

Android Version: Coming soon-ish

–Gameplay Instructions–

Play as the left castle and try and destroy the right castle. At the moment the only aspects in the game that have a function are the first 4 (Barracks, Siege, Archery, and Workers). I’ll explain each of the working aspects below.

Barracks: Determines the spawn rate of your warriors. The higher the number, the faster they spawn.

Siege: Controls reload speed for your Catapult. The higher the number, the faster it shoots.

Archery: Controls how fast your Archer can ready it’s bow. The higher the number, the faster it shoots.

Workers: Used to “repair” your castle, restoring your HP. The higher the number the more HP you get back. (We currently have an animation for this but it is not in atm).

In this game there are only a few units and they have a simple purpose. Here are their info.

Warrior: The Warrior is a melee unit used to attack your enemy’s castle. A warrior will spawn at a steady rate from the front of your castle and move toward your enemy. This rate is directly affected by the Barracks aspect. If it encounters an enemy Warrior then it shall perish along with the enemy’s Warrior. When a Warrior reaches the enemy’s castle it will do damage and then perish.

Catapult: The Catapult is a ranged unit that repeatedly shoots rocks at the enemy castle. It can not get killed and it only effected by the Siege aspect.

Archer: The Archer is a ranged unit that sits atop your castle. It’s purpose is to shoot any enemy Warrior that gets into range. It’s reload speed is directly effected by the Archery aspect. The Archer can not die.

Spark – Post-Mortem

Posted by (twitter: @CNIAngel)
Friday, May 3rd, 2013 10:24 pm

Right. Post-mortem. My entry for the Minimalism LD was Spark. I must say, I’m proud of myself. I submitted something that works. Now, not a lot of people even liked it or thought of it as a “game” seeing as all you do is hold the right arrow key and move right. So I’ll just do the generic Pros/Cons listing.


Remember this crap?

Remember this crap?


What went well

  • The art was simple and took barely any time
  • When coding the game I was more confident in the process, and hit only a couple snags altogether.
  • My music creation is getting easier to do.

What didn’t go well

  • Apparently just moving right and reading words isn’t a “game”
  • My build of LibGDX doesn’t have LWJGL 2.9, so playing using MacOS with Java 7 installed could not “play” the “game”.
  • I probably could have made the game more in the time allotted.


Now I don’t really care if someone bad mouths something I make. I know what I made. As for the “not a game” bit, we all have our own definition for a “game” so I don’t really take those comments seriously. For next Ludum Dare, I really plan to kick some tail. I’m really looking forward to it like I always do.


Any-who, I’ve made a post-compo version of Spark. It’s more of a “game” while still being a narrative. So if you don’t like reading, please don’t play it. Or do.

Download the post-compo version by clicking the image below.


2013-05-04 01_17_07-2013-05-04 01_16_17-spark

Slightly less crappy



Last Progress Update

Posted by (twitter: @CNIAngel)
Sunday, April 28th, 2013 12:02 am

Update один

Posted by (twitter: @CNIAngel)
Saturday, April 27th, 2013 1:17 pm

I’ve got some good progress coming along for my little game. The next step will be to implement collision with the world and jumping. Then POLISH. And then add a potato.


To everyone that is doing Ludum Dare right now


Today’s the Day!

Posted by (twitter: @CNIAngel)
Friday, April 26th, 2013 1:14 am

YOOOOOOOOO fellow LDers!

It’s nearly time. That timey wimey moment where you sweat profusely and get ready to begin that wonderful journey to making a game in 48 (or 72) hours!

Just remember these things!

  1. Get some damn sleep.
  2. EAT
  3. Keep It Simple Stupid
  4. Beware the Feature Creep
  5. SLEEP

If you can keep these things in mind and you’ll be on your way!

On a different note, I’m posting a link to my boiler code project this Ludum Dare. https://github.com/CNIAngel/Magnesium-Juliett-1 Just so you know I’m on the up and up.

One last IMPORTANT thing.

Potato Challenge Ya’ll! Put a potato in your games! In any way! And if you do, proudly display one of these emblems* of awesomeness!

potato_small potato_med



* Amazing awesome art stuff made in Hexels

I was born in.

Posted by (twitter: @CNIAngel)
Wednesday, April 17th, 2013 6:07 pm

Hello fellow developers of games! It’s that time again! It’s


Here’s a quick run on my tools!

  • Language/IDE/Framework: Java/Eclipse/LibGDX
  • Art: Aseprite/Graphics Gale
  • Music & Sfx: SunVox/PixiTracker/PixiTracker 1-bit

Now if I live-stream it’ll be at twitch.tv/CNIAngel and if I can’t, then I’ll be making a time-lapse video.

Good luck to all of you and may we all have lots of fun!

Update #1 – Wow this is going well so far

Posted by (twitter: @CNIAngel)
Saturday, December 15th, 2012 2:20 am

Heyo heyo heyo.

I’ve made some good progress in the graphical area of my ld entry. Time to outline what the game is going to be 😀

I’ve dubbed this game “What a World.” I’m not sure why though. You play as an anonymous leader of a group of toughnecks trying to make an impact on the world. In a bad way ;D You’ll be able to choose 3 or 4 people for your crack team in the game. Each will have there strong and weak points so you’ll have to choose wisely.

Once you have your team you will be able to do missions to build up influence in the world and to make your crew better. The missions will probably range in awareness. The more the world starts noticing your deeds the harder it’ll get to do missions.

You win when you conquer the world idk maybe.

It should be a nice little game to play. Also, you get some crazy choices for a crew. I may even make it a random selection.

Here is the crew from top left to bottom right: Diggums, Billie, Bones McCoy, Katz, Brutus, Justin, Domnic, and Vel.

When I wake up I’ll be focusing on the main core gameplay aspects. (Mission handling, random attributes, and globals.)


Goodnight everyone!

– Grant AKA CNIAngel

As always, I’m All In.

Posted by (twitter: @CNIAngel)
Monday, December 10th, 2012 3:02 pm

Hey hey everyone!

CNIAngel here to say that I’m in again. I’ve improved since the previous LD and I’m really hoping to pull out a good one. I was going to put up my warmup game as my “I’m In” post, but hit a couple snags xD

Anywho, here’s my tools.

Code: Java (with LibGDX/Box2D)

IDE: Eclipse

SFX: SunVox (For music) and BFXR/SFXR (for sound effects)

Graphics: Aseprite (For sprites and Animation) and GIMP (For large pieces)

I can’t wait for this weekend and I wish everyone the best of luck! 😀

Popcorn chicken?

Posted by (twitter: @CNIAngel)
Saturday, August 25th, 2012 3:30 pm

I dine now on the chicken of the popped corn variety. Sadly, I am without some bbq sauce.

Popconr Chicken

Progress update AKA I was a cat once

Posted by (twitter: @CNIAngel)
Saturday, August 25th, 2012 2:04 am

It’s great to see Evolution finally winning. I’ve decided on making a 2d side-scroller city smasher. It’s called Kitty Monster Rampage. The player evolves into a bigger kitty monsters as the game progress. It’ll get harder aswell. Here’s a screenshot of the game so far. I have the HUD being drawn correctly, the player is colliding with the world currently, and I’ve got my game plan down :) Kitty Monster Rampage Screentshot #1

[cache: storing page]