About jprogman (twitter: @jprogman)


Ludum Dare 32
Ludum Dare 30
Ludum Dare 28
Ludum Dare 27
Ludum Dare 24

jprogman's Trophies

jprogman's Archive

“Ay Pinatas!” — Post Competition Version is up!

Posted by (twitter: @jprogman)
Monday, May 11th, 2015 8:28 pm

Ay Pinatas! -- Postcompo

[ You can play the post-competition version here on itch.io ]

Looks like Ludum Dare #32 is about to post the results. I haven’t checked at the time of this post, but I’m getting anxious! :)

I’ve put my time to develop a post-competition version of “Ay Pinatas!” As you can tell from the screen shot, one of the changes is the details. You’ll notice more new things like audio and graphics as you play through it. Although, the level design is still identical to the LD version. This time, however, you are not obligated to destroy all the pinatas but rather a certain amount in order to get to the exit. Before, you would win automatically when you destroy your 100th pinata. The post-competition version (also called my prototype) still has only one world done — which is pretty much the point of this version.

I’m glad to put most of what I’ve missed and hope this adds more anticipation than from the LD version itself. I might add more changes to the prototype along the way,  so keep in touch through Itch.io or Twitter.

This wraps my participation of Ludum Dare #32. See ya next L.D.!

All is Cool, and “Ay Pinatas” Post-compo W.I.P.

Posted by (twitter: @jprogman)
Saturday, May 2nd, 2015 5:01 pm

Pinata Box

To celebrate rating 100 games, I drew a picture of what the main character suppose to be in my game “Ay Pinatas!”  It’s a pinata too, but one of the good guys. Don’t feed it too much candy… it’ll go boom!

If you haven’t already, take some time on “Ay Pinatas!” and let me know what you think!

[ Click here to play the game ]

Meanwhile, I’m developing a post-compo version of “Ay Pinatas!” to add what I couldn’t during the compo. Check back at the game’s page or at my twitter feed for the latest happenings.

“Ay Pinatas!” — Postmortem

Posted by (twitter: @jprogman)
Friday, April 24th, 2015 7:54 pm

— You can play the game by clicking here —

I say this Ludum Dare entry went along as I wanted to go — give and take a few features. “Ay Pinatas!” is my fifth game to enter Ludum Dare. (You can see my other entries in my journal.) I’m glad to get the general idea all completed and some people who have played it seemed to enjoy it too.

Now, I would like to share my development story on how it all went — my postmortem report!

The good:

  • Enemies & combat – This time, for a change, I managed to add enemies in the game. Without it, the game would had suffered the same fate as my previous entry “Parallel Worlds.” While I had more enemy ideas during development, I’m glad to have three different kinds programmed. The homing pinatas is my favorite and shows that I still know my trigonometry! The combat is simple enough, but I wanted to key things up to add bonuses for destroying more pinatas in a short time — a spree. The spree is important for scoring.
  • Animation – Exhausting, but happy to get the player’s animation done! It wasn’t easy due to a couple factors: 1) small resolution — only 12×12 pixels; 2) 8-directions. Time consuming, but was able to cut corners with flipping.   Sadly, I wasn’t able to add different enemy sprite art other than the generic “evil pinata ball.”
  • Special effects – I love the confetti explosion! What irks me is memory leakage overtime. I don’t know how Flixel recycle particles, so that is something I needed to find out soon.
  • Camera – It was simple thanks to Flixel. Although, I was especially proud to fix the camera range (the area which the camera can pan) so it prevent unnecessary scrolling.

The bad:

  • No audio – Once again, I had to sacrifice my time with the audio to finish the game. I find the programming to take 1-1/2 days to get the game running, but I still got more to do at that point.
  • Level design – Because I had only 2 hours left, I didn’t put a lot of time designing levels. So, the world is quite short to what I had in mind. Most of the blame is how to save the level design into a file and embed it into Flash. I was using single text numbers to represent tile types. While that is a good idea, I was out of luck when I’m up to 10.  Time was short, so I didn’t bother with that flaw.
  • Lack of pizzazz – I wanted to add more effects to add excitement to the game. While I got the confetti done, I still had more to include to express more excitement.
  • Candy Meter Implementation – It’s an interesting feature to not overfill yourself with candy; you’ll explode! Although, there was no warning to you to not overfill other than what I’ve said on my description. I was intending to add a candy meter to illustrate how dangerously close you are to overfilling.
  • No story – I had a story in mind to help explain what the main character is and why it’s stuck with a sweeper instead of a broom. The story is a factory making state-of-the-art pinatas that mistakenly turned against humans. One pinata is on the humans’ side, which is the main character.
  • No title screen – Like ouch! My last few minutes was spent to spruce up the levels and add enough enemies. So I had no time at all to add a title screen.

At this point, I wanted to develop a post-competition version of “Ay Pinata” to add what was missing or just to improve what I couldn’t during development. (I really wanted to add sound!) Be sure to keep in touch for the latest development on that. Here’s a teaser on what that version would look like:

"Ay Pinatas" -- postcompo teaser

Hope you could give “Ay Pinata!” a try and share your comment on the page! Thanks for playing and rating my game!

Time to party! “Ay Pinatas!”

Posted by (twitter: @jprogman)
Sunday, April 19th, 2015 11:16 pm


This marks number 5 in my list of games made for Ludum Dare! “Ay Pinatas!” have you go around to destroy all the pinatas causing havoc. Although, you are also a pinata too — but with the good guys.  Walk around the land to eliminate the bad pinatas while stocking yourself up with candy — since you are a pinata after all!

I’m just starting to try your games out and leaving my feedback as much as possible. Later on, I’ll post my post-mortem regarding the development and time during LD #32.

This game can be played on the web with Adobe Flash.

— Please check out “Ay Pinatas!” here and be sure to rate and comment! —

Ay Pinatas! — 1/2 Way through

Posted by (twitter: @jprogman)
Saturday, April 18th, 2015 11:25 pm

As of this point of LD, I got much of the the programming set in stone. I still got more to do yet!

Pinatas won my interest as the theme of the game! As a weapon, I was thinking brooms — which led to my decision of pinatas. But, I felt brooms are too much of a cliche. So, as a last-second effort, the sweeper was selected instead!

Still got plenty to do: the enemies, the graphics, the animation, the rules, the audio… tons to do! Likewise, the most consuming part is programming everything from scratch and I’m glad to get a large portion of that done.

Oh, and that pink boxy protagonist is a pinata too. (Suppose to be a generic pinata with one “company defect” — it’s very blandly designed.) I’m striving to add a story too if time’s willing.

Here we go to the second half!

Just for your interest, here are the following I am or will be using…

  • Program: Flash + Flixel (Community version)
  • IDE: FlashBuilder
  • Paint: MS Paint, Photoshop
  • Audio: OpenMPT, Soundbooth
  • GIF: GifCam

Here’s a sneek preview in GIF! :)

ld32 confetti

It blows confetti!

“Parallel Worlds” (jprogram’s version) walkthrough

Posted by (twitter: @jprogman)
Monday, September 8th, 2014 8:45 pm

Walkthrough (Click it to see in full!)

Need some help? Sure you do! I’ve made a walkthrough for my game to give you assistance on finishing the game — but try to use it at the last resort because it’s more funner that way! :) For your convenience, I’ve added the walkthrough as a screenshot to the game’s description page so you don’t have to find this post for it. 😀

Haven’t tried or rated “Parallel Worlds?” Now’s your chance!

–Try and rate Parallel Worlds here!–

Thank you very much for your support!

Parallel Worlds (my kind) — Postmortem

Posted by (twitter: @jprogman)
Sunday, September 7th, 2014 5:37 am
Bloom World

Bloom World


If you haven’t already, give “Parallel Worlds” a try! Feedback is welcomed!

Try and Rate “Parallel Worlds”


Now’s my turn to announce my postmortem on my edition of “Parallel Worlds!”



Map system:  Although I spent most of my Saturday on the map system, I’m happy to get that working and designed. I came up with three worlds, each with it’s own map, style, and song. The portals are working as they should: to take you to the next world in sequence.

Mechanics: Having just a labyrinth where you move eight directions overhead is not so innovated in my opinion. Therefore, I decided to add a gravitated side-scroller in one of the worlds. My initial thought is to add different mechanics to most worlds; although, I only came up of two. Likewise, I’m glad to get two different mechanics in the game to show my idea.

Graphics: I wanted to design an game reminiscent to an ATARI 2600 game but with a background/overlay reminiscent to Magnavox Odyssey. The map is full of big blocks while the background is a detailed, pixelated environment.

Audio: This is my first ever LD entry that featured audio! 😀 I’ve done both sound and music with OpenMPT. The sounds didn’t take me too much time to complete as I only have one. The music was a challenge for me to create in such a few hours. I’m not an avid musician, but I do enjoy making chip-tunes. I was amazed to come up with 3 songs in under 2 hours time.

Smooth play: This is my second game made in Flash, but I used Flixel this time. My previous Flash game was nicely done, but it suffered from laggy performance; but I manged to get that resolved later on. This time, however, this game ran smoothly during development and remained that way by its release. Flixel has helped make game development easier and efficiently in little code.



Feature creep: My initial thought was to add enemies to add a more arcade-style game rather than a standard labyrinth with portals. You will notice some rooms have particular designs. Those were designated for enemies — which, unfortunately, is what I didn’t have enough time on. Therefore, the game ended up as a maze with no combat, which is not what I planned initially.

Not enough experience with Flixel: I’m still rather new to Flixel, still learning what it has to offer and learning how to handle its objects. Most of my time was spent on experimenting and trial and error — which could be the blame for the time it took to get the map system working well. Game programming is nothing new to me and game programming in Flash is certainly not a new thing to me, but Flixel is still something I need to learn more of. Eventually, I’ll come up with tricks to take advantage of Flixel’s objects and come up with something in shorter time.

Portal system: The portal system works as intended, but not to what I planned. Sure, the portals will take you to the next world or to the first world when you’ve reached the maximum world, but I wanted an option to choose a specific world to teleport to. While that idea is already achieved in the game when you keep entering the portal, that idea leaves a better way to use the yellow keys. Currently, yellow keys allow you to access the portal in a world. My initial idea is to have each world contain keys to unlock every world (other than the world they are currently in). Any collected keys would actually not be carried on to other worlds. For example, I you are at world 2 and you wanted to go to world 1 or world 3, you will need to find keys to world 1 and world 3 somewhere in world 2. Those collected keys would only remain in world 2. This is the best as I can describe about my initial idea.

Sprite Details: Most objects in game are designed to make them obvious to what they represent — e.g. key. My only issue is the green block representing you — the player. I didn’t have much time to come up with a design and I couldn’t think of a design that would fit the style since there isn’t a story. So, an ordinary block (a la Odyssey) is what I thought best fits the game, and I made it green so it stands out better in every world.



I do see this game having a future. The different mechanics definitely add variation, so I would certainly develop more interesting rules. I like to hang on to the Atari 2600 + Magnavox Odyssey presentation, but with more details. A story would add meaning and thought once I come up something compelling. I really want to add enemies, even bosses, to make this game an action game with a point and life system. With enemies, you can punch and kick them and destroy them accordingly. I have an interesting idea for how the enemies are eliminated, but it’s too complicated to describe. It might be easier to explain once I post the game footage or a prototype.

So, I would definitely like to continue working on “Parallel Worlds” — under a different name. I’ll post details on Twitter, so check out my Twitter account for the latest! (@jprogman)

See you all next time!

Good start…

Posted by (twitter: @jprogman)
Friday, August 22nd, 2014 10:15 pm

I’m having a good start so far. I’ve got a game idea all planned out and I hope to get it all programmed soon. My initial plan is to make an overhead view where you move in all 8 directions (like “The Legend of Zelda” on the NES). The green block is the player’s placeholder. The pink background is also temporary, but I might use it later as a background for a world.

My idea for presentation is a graphical style of ATARI 2600 shown on top of a picture. Therefore, you see the map designed reminiscently to an ATARI game on top of a square-pixel background. Kind of like the Magnavox Odyssey with the cellophane overlay. Granted, I’m not putting details to make the game look like it’s projecting through the overlay; that would be too much work.

As of now, I’ve just started programming and got the player moving. I only got one portion of the map done; but that too is temporary. I’ll post more details on the game concept later as it is still too early to explain. Time for sleep!

Some details on what I’m using:

  • Program: FlashDevelop + Flixel Community Edition
  • Graphics: Photoshop, MS Paint
  • Audio: OpenMPT, Audiocity, Adobe Soundbooth (hoping to actually add Audio this time!)
  • Hex editor (if necessary): HxD

Just a start.

Gasha-power — Postmortem

Posted by (twitter: @jprogman)
Monday, December 23rd, 2013 6:59 pm

I believe now’s a good time to do a postmortem report on “Gasha-power.”

Good things…

Platform engine — I had done many platform games before, but most were too substandard and doesn’t really stand out from the norm. I wanted to add a few advanced, yet basic, features like accelerating speed, and enemy bouncing. (The bouncing is not perfect as you do get hurt by doing that occasionally.) Overall, it seems to work very fine, at least towards my expectations. Although, a lot more features would have probably add a little more fun.

Level design — The design was quick and simple and not too linear. I made the levels branch out a bit to add a little replay value to the game. That, and addition of two endings. It could have been longer, but too much time was spent on the programming.

Graphics — I went with low-res artwork this time to really capture the feeling of playing a platform game circa the 90’s. I find it funny that very many players compared the graphics to most Kirby games. :) I guess the graphics does have some resemblance to Kirby, but obviously wasn’t my intention. Animation wasn’t too hard, but it did cost me some time.

Programming without experience — I must admit that I had never created a platform game in Flash. So, this entry was a big risk or, appropriately, a dare. Several times, I was about to do some advanced programming to make the game more powerful, but feared doing that would take too long. Therefore, I just went for what works and simple to do. I was fortunate enough to get the entire platform game working very well, but not perfect. I still see a few “hiccups” involving the engine itself, so more work needs to be done if I decide to expand the game further.

Bad things…

Performance — It caught me without much warning. I was using Adobe Flash Professional to test my game like crazy. During those tests showed the game running at a decent speed. That was until I tested the game on the browser window when performance went very bad. It was laggy like I was using an obsolete computer. I was ashamed and embarrassed to let that sort of thing happened with no time left to fix. Fortunately, I did released a second version after the competition was over. It ran a little faster than the first, but still suffers a bit in performance. Then, a third version was released, which further improved the performance. If the game should become a failure, it would most likely be due to its performance.

Programming without experience — A good thing in one part is a bad thing in the other part. I had never worked with graphical collision detection before as I am more used to mathematics to determine collisions. While the collision works in this case, I wasn’t sure how to draw the entire level and get enemies to interact with that level. I had several ideas at the time, but many were feared to be too time consuming. What I had done was add the enemies, blocks, the player, etc. into one big object. As long as most of them don’t update when they are not on the screen, it should keep the game run well. Still, the level was too big, affecting the game’s performance. I suppose a little more practice could had helped, but at least I had “some” practice or I would had been lost for good!

No audio — I was pretty close to add audio, but the programming cost me too much time to do that. With a game like this, audio would definitely add more impression.

No particles or eyecandy — It would have add more dazzle to the game by adding effects to when an enemy was hit for example. I’m often uncontrollable for adding effects to many things and events.

Difficulty — This is just a minor setback. Some said the game’s too easy, which is understandable. Most of the enemies are too “tame”, although I originally had plans to add more of them doing different things. Personally, considering the length of the level, the game is too simple to judge if it’s easy or difficult.


Overall, this is one of my better entries, but I feared many players won’t see the game’s beauty as many had played the first two versions. Hopefully some players would still see the talent and hard work put within 48 hours into development. The game have some elements that fit the theme, but I’ll leave it up to you to look closely at it.

Despite what many people said about platform games in general, I plan to create a full platform game much like the one I just made. Until next time!

Thank you very much for those who had rated this game! :) If you still haven’t let, don’t hesitate to rate!

Play the game here!

Bonus: here are some of my work on paper:

Draft work #1

Draft work #1

Draft work #2

Draft work #2

Gasha-power — Faster… again!

Posted by (twitter: @jprogman)
Saturday, December 21st, 2013 1:26 am


Heh, wow then. I never through I would post a new version in a short time frame as my second version. This time, with confidence, the third version of “Gasha-power” performs a lot more better than the previous versions. I’m hoping this version fully addressed the lag for good.

Meanwhile, I’m preparing a post-mortem for “Gasha-power.” Stick around for that very soon!

Waiting ever so patiently…


Gasha-power — Faster now (v3)

Posted by (twitter: @jprogman)
Friday, December 20th, 2013 1:09 pm


UPDATE: There’s now a third version of this game that should address the performance issue for good. This message is referring to the second version that partially resolved the performance issue, but it wasn’t fully fixed. Here’s the original message:

I have managed to get the game to run more faster than before. Turns out to be less complicated than first through. Regardless, this game is not efficient still. Although, it is running faster and less laggy than before. This will have to do for this entry. Next time, I will put more work toward my next Flash platformer to make it run more efficiently.

What I had done to make the game faster is actually quite simple but not obvious: the entire level was caching as a bitmap. That is the main reason for the lag. The second reason is having certain objects NOT caching as bitmap. One are the blocks. Another are the enemies.

Also, I had dropped the frame rate from 60hz to 50hz as a precaution to compensate the large objects loaded onto the stage.

Hopefully this game now runs fast enough to make it more playable. Be sure to (re)try the game out!

Gasha-power’s performance problem — seeking help

Posted by (twitter: @jprogman)
Tuesday, December 17th, 2013 11:14 pm


My entry, “Gasha-power,” is one of my better works that I’ve done since I first participated Ludum Dare. This is my first time making a platform game with Flash, so there were a lot of “risks” to focus on getting things done instead of getting things done properly. While the game runs well during development, playing it on a web browser turned it all around for the worse. I would like to find the solution to that flaw to make the game more easier to run.

If any of you who have done Flash platformers, it would be nice to find out what have you done to make it work.

I think the reason for the lag could be from of the following reasons:

  1. Moving the entire level across the stage. There’s a Movie Clip that has the level’s assets like enemies, blocks, capsules… everything. What I’ve done is setting that Movie Clip’s x/y position
  2. Trying to cache certain objects as bitmaps when I shouldn’t. In general, caching did work on making Flash apps perform faster. But I heard that it actually reduces the performance if it is used incorrectly.
  3. Scaled the level to 200% to make the level two square-pixels bigger. Maybe doing that made processing more consuming.

I’ve provided the original source code of this game included with comments and details. (My second upload of the source code is a lot more cleaner than the first.) I appreciate any help from other Flash devs out there! 😀


I name it: Gasha-power

Posted by (twitter: @jprogman)
Sunday, December 15th, 2013 8:13 pm

Gashapons and Power-ups makes “Gasha-power” at the very last hour, hehe. While I’m glad I got the game working, I’m somewhat disappointing on it’s performance. I can’t be the one to judge, but I’m glad that it’s done and in working order.

It’s a first for me to develop a platform game for the first time on Flash. I’ve done Flash programming before, but not for making platform games. This is a shot in the dark as I didn’t take time to look into how to develop platform games with Flash. I’ll give this game some time and wait for the public’s response.

Here’s my entry. Do not hesitate to rate!

In-game screenshot 1

Early Progress — Pixel Sprite, etc.

Posted by (twitter: @jprogman)
Friday, December 13th, 2013 11:25 pm

Here’s what I’ve done so far:

*A simple platform engine

*Protagonist pixel sprite…


I’m attempting a run-and-jump platform game, hopefully something similar to Super Mario Bros in terms of the platform engine. I’ll think of how the game fits the theme shortly!

At the last minute…

Posted by (twitter: @jprogman)
Friday, August 23rd, 2013 5:57 pm

I’ll give this a go. I’ve done this last year with the theme of “Evolution.”

This time, I plan to develop the game in Flash. This should help me get more triers and responses.

  • CODE: Flash (CS5), Actionscript 3
  • IMAGE: Photoshop (CS5), MS Paint
  • MISC: Notepad, HxD Hex Editor
  • AUDIO: Soundbooth (CS5), OpenMPT

I’m not sure if I’ll take the time to add audio, but just in case, I’ll be using the following files:




Wish everyone best of luck!

Suggestion for next compo

Posted by (twitter: @jprogman)
Tuesday, September 11th, 2012 7:42 pm

After playing several entry games, an idea had popped up in my head: is there a way I could randomly select a game to play? It would sound like a nice feature to have so if I’m looking for an entered game to play, why not be randomly selected? Of course, having one game drawn randomly shouldn’t interfere with other categories like “default”, “least ratings,” and “most coolness.”

So, “randomly select a game”, nay or yay?

[cache: storing page]