pouët.net

slinky by Apocalyptic Visions

Slinky Version 1.0                                         by Neo   02/03/97
----------------------------------------------------------------------------

Disclaimer (hmm..)
------------------

I assume no responsibility whatsoever for any effect that this program
may cause apon your computer. You use this program at your own risk!
You should always virus scan any executable files you may download.


System requirements
-------------------

- Any 286 <cough> or higher. 
- About 35k of conventional RAM free.
- MS-DOS or any v86 box.
- Standard EGA or VGA.

  or

- Pentium <or higher>.
- About 1,024k of RAM free.
- Windows 95/NT 4.0 =)

The code is 100% assembler and should run at full speed on any 286+. Lowest 
tested was on a 386sx/16 without a glitch. Highest tested was a Amd586/133. 
A K5/100 crashed while running an early version of the code, but then 
again, it's an Amd =).
I was going to distribute the source code, but seeing it's grown to about 
200k, and wanting to keep the zip to a small size, I've decided not to.
Contact me (see e-mail addys below) for the source + updates and stuff.


What the hell is this Game?
---------------------------

Just basically navigate your little 'Slinky' snake/worm around the 
screen eating the little green blocks and growing in size. 

Each 'Munchie' block is a random value between 1 to 9, while Slinky
grows at DOUBLE this rate. The object is to pass the level by eating
an amount of Munchies to accumulate a target score without hitting into 
your ever-growing tail.

But, time's ticking. If you fail to eat the currently displayed munchie
2 more will appear, adding to the target to complete the level. If this 
target is *over* 25, then you lose a life.

Once you eat enough munchies to reach the level's target you will proceed
to the next level. As levels increase, so do the amount of munchies. But
as it can get a bit monotonous, I've decided to make life tougher by 
the inclusion of wall obsticals which also get tougher as you progress.

Also, you have the ability to switch external walls on / off. If on, then
you can be killed by hitting into a wall. If off, then it's possible to 
wrap around the screen without dying. I consider this an advantage, even
though it may be difficult to comprehend it in the game. Because of this,
there is a penalty of 2 munchies per level (ie. instead of 15 to eat, you
will have to eat 17).


In Game Keys
------------

Mainmenu:
Up,Dowm         - Select difficulty level / options
Left,Right      - Toggle options / difficulty menu
Space           - Toggle Walls or Sound on / off
1 or 2          - One or Two players

In Game:
Arrow keys      - Control the Slinky head
s               - Toggle Sound on/off
ESC             - Get me outta here
PAUSE/BREAK     - Pause game (hit any key to continue)

Note about keys:
This game uses the ROM Bios keyboard handler, so try not to hold down
a key during the game as this will cause the bios's buffer to overflow,
beep and generally stuff up and choke the game. Couldn't be stuffed to 
write my own handler into the game (too fast, had bugs).


Hey, can I run this game in Windows?
-------------------------------------

This wasn't programmed to be run in Windows. Havent you noticed the ansi
graphics yet? If you *really* want to run it under windows, it seems to work 
ok in full screen. Because the way the program uses the screen, it won't run
at the correct rate, the 50 line graphics are distored, and the fades dont  
work when run in windows (Run it in a dos box and see it go mental).

* Update * 
Seeing that I've recently been messing about with windows, I'm currently 
working on a Win32/Win95 version of the game.
             

Bugs
----

Although there isn't many of these little buggers lying in the code, there 
is a few I've come across:

- If you've got an EGA card you might have difficulty going into the 80x50 
  screenmode. Contact me if you've got an EGA system (ie, laptop or pissweak 
  PC) and tell me what happened.
  
- I've revised the code over 40 times. I've tried to nut out every possible
  bug that can occur. But no code is perfect (mine far from it) so please 
  contact me if any little stuff ups occur. There's lots of stuff I'd like
  to add, but I'd prefer to release something plain and stable rather than 
  something cool and unplayable.
  
  
Stuff to do
-----------

I must admitt, there's plenty missing in this version that'd I'd like to 
implement. But seeing that I wanted to release this before Uni began, I left
a lot of stuff out (due to it not being finished).
But anyway here's what Slinky 1.x is gonna look like:

- Hi-score table (some incentive to play??)
- Sounds. (Ahhh... thought something was missing...)
  Most likely only for SB16, as I dont own (or know anyone) with 
  either a PAS, GUS or any other soundcard variant.
- Simultanous 2/3/4.. player modes.
- Next release will (hopefully) include pretty VGA 320x200x256 graphics, 
  rather than the ansi screens. Essentially, it's the same game just with 
  the spiffy/chunky graphics.

Most of the above stuff is almost complete, so take a peek at some of the
cooler stuff planned:

- Imbedded external Zmodem protocol. Play it while leeching those huge 
  files!
- Windows 32/95 version in the pipeline. I've messed about with code in
  windows and it seems I might be able to pull it off (read: complete code
  re-write.. Arrrgghh!)
- ZIP file loader and/or BBS game door (suggested by Fluff@CheeseFactory)


Why the hell I'm doing this?
----------------------------

I've just started to code in ASM so this is just a little project to get me
learning more about the PC. My code is pretty secure, and yep, I do know
what I'm doing :).

The reason why I'm releasing it is because basically I haven't released any
ansi's/vga's or anything for Apocalyptic Visions in about 4 months now. 
Come to think of it, I dont think anyone has released anything for AV in 
4 months. ;)
Seeing I've spent all my spare time doing this, I figured I'd actually 
contribute something for once. <g> 


Why call it "Slinky" ?
----------------------

As you know, a slinky is one of those long spring/coil type animals which,
when placed at an edge, will happily drop down step by step until he
reaches the bottom of a flight of stairs (ie. Ace Ventura II). But our
hero is more of a snake/worm, so why the hell slinky?
My first contact with a snake game began way back when "Tapeworm" was 
released on the Atari 2600. The hero then was a fat, beeping black python
named "Slinky". Ememies were known as "slippy" and "spanky" (oh gawd).
Atticted with the game I immediatly started coding a better version
on my c64. Since then I've begun to learn 80x86 code, so hey, what better
and "simplier" <cough> game to make to explore the PC?


Contacts:
---------

Ok, so now you've played it I'd like to know what you though of it!
I'd like to get plenty of feedback on this tiny project. 

Found a bug?:
I've tried to nut out every little bug I can find, but hey, no-ones perfect.
Comments like "The playfield's too large", "You've made it too hard/easy" 
or even "Hey, where's the spiffy hi-res DirectX gfx?" :).

Are you a coder?:
I'm willing to learn more code. 2 months ago, I didn't even know what MOV  
was! But there's only so much you can teach yourself, so if you've got an 
interest in Asm, C or Pascal and wouldn't mind sharing a bit of knowledge 
give me a buzz.

E-Mail me at either:

------- ftr@arbld.unimelb.edu.au ------ neo@midian.apana.org.au --------- 

or while checking out these boards, gimmie a buzz:

------- neo @ Cheese Factory BBS ------ neo @ Midian BBS ----------------
        9801-0614                       9527-5873

------- neo @ Stargate BBS ------------ neo @ The Shed BBS --------------
        9428-8011                       9819-6825


Why the hell are the docs so huge for such a small game?
--------------------------------------------------------

I can't shut up :)