First

Original SourceEnergon Absorber
Author: Numeron
Links: Original Post, Enhanced executable version
Language: Java

All along your childhood you heard legends talk about the legendary big $100 gold coin being held in the third basement of the magic zombie infested wherevers that lie below the town’s chapel. Today, in your 18th birthday, you have decided to retrieve it and prove yourself a man.

As you descend into the unholy depths you notice a Zombie is chasing you around! the worst of your nightmares has come true, and the only way to escape will be recovering all the pieces of the gold key.

 
Found da coin!

In the end, you found the great big gold coin, but what did you win? you just became a Zombie and will chase whoever is fool enough to seek the cursed coin!

Original program used standard java output plus a frame to obtain user input; another dev later replaced IO handling for usage of libjcsi, making it look and feel much better.

This entry stands in the complexity midpoint of the rest of entries; while gameplay is not trivial (ie, you can unwillingly lose the game and there is a goal), it isn’t complex enough to be fun; more levels, obstacles inside them and scoring could have aided.

Gameplay: Unchallenging but existant, not too fun
Technical Highlights: It works as a game!

First

SourceAuthor: Nate879
Website:Link
Language: C

I promised I would review all of the entries, so here goes.

Not much to say about this one, it is a tech demo of what can be done in 1KB of source code; you can basically walk around the map and kill orcs. There is no score nor winning condition, the author said he may enhance it a bit later on.

After killing all orcs

Gameplay: None
Technical Highlights: Not really more than walk on the map, but try to do it yourself! 🙂

First

SourceIt’s Extremely Dark
Author: Deveah
Location: Usenet Post, Pastie Snippet
Language: Freebasic

It’s extremely dark, you can’t even see yourself.

With each step you take, you are likely to be eaten by a grue, or may be eat a grue.

You stumble around the dungeon aimlessly, bumping into walls and blindly hacking through angry mobs, trying to find the stairs, right?

so dark...

… or may be this is just an illusion, and this entry is just not what you expected, eh? 😀

A joke or not, Deveah’s entry makes us wonder what a roguelike really is… do you wander around looking for enemies, artifacts and highscore or do you just advance through, hoping for a sane victory? your rush for blood and gold diminishes your odds of surviving; this is what this game is about, this is what roguelikes are mostly about.

yahoo!

(If you are lost, just read the scroll in the darkness)

Gameplay: Just play with the odds like you are used to
Technical Highlights: Nice play!

First

SourceC# <1kB RogueLike v3
Author
: Nick Coughlin
Website: Link
Language
: C#

After recovering the amulet of Yendor, Rodney itself appears and punishes Slash, throwing him into a the Void Infinite Dungeon of the Minotaurs. Here he must get the one sacred last piece of gold, his last hope of survival.

Winning...

This is more of a tech demo than a game; the world is generated on the fly, monsters are too predicable and come in too small quantities to pose a challenge, there is no score either.

Gameplay: None
Technical Highlights: World generation on the fly

First

Oh Rats!
Author
:
BlackEye
Website:
Link
Language
:
FreeBasic

Oh… RATS!

Here and everywhere… after being thrown to the dungeons by the evil Vizier Jaffar you must seek a way out, will there be a way out?

As you climb the dungeon more and more ravenous rats appear. Where did so many rats come from?

These rats will stop at nothing to take a bite out of you, even resorting to cannibalism if the situation is right…  is this some kind of terrible dark spell? Your fate is sealed… will you kill enough rats to meet your archenemy?

OMFG, Rats!

A noble death

Oh Rats! is all about planning your first moves once you get a new level. The game becomes interesting from level 5 onward, when you are swarmed by rats and must be wise in your moves to take the less possible damage.  It is fun and challenging, and having no winning condition but scoring makes it open and interesting.

Gameplay: Challenging, Critical moments
Technical Highlights: Lots of enemies

First

Source Code IncludedBerserker Troll Hunt
Author
: konijn_
Website: http://hellband.googlepages.com/1kb.html
Language: Javascript

Rage! that is all you feel deep inside your mind. Your head burns at the memory of your town being brought to ashes by the legions of nasty trolls that just appeared. Your parents are dead and your are left defenseless, a child amidst a wrecked town full of monstruous trolls.

What is this you feel inside your veins… why does your mind wanders in visages of chaos and destruction… you are just a harmless child aren’t you?

You open your eyes, a Troll is next to you, tenths more are behind, You open your eyes again. Blood everywhere, your rampaging punch stuck into a rock, all Trolls destroyed without a chance.

Rage! that is all you feel deep inside your mind.

Winning

Berserker Troll Hunt is a simple game, (you can’t lose once you get the hang out of it, except if the RNG spawns you next to a Troll, YASD). Move around with the numpad, use ‘b’ + direction to berserk and destroy all Trolls in your path (this only works when a Troll is next to you). Destroy all the trolls and score one point, let them bash you and they get one. The bloody vicious circle never ends.

As a technically achievement, well, javascript is not specially well suited for a roguelike, specially a “small” roguelike, so it is impressive to me. Also it will run with recent versions of Firefox and Exploder.

Gameplay: Repetitive, No Score Goal (A turn count would have sufficed)
Technical Highlights: Lots of enemies chasing you, non-traditional language, non-trivial skill

First

Crunched Source CodeOoooorrrrcs!
Author
: Jakub Debski
Website: http://www.alamak0ta.republika.pl/orcs.html
Language: C++

Grievously wounded after retrieving the famed +3 Crystal Crown of the Orc from the perilous orcish mines you find yourself trapped in a valley of death. Millions of orcs of all kinds to the west, a moonlit darkness to the west into the lands of man. It is time to run, you are being hunted!

A basic, yet challenging game, Ooooorrrrcs puts you in the place of an unlucky adventurer who must go west, west and beyond. The horde of grizzly orcs currently pushes forward (thus you dont even Dare to go back), your motion is all forward by reflex. Some power up herbs and some scattered orc weaklings will let you build your forces and phasedoor yourself into freedom, step by step your blood stains the ground and your strengths fade away. Will you make it?

I will survive

After THE-HECK-OF-A-LONG run, the brave hero: Slash the Orc Slasher, survived, got to his hometown and stored the valuable artifact on his collection!

Gameplay: Challenging, addictive
Technical Highlights: Non trivial combat, map scrolling to the left, spells, collision resolution.

First

So, the First <1KBRL Challenge is over.

A total of 14 entries were produced

You may think it is pointless to make efforts to work a game on less than 1KB of source code nowadays… if i am a bit possitive, the best you could think would be “hey, it’s fun for the developer… let him be!” or “well, thats a pretty cool way to waste whatever work could go into a REAL game”.

I have news for you, and I can’t really explain it. The entries you are about to be reviewed have something, may be having such restriction in the quantity of code to create “playability” makes the developer of the game do what really matters into the game, no place for plot, no place for the simplest of effects, no place for munchkinism, no place for cool, complex algorithms or a full-live-world simulation. It is all about The Game.

I didn’t have the pleasure of living through the ages of classic gaming, but I think this is as close as I can get. My best guess (and great hope) is things were like this before. It is a shame everything has changed so much (natural de-evolution, one day soon we will be able to play games like these <1KBRLs inside a “real”, photorealistic videogame).

Play the games, you will really enjoy them. Also, be sure to tell the author he rocks, and fight with your friends for the highest score or equivalent. Use the roguetemple forums when needed.

So, without further ado, I announce the start of the 1st <1KBRL Challenge reviewing cycle, which start with an really interesting entry: Ooooorrrrcs!

First

The crazy “denziens” of rec.games.roguelike.development have announced the new, sadistic challenge of writing a roguelike in less than 1KibiBytes of source code!

Here goes some samples, proceed to rgrd to see more and submit yours!:

LUCK by “yours truly” (Java)

import sz.csi.jcurses.JCursesConsoleInterface;public class X{static
int xr,yr,xp,yp,xs,ys,xo,yo,v,r,i,e=300,s;static boolean map[][]=new
boolean[20][20];static int r(){return (int)(Math.random()*19.0d);}public
static void main(String[] p){while (i < 20){map[r()][r()]=true;i++;}c.cls();
p(21,1,”Slash1KBRL - LUCK :)!”);o:while(true){if(xo==xp&yo==yp)
{xo=21+v;yo=3;r++;}if(xs==xp&ys==yp){xs=r();ys=r();xp=r();yp=r();
xo=r();yo=r();v++;}yr=0;while(yr<20){xr=0;while(xr<20){p(yr,
xr,map[xr][yr]?”#”:”.”);xr++;}yr++;}p(2,22,”L”+v+” R”+r+” E”+e+”  “);
p(xp,yp,”@”);p(xs,ys,”>”);p(xo,yo,”)”);switch(c.inkey().code){case 112:
yp–;break;case 108:yp++;break;case 90:xp–;break;case 93:xp++;
break;case 40:break o;}e–;if(e==0){p(2,23,”LOST”);break o;}if(v==20)
{s=10-r;if(s>0)p(2,23,”LOSER”);else p(2,23,”WON “+s);break o;}}}
static JCursesConsoleInterface c = new JCursesConsoleInterface();
static void p(int x,int y,String m){c.print(x, y, m);}}

Pink Warrior, by Jurgen Lerch

PROGRAM p;USES Graph;CONST c=319;l=199;f=15;VAR
k:CHAR;d:ARRAY[0..c,0..l]OF SMALLINT;w,z:ARRAY[0..11]OF SMALLINT;
n,u,v,x,y:SMALLINT;BEGIN x:=f;y:=30001;InitGraph(x,y,'');
FOR x:=0 TO c DO BEGIN d[x,0]:=f;d[x,l]:=f END;FOR y:=0 TO l DO BEGIN
d[0,y]:=f;d[c,y]:=f END;FOR n:=0 TO 3456 DO d[Random(c),Random(l)]:=f;
FOR n:=0 TO 11 DO BEGIN w[n]:=Random(c);z[n]:=Random(l) END;
FOR x:=0 TO c DO FOR y:=0 TO l DO PutPixel(x,y,d[x,y]);
x:=160;y:=100;PutPixel(x,y,13);REPEAT Read(k);PutPixel(x,y,0);
CASE k OF'8':IF d[x,y-1]<>f THEN DEC(y);'2':IF d[x,y+1]<>f THEN INC(y);
'4':IF d[x-1,y]<>f THEN DEC(x);'6':IF d[x+1,y]<>f THEN INC(x);
END;FOR n:=0 TO 11 DO IF(x=w[n])AND(y=z[n])THEN w[n]:=-1;
PutPixel(x,y,13);FOR n:=0 TO 11 DO BEGIN u:=w[n];v:=z[n];IF u>0 THEN
BEGIN PutPixel(u,v,0);CASE Random(4)OF 0:IF d[u,v-1]<>f THEN DEC(z[n]);
1:IF d[u,v+1]<>f THEN INC(z[n]);2:IF d[u-1,v]<>f THEN DEC(w[n]);
3:IF d[u+1,v]<>f THEN INC(w[n]);END;PutPixel(w[n],z[n],4);IF(w[n]=x)
AND(z[n]=y)THEN k:=#27;END END;UNTIL k=#27;CloseGraph;END.

Energon Absorber by Numeron

class M{static char m[][]=new char[10][10];static int 
k,X=5,Y=5,x,y,a,b,s,t,e=10;public static void main(String[] A)throws 
Exception{for(;y<10;y++)for(x=0;x<10;x++){if(m[x][y]!='e'){m[x] 
[y]='.';if(Math.random()<.1&&e>0&&!(x==5&&y==5)){m[x] 
[y]='e';e--;}}if(x==9&&y==9&&e>0)x=y=0;}m[X][Y]='@';while(true) 
{e=0;for(y=0;y<m[0].length;y++){for(x=0;x<m.length;x++) 
{System.out.print(m[x][y]);if(m[x][y]=='e')e+ 
+;}System.out.println();}if(e!=0)System.out.println("t:"+t+"  e:"+e 
+"n");else System.out.println("U Win! t:"+t 
+"n");k=System.in.read();if(e==0)System.exit(0);m[X] 
[Y]='.';if(k==50&&Y!=9){Y++;if(e!=0)t++;}if(k==52&&X!=0){X--;if(e!=0)t+ 
+;}if(k==54&&X!=9){X++;if(e!=0)t++;}if(k==56&&Y!=0){Y--;if(e!=0)t+ 
+;}m[X][Y]='@';}}}

Eat your stone soup, August Crawl Tournament

The dudes at crawl.akrasiac.org have announced a public tournament to take place during the month of August! It is time to prove your dungeon crawling skills against talented crawlers from all around the world!

Hello everyone! With help from a cast of characters always growing and always awesome, I’m putting together the first Crawl tournament in the style of various nethack tournaments, including the /dev/null network tournament and Eidolos’s June tournaments. Here are the basics:

* You play as many games as you want for the entirety of August.
* Wins get you meta-points, especially for the fastest or first or streaks.
* High scores in race/class combinations get you meta-points, especially if you have the most of them.
* Getting runes and killing uniques also get you meta-points, so you don’t need to be a Crawl Champion to get your name up on the scoreboard.
* Clans of six players or less are encouraged and clans have their own special additional meta-points to determine which clan wins.
* There should be at least one server in the US and at least one in Europe; if you’re interested in hosting a server, please send me email.

You don’t need to do anything to sign up other than play on CAO. When there is specific information about the exact start/end times, specific information about clan memberships, and a webpage with the current status of “Who’s winning each prize?,” I’ll post again. If it tempts you at all, there will be actual, physical, you-not-your-character can touch them prizes. 🙂

The tournament has started, you are still on time to get in! Go to Crawl at akrasiac.org

Also, join roguetemple’s clan and fight for glory and fame!