LaDDDer C64 by Marco's Retrobits
A downloadable game
LADDDER - Commodore 64 - WILD
BASIC 10 Liner videogame for the Commodore 64 (also available for the Sinclair ZX Spectrum)
by Marco's Retrobits (Marco Varesio) https://retrobits.itch.io/
Laddder homepage (download/play online): https://retrobits.itch.io/lader3d
YouTube video:
English language blog: https://retrobits.altervista.org/
Italian language blog: https://somebitsofme.altervista.org
Please refer to the attached laddder.pdf file for full documentation and source code explanation.
Laddder is, as the name implies, the... er... "3D" sequel to the Lader (https://retrobits.itch.io/lader) platformer.
It's a pseudo-3D game for the Sinclair ZX Spectrum and Commodore 64 home computers, inspired by the classics 3D Monster Maze (Sinclair ZX81) and Treasure Hunt (PC/DOS).
Oddly, there are no ladders in this game.
You find yourself in a maze, which you must explore in order to find the treasures.
When you find a treasure, you'll score 1 point and will be teleported to a new maze.
Avoid being touched by the ghosts, otherwise you'll lose one life.
If you are in trouble, you can teleport to another maze, but this will cost you 1 point.
Laddder has been coded in ugBASIC (https://ugbasic.iwashere.eu/) 1.18 for the 15th Edition (2026) of the BASIC 10 Liner Contest.
Due to the size of the compiled binary for the Commodore 64, which prevents the ugBASIC runtime
- and thus the possibility of LISTing the program as required by the rules -
from being included, the Commodore 64 version is enlisted to the WILD category of the contest.
Instructions
When in the title screen, press any key to start the game.
You will be projected into a randomly generated maze. On the right side of the screen, you can see your current score "S" and remaining lives "L". A compass will help you navigate the maze.
The purpose of the game is to find the treasure chests (depicted as a yellow blocks).
Once you reach the treasure, the border will turn green, you will score 1 point and you will be teleported to a new maze to continue your quest.
Beware of the magenta ghost. The yellow border indicates that at least a ghost is in the nearby, so be careful! If you cannot escape, you can teleport to another maze, but this will cost you 1 point.
The red border indicates that the ghost got you. You'll lose a life and start again in a new maze.
Controls
e: Forward
o: Turn left
p: Turn right
t: Teleport
ugBASIC listing
0 OpDftTyInt:c=ScCms:Sc2:s=35840:ww=17:bb=102:bw=1:yy=119:mm=68:Diz AsWo:P1dt[l,o,ig]:Srp,z,s,c,yy,mm:Diu AsWo:Div AsWo:Foi=p-(3-l)*2Top:u=s+i*c:v=u+22:z=u+11-(3-l)-o*(2*(l=3)+6*(l=2)+12*(l=1)+20*(l=0)):Foj=0To(3-l)*2:Ifz>=u Anz<=v Th:Ifig Th:Poz,mm:El
1 Poz,yy:Ei:Ei:INC z:Nx:Nx:EePrb:dn="WSEN":Didx()AsSgndBy=#{-1,0,1,0}:Didy()AsSgndBy=#{0,1,0,-1}:Dif(4,3)=#{0,22,4,4,18,4,8,14,2,10,12,1}:Dim(19,19)AsBy:BoWht:PaWht:IkBl:Cl:Foi=0To87:Lni,i Toi,183-i:Ln183-i,i To183-i,183-i:Nx:ng=2:Digx(3),gy(3),g(3)
2 P1gn[h]:Srx,y,gx,gy,ng:Foi=0Tong:IfAb(gx(i)-x)<h AnAb(gy(i)-y)<h Th:RtTr:Ei:Nx:RtFa:EePrb:P1dg[l,o,x,y]:Srgx,gy,ng:Foi=0Tong:Ifx=gx(i)Any=gy(i)Th:dt[l,o,Tr]:Ei:Nx:EePrb:Diz AsWo:Do:Lc8,ScRws-1:?"LaDDDer";:WtKy:RdmTmr:sc%=0:lv=2:Do:BoWht:Lc0,ScRws-1:Cln
3 Iflv=-1Th:Wt1000MS:Ex:Ei:Film Wi1:Foy=1To17Stp2:Fox=1To17Stp2:m(y,x)=0:a=-1:IfRr(1)>0.4Th:Ifx>1Th:m(y,x-1)=0:a=0:Ei:Ei:Ifa ORRr(1)>0.2Th:Ify>1Th:m(y-1,x)=0:Ei:Ei:Nx:Nx:x=1:y=Rr(17)+1:d=Rr(4):b=Rr(17)+1:a=Rr(9)+9:m(b,a)=2:Foi=0Tong:g(i)=i:gx(i)=a:gy(i)=b
4 Nx:Lc24,2:Cln:?"S:";sc:Lc24,4:Cln:?"L:";lv:Do:z=s:Foi=0To22:Foj=0To22:w=ww:Ifi=11Th:w=bb:Ei:Poz,w:INC z:Nx:z=z+c-23:Nx:Fol=3To0Stp-1:a=dx(d)*l+x:b=dy(d)*l+y:If(a>=0Ana<19Anb>=0Anb<19)Th:o=f(l,0):p=f(l,1):q=f(l,2)-1:dm=1:If(d=0ORd=2)Th:dm=-1:Ei
5 u=a+dy(d)*dm:v=b+dx(d)*dm:Ifm(v,u)=1Th:Foi=o Top:z=s+i*c:Foj=0Too+q:w=bb:Ifj>=o Th:w=bw:Ei:Poz,w:INC z:Nx:Nx:Ei:Ifm(v,u)=2Th:dt[l,-1,0]:Ei:dg[l,-1,u,v]:u=a-dy(d)*dm:v=b-dx(d)*dm:Ifm(v,u)=1Th:Foi=o Top:z=s+i*c+p-q:Foj=p-q To22:w=bb:Ifj<=p Th:w=bw:Ei:Poz,w
6 INC z:Nx:Nx:Ei:Ifm(v,u)=2Th:dt[l,1,0]:Ei:dg[l,1,u,v]:Ifm(b,a)=1Th:Foi=o Top:z=s+i*c+o:Foj=o Top:Poz,bb:INC z:Nx:Nx:Ei:Ifm(b,a)=2Th:dt[l,0,0]:Ei:dg[l,0,a,b]:Ei:Nx:?At(27,15);Mi(dn,d+1,1):Ifgn[1]Th:Dclv:BoRe:Wt1000MS:Ex:Ei:Ifm(b,a)=2Th:BoGre:INC sc
7 Wt1000MS:Ex:Ei:Tmr=0:Do:Ifgn[4]Th:BoYe:El:BoWht:Ei:ko=KyStt(KyO):kp=KyStt(KyP):Ifko ORkp Th:Add,-ko+kp,0To3:Ex:Ei:IfKyStt(KyE)Th:a=x+dx(d):b=y+dy(d):Ifm(b,a)<>1Th:x=a:y=b:Ex:Ei:Ei:IfKyStt(KyT)Th:Dcsc:Ifsc<0Th:sc=0:Ei:Ex2:Ei:IfTmr>=25Th:Tmr=0:Foi=0Tong
8 a=gx(i)+dx(g(i)):b=gy(i)+dy(g(i)):Ifm(b,a)<>1Th:gx(i)=a:gy(i)=b:El:g(i)=Rr(4):Ei:Nx:Ifgn[5]Th:Ex:Ei:Ei:Lp:Lp:Lp:Lp:' Laddder by marco's retrobits 26 https://retrobits.itch.io
License
Creative Commons Attribution-NonCommercial-ShareAlike (CC BY-NC-SA 3.0): https://creativecommons.org/licenses/by-nc-sa/3.0/
| Status | Released |
| Author | BASIC 10Liner |
| Genre | Action |
| Tags | 10liner, basic, commodore, Commodore 64 |
Download
Install instructions
Emulator instructions (VICE - the Versatile Commodore Emulator: https://vice-emu.sourceforge.io/)
* Start the VICE C64 executable (e.g. x64sc.exe)
* Load the laddder_10liner.c64.prg file:
either open it by choosing "File" -> "Smart attach..." and then ,when the "READY" prompt is shown, type "run" (without quotation marks) and tap ENTER.
or drag and drop it into the VICE C64 window; this will automatically start the game.

Comments
Log in with itch.io to leave a comment.
very good
Thank you!