About jovoc (twitter: @joeld42)

I've been participating in LudumDare since LD#1 way back in 2002! I've worked in Visual Effects & Animation (ILM, Tippett, Disney), in Game Dev (EA), and am now working at Smule making mobile musical experiences.

I started Tapnik (www.tapnik.com) as a side project and hobby business, and have released several apps and games: The Brainstormer, Droppyship, Planet Minesweeper, and More!

Follow me on twitter, @joeld42

Ludum Dare (and similar contest) entries:
* LD26: Minimalism -- Minimum RPG
* LD25: You Are The Villian -- Evil Lair (in Dartlang!)
* LD24: Evolution -- EvoWord
* LD20: It's Dangerous to go alone -- Take This (3d voxel zelda)
* LD19 Discovery -- Planet Thing
* LD18 Enemies as Weapons -- Iron Reflex
* LD17: Islands -- Crater Galapagos
* LD15: Caverns -- Spaceship in a Cave
* LD14: Advancing Wall of Doom -- Glacier
* LD13: Roads -- Crossroads
* LD12: The Tower -- Moonbase Defense
* LD11: Minimalist -- Cowbell Hero
* LD10: Chain Reaction -- Jumping Chain Guy (barely started)
* LD8: Swarms -- Bugzapper
* LD7: Growth -- Kudzu Commander
* LD5: Random -- Buttonlands
* LD4: Infection -- Bad Food (2nd try)
* LD4: Infection -- BioWar (abandoned)
* LD3: Preparation -- Hannibal's Cannibals (lost the code)
* LD2: Construction/Destruction (Minor Theme: Sheep) -- Trans-Icelandic Express
* LD1: Guardian -- Zillagame (the game that started it all for me)
* LD0: Indirect Interaction (I didn't know about LD yet)
* MiniLD16: Constraints -- Moonsweeper
* MiniLD11: Sandbox -- The Wanderer
* MiniLD9: Audio/Sound -- JamClock
* Speedhack 2003 - Outlands (my first allegro game)
* LudumDare Halloween Hack 2003 - The Halloween Machine
* TINS2006 - Railroad Merchant aka Merchant of Venus
* TINS2007 - Headline Recycler

The code (it's quite a mess) for all of these can be found at my ludumdare code dump on github:

Also, I made a game engine (mostly for iPhone, supports desktop GL with some hacking):
It's terribly incomplete, buggy and totally undocumented. Don't use it! But I built Droppyship with it in a week or two so it can't be all bad, I guess...


Ludum Dare 37
Ludum Dare 36
Ludum Dare 33
Ludum Dare 32
Ludum Dare 31
Ludum Dare 30
Ludum Dare 26
Ludum Dare 25
Ludum Dare 24
Ludum Dare 22
Ludum Dare 20
Ludum Dare 19
Ludum Dare 18
Ludum Dare 17
Ludum Dare 15

jovoc's Trophies

The Christopher Walken Award for Hilarity
Awarded by keeyai
on April 24, 2008



Sophie Houlden says ...

|Actually alot more fun than I thought it would be, though the only reason I got as far as I did was by exploiting a bug where I could stack letters I dont want underneath actual words. still a pretty cool concept and well done though :D

Doches says ...

Nice concept, and a pretty slick implementation. Could really benefit from some music, though.

increpare says ...

Good idea, I think. Reasonably well put together. My screen cursor was sometimes out of alignment with the hardware cursor, and it was annoying that when I dragged a new letter over an existing letter on the board, the the old one wasn't returned to the stack. Lack of sound was a minus, though.

crc says ...

Liked: Idea, fun, polished presentation, Journal

Could Improve on: Interface (Level Restart, On-Screen help), Mouse cursor off in the main version (800x600 worked)


Hamumu says ...

Really nice. The theme is utterly tacked on, actually to the game's detriment - the car driving on your letters is really cute, but having to wait for it to get to the exit once you finish is just a needless pain. But a cool game.

I agree with others about the letters getting overwritten. It's a sad thing, I want those letters back (and force people to use up their Z's and Qu's!).

Also.... 800x600 is for laptops!? The full size version was too big on my 1280x1024 monitor! It was 1280x1024, it looks like. That's nuts. Of course, it would've been fine fullscreen, but sheesh.

demonpants says ...

Really very good. I played this for 3 hours. Got to the very end of Grid (which took 2 hours on its own), went to download a screen capture program so I could have proof (right before I put my final word in, and I don't have a print screen button), and it quit. No error message, nothing, just quit. Awesome.

Well, was there another level after Grid? I'm not getting there again. :-)

The concept here is really cool, car excluded. The vehicle itself is pretty pointless.

A couple bugs:
1) What I just mentioned.
2) You could overlap letters on the board with new letters, and only the topmost letter would be used for the word. GirlFlash mentioned it already, and I agree the game is impossible without this bug.
3) While dragging a letter out if your mouse moved over another letter it would switch to that letter, which can be really annoying.

A few suggestions for improvement:
1) Add a "drop letter" option. Like when you play a word, any letters you have marked to be dropped will also be pulled out. Without this (or the bug I mentioned) the game would be impossible.
2) Have more letters at one time, probably. Maybe couple that with the next suggestion.
3) Give some sort of reward when you complete two words at once, like one extra maximum letter. That would encourage people to be more creative.
4) It would also be nice to occasionally (following some condition) be able to choose one oncoming letter.

Anyway, very fun.

ondrew says ...

Although it's classic scrabble, I've been playing for hour and a half :).

caturday says ...

Cool game - clever way to turn roads into a word game. Yeah, it's scrabble, but kind of funny how the LD car gets thrown in there.

Archive for the ‘LD #13 – Roads – 2008’ Category

Better Programmer Art

Posted by (twitter: @joeld42)
Monday, December 29th, 2008 2:13 pm

Woot! My article got featured on gamedev.net:

Better Programmer Art: Or how to fake it as a game artist.

I use a lot of examples from past LD48 games (mine and others), and most of this is stuff I’ve learned through doing these contests. Ironically, in the most recent contest I didn’t have time to replace the placeholder art so it pretty much ignores all of these tips. 

Hope this is helpful to the community. Enjoy!


Crossroads – Bug Warning

Posted by (twitter: @joeld42)
Monday, December 8th, 2008 1:21 pm

My wife stayed up late last night and tried to beat “Crossroads”. But she uncovered a nefarious bug, so this is just a warning to everyone. It doesn’t show up until level 9, aka “zigzag”, but it prevents you from passing the level and if you’ve got that far that means you’ve been playing for at least an hour or so.

The bug is with non-square levels, so it only happens on levels 9 and 10 (the last two levels..). It doesn’t allow you to place words on the right half of the level so “DECIDE” (or “DEVICE”) in the screenshot above never gets added. It’s not surprising, since it’s in code I added in the last half-hour of the contest… heheh. I’ve already fixed it but I’m not going to release a post-compo version until after judging is complete to avoid confusion.

If this happens to you, and you are stuck on level 9, there is a workaround. Without closing your game, edit the file gamedata/level_09.txt and make the level square (17×17). Add ‘#’ marks (walls) to fill up the extra rows. Then
hit ‘r’ to reload. If you’ve made a typo, it will crash. Otherwise, it will reload your level and you can continue. yay. Same goes for level 10. An easier fix is to copy level_11.txt over level_09.txt and achieve victory two levels sooner.

ps. The level format is pretty simple. If you make any good levels, send them to me and i’ll include them in the post-contest version.

Final “Crossroads”

Posted by (twitter: @joeld42)
Sunday, December 7th, 2008 8:20 pm

It turned out pretty good despite much turmoil! 


It’s like scrabble or a crossword puzzle, but with more cars.

Crosswords Final

My original idea included lots of extra tiles that werent letters, like a one-way tile, and a gas-can, more letter slots, etc.. but i didn’t have time for those. Hopefully i’ll make a post-compo version next week.

Edit: added a 800×600 build for people on laptops and such.  Also fixed a last minute bug which prevented placing tiles in the first column, making the game unwinnable. 

CgFX Shader Fail

Posted by (twitter: @joeld42)
Sunday, December 7th, 2008 12:34 pm

I kept fighting with the CgFX stuff this morning, but I couldn’t get it to work. The docs make it sound like it’s as simple as calling cgGLSetupSampler( samplerParam, myTextureId ); but i can’t get it to work.  I’m sure it’s something simple but I’m running out of time.

So I’ve ripped out all the shader code (kept a backup to try to to fix it later), and am back to using regular opengl, and drawing the letters with overlays (quads) instead of fancy shader tricks. Sigh.

It’s not like I would have had time to get the shaders looking good anyways. Now that I’ve got words displayed, it’s time to try and get the gameplay going by the end of the day.

I love shaders; I hate shaders.

Posted by (twitter: @joeld42)
Sunday, December 7th, 2008 1:23 am

More progress, but not on the gameplay side. I wanted to use Cg shaders in the game this time and learn how to use fxComposer. I’ve done a lot of shader stuff before but not with CgFx and FXComposer. 

My road shader is a modified version of the default FXComposer phong shader. It works in FXComposer (on the right) but I can’t figure out how to get the second sampler (with the font image) to work in my program. Grrr.  I’m going to sleep, I’ll take a fresh look at it in the morning. A word game won’t be very fun without any visible letters. 

Pathfinding woot

Posted by (twitter: @joeld42)
Saturday, December 6th, 2008 4:22 pm

Update.. Not as much progress as I’d hoped but I still think i can get something playable today. I got car movement and pathfinding working, and more work on the maps, even though you can’t see the letters yet because there’s no texture or shading.

Also, even though it doesn’t look much different, the dark blue aand beige colored blocks are actually 3d models, i got a simple obj loader in there. Next up… letters


Posted by (twitter: @joeld42)
Saturday, December 6th, 2008 1:20 am

Ok, I decided on a much simpler idea than I was thinking about in the earlier post. Whew..  This one i have a chance of completeing.

It’s called “Crossroads”. Get it? Crosswords + Roads.. heheh.. It’s not really going to be crosswords, more like scrabble, but close enough. Anyways, I’ve got the beginnings of the board worked out. I love word games, and I’ve always been meaning to make one for LD, the closest I’ve gotten is “Headline Recycler” for tins, which was really neat but not fun at all.

How do you mix roads and crosswords? well.. wait and see..

Anyways, It’s 1:20 am here,  not too late, but I’m hoping to get an early start on the gameplay tommorow. Goodnight all.


Desk Photo

Posted by (twitter: @joeld42)
Friday, December 5th, 2008 9:15 pm

Well, here’s my desk photo. A little messy but functional. Along with my LD mascot Holly. Believe it or not, this is her 3rd LD contest!


I’ve got mixed feelings about the theme. I’ve got a really good idea I think, but it’s really complicated and again more of a graphicsy idea than a gameplay idea. But I think I might go for it, next week the wife and baby are out of town so i might actually have a chance to make a post-compo version.. I’m going to start sketching out the design and decide if it’s “ambitous” or “impossible”.

I want to go to there.

Posted by (twitter: @joeld42)
Friday, December 5th, 2008 4:25 pm

I’m in! I’m going to try my hardest to keep it simple and fun, but the ideas I have already are way off on the complexity scale… but whatever happens i’ll do something. Should be fun!

oh and here’s my basecode:

int main( int argc, char *argv[] ) { return 0; }

[cache: storing page]