Requirements: - 1 MB of RAM (preferably FastRam) - Kickstart 2.0 or better - 68020 or better - About 250K of (free) disk-space after installing Please be patient the first time you start the demo. TextDemo will first create the necessary textures to run on your system! Feel free to contact me. I'll be happy to read your comments, suggestions, flames and answer your questions. Contact me at one of the addresses at the end of this text. ============================================================================ This engine is still in development. I've had a rough time getting it stable enough to release it, and there are still lots of things I'm unhappy with. So that's why I released this one as TextDemo 5.7 instead of TextDemo 6. The engine is targeted at the high-end machines. My goal is to equal or surpass DOOM no matter what the costs (in terms of memory or processor power). Although by lowering resolution and screensize this engine can be run comfortably on 68020 machines, a 68030 (or better) and some FastMem are highly recommended. Future versions may well support some of the popular graphics cards like Retina and Picasso. At the moment this engine is going to be used for two games by two different teams. Both games were started at about the same time, one is going to be called Mystic Tank, and the other Shade. I think this should pose not much problems (I hope) as I can keep improving the engine and both games should benefit from that. Mystic Tank is going to be a game with a split-view which gives the player control over a big tank. The 2nd view either shows the turret mounted on the tank, or the inside of a tank controlled by a 2nd player. This game already has got a very big storyline behind it and also a healthy number of tunes have been created. Graphics are in the works. Also monsters/objects will be constructed from polygons once the game is done. This game is being worked on by: David Bryson - Coding (ceedb@cee.hw.ac.uk), Michael Bromery - Storyline/Music/Misc (davereed@wam.umd.edu) Tomwoof - Graphics (haven't got your address, sorry!) Shade is going to be a DOOM clone featuring Magic instead of Weapons. It also is going to have lots of RPG elements. Kind of a cross between DOOM, Magic Carpet and Dungeon Master (if that's possible :-)) There are already lots of graphics available for this game (check out the demo) and lots more to come. There also is a storyline (although not nearly as big as the one for Mystic Tank) and some samples (no tunes yet). People working on this game: Zak Jarvis - Graphics (masque2@transit.nyser.net) Chris Mair - Storyline/Misc (cmair@instruct.CapCollege.BC.CA) Michael Krehan - Coding (milka@flory.rhein-main.de) Steve Bara - Graphics (frotz@astro.ocis.temple.edu) Rowan Crawford - Level editing/Misc (dljar1@giaeb.cc.monash.edu.au) ============================================================================ Credits for TextDemo 5.7: Zak Jarvis for supplying most of the graphics TextDemo 5.7 makes use of, thanks Zak a really superb job. I hope you don't mind the fact that the engine can't really show the textures as nice as they should be (in 24 bit that is :-)) Rowan Crawford for creating this huge level all by hand to show of TextDemo features! Although I may have screwed up the level a bit I hope you still like the way it turned out. Also thanks for creating some of the graphics. Steve Bara for the skeleton-object. I've really screwed up the skeleton in the demo and it doesn't look half as good as it really is, so you'd have to blaim me for that :-) I'm sorry I couldn't include any other graphics from you in the engine yet. ============================================================================ Some details: * Uses BSP tree to get proper depth-sorting. This turned out to be only marginally faster than my old method. * Multiple level and multiple texture floors (staircases!) * Non-orthogonal texturemapped walls, with horizontally and vertically tiled textures of 128x128 pixels. * There also is some simple (unfinished) code for objects in this version. * Makes use of 24-bit textures which can be in IFF-24 format or my own custom format. These are remapped to the number of colors avaible on the system. Currently only OCS/ECS and AGA are supported, but future version might support 3rd party graphics cards as well. * Different screen-sizes and pixel-sizes supported * Uses Scrambled C2P, 68020/030 optimized. * Walls are light-sourced. This code is getting a bit old and will be rewritten, especially because the floors aren't light-sourced at the moment which can look rather ugly in places. * Smooth collision detection * Movements are real-time, which means the game only gets smoother (not faster) when it runs on faster computers. * Simple dithering of walls and floors which makes them look just that bit nicer. * Smooth movement (inertia) and bouncing movement * Mouse, Joystick and keyboard control * Multitasking (runs at TaskPri 0 with time-dependent stuff in a Vertical Blank server) ============================================================================ Known bugs in TextDemo 5.7: * Sometimes crashes completely (I can reproduce it but didn't have time to fix it) It only occurs at odd angles and in specific places, it shouldn't happen during normal play. * A single horizontal line sometimes trashes the display a bit. I think this one is related to the one above. * Really sometimes strange vertical lines appear near the edges of a higher floor. * Colors on the skeleton object in the beginning are wrong (not really a bug) If you've found another bug not mentioned above please let me know. ============================================================================ History Enhancements since public release 5: - Real time movement - Now uses 128x128 textures as promised. If I had known it would look sooo much better I would have done it much earlier :-)) - Fixed bug which sometimes caused 'double' lines on the top of the display (Forgot to set the X-bit correctly in the main texturemapping loop) - All windows are now centered horizontally - Optimized LightSources code - Added multiple height walls allowing for staircases etc... - Added floor-mapping, using multiple textures and heights. TextDemo has become almost twice as slow but optimisations are on the way - TextDemo now loads textures and levelinfo from disk - Added FPS display - Added super-fast and very simple dithering to 'get' more colors - Mouse Support - Walls are horizontally tiled when necessary - Added 'bouncing-movement' - Joystick Support added (Cd32) Enhancements since non-public release 5.5Beta: - Improved Real time movement by putting all essential stuff into the Vertical Blank interupt. This also allows for better multitasking - Finally fixed collision detection. It now works smooth and reliable - Added object-mapping code allowing for monsters being drawn - Improved 'bouncing-movement' - Added Command line parsing - Added BSP code. After some modifications it turned out to be a bit faster than my previous method after all. Thanks to Teemu Suiki for supplying me with some good example code - TextDemo now uses 24-bit Textures as originals. TextDemo can automatically convert these Textures with a optimal palette depending on your configuration. In the future this will allow for easy extension to support the 15, 16 and 24 bit modes found on most graphics cards - TextDemo detects OCS+ECS/AGA by itself and takes advantage of those modes. There is no need for seperate OCS+ECS/AGA versions anymore - Added dithering to the automatic conversion routines - TextDemo can now convert 24-bit IFF-ILBM files to 24-bit Textures which in turn can be converted to any other resolution or depth - The FloorMapping routines were completely rewritten after I discovered a faster algorithm to map the floors. TextDemo is now +/- 10% faster Enhancements since non-public release 5.6Beta (Jan 22 1995): - Vertical tiling implemented (horizontal was already implemented). Simple (scrolling) animation is possible by playing with the X and Y offsets of the texture - Improved collision detection. It is no longer possible to walk onto walls higher then a certain height. It is now possible to walk on the 'edge' of a wall without falling down directly - Lots of changes to the level-format to make it more flexible - Added structures and code to allow for multiple floor textures ============================================================================ Mouse control: -------------- Move mouse to left or right to turn Move mouse up or down to walk forwars or backwards, or hold Right mouse button to move forward automatically. Left mouse button exists the demo Keyboard control: ----------------- 7 or Cursor left = Turn left 8 or Cursor up = Move forwards 9 or Cursor right = Turn right 5 or Cursor down = Move backwards 4 = Move left 6 = Move right You can choose the screen size using the F-keys: ------------------------------------------------ F1 = 96x72 F5 = 224x168 F2 = 128x96 F6 = 256x192 F3 = 160x120 F7 = 288x216 F4 = 192x144 F8 = 320x240 Change pixel-resolution using the keys 1-4 (not on numeric keypad!!): --------------------------------------------------------------------- 1 = 1x1 pixels 2 = 2x1 pixels 3 = 1x2 pixels 4 = 2x2 pixels Press Left mouse button to exit demo. ============================================================================ Some people I wish to thank: - Hans-Joerg Frieden, for giving me lots of hints and UUEncoded mail :-) - Kees Huizer, for putting this demo (and the previous one and the one before that) on Aminet - Jeremy McDonald for coding a really nice C2P routine which features just about anything - Teemu Suikki for supplying a couple of very nice examples for using BSP trees - and all the other people for giving me feedback, tips, code, etc, thanks! -------------------------------------------------------------------------- UUCP: john.hendrikx@grafix.xs4all.nl (** this is a new address!!) FIDO: 2:286/407.8 AMY: 39:153/201.8 NLA: 14:101/200.8 A few days ago I also gained access to IRC (nick 'john' :-)). If you like to talk on IRC let me know. I can be on IRC between 8:30 and 15:30 (European Time) on week days, and if need be until 20:00 (European time) but I'm not quite sure about that yet. Between 20:00 and 8:30 my school is closed, and thus I can never be reached via IRC then.