home *** CD-ROM | disk | FTP | other *** search
- Ultris: The Ultimate Tetris
- Version 2.05
-
- (C) 1992 David Pritchard
-
- Requires: EGA or VGA
- Supports: 2 and 3 button Microsoft-compatible mice, AdLib (or compatible)
- sound card, 2 player simultaneous Tetris & Columns (regular,
- co-operative, and competitive).
-
-
- LICENSE
- ───────
-
- You may use Ultris provided that you follow these conditions:
-
- 1) All of the following files must be included:
- README.COM
- SETUP.EXE
- ULTRIS.DAT
- ULTRIS.DOC
- ULTRIS.EXE
- ULTRIS.ICO
- ULTRIS1.DAT
- 2) None of these files may be modified.
- 3) You may distribute Ultris, provided that you distribute the .ZIP
- file exactly as you received it, and as long as no charge over $5
- is made.
-
- Please, distribute Ultris! Let everyone know about it! If you like this
- game, and would like to see future updates, send $15 to:
-
- David Pritchard
- 99 Woodmount Ave.
- Toronto, Ontario, Canada
- M4C 3Y3
-
- Include any suggestions/comments. You can reach me on the following Toronto
- BBSes: Stained Glass Window, Artsy Fartsy, and Super Sonic. Sorry, I don't
- have the cash for BIX, Canada Remote Systems, or anything like that. Anyway,
- I don't even have my own modem!
- If you received the source code with this without my express permission,
- then what you have is an illegal copy. Delete it IMMEDIATELY. If you have
- received the source code directly from myself, you may not make copies of it
- for use by anyone other than the person or group that was allowed permission to
- use it. You may not modify the code unless given permission by the author. You
- may not distribute modified code under any circumstances.
-
-
-
- SETUP
- ─────
-
- Ultris will automatically detect your hardware when you run it. Should its
- auto-detection be incorrect, and the game not run, run the SETUP.EXE program,
- which will let you configure Ultris from a menu.
- Should you wish to do so, you can modify the ULTRIS.INI file manually.
- For more detail, see Appendix A: ULTRIS.INI.
-
-
-
- RUNNING THE GAME
- ────────────────
-
- To run the game, just run ULTRIS.EXE (for details on command-line parameters,
- see Appendix B: Command line parameters). You should see, for 1.5 seconds, what
- Ultris has detected as your configuration. Then, the program will show two
- title screens, and it will then enter the game.
- If you do not have Ultris set up for a mouse, or if Ultris does not
- detect a mouse, the left player will be using the keyboard, and the right player
- will be using the keypad. If Ultris detects a mouse, the left player will be
- using the keypad, and the right player will be using the mouse. This can be
- changed either via SETUP.EXE or ULTRIS.INI.
-
-
-
- KEYS
- ────
-
- The keys for the Keyboard are:
-
- Raise Level
-
- Rotate ── U I O ── Rotate / PgUp
- Rotate ───┐
- Move ── J └ K L ── Move
-
- M , . ── Drop Brick
-
- Speed up Brick
-
- Space bar is the general action key, including pausing, starting, etc.
-
- The keys for the Keypad are:
-
- Raise Level
-
- Rotate ── 7 8 9 ── Rotate / PgUp
- Rotate ───┐
- Move ── 4 └ 5 6 ── Move
-
- 1 2 3 ── Drop Brick
-
- Speed up Brick
-
- Enter is the general action key.
-
- Escape brings up the Control Panel, which allows you to change the
- volume settings or quit.
- For mouse, see the online help.
-
-
-
- HOW TO PLAY ULTRIS
- ──────────────────
-
- Your goal in Ultris is to make solid horizontal lines. To do so, you must move
- and rotate the bricks until a line is made. When a line is made, it will
- disappear, and everything above it will drop down. Every ten lines you make,
- the level will go up, and the speed will increase.
- You gain points for the speed you play each brick. So, by dropping a
- brick to the bottom, it will have been played faster, and you will gain extra
- points. You will also gain points for the more lines you make at once. For
- example, if you make four lines at once, you get more than four times the points
- earned when you get one line.
- Also, you can see the next piece you'll get in the NEXT section. This
- can enable you to plan your future moves.
-
-
-
- HOW TO PLAY VERTRIS
- ───────────────────
-
- Vertris is even easier to learn than Ultris. Your goal in Vertris is to make a
- line of three or more in a row of the same colour. This line can be in any
- direction: horizontal, vertical, or diagonal. When you make a line, it
- disappears, and everything above it drops down to fill the space made.
- In Vertris, the rotate button changes the order of the colours in the
- falling column. The bottom-most colour moves to the top, and the other colours
- fall down (or vice versa, depending on which rotate you use).
- There's more to Vertris than you might think, though...
-
-
-
- COMPETITIVE GAMEPLAY
- ────────────────────
-
- When you play Ultris in competitive mode, the two players are playing head-on-
- head. Speed is essential. When one player makes two or more lines, an equal
- number of lines will be inserted at the bottom of the other player's well──with
- a few gaps in them, of course.
- When you play Vertris in competitive mode, the main difference is that
- when one player makes a column, the column re-appears on the other player's
- side. Each piece of the column has the same horizontal position, but the
- vertical position could be anywhere in the filled well. The colour is changed
- randomly as well. Everything above is moved up.
- In competitive mode, when one player pauses, both pause, as it would be
- unfair for one player to be able to play while the other is absent. Also, when
- one player dies, both games end. The winner is the player who has managed to
- stay alive, while the loser is the player who died. It's still quite possible
- for the losing player to have a higher score than the winning player.
-
-
-
- CO-OPERATIVE GAMEPLAY
- ─────────────────────
-
- In co-operative mode, you will see not only your brick, but a half-image of the
- other player's brick. To really do well, you have to work together and try to
- help each other (i.e. Yelling at the other player for taking the only place
- where your piece could fit will not help. Instead, let them see how much the
- game wrecks up because of this. Then you can just say "I told you so!").
- Your brick cannot move through the other player's brick unless you drop
- it.
- Co-operative mode generally works like competitive mode, apart from the
- general gameplay. Pausing will occur for both players. Both games end at the
- same time.
- A note on points: The player who makes the line will get the points!
- So, due credit will be given to the player who does the most work──or takes
- advantage of the best opportunities...(but if you really want to do well, you
- still have to co-operate and get even further!)
-
-
-
- DISAPPEARING/APPEARING BRICKS
- ─────────────────────────────
-
- This option allows for bricks to appear or disappear randomly in the well.
- The position of appearing bricks is not entirely random: the bricks won't appear
- very far above the top brick in the well.
- If you're in co-operative mode, a combination of the choices of the two
- players will be used. For example, if both players choose SOME APPEARING BRICKS,
- you'll get the same amount of appearing bricks as usual. If only one chooses
- SOME APPEARING BRICKS, you'll get half as many bricks as is normal for SOME
- APPEARING BRICKS.
-
-
-
- SCORING
- ───────
-
- OK, here are the official point values:
-
- 1) Ultris lines: Tetris: 260 points; Triple: 152 points; Double: 80 points;
- Single: 32 points.
- 2) Vertris lines: 2 to the power of (lines+3). If you get lots, you get LOTS of
- points. Note that this is per cycle: if you get two lines, and that results
- in making another line, you get 48, not 64.
- 3) If next is not used, there is a 1 in 10 chance that you'll get a bonus point
- each time you drop a brick, and each of the line values are worth 10% more.
- If the indicator is not used, there is a 1 in 5 chance, and line values are
- worth 20% more. If both, there's a 1 in 2 chance, and line values are worth
- 30% more.
- 4) Point value of the brick drop is equal to 10 - time where time is the
- amount of time it took you to make your move. On a faster level, you'll
- probably make your move faster, and then get more points.
- 5) You get ten points for every brick that appears or disappears.
- 6) You pass a level every 10 lines in Ultris, and every 15 lines in Vertris.
-
-
-
- POSSIBLE FUTURE ADDITIONS
- ─────────────────────────
-
- 1) Pilltris: a Dr. Mario clone (hopefully in the next version).
- 2) Better high scoring system (definitely next version).
- 3) Full help system (definitely next version).
- 4) More brick sets.
- 5) Background music.
- 6) Roland SCC-1, LAPC-I, MT-32 sound card support.
- 7) Super VGA support.
- 8) Joystick support.
- 9) Original variations on Tetris.
-
- A number of people have suggested adding an over-the-modem version of Ultris,
- but as I don't even have my own modem, this will have to wait a while...
-
-
-
- Well, that's about it. The appendixes are all we have after this. Have fun!
-
-
-
- APPENDIX A: ULTRIS.INI
- ──────────────────────
-
- Ultris.Ini is organized like a Windows .Ini file. There are headings, enclosed
- in brackets ([ ]), and settings under each heading. Ultris will ignore anything
- it doesn't recognize in the .Ini file. If a heading or setting is missing,
- Ultris will auto-detect it. The text parser is not case sensitive.
- This appendix will list each section, the settings in each section, and
- what each setting can be set to.
-
- [Video]
- Driver= This can be set to VGA, EGA, or Detect.
-
- [Audio]
- Driver= This can be set to AdLib, Internal, or Detect.
- Volume= This must be set to a number between 0 and 100.
-
- [High Scores]
- Left Player= This is the left player high score file.
- Right Player= This is the right player high score file.
-
- [Devices]
- Left Device= This can be set to Keyboard, Keypad, Mouse, Mouse2, or Mouse3.
- Right Device= This can be set to Keyboard, Keypad, Mouse, Mouse2, or Mouse3.
-
- With the devices, note that Mouse is equivalent to detecting the mouse
- type, while Mouse2 will use a two-button mouse and Mouse3 will use a three-
- button mouse.
-
-
-
- APPENDIX B: COMMAND LINE PARAMETERS
- ───────────────────────────────────
-
- None of the command line parameters are case sensitive.
-
- /ADLIB Use AdLib
- /EGA Use EGA
- /INTERNAL Use Internal speaker
- /LDEVICE=xxx Set left device (where xxx=Mouse, Keyboard, Keypad, Mouse2, or
- Mouse3)
- /LSCORE=xxx Set left score file (where xxx=filename)
- /RDEVICE=xxx Set right device (where xxx=Mouse, Keyboard, Keypad, Mouse2, or
- Mouse3)
- /RSCORE=xxx Set right score file (where xxx=filename)
- /VGA Use VGA
- /VOLUME=xxx Set volume (where xxx=percentage from 0 to 100).
-
-
-
- APPENDIX C: RELEASE HISTORY
- ───────────────────────────
-
- ALPHA Tetris/2 1.0: Working during August, September 1990
- 1) One player only (with two wells, though).
- 2) Exits to DOS when your game ends.
- 3) No high scores.
- 4) EGA/VGA support.
- 5) Keyboard only.
- 6) No AdLib.
- 7) No documentation.
-
- ALPHA dTetris (double Tetris) 1.0: Working during March, April 1991
- 1) Name changed.
- 2) Two player regular play.
- 3) High scores.
- 4) EGA/VGA support.
- 5) No AdLib.
- 6) No documentation.
- 7) Keyboard and keypad only; not swappable.
- 8) Only "DAVID PRITCHARD" screen.
- 9) Cheap interface.
-
- BETA Ultris 1.0: Working during May, June 1991
- 1) Name changed (too many people though it was "David Tetris").
- 2) No mouse support.
- 3) "Ultris The Ultimate Tetris" screen added.
- 4) AdLib sound effects added.
- 5) Title screens sped up by Jonathan Shekter.
-
- Ultris 1.0: July 17, 1992
-
- 1) Competitive and regular gameplay.
- 2) AdLib sound effects.
- 3) EGA/VGA support.
- 4) 2/3 button mouse support.
- 5) Minimal documentation.
-
- Ultris 1.1: July 23, 1992
-
- 1) Bug fix for competitive play (if one player made lines high up, the
- lines would appear high up on the other player's well).
- 2) Lines inserted in other player's well in competitive mode now can
- contain more than one gap.
- 3) Revised documentation.
- 4) Improved README.COM: Home/End supported; no blink when PgUp used at
- top screen or PgDn used at bottom screen.
- 5) Icon for Windows (ULTRIS.ICO).
- 6) Co-operative game play.
- 7) Bug fix for high score filename qualification: wouldn't work well
- with path names over 9 characters long.
- 8) Bug fix for certain partially incompatible mouse drivers.
-
- Ultris 1.2: July 31, 1992
-
- 1) Bug fix for cooperative play (if more than one line was made at a
- time, remnants were left on other player's side).
- 2) Bug fix for cooperative play (if players were on different levels,
- bricks would be in different colours).
- 3) Improved overall interface: button-oriented selection; easy to use
- with mouse.
- 4) Bug fix for high scores (scores were reset when game was run again).
- 5) Bug fix for mouse drivers with sensitivity settings.
-
- Ultris 2.0: August 27, 1992
-
- 1) Bug fix for new interface (when game ends, cursor messes up; if one
- player is in high score mode and other player gets a high score,
- buttons disappear).
- 2) Vertris: a Columns clone is added (Normal/Competitive/Cooperative)
- 3) Indicator (showing where brick will drop) added.
- 4) Control Panel replaces DO YOU WANT TO QUIT (Y/N)? for exiting. F1
- and F2 no longer control volume.
- 5) Showing next brick becomes optional.
- 6) Disappearing/appearing bricks
- 7) I actually remembered to exclude the debugging info this time! The
- .EXE file size was about 38K larger when it was in...
-
- Ultris 2.01: August 28, 1992
-
- 1) Bug fix for documentation: showed incorrect version number.
- 2) Bug fix for mouse with new keyboard interface (mouse would not work
- if a key was being held).
- 3) Bug fix for co-operative play with dis-appearing/appearing bricks.
-
- Version 2.05: September 23, 1992
-
- 1) Bug fix for new keyboard interface (sluggish, irregular response).
- 2) Improved WAIT FOR OTHER PLAYER SCREEN: actually tells you what to do.
- 3) Faster README screen redraws.
- 4) Improved high-score screen.
- 5) Bug fix for high scores (if directory name contained a period, game
- would generate error).
- 6) Bug fix for title screens (screen cleared to yellow at end).
- 7) Checks that all files are present.
-
-
-
- APPENDIX D: WINDOWS
- ───────────────────
-
- If you want to use this with Windows, remember the following:
-
- 1) DON'T RUN IT IN A WINDOW!!! Sure, go ahead and try now, and you'll
- see why I'm saying this. First, the colours are totally messed up
- (Windows reverses light and dark grey). Second, Windows can't keep up
- with Ultris' demands for system resources (Ultris needs to be called
- 18.2 times per second or so), so it's impossible to play.
-
- 2) Ultris requires enough memory to be able to load the .EXE file,
- and then each of the .DAT files (although neither is in memory
- simultaneously). If you don't care about the title screens, you can
- forget about leaving memory for loading the .DAT files.
-
- 3) Don't be surprised if it takes longer to start up from Windows. The
- game plays (generally) the same, but the start-up is slower.
-
- 4) There's an icon file (ULTRIS.ICO) available for you.
-
- 5) Windows 3.1 users with a sound card: try loading Media Player (or
- whatever music player you use) and starting to play a song before
- running Ultris. Make sure you run Ultris with the /INTERNAL switch.
- Ignore the error Windows gives you, and then you have background
- music with Ultris! Needless to say, this is not a good method for it.
- Maybe (with enough interest) in a future release? Besides, you're
- stuck with the horrible sound effects.
-
- If you want equal performance as under DOS, you'll have to run in Standard mode
- (which doesn't affect performance at all). In 386 Enhanced mode, you might want
- to modify the TrapTimerPorts switch in your SYSTEM.INI file in the [386Enh]
- section. This will enable Ultris to run a little more smoothly, but it'll mess
- up any communications programs that you might be running. See the README.WRI
- file, section 8.3 (at least with Windows 3.1) for more information.
-
-
-
- APPENDIX E: NETWORKS
- ────────────────────
-
- SysOps:
- For high scoring, you can change the path for the high score file.
- Should you wish to allow each user to have their own high score file, you can
- do this (either with the .INI file, SETUP.EXE, or command-line parameters).
- If you specify NUL as the high score file name, Ultris just won't write
- a high score file, so if you don't want the high scores saved, here's your
- solution (Of course, it's neater if you just make Ultris.Hgh Read-Only).
- Running multiple copies of Ultris with one central high score file will
- (generally) work, but you'll run into problems if a player spends too much time
- at the ENTER YOUR NAME screen. Nothing (hopefully) fatal, but just to be safe...
- to reset the high scores, delete the high score file (ULTRIS.HGH).
-
-
-
- ABOUT THE AUTHOR
- ────────────────
-
- I'm a 14-year old grade 10 student at Danforth Collegiate & Technical
- Instititute. I make games like this in the summer, but I'll only make little
- touch-ups during the year; I have a high average I intend to maintain...
- Jonathan Shekter is a grade 11 student at DCTI. He wrote the fast title
- screen loader (mine worked but was a lot slower; and the file size was bigger)
- in assembly language.
- Everything else in this program was written first in Turbo C++ 2.0,
- and, as released, compiled under Turbo C++ 3.0 (added some in-line assembly,
- instead of pseudo-assembly).
-
- Thanks to everyone who contributed suggestions for Ultris. Anyone else?