Lemming Dropout

developing/porting a new game or gaming framework? post in here!
Post Reply
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Lemming Dropout

Post by sa_scott »

Hi there,

Click here to see latest post with downloadable disc image

A few weeks back, I came across an old printout of a game a friend of mine worked on in about 1991. We were at school at the time, and he was working on a Lemmings clone, written in Basic, called Lemming Dropout. I did some further fiddling with the code, but nothing really came of it, and we left school, and lost touch with each other.

Here are some photos of some of the pages:

Some of the code:
lemming1.jpg
The instructions:
lemming1.jpg
It was naughty of me to put my name first, as he did much of the code! I think the intention was to send it to The Micro User magazine. The game has 4 levels, due to lack of space, but has some of the same mechanics of the famous game.

I did do a scan of the listing, but was unable to convert it into anything usable. If I added the scans, or PDF file here, would anyone be able to extract it and make a disc image? It would be interesting to see this game again, and see what optimisations can be made with 21st Century coding environments!
Attachments
lemming2.jpg
Last edited by sa_scott on Thu Nov 16, 2023 11:25 pm, edited 1 time in total.
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
User avatar
jms2
Posts: 3765
Joined: Mon Jan 08, 2007 6:38 am
Location: Derby, UK
Contact:

Re: Lemming Dropout

Post by jms2 »

Stephen, you should probably add that this is for the Archimedes (I spotted a TINT instruction).
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

jms2 wrote: Mon Nov 06, 2023 7:09 pm Stephen, you should probably add that this is for the Archimedes (I spotted a TINT instruction).
The photos are admittedly very bad, but I think what you've spotted is the TIME variable. It's definitely a Beeb game, as you'll see from the attachment below.

I've added a PDF based on the scans I've made. Adobe Acrobat is unable to read much of the characters, I suspect I'll have to rescan it, or make it darker in tone, the printout has faded quite a bit over the years.

Shout if you have any problems with it, and I'll try and rescan it again.
Attachments
lemming-dropout.pdf
Scanned PDF of games listing for Lemming Dropout game
(1.18 MiB) Downloaded 51 times
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
User avatar
Cybershark
Posts: 736
Joined: Wed Jun 14, 2006 11:16 pm
Contact:

Re: Lemming Dropout

Post by Cybershark »

Surely, in the spirit of things, you should type it in? :P
User avatar
jms2
Posts: 3765
Joined: Mon Jan 08, 2007 6:38 am
Location: Derby, UK
Contact:

Re: Lemming Dropout

Post by jms2 »

Apologies, it did look very much like TINT. Lemmings on the BBC in BASIC is quite ambitious.
User avatar
tricky
Posts: 7694
Joined: Tue Jun 21, 2011 9:25 am
Contact:

Re: Lemming Dropout

Post by tricky »

Gil and I talked about lemmings bitd, but decided that scrolling would be to much but that you probably could get quite a few of them moving around, but that is as far as we got.

There was a been homebrew lemmings demo called meanies or something like that which does show that it can be done but basic is definitely a brave choice :)
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

tricky wrote: Tue Nov 07, 2023 6:32 am Gil and I talked about lemmings bitd, but decided that scrolling would be to much but that you probably could get quite a few of them moving around, but that is as far as we got.

There was a been homebrew lemmings demo called meanies or something like that which does show that it can be done but basic is definitely a brave choice :)
Heheh - yeah, this Lemmings is most definitely not a scroller. It's an all-in-one screen affair, making use of Mode 1 graphics. Presumably having more blocks onscreen could be used to define levels of some kind of difficulty.

I have finished typing the first of the 2 listings, but it's laborious due to the poor scan quality, and the faded copy. Bear with me!
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
User avatar
tricky
Posts: 7694
Joined: Tue Jun 21, 2011 9:25 am
Contact:

Re: Lemming Dropout

Post by tricky »

I seem to remember some cunning plan to be able to check for two identical lemmings in the same place and only draw one so that they wouldn't disappear using eored sprites.
User avatar
jms2
Posts: 3765
Joined: Mon Jan 08, 2007 6:38 am
Location: Derby, UK
Contact:

Re: Lemming Dropout

Post by jms2 »

Chris Dewhurst wrote a BBC version of Lemmings called Weenies. I'm not sure I have ever played it... but I think I'll head over to bbcmicro.co.uk to give it a go.

...

Just tried it - whilst inspired by Lemmings, it's different in that you alter the environment rather than the behaviour of the Lemmings. There is scrolling (in software), but the game has odd keys and is pretty tricky to play.
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

Ok, I've finally managed to type the listing in for Lemming Dropout. As I typed through it, some of the code in there is very much of it's time, and only having a TV screen to edit on. Lots of repeating code, and a lot of GOTOs and GOSUBs. My friend Mr Rawlings otherwise did a pretty good job of the game, but it's very much in the spirit and limitations of BBC Basic.

That said, I have issues :cry:

The attached zip (removed, to ensure most recent edition can be downloaded, see latest post in thread) is a bootable disc image of the 2 files. The first listing all seems to work ok, and draws the initial status bars, with some basic instructions. You can see in the screenshot below the various types of ability that each lemming can be given (blocking, dig left/right, dig down, parachute, kill, suicide/end game).

However, when you try and load the rest of the game, I get this annoying error:
Screenshot of the error message
Screenshot of the error message
Line 50 is just this:

Code: Select all

50IFPAGE<>&E00:PROCr
I'm wondering if I've got an issue with tokenisation - I see nothing there which would result in this error.

I am certain there are other errors in the code, from trying to type this, in addition to possible tokenisation issues with using my Mac to do this, with VS Code.

If anyone can get to the bottom of this, I would be most grateful!
Last edited by sa_scott on Thu Nov 16, 2023 11:23 pm, edited 1 time in total.
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
User avatar
BigEd
Posts: 6261
Joined: Sun Jan 24, 2010 10:24 am
Location: West Country
Contact:

Re: Lemming Dropout

Post by BigEd »

Hmm where did PROCr come from? In the pdf I see GOTO 1500.
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

BigEd wrote: Wed Nov 15, 2023 12:49 pm Hmm where did PROCr come from? In the pdf I see GOTO 1500.
I actually put in a new relocation routine. The old one didn't work either. I must assume it was also down to tokenisation.
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
User avatar
BeebMaster
Posts: 7379
Joined: Sun Aug 02, 2009 5:59 pm
Location: Lost in the BeebVault!
Contact:

Re: Lemming Dropout

Post by BeebMaster »

It's very interesting that the VDU23 statements in lines 130 to 330 of listing 1 use hex numbers without having comma separators, I didn't know BBC BASIC would accept that syntax.
Image
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

BeebMaster wrote: Wed Nov 15, 2023 3:20 pm It's very interesting that the VDU23 statements in lines 130 to 330 of listing 1 use hex numbers without having comma separators, I didn't know BBC BASIC would accept that syntax.
I first saw that in Rob Walmsley's Crystal Sea game from the September 89 issue of The Micro User. I found it very hard to read personally, I can see why it would be used, it occupies less bytes than standard definitions.
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
User avatar
BeebMaster
Posts: 7379
Joined: Sun Aug 02, 2009 5:59 pm
Location: Lost in the BeebVault!
Contact:

Re: Lemming Dropout

Post by BeebMaster »

There are now 2 PROCr in listing 2 (DROP2), with the first defined at 1210 with arguments, so that's what's causing the error at line 50. Haven't got any further than that yet. I am trying (on Master 128) with PAGE at &E00 to get it to run without relocating, but something is still putting PAGE at &1100 even if I delete line 50!
Image
User avatar
BeebMaster
Posts: 7379
Joined: Sun Aug 02, 2009 5:59 pm
Location: Lost in the BeebVault!
Contact:

Re: Lemming Dropout

Post by BeebMaster »

If I restore lines 50 and 1500 to remove the use of PROC, and correct the typo in the DEFPROC at 440, all in DROP2, then the game works:
Screenshot 2023-11-15 16-12-37.png
Screenshot 2023-11-15 16-12-57.png
Image
User avatar
BeebMaster
Posts: 7379
Joined: Sun Aug 02, 2009 5:59 pm
Location: Lost in the BeebVault!
Contact:

Re: Lemming Dropout

Post by BeebMaster »

(Line 11 of DROP1 sets PAGE to &1100).
Image
iainfm
Posts: 602
Joined: Thu Jan 02, 2020 8:31 pm
Location: Dumbarton
Contact:

Re: Lemming Dropout

Post by iainfm »

FWIW, original Lemmings author Mike Dailly (@mdf200 on Twitter) is still tinkering with the game, and has recently ported a basic version to the Agon console thingy. https://www.youtube.com/watch?v=gUy_cgh ... MikeDailly

Link to the github repo containing the code is in the video description (https://github.com/mikedailly/Agon).
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

BeebMaster wrote: Wed Nov 15, 2023 4:17 pm (Line 11 of DROP1 sets PAGE to &1100).
Yes, due to the size of DROP2, it needs loading at a lower PAGE (as we are in 20k Mode 1), but is still too large, hence the further relocation to &E00
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

iainfm wrote: Wed Nov 15, 2023 5:08 pm FWIW, original Lemmings author Mike Dailly (@mdf200 on Twitter) is still tinkering with the game, and has recently ported a basic version to the Agon console thingy. https://www.youtube.com/watch?v=gUy_cgh ... MikeDailly

Link to the github repo containing the code is in the video description (https://github.com/mikedailly/Agon).
Yes, I saw that. It was that exact tweet which jogged my memory about the listing, buried in my cupboard!
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

BeebMaster wrote: Wed Nov 15, 2023 4:14 pm If I restore lines 50 and 1500 to remove the use of PROC, and correct the typo in the DEFPROC at 440, all in DROP2, then the game works:

Screenshot 2023-11-15 16-12-37.pngScreenshot 2023-11-15 16-12-57.png
Thanks for sorting those out. I fixed these, and spotted some typos in the timer countdown procedure.

I've attached a less broken version now, but I have to rush off for a while - I hope this one works a bit better - I did try a play of it, and it's harder than I remember!

(attachment removed, to ensure most recent edition can be downloaded)
Last edited by sa_scott on Thu Nov 16, 2023 11:22 pm, edited 1 time in total.
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
Michael Brown
Posts: 2609
Joined: Sat Apr 03, 2010 1:54 pm
Location: Nottingham
Contact:

Re: Lemming Dropout

Post by Michael Brown »

Hi Stephen,
Great that you have been able to uncover this little gem.

I believe there is a typo in DROP2 at line 1340.
I think the ;0;:160UNTIL0 is wrong and should be something like ;0;:UNTIL0
Mick.
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

Michael Brown wrote: Thu Nov 16, 2023 9:04 am Hi Stephen,
Great that you have been able to uncover this little gem.

I believe there is a typo in DROP2 at line 1340.
I think the ;0;:160UNTIL0 is wrong and should be something like ;0;:UNTIL0
Mick.
Many thanks Michael. There are bound to be typos, the original listing was printed 30 years ago, and despite being in a folder, has faded quite badly. I was hoping to use basictool to lint the code, see if there are any other howlers. But time has been against me, I was bashing this out with my elbows to get it ready for the masses.

I've attached a new version correcting this latest bug. (removed, to ensure most recent edition can be downloaded)
Last edited by sa_scott on Thu Nov 16, 2023 11:21 pm, edited 1 time in total.
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
Michael Brown
Posts: 2609
Joined: Sat Apr 03, 2010 1:54 pm
Location: Nottingham
Contact:

Re: Lemming Dropout

Post by Michael Brown »

Hi Stephen,
Found an error at line 1020 where there is a VDI19 command instead of a VDU19.

Also, line 630 has the PAUSED printed at TAB(17,14) but the removal of it at TAB(17,24), so I think the PAUSED should be TAB(17,24) otherwise it just stays on screen.

Hope that helps.
Mick.
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

Michael Brown wrote: Thu Nov 16, 2023 12:41 pm Hi Stephen,
Found an error at line 1020 where there is a VDI19 command instead of a VDU19.

Also, line 630 has the PAUSED printed at TAB(17,14) but the removal of it at TAB(17,24), so I think the PAUSED should be TAB(17,24) otherwise it just stays on screen.

Hope that helps.
Mick.
What, another one?!

I'll probably wait a bit before a new disc image is forthcoming, otherwise there will be hundreds of them before it's safe!
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
Michael Brown
Posts: 2609
Joined: Sat Apr 03, 2010 1:54 pm
Location: Nottingham
Contact:

Re: Lemming Dropout

Post by Michael Brown »

Hi Stephen,
Those were the only ones I found that stood out.
Hope that helps.
Mick.
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

Michael Brown wrote: Thu Nov 16, 2023 5:42 pm Hi Stephen,
Those were the only ones I found that stood out.
Hope that helps.
Mick.
I've attached a revised zipfile with the typos you spotted addressed. Many thanks again for spotting these.

I have also corrected an incorrect variable for reading the amount of time given on each level (which explains why you have 70 minutes to complete each level). The initial instructions also neglected to tell you that the left and right arrow keys are used to move the action cursor, which I've now corrected.

Having managed to play through all 4 levels, level 3 takes far too long to finish. As for level 4, it's very unfair in not allowing you to know which way the lemming is facing when you use the digger function - so you'll end up digging right and falling to your death :twisted:

Which leads me onto the subject of the level data. The original printout had some instructions, which explained how to create your own levels. I'll get these added in at some point, but need to dig out the paper listing again.

If I can, I'll remove the other zipfiles in this thread, to ensure we all have the intended version!
Attachments
LemmingDropout-almostunbroken.zip
Almost unbroken version of Lemming Dropout
(5.46 KiB) Downloaded 15 times
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
User avatar
tricky
Posts: 7694
Joined: Tue Jun 21, 2011 9:25 am
Contact:

Re: Lemming Dropout

Post by tricky »

You can put the latest in the top post and keep the history.
User avatar
sa_scott
Posts: 420
Joined: Wed Feb 09, 2011 11:34 pm
Location: Witley, Surrey, UK
Contact:

Re: Lemming Dropout

Post by sa_scott »

I've now found the printout again, and can produce the instructions, hints, and how the screen data is created:

---
Lemming Dropout
version 1.7
Written by Daren Rawlings and Stephen Scott
May 1991 - January 1992
Written for the Micro User Magazine
Text file by Stephen Scott January 1992

Introduction

Lemming Dropout is the 8 bit version of a certain game written by a certain Liverpool based software house for the Atari ST, Commodore Amiga, PC, Spectrum, Amstrad and the Archimedes.

Although it has only four levels, most of the features from the original have been transferred. At the end of this article will be an explanation on how to create your own screens.

Instructions

The object of Lemming Dropout is to guide the lemmings, one at a time, from the start to the finish. But a perilous journey awaits each lemming, as it attempts to reach home.

You can help them get home by using the icons shown at the bottom of the screen. These icons are explained later, but first here are a few things you should know about the lemmings.
  • Lemmings will move left when they appear out of the start symbol
  • Lemmings can only fall four spaces downwards before getting squashed.
  • Lemmings will be killed if they touch the poison spikes
  • Lemmings cannot dig through the steel blocks, shown as white blocks.
  • Lemmings cannot climb in any wayl they can only move left, right and down.
  • Lemmings cannot fall directly onto the finish symbol, even if they use parachutes.
  • If a lemming falls on top of a blocker, then it will still move in its current direction.
The icons can now be explained. They are, from left to right, as follows:

BLOCKER - Any lemming meeting a blocker will turn back. Blockers cannot be destroyed in any way.
DIGGER - Digs out one block in the direction the lemming is going before turning back.
MINER - Digs one space downwards
PARACHUTE - Enables selected lemmings to fall long distances.
SELF DESTRUCT - Kills the selected lemming, unless it is a BLOCKER.
SUICIDE - Quits the game

To use an icon, guide the square cursor, using the Z,X,* and ? keys over the lemming and press Return. The icon is now activated. The numbers below each icon (except Suicide) show how many of each action you have left. A beep will sound if you try to use something you have nothing of. Use the left and right arrow keys to select an icon.

In order to complete the levels, a certain number of lemmings must reach the finish, before the timer runs out. The clock is shown in the bottom right hand corner of the screen. This clock runs in realtime, so it will still be going when you have the game paused. The number of lemmings to save is shown at the top of the screen, along with how many are left, and how many you have saved. Once all the lemmings have gone, you go onto the next level, otherwise the game ends.

When you start each level, you are given information relevant to the level - number of lemmings, lemmings to be saved, and the time limit, in minutes and seconds. Pressing the spacebar then draws the screen, and then waits again for the spacebar to be pressed, so you can have a good look at the level.

Z,X*,? - move square cursor
Return - select icon
Cursor L,R - move icon arrow left or right
P/Return - Pause/unpause

The Listing

Lemming Dropout comes in two listings. The first - DROP1 - draws the screen border and sets up characters and envelopes. PAGE is then set to &1100, so that DROP2 - the game - can be loaded. DROP2 is then relocated down to &E00 before running.

Designing your own screens

The screen data starts from line 1370. Each level uses three lines of data. The data format is as follows:

Line One

Level name, number of lemmings, lemmings to save, time for info screen, time for timer procedure, number of blockers, number of diggers, number of miners, number of parachutes, number of self destructs, x and y coordinates for start symbol, x and y coordinates for end symbol, amount of data stings in Line Two (for use in the FOR... NEXT loop)

Line Two

Data strings for earth blocks

000006 - Print in top left corner of level a string of 6 blocks
101215 - Print at 10,12 in level window a string of 15 blocks

Line Three

amount of x,y coordinates for spike locations, spike coordinates

It is best to design your levels on a piece of squared paper, confining your designs to a 32 x 16 size grid. Treat the top left corner as 0,0, the top right corner as 31,0, the bottom left corner as 0,15 and the bottom right as 31,15.

If any number is less than 10, add a zero in front of it, as in the examples shown above.

If you don't want any spikes or steel blocks on your level, replace Line Three with the following:

DATA 3,0,0,0,0,0,0,3,0,0,0,0,0,0

This is to avoid the computer making a FOR...NEXT loop from 1 to 1!

Bear in mind the lemmings restrictions listed above when designing levels, and make them sensible, so that they can be completed.

--

I hope this is useful. I'll find a way of incorporating these instructions at a later stage.
--
Stephen Scott, Digital Media Muckerupper
Games: Androidz Redux, Headcase Hotel, Polymer Picker
www.sassquad.net
Post Reply

Return to “new projects in development: games”