New Game Collection: 10 BASIC 10 liners

Discussion, Reviews & High-scores

Moderator: Moderators

Post Reply
User avatar
huffelduff
Vic 20 Hobbyist
Posts: 115
Joined: Sat Sep 05, 2020 9:14 am

New Game Collection: 10 BASIC 10 liners

Post by huffelduff »

Title: 10 Basic 10 liner games [OR] 100 lines of Basic
Platform: Unexpanded Commodore VIC-20
Video: PAL/NTSC
Interface: Keyboard only
Game type: Various
Written by: W E de Villiers, core game engine: Jeffrey Daniels
Language: Commodore Basic V2

What's on the tape/disk?
00. menu (The disk version includes a menu system)
01. Zombie rush
02. Fruit machine
03. Commodore fish cannery
04. Moon machine
05. Cheesy
06. Spiceworm
07. I Rebel
08. Pollinate
09. Magic 8 ball
10. Bad plumber

Game Controls:
Keyboard only
left/right = n / m
up/down = a / z
space bar = jump / spin
exit to menu = x

01. Zombie rush - A mysterious comet has hit the earth and the dead have arisen. You have to avoid the zombies and their open graves. You've seen this game before (eXimietas Monster maze 2020) but this time its done in Basic. Yeah!

02. Fruit machine - The classic gambling game. In this version there are only three types of fruit. Therefore the chances of three of a kind occuring are: 1/3 x 1/3 x 1/3 = 1/27. You get a payout if it’s three cherries, apples or bananas, so the chances then become 3/27 or 1/9 (1 in 9). But the payout is only 7 on a win, so one is supposed to lose thoroughly over time. The dollar count can go negative so that a lesson can be learned, which is this: Do not gamble unless you as a player have a gaming edge, for example see: Card counting in Blackjack. But even that’s not a real option because a Casino will ban you if they think you are card counting (doing arithmetic in your head). So even if you play by the Casino rules in Blackjack they still don't tolerate a winner.

03. Commodore fish cannery - It is a little known fact that between the development of the Commodore Vic-20 and the Commodore 64 Jack Tramiel started the Commodore fish cannery. The enterprise did not last very long though and this is its story: You are employee no.2 at the factory and your job is to suck up the canned fish with the Commodore Vacu-suck hose as the cans roll off the production line. They are then whisked off to Commodore packaging and transport. But beware: If you mess up you will incur the wrath of Jack and experience a Jack Attack!

04. Moon machine - A very simplistic moon patrol. You own a moon van and you're taking it out for a spin. Problem is there are craters all over the moon, but you have a secret feature on your van. A set of thrusters that can lift you off the surface, but as usual there's a catch: Although the thrusters use oxygen and a propellant they also require the energy from a set of battery cells. The electrochemical reaction involved to propel your vehicle above the lunar surface is too complicated to explain here, but the important part is that your electric cells run down very quickly during a burn. However they also recharge over time. So it’s a dance between jumping and hovering above the surface and landing again to recharge the cells. So if you run out of juice your game is over. Hit a crater and your game is also over. I thought joyrides were supposed to be fun...

05. Cheesy - You are a mouse and you need cheese. But you have to avoid the Felis catus and the spring loaded-bar mousetraps. If you are caught by either your clock is punched. Also if you don't get a piece of cheese your life loses its meaning, so don't miss the cheese.

06. Spiceworm - You are an Arakeen worm, but not those that produce spice. You are a one of a kind worm that consumes spice. You have to consume all the spice but save one heap to advance. You also have to be careful when searching for the spice to not run into your tail or into a Harkonen barrier wall. One more thing, at the bottom right of the barrier wall you can escape the games confines and explore the deep desert of the Vic's internals, but you do so at your peril.

07. I Rebel - Any new foundational discovery or revolutionary philosophy is an act of rebellion against the societal system that one finds oneself in. One has to go against the grain. The more important one's contribution turns out to be, the more resistance one will have to face up to. Note: The scroll trick I saw in a 10-liner game called Space patrol.

08. Pollinate - You're a bee, or maybe some weird butterfly. Point is you have to pollinate the flowers as you go and you're not allowed to miss one.

09. Magic 8 ball - Do have a yes or no question? Ask the oracle of the magic 8 ball. Well 8-balls in the plural to be exact, 42 of them. They may be able to answer some very personal questions or even be able to give you answers to life, the universe and everything.

10. Bad plumber - This is a remake of 'eXimietas Hydrocarbon Emergency' in Basic. This time you're a bad plumber with a water pipe leak and the only solution you can come up with is catching the droplets in a bucket.
Image - Screenshot collage.png
Greetings all

H

Here's the link: https://huffelduff.itch.io/10-basic-vic-10-liner-games
User avatar
Mike
Herr VC
Posts: 4816
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: New Game Collection: 10 BASIC 10 liners

Post by Mike »

I have played through all 10 games, in a(n appropriate 10 minute) session.

Alphabetically sorted (as per the PRG file directory), "Bad Plumber", "Commodore Fish Cannery", "Cheesy", "I Rebel", "Pollinate" and "Zombie Rush" are merely variations of the same "catch/avoid things" theme, either on a static or scrolling screen. "Fruit machine" and "Magic 8 Ball" in my opinion do not qualify as games at all - they are just random result generators, triggered by a key press. "Spiceworm" is a one-player Snake variant.

Only "Moon machine" as simple Moon Patrol implementation stands out at least a little bit in this collection, mainly due to its cute moon buggy animation and depiction of Earth, and easy enough controls (jump) to make it entertaining for more than one minute.

If anything, this collection shows the limits of "number of lines" restricted, or generally, size restricted games. You do not get more than a given level or screen view, there is no progression in difficulty besides possibly reduced reaction time, no title screen, no instructions, no other ending than a "Game Over".

I want to back my criticism with own examples: with somewhat more effort, still on unexpanded VIC-20, more interesting games are of course possible, and I encourage people to compare Spiceworm and Moon machine with the 'equivalent' games (TRON and Moon Patrol) I put into my own Game collection I released in 2013, see here.

Greetings,

Michael
User avatar
huffelduff
Vic 20 Hobbyist
Posts: 115
Joined: Sat Sep 05, 2020 9:14 am

Re: New Game Collection: 10 BASIC 10 liners

Post by huffelduff »

Mike wrote: Tue Sep 27, 2022 4:03 amI have played through all 10 games, in a(n appropiate 10 minute) session.
He he he, yep that's the appropriate amount of time to spend.
Mike wrote: Tue Sep 27, 2022 4:03 am "Fruit machine" and "Magic 8 Ball" in my opinion do not qualify as games at all
I protest that. In 1984 Mastertronic released "Vegas Jackpot" as a game for the VIc.
Magic 8 ball is in the grand tradition of Zoltar/love machines in penny arcades.
Footnote: You will notice that the cover and back cover of the games collection is in the style of a "SCAM".
Because that's exactly what its supposed to depict :D
Mike wrote: Tue Sep 27, 2022 4:03 amIf anything, this collection shows the limits of "number of lines" restricted, or generally, size restricted games.
There are definite limits to 10-liners.To quote myself: "Most of the games don't stray too far from the 'UFO Rush' gameplay but I'm still learning the ins and outs."
Mike wrote: Tue Sep 27, 2022 4:03 amstill on unexpanded VIC-20, more interesting games are of course possible
True. Using read/data with a sys assembler call one can build complicated stuff, as complicated as it gets. I saw some of the games in your collection use this method.
There was a category in the 10-liner competition at one point for assembler entries in this style, but no-one entered so it has been scrapped.
I did a calculation a while ago of how many op-codes one could cram into an 80 column by 10 line (800 characters) and here are the results:

10 lines x 80 charcters = 800 characters
BUT
1 x line lost for READing of DATA statements and the SYS command = 80 characters
THUS
720 characters available
BUT
Each dataline starts with = lineno space dA space = 5 characters x 9 lines = 45
THUS
720 - 45 = 675 characters available
Assume each number has 2.5 digits and a comma = 3.5 digits
675 / 3.5 = 193 assembler numbers
2.5 numbers per opcode average
THUS
77 opcodes for a ten liner
Conclusion: THIS WILL NOT DO! BASIC IS BETTER IN THIS CASE BECAUSE MORE FUNCTIONALITY PER ABBREVIATED KEYWORD.

One can use REM statements but one has the 0 problem, where 0 is a line terminator. So assembler routines would have to be very carefully crafted


Anyhow thanks for the feedback

Greetings

H
User avatar
chysn
Vic 20 Scientist
Posts: 1205
Joined: Tue Oct 22, 2019 12:36 pm
Website: http://www.beigemaze.com
Location: Michigan, USA
Occupation: Software Dev Manager

Re: New Game Collection: 10 BASIC 10 liners

Post by chysn »

I agree that the Moon Machine is the standout. It's adorbs, although it, too, is of the "avoid things" theme. The little earth sets the scene in a cool way.

I enjoyed the Zombie Rush one, too, and played that quite a few times.

Two little complaints... I don't like the key controls (a/z, n/m), but that's just me. Also, I'd prefer to just start over than to exit and re-select the same game, especially since it takes a couple tries to figure out "am I trying to get that thing, or trying to avoid that thing?"

I think Mike is being a little too hard on the stuff. It's an interesting genre with a self-imposed limit, and a pretty popular one. I don't think there's any use to arguing that you shouldn't limit yourself to 10 lines of BASIC, because it's a thing. I have some admiration for it because I'm bad at BASIC. Am I going to reach for Moon Machine instead of plugging in my Moon Patrol cartridge? No, but that's not really the goal.

As for machine language in this kind of thing, it seems like a cheat?
VIC-20 Projects: wAx Assembler, TRBo: Turtle RescueBot, Helix Colony, Sub Med, Trolley Problem, Dungeon of Dance, ZEPTOPOLIS, MIDI KERNAL, The Archivist, Ed for Prophet-5

WIP: MIDIcast BASIC extension

he/him/his
User avatar
huffelduff
Vic 20 Hobbyist
Posts: 115
Joined: Sat Sep 05, 2020 9:14 am

Re: New Game Collection: 10 BASIC 10 liners

Post by huffelduff »

chysn wrote: Tue Sep 27, 2022 9:26 am I'd prefer to just start over than to exit and re-select the same game, especially since it takes a couple tries to figure out "am I trying to get that thing, or trying to avoid that thing?"
Hi Chysn,

Oh crap, I didn't make it clear in the documentation or the menu.
Pressing any key except x will restart the game. You don't have to exit to the menu again.

Serious question, what keys in your opinion are traditionally the most ergonomic for the VIC?
Those being:
left/right/up/down and of course shoot/jump/function z
chysn wrote: Tue Sep 27, 2022 9:26 amAs for machine language in this kind of thing, it seems like a cheat?
As far as I can see the whole category was scrapped. But also the 10 lines impose limits on the amount of assembler one can shove in there anyway. See my comment above.
chysn wrote: Tue Sep 27, 2022 9:26 am I don't think there's any use to arguing that you shouldn't limit yourself to 10 lines of BASIC
I mean its stupid for the limit but I've seen some really interesting stuff. Someone managed to do a version of Joust on the Spectrum. Very limited but I was still impressed that someone could do it.

I don't want to say anything but I have to. I might have something for you chysn... but please don't hold your breath for it.
What is it? hmmmm. Can't say at this stage, will have to see if time and circumstance allows me to complete it.
I'll leave you with a small something
Pirate walking on a lonely desert beach - In the style of van Gogh.png
Greets

H
User avatar
Mike
Herr VC
Posts: 4816
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: New Game Collection: 10 BASIC 10 liners

Post by Mike »

chysn wrote:[Moon Machine ...]The little earth sets the scene in a cool way.
Yep! :)
I'd prefer to just start over than to exit and re-select the same game, [...]
I directly started the games from the PRG folder and didn't notice that. When the games end, SPACE restarts a new turn.
I think Mike is being a little too hard on the stuff. [...]
Even I am guilty of having written a game in that catch/avoid genre, see "Meteor Storm" in my Games collection. That one is even only 4 lines of BASIC, and there I compromised on a "Start Again?" routine, expecting the user to re-type RUN instead. :wink:

So my criticism should be taken with a grain of salt, perhaps nudging in the direction of "one specimen of a type of game in a collection should be enough".
huffelduff wrote:[...]
As for machine language in this kind of thing, it seems like a cheat?
If anything, that'd inevitably result in the realisation as BASIC stub plus machine code. And in 800 bytes, not read in from DATA lines but "directly present", you quite likely can match BASIC size-wise. One can always take a machine language monitor of one's choice and enter the program into memory. BASIC comes around with the tools to put tokenized BASIC programs into the BASIC memory and using an equivalent tool should likewise be allowed for entering machine code.

For a comparison, "Killer Comet" by Duane Later is 1011 bytes in BASIC, my own equivalent translation to machine code (see here) only weighs in at 719 bytes (both sizes without the 2 byte load address).
huffelduff wrote:I don't want to say anything but I have to. I might have something for you chysn... but please don't hold your breath for it. What is it? hmmmm. Can't say at this stage, will have to see if time and circumstance allows me to complete it. I'll leave you with a small something
Nice painting. :)

Heh - it is a spare time activity we're indulging here in. What comes out of it depends on mood and time of day. The great hours come with the unexpected - like Jeff came up with TenTen after a period of sleep deprivation:
Jeff-20 wrote:Sleep deprivation does strange things to you. I made this game earlier this week between 1am and 5am. I couldn't sleep. It made sense to me at the time and seemed very fun. The next day, I played it, and I couldn't understand what the heck I was thinking the previous night! I decided to just abandon it. [...]
... :mrgreen:
User avatar
huffelduff
Vic 20 Hobbyist
Posts: 115
Joined: Sat Sep 05, 2020 9:14 am

Re: New Game Collection: 10 BASIC 10 liners

Post by huffelduff »

Mike wrote: Tue Sep 27, 2022 9:58 am If anything, that'd inevitably result in the realisation as BASIC stub plus machine code. And in 800 bytes, not read in from DATA lines but "directly present"
Hi Mike,
No, the rules box you in tight, tight, tight. :D
The PUR-80 rules have this to say:
- The 10 lines must not contain any machine programs-
- All code must be visible in the listing: self-modifying code or hidden initializations are not allowed
- No reloading of data or program parts
Mike wrote: Tue Sep 27, 2022 9:58 amNice painting. :)
its AI generated. shhhhhht :!:

Greetings

H
User avatar
Mike
Herr VC
Posts: 4816
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: New Game Collection: 10 BASIC 10 liners

Post by Mike »

huffelduff wrote:The PUR-80 rules have this to say: [...]
I merely was arguing from the "size of code" point.

The games in my collection are mostly of the "type-in" designation, and with the exception of "Abductor" I actually had typed them in at one time, even with "Defender", which spanned 3 1/2 A4 pages as tightly packed hex dump that came with an own entry program. When the other games in my collection put their machine code or character definitions into DATA statements, that merely eased the type-in process in the absence of any dedicated editor or entry program. In the end it doesn't matter how the stuff is organized in memory or where it came from, only the size matters. More specifically, the static size as what is loaded as file. The (dynamic) memory requirements while the program runs are another matter.
Mike wrote:"Fruit machine" and "Magic 8 Ball" in my opinion do not qualify as games at all [...]
huffelduff wrote:I protest that. In 1984 Mastertronic released "Vegas Jackpot" as a game for the VIc.
Or Anirog, for that matter. I "scraped" this very game off tape for "preservation" purposes (see here), and in principle my criticism extends to this implementation as well (I did not check how the stop keys and nudges actually work, but then I never got very far in LV20 anyway) - yes, I noticed your SCAM comment, and the same could be said about any decepting box art. ;)

(Too bad most of the screenshots in said thread are gone. For the time, highinfidelity's screen shot of Super Slot is still there and fits the bill, and my mention of Commodore Artist does so as well.)
User avatar
huffelduff
Vic 20 Hobbyist
Posts: 115
Joined: Sat Sep 05, 2020 9:14 am

Re: New Game Collection: 10 BASIC 10 liners

Post by huffelduff »

Mike wrote: Tue Sep 27, 2022 10:19 am I actually had typed them in at one time, even with "Defender", which spanned 3 1/2 A4 pages as tightly packed hex dump that came with an own entry program.
I remember typing in a game for the C64 which was about two magazine pages of Data statements, but there wasn't any form of checksum application with it. It came from one of those dodgy computer magazines that would appear for a couple of months on the bookstore shelves and then you never heard from them again. So after three days of typing after school I entered the last digits, I had not saved the last paragraph or so and in my haste to test I ran it, and it exploded. I retyped in the last paragraph of data statements, saved carefully, ran it, got an out of data error, checked my work, corrected it, ran it and... it exploded... again.
So I spent the following days after school carefully checking each data entry all the while contemplating what cosmic sin I had committed to deserve the injustice. I never got it to work in the end. I dunno if it even could work and it's one of those mysteries I will never get to solve I guess.

Good times.

H
User avatar
Mike
Herr VC
Posts: 4816
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: New Game Collection: 10 BASIC 10 liners

Post by Mike »

huffelduff wrote:I remember typing in a game for the C64 which was about two magazine pages of Data statements, but there wasn't any form of checksum application with it. [...]
The same thing nearly had happened with Defender. Some inept person accidently had overwritten the first 14 bytes of the hex dump as printed, presumably with an assignment to two variables. From the code following the overwritten part I could deduct that it probably was part of a joystick read-in routine, and the replacement I thought out exactly fitted into place and quite likely reconstructs what originally was supposed to be there.

In the end I got spared a similar disappointment as you had, also the other games had I typed in in those days worked after a thorough proof reading procedure, so those magazines mostly got their act right.
User avatar
chysn
Vic 20 Scientist
Posts: 1205
Joined: Tue Oct 22, 2019 12:36 pm
Website: http://www.beigemaze.com
Location: Michigan, USA
Occupation: Software Dev Manager

Re: New Game Collection: 10 BASIC 10 liners

Post by chysn »

huffelduff wrote: Tue Sep 27, 2022 9:47 am Serious question, what keys in your opinion are traditionally the most ergonomic for the VIC?
Based on my finger length, handedness, cultural biases, and adjusted gross income, I prefer I/M, J/L, and Z or SPACE.

Opinions may vary, but are wrong.

:D
User avatar
Rich
Vic 20 Hobbyist
Posts: 132
Joined: Mon Nov 29, 2021 4:15 pm

Re: New Game Collection: 10 BASIC 10 liners

Post by Rich »

Nice to see you keep giving for the Vic20....Keep them coming. :D
User avatar
huffelduff
Vic 20 Hobbyist
Posts: 115
Joined: Sat Sep 05, 2020 9:14 am

Re: New Game Collection: 10 BASIC 10 liners

Post by huffelduff »

chysn wrote: Tue Sep 27, 2022 12:59 pm I prefer I/M, J/L, and Z or SPACE.
Duly noted, I'll keep it in mind.
Rich wrote: Tue Sep 27, 2022 3:01 pm Nice to see you keep giving for the Vic20....Keep them coming. :D
I wish I had more time to play around a bit more though.

Greetings

H
User avatar
Jeff-20
Denial Founder
Posts: 5759
Joined: Wed Dec 31, 1969 6:00 pm

Re: New Game Collection: 10 BASIC 10 liners

Post by Jeff-20 »

I enjoyed the games! Mike's criticisms can come in a little harsh sometimes, but he's always honest and means well.
Mike wrote: Tue Sep 27, 2022 4:03 am If anything, this collection shows the limits of "number of lines" restricted, or generally, size restricted games.
I think of programming restrictions as a sort of "metagame"... for the programmer! ...And the product just happens to be playable game as well.

What I mean is that these kind of challenges are as pointless as collecting dots in Pacman. It's just for fun. Like using my VIC instead of Unity. :D

I'm even more open in my definition of a game. Magic 8-ball is as interactive as Snakes and Ladders.
High Scores, Links, and Jeff's Basic Games page.
Post Reply