Monthly Archives: August 2008

First <1KBRL Challenge Entries: C# <1kB RogueLike v3

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 <1KBRL Challenge Entries: Oh Rats!

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 <1KBRL Challenge Entries: Berserker Troll Hunt

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 <1KBRL Challenge Entries: Oooorrrrcs!

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 <1KBRL Challenge

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!

Releases Wire XX

LambdaRogue 1.1

Sorry for posting updates so often, but this release fixes some serious bugs that may lead to crashes; one of them only on Windows.

Privateer 0.3.8.1

- Added new Quine for purchase in the equipment shop.
– You can now access your Quine while viewing a computer terminal.
– Did a whole bunch of stuff related to the upcoming quest scripting.

Ironband 14Aug08

I now consider Ironband ‘complete’ – it is fully playable and a lot of fun. I have no further plans for changes any time soon, though I will still take bug reports, suggestions and feedback

Tombs of the Asciiroth 0.5.1

Tombs of the Asciiroth is a puzzle/RPG/roguelike game that you can either play in a web browser, or download as an application using the Adobe AIR runtime (available on Mac, Windows and Linux). The game is complete and playable, and there’s a map editor to create new scenarios

gTile 0.0.1

This is an alpha release of a graphical roguelike implemented in Javascript and DHTML. It will perform best in Firefox or Safari, but Internet Explorer (including version 6!) is also supported.

Lords of DarkHall 1.1.97

Thank you for the kind comments and for taking time out to try my hobby project. And thank you to those people who take the time to program their own roguelikes as well. I really enjoy playing these and seeing the creativity that other people have.

First <1kb RL Challenge

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]='@';}}}

LambdaRogue 1.0.0, 2 years!

birthday of lambda rogueMr. Mario Donick has released the 1.0.0 milestone of his project, LambdaRogue, to commemorate two years into the project. Happy birthday LambdaRogue!

Over two years have passed since I started to develop a small little program where an @ could be moved on the screen. After lots of unfinished versions with lots of bugs and problems, and after a break of nearly one year, I again accelerated the development process, which resulted in the 0.3 tree in early 2008.

To celebrate the 2nd birthday of my project, I decided to give the next “big” release the version number 1.0, because the version improves again many things and makes everything more stable and polished.

Now, I am happy to announce the release of LambdaRogue 1.0.