About Thecoolestnerdguy


Ludum Dare 28

Thecoolestnerdguy's Trophies

The Guy That is my COPY award
Awarded by FelipeTavares
on April 4, 2013

Thecoolestnerdguy's Archive

var imIn = haveEnoughTime ? “Sure!” : “Nope.”;

Thursday, April 24th, 2014 5:49 am

I pretty much feel obligated to do an “I’m in” post.

This weekend reeeally isn’t what I would call an ideal weekend for a LD, but let’s go!


Not much has changed on my toolset since last LD:

IDE/Editor: Gedit  and/or Komodo.

Language: Javascript

Platform: HTML5 (FTW)!

Browser: Chrome, obviously! I might test the game in other browsers before publishing, tho.

Os: Ubuntu 13.10

Engines/frameworks/libraries: I might use any of these frameworks/libraries, depending on the situation:

Music/sfx: FamitrackerBfxr, Freesound.org and maybe Garageband.

Let's make some chiptunes already!

Let’s make some chiptunes already!


Gfx: Graphics? Whaaat are those?

Well, as I suck at any kind of visual art, I’ll probably make a game with squares, circles and triangles for graphics (probably circles tho, circle collision is way easier to solve). If I ever consider to any “real” art, I’ll probably use Gimp.


Programmer art...

Who wants some programmer art? I don’t. And yes, that is a house.


File hosting: Dropbox . I can’t live without Dropbox. Seriously, Dropbox. Need it!

Version control: WTF is this?


These are the configurations of my <sarcasm> super beefy computer </sarcasm>:

  • 1.8 ghz Intel pentium dual core
  • 1 GB of ram.
  • Intel GMA integrated GPU (super mega old).
  • 500 GB Samsung hard drive.


Sorry, not enough time to make a cool VGM playlist this time…

As a compensation, enjoy a picture of my workspace:




Looks familiar?


I’ve made a game in 72 hours! Isn’t that awesome?

Oh boy! Now I feel SO motivated to make another game!

My game is called Round toe, and it’s basically tic-tac-toe, but you only get circles, forcing you to memorize where you placed stuff (you can play it here).

This was my third LD, and the first where I actually finished something.

Again, my main problem was getting confident  on an idea. I switched ideas and started from scratch two or three times during this 72h period.

I’ve had a lot of trouble trying to have an idea of a game that would fit the theme, be fun to play, fit the theme and at the same time wouldn’t require many art skills.

When I had an idea I was confident about, I hadn’t much problem implementing it.


Based on my experiences in this LD, I’ve made a list of things to keep in mind on future LDs and other game jams:

  • Think about the themes in the final round when it pops up, so you can have some idea of what you’re going to do.
  • Participate on the warmup weekend, even if you’re writing everything from scratch. Helps to keep your inner programmer happy.
  • Dedicate more time to music. Music really helps in the mood, which really helps in the overall rating.
  • Working on teams can be more productive. Even if it isn’t, it’s way more fun, for sure.
  • Next time, use TweenJS (or some other tween library).  Tween movements looks cool, but they take a lot of time to implement, specially if you’re doing some DRY code.
  • Next time, use PixiJS or Three.js. Even if you’re making a simple 2D game, they allow you to use shaders and materials, which make the game look way more interesting.
  • Procedural level generation rules!
  • Don’t be afraid of making a crappy game. Making a crappy on is way better than making no one.
  • Rate other games soon as possible!
  • Git can be kinda time expensive to setup, but it will save your life sometimes.
  • Functional coding rules!
  • Once you have an idea that sounds at least decent, stick to it! Even if it’s bad, it can almost look good if you still have time to polish it.
  • Trig. Love it! Use it! Everywhere!
  • Figure out what’s wrong with the way you’re getting mouse coordinates and why it doesn’t work on Firefox.
  • Be more social. Post about progress in your game. Comment on people’s posts about their game’s progress.
  • Have more fun!


I think that’s all! See ya in the next LD (or Mini LD, or whatever).



In? Sure! Making a game? Maaaybe…

Tuesday, December 10th, 2013 7:51 am

After several failures and setbacks, I’m determinated to finish a game this time.

With a lot more experience under my belt and tons more motivation I’m pretty sure I still doubt I can make it, but I have to try!

I still don’t know how much work time I’ll have, but I’m guessing I’ll have at least 24 hours, which is enough, I think.


Challange considered



IDE: Komodo Edit (I love komodo, but It’s so freaking slow!)

Language: Javascript

Platform: HTML5 FTW!

Browser: Chrome obviously! I might test the game in other browsers before publishing, tho.

Os: Ubuntu. I’m still using 12.04…

Engines/frameworks/libraries: I might use any of these frameworks/libraries, but I’ll probably write everything from scratch:

Music/sfx: Famitracker, Bfxr and maybe Garageband.

Let's make some chiptunes already!

Let’s make some chiptunes already!


Gfx: Graphics? Whaaat are those?

Well, as I suck at any kind of visual art, I’ll probably make a game with squares, circles and triangles for graphics (probably circles tho, circle collision detection is freaking easy to do). If I ever consider to make pixel art, I’ll probably use Gimp.


Programmer art...

Who wants some programmer art? I don’t. And yes, that is a house.


File hosting: Dropbox . I can’t live without Dropbox. Seriously, Dropbox. I need it!

Version control: I might try to learn how to use Git until friday. Otherwise…


These are the configurations of my <sarcasm> super beefy computer </sarcasm>:

  • 1.8 ghz Intel pentium dual core
  • 1 GB of ram.
  • Intel GMA integrated GPU (super mega old).
  • 500 GB samsung hard drive.


Last, and most importantly, an overview of my SUPER ULTRA MEGA LD 28 VGM PLAYLIST!

  • Castlevania Bloodlines soundtrack. Length: 32 min. Commentary: I love Castlevania music and I love FM synths. You can probably guess I love this soundtrack.
  • Thunder force IV soundtrack. Length: 96 min. Commentary: I found about this game last week, and I’m loving the soundtrack. The FM drums are specially great! Why people used PCM drums on the Genesis so much? I don’t know, after all FM drums rock!
  • Super C soundtrack. Length: 16 min. Commentary: This soundtrack is genius. Seriously! The way they use the DMC channel to play “orchestra hits” is also pretty clever!
  • Gimmick! Soundtrack. Length: 28 min. Commentary: This is also a very clever soundtrack. It uses the DMC channel to play bass sound, à la Sunsoft.
  • Tower of heaven soundtrack. Length: 16 min. Commentary: I love this soundtrack. It’s not real chiptune, but it really reassembles the limitations those soundchips had. Another thing I love about it is that every song is based on the same theme, so, you hear the same theme and melodies all over the soundtrack. That can be pretty annoying if you didn’t like the main theme, but that’s not my case.
  • Castlevania (NES) soundtrack. Length: 16 min. Commentary: A classic. If you’ve not heard it, shame on you! Prog rock FTW!
  • Castlevania Symphony of the Night soundtrack. Length: 68 min. Commentary: I LOVE this soundtrack. The two things that make this soundtrack special for me are the sound quality and variety. It goes from metal to punk, then it goes to emo, then t to prog, then to latin music, then to baroque… It’s NUTS!
  • Castlevania (NES) full OST piano cover. Length: 19 min. Commentary: Listening to this soundtrack never is too much, specially when so cleverly arranged!
  • Ninja Gaiden (NES) soundtrack. Length: 55 min. Commentary: I didn’t play much of this game or listen to the soundtrack, but, from what I heard, I can see it’s awesome.
  • Sonic 3 & Knuckles soundtrack. Length: 87 min. Commentary: This had to be in my list. I think it’s already clear to the reader that I absolutely love FM synths. Now, to that FM synth love, add great compositions, clever use of the YM2612 chip, well over one hour of length and the nostalgia factor… I love it!
  • Sonic 2 soundtrack (Genesis). Length: 39 min. Commentary: Sonic 2 isn’t one of my favorites, neither is it’s music, but it’s still freaking good.
  • Sonic CD soundtrack (Japan). Length: 42 min. Commentary: I didn’t play much of this game or hear the soundtrack, but I know it’s awesome.
  • Sonic CD soundtrack (US). Length: 51 min. Commentary: Awesome as the japanese version (stop arguing which one is the best you fanboy!)
  • Silver surfer (NES) soundtrack. Length: 14 min. Commentary: This is the genius of the genius. Definetely on my top 5 NES soundtracks. I’m still being completely blown away every time I open the NSF on Famitracker! The Follin brothers used SO many tricks at the same time! They really mastered the art of chiptune.
  • Time Trax (Genesis) soundtrack. Length: 27 min. Commentary: The only Genesis game to feature music by Tim Follin. Sadly, it has never been released. But the soundtrack is still awesome. What would you expect from the Follin bros?
  • Castlevania Circle of the Moon soundtrack. Length: 23 min. Commentary: This soundtrack is also great. I really love how the GBA is basicaly a portable SNES but with much more horsepower.
  • Castlevania Curse of Darkness soundtrack. Length: 145 min. Commentary: Never played the game. Or heard the soundtrack. But it’s Castlevania! C’mon, it can’t be bad!
  • Mega man 2 soundtrack. Length: 24 min. Commentary: My favorite Mega man game. Also one of my favorite soundtracks! The songs are rather simple compared with it’s succesors, but I like that.
  • Mega man 3 soundtrack. Length: 29 min. Commentary: A great game. I don’t like it that much, basicaly because I suck at it. The soundtrack shows a big technical quality jump compared to Mega man 2.
  • Super Mario Bros 1-3 soundtrack. Length: 78 min. Commentary: I’ve never been a big Mario fan, but the soundtracks are great. They definetely have a different musical style. Very cheesy and chill.
  • Super Castlevania IV and Super Turrican soundtracks. Length: 74 min. Commentary: Again, a game that I’ve not played much. I just know some songs from it, but the ones I know are awesome, so, I guess the whole soundtrack is great too. We shall see… This video also contains the Super Turrican soundtrack. Never heard about it.
  • Mega man 6 soundtrack. Length: 28 min. Commentary: I’ve heard this soundtrack a couple times, I played the game a bit and I know Yamato man is awesome, but I’m still not familiarized with it. What better that listening to the soundtrack to get familiarized with it?
  • Mega man 9 soundtrack. Length: 44 min. Commentary: I’ve heard this soundtrack a dozen times or so… It’s just gets better the more you listen to it!
  • Super Meat boy soundtrack. Length: 165 min. Commentary: Hey, it’s time for some indies! I have only two things to say about this soundtrack. Firstly: If you’ve not heard it, what’s your problem? Secondly: Danny B is a freaking genius!
  • Bastion Soundtrack. Length: 61 min. Commentary: Such a intriguing soundtrack. It has some pretty different instrumentations. I definetely recommend it. Bastion is also one of my favorite games of all time, and the first game that made me cry.
  • Sword & Sworcery LP. Length: 62 min. Commentary: This soundtrack has a very different style from the others in this list. It’s  indie rock-ish, I would say. I’ve heard it a dozen times or so, and it’s getting better every time I listen to it.
  • Cave Story soundtrack. Length: 42 min. Commentary: My favorite game of all time. Also my favorite soundtrack of all time. It just has such a huge emotional load for me.
  • PPPPPP. Length: 33 min. Commentary: SoulEye is a genius. This soundtrack is just too epic.
  • The Legend of Zelda (NES) soundtrack. Length: 8 min. Commentary: You definetely know this one. It’s a classic. It’s great, despite its technical simplicity.
  • The Binding of Isaac soundtrack. Length: 72. Commentary: Such a weird game and such a dark soundtrack. It evokes strange feelings in me.
  • Scott Pilgrim vs The world: The game soundtrack. Length: 46 min. Commentary: I freaking love Anamanaguchi. That’s all.


Wow! That’s way over 20 hours of VGM! Great!


EDIT: Show me some love for writing such a long “I’m in” post, and give me your heart (not literally, please. I don’t have the equipment needed to preserve its functionality).

Why I miserably failed at LD 26

Monday, May 6th, 2013 4:27 am

Well, some of you may have noticed (but probably didn’t) that in the last days I disappeared.

That’s because I failed at LD 26 and I was ashamed of coming back here after failing.

Why I failed at LD 26? Well:


  1. I got sick. Nothing serious but I was definetely not in the mood to make games.
  2. Motivation. I started to make my game. Then I saw what other people were making. Then I saw how my game was a crap and lost my motivation.
  3. Theme. No, I will not complain about the theme itself, but I was prepared for other kind of theme. My tools were way overkill and non apropriated for the kind of game I was aiming to make. For example: I was using Box2d in a game were nothing moves!

I think 1 was the main reason.

Well, I learned a lot actually. After 5 hours of work (that was hour 12 of LD) I thought I was done. I couldn’t think in nothing I could add or polish. And I think that’s bad, because the game wasn’t “fun”. Well, after 5 hours of work I was already burning in fever too.

Well, wish me better luck next LD.


Code base declaration

Tuesday, April 23rd, 2013 3:36 pm

Since I’m going to the jam, I think sharing my codebase is not required (right?), but anyway…

Warning: Taking a look at my code base can be very harmful, specially if you’re a good programmer.

You were advised. So, here it goes:


Messy code base


It includes:

  • Box2dWeb 2.1a
  • PreloadJs 0.3.0
  • TweenJs 0.4.0
  • My code base itself (Abstraction.js, very random name). It glues everything together. It’s kinda messy, and it’s commented in Portuguese. So, good luck if you’re trying to understand this. Some variable names are in Portuguese, some in English…

I plan to clean up and document everything, but it will be after LD 26, for sure.

If you want to have some masochist fun, try to understand this. I just not guarantee you will be sane after that.

Obligatory desktop photo

Tuesday, April 23rd, 2013 4:30 am

So, this is one of the places where potato games will come from  (click on images for larger size):


Everything here is old or antiquated.

Everything here is old or antiquated.

There's always some sheet music on my desk. In this case, Taffanel & Gaubert flute method.

There’s always some sheet music on my desk. In this case, Taffanel & Gaubert flute method.

And a (poor quality) desktop video, because desktop photos are so 2012:



Stringy madness

Monday, April 22nd, 2013 6:49 am

So, I’m making a veeery basic level editor in html5 for LD.

“Ok, what’s the matter”, you could ask. Well, as you know, level editors “generally” needs to actually save the levels.

I tried some solutions and the localStorage API seemed to be  a easy win, except for one thing: it just works with strings!

My level editor saves all the objects on the level in a gigantic array. I just needed to save that array, but how?

Four steps:


  1. Convert every property in every object in the array to a string and save them in temporary objects in a temporary array.
  2. Convert every object on the temporary array to strings.
  3. Convert the array populated with strings into a string.
  4. Save the gigantic string on localStorage.


“Well, why not use JSON.stringify with the array” you may also ask. Well, because I was getting some “circular structure” errors, and I had no patience to figure out what was causing it.

“And why this is so mad” you may finally ask. Well, because a level (with only two tiles) looks something like this:


[“{\”x\”:\”240\”,\”y\”:\”192\”,\”cell\”:\”0,0\”,\”image\”:\”[object HTMLImageElement]\”,\”imgsrc\”:\”spritesheet.png\”,\”densidade\”:\”0\”,\”friccao\”:\”0\”,\”

elasticidade\”:\”0\”,\”tipo\”:\”static\”,\”collisiongroup\”:\”solid\”,\”forma\”:\”Quadrada\”}”,”{\”x\”:\”272\”,\”y\”:\”192\”,\”cell\”:\”0,0\”,\”image\”:\”[object HTMLImageElement]\”,\”imgsrc\”:\”spritesheet.png\”,\”densidade\”:\”0\”,\”friccao\”:\”0\”,



Well, there must be a more elegant way to do this…


Potatoes FTW!

Html5 cross-browseness

Sunday, April 7th, 2013 2:08 pm

Today I deliberately used Internet Explorer…
What I wouldn’t do for browser compatibility…

Looks like Internet Explorer is finally following the trends, my html5 “tech demo” worked perfectly on IE9, including the audio (although there’s probably some delay between audio.play() and the sound actually playing, but all the browsers have this lag).

It’s cool to see that HTML5 is increasingly more cross-browser compatible.
It’s simple as that: I can open on (almost) any browser, and it works.
The only problem is that you need to have .ogg and .mp3 files to make audio work on all browsers.

Well, the performance in IE was, obviously, worst although it is playable:

  •         Chrome  21 : 68-70 fps – works perfectly
  •         Firefox 20 ( I also teste on FF 12 and 19) : 58-62 fps  – works perfectly
  •         Safari 6.0.3: 52-62 fps – works perfectly
  •         IE9: 38-40 fps – “mousedown” events don’t work, weird, have to fix it.  edit: I found the solution. It was all my fault. It’s really easy to break something on IE, just forget to put the “var” keyword before some variable declaration, and IE will think it is a global variable and BAM, you have a bug. Although it’s technically my fault, only IE Javascript interpreter thinks that way…

Now I only need to test on Opera…

Chop is in! You can’t chop out of LD26!

Wednesday, April 3rd, 2013 6:01 am

Ok, sorry for the terriblen joke with Frédéric, but anyway…

I’m in. Totally in for LD 26. No matter what happens. I just hope I’ll be prepared…

I’ll probably compete in the jam version.

Maybe one or two friends will join me in a team (programmer and artist), but probably not, so I’ll be on my own.


A little of my “backstory” :

I’m a young (less than 15 years old)  brazilian Javascript programmer. I’m trying to make a game since… ever…

I have tried to learn Python, C++, Java, Vbasic and a lot of other languanges, but I was like 7 years old…

Last year, I started to search a lot about games, specially indie games and game development. I learned A LOT.

Some months ago, I started to learn Javascript and, for the first time ever, I was understanding the tutorials! (btw, Codeacademy is awesome).

After learning Javascript, I started to look for a engine.

I tried Crafty.js, but It’s physics are kinda buggy.

Then, I tried to make a engine from scratch, but quickly gave up.

Then, last month, I started to make a engine using Box2dweb. And it turned out pretty well! I’m very happy with it.
I love indie games (specially Cave Story, SMB, VVVVVV and Bastion) , I love retro games (specially Super metroid, LOZ: ALTTP and Sonic 3 & Knucles), I love html5 (specially canvas).


Tools for the job:

Engine: My own, Box2dweb based, html5 engine.

Gfx: Gimp.

Music: Garageband.

Sfx: Garageband and SFXR.

Timelapse: ??? (Someone know a good program or bash script to make screen timelapses on linux?).

Level editor: I’m currently working on a all-purpose-editor for my engine, but It doesn’t gets done in time, I’ll use Tiled.


I’m not a good pixel artist by any means, so, expect a game with minimalistic and monochrome graphics.
I’m a musician (a flutist) and somewhat a composer, so, music is probably one of my strong sides (the other is programming).


Just a question:

LD starts at Friday 2:00 AM in the universal Greenwich time, right? On Brazil, the time zone is GMT-3. So, in Brazil LD starts at Thursday 11:00 PM ?


[cache: storing page]