Chase (C64) by Josip Retro Bits
A downloadable game
Chase
=====
Commodore 64 Game - BASIC 10 Liner Contest, 2025
Author: Josip Retro Bits (Josip Kalebic)
Platform: C64
Language: Commodore BASIC V2
Category: PUR-80
Play and rules:
===============
To put this game in one sentence would be "Run for your life or die!".
Use the joystick to control the player and run from the enemy. You can kill the enemy by dropping a bomb (hold the fire button until the bomb drops). Bombs have timers and will last only a few seconds before they disappear so better aim well and in close range of the enemy. Good luck!
Controls:
=========
Joystick in Port B
Fire button drops a bomb.
Use numpad if running in VICE emulator.
Code overview:
==============
(code is written using CBM prg studio)
------------
Line 0
?"{clear}{yellow}":fOi=.to17:?sP9);:fOj=.to21:?cH(160-(j*i=0orj=21ori=17)*6);:nE:?:nE
Build the wall around the game area.
------------
Line 1
a$(0)="UI{down}{left}{left}JK":a$(1)="NM{down}{left}{left}MN":x=10:y=2:w=26:z=10:pO53281,0:j=.:gO6
Define player strings and other game parameters; Jump to line 6 to generate player init. position.
------------
Line 2
d=pE(56320):c=.:n=w:m=z:goS8:w=w+1+(w>x)*2:z=z+1+(z>y)*2:w=w-(w<10)*2+(w>28)*2
Read Joystick inputs; Delete the current enemy position.
Calculate enemy direction based on player location.
Calculate next enemy x value.
------------
Line 3
z=z-(z<2)*2+(z>16)*2:j=1:c=6:n=w:m=z:goS8:j=.:ifx=waNy=zort=waNh=zgO9
Calculate next enemy y value. Create enemy at new position.
Detect enemy hits player or bomb.
------------
Line 4
g=g+f:on-(g>3)gO7:on-(d=127)gO2:j=.:c=l:n=x:m=y:goS8:o=(nOdaN1)*-2+(nOdaN2)
Increment bomb alive time.
If no joystick input, jump to line 2.
Else delete the current player position or drop the bomb.
Get new player y direction.
------------
Line 5
u=(nOdaN4)*-.5+(nOdaN8)*.25:x=x+u:y=y+o:x=x-(x<10)*2+(x>28)*2:s=nOdaN16aNf=0
Get new player x direction. Verify x.
Calculate new x,y position for the player
Detect fire button press
------------
Line 6
y=y-(y<2)*2+(y>16)*2:c=1:n=x:m=y:goS8:l=0:ifs>0aNf=0tHt=x:h=y:f=1:l=2:s=0:gO2
Verify player y position.
Create player on the new x,y position.
If fire button is pressed; mark the bomb position and start the bomb timer.
------------
Line 7
a=-(x<>wory<>z):on-(s=0aNg<3)gO2:c=l:n=t:m=h:f=0:g=0:goS8:t=0:h=0:?"{home}{down}{green}s:"e:gO2
If no fire button is not pressed and the bomb timer is less than 3; jump to line 2.
Else, delete the bomb, prints kill score on screen.
------------
Line 8
pO781,m:pO782,n:sys65520:pO646,c:?a$(j):reT
Subroutine for generate/delete player, enemy and bomb at a defined position.
------------
Line 9
ift=waNh=zaNa=1tHa$(2)="MN{down}{left}{left}NM":c=2:n=w:m=z:j=2:goS8:e=e+1:fOa=.to5^4:nE:gO2
If the enemy hits the bomb, create an exploded enemy.
Pauze a short time.
Jump to line 2 and start again.
------------
Status | Released |
Author | BASIC 10Liner |
Genre | Action |
Tags | 10liner, 8-Bit, basic, basic-10liner, c65, Commodore 64 |
Install instructions
Loading in VICE(C64 emulator):
==============================
Start VICE; Choose "File"->"Smart attach" and select "chase.prg" file.
Type RUN <enter> to start the game.
Drag and drop into "chase.prg" VICE window into the VICE window.
Game will automaticly strart.
Comments
Log in with itch.io to leave a comment.
Arcade mechanics in BASIC, very nice.
very good