*----------> Bad Mood v2.14 alpha release - 28/06/96 <----------* Bad Mood is a special project planned as the basis for a PC Doom / Doom II / Heretic compatible (pseudo) 3D game system for the Atari Falcon & compatibles. The system itself is intended more as a generic game engine than any specific game, in order to allow open-ended flexibility and therefore encourage development of a vast array of generically similar games on the Falcon. Bad Mood itself is being developed into a fully playable game in order to demonstrate the power of this engine. Tools are also under development to allow players to develop their own levels & even develop customised games to their own specification. There is still much to do before a final release, but with new people joining the team, the project is becoming more and more a reality. This software is currently 'freeware', and is therefore available free of charge. The Bad Mood developers retain the right to alter this freeware status for future releases, although this is highly unlikely. Sourcecode is also freely available. *----------> Features <-----------------------------------------* * Doom, Doom II & Heretic IWAD compatible. * Supports Doom, Doom II & Heretic PWAD files. * 16-bit truecolour graphics. * Perspective mapped walls. * Rotating, perspective mapped floors & ceilings. * Transparent wall textures. * Alpha-channeled wall textures. * Wraparound sky textures. * Artificial & depth-cued lighting. * LRU graphics cache for high speed & low ram requirements. * Variable x & y detail settings. * Variable viewport size up to 320x240. * Scaled player movement. * Simulated 'bobbing' movement. * Advanced version of BSP & occlusion algorithms for speed. * Works with all good CPU accelerators, including 68040 CPUs. * Fully FastRAM compatible with both FXRam & real 32-bit RAM. * Sources are freely available from several FTP & Websites. *----------> Instructions <-------------------------------------* Bad Mood must be invoked with command-line parameters specifying paths for WAD level files and any additional options for warping to levels and so on. The original syntax had to be changed to make room for sensible '-xxx' switches for PWAD overlays & other more complicated options. The old syntax is still supported if these switches are not detected. Usage: ----- The new syntax for Bad Mood v2.xx (alpha) is as follows: bm.ttp -i [-p] [-w] Or, keeping compatibility with previous versions of Bad Mood: bm.ttp [] Parameter list: -------------- -i
select path for main IWAD game file. -p select path for optional PWAD file. -w warp to a specific level. Breakdown: --------- IWAD path: -i
select path for main IWAD game file. The '-i' switch is used to specify the path for the main IWAD level file. This file is required in order to load the normal game levels & most of the graphics & audio data. IWAD files are very large - which makes them very easily distinguishable from the much smaller PWAD variety. They are typically anything between 5 and 40MB, depending on which Doom-compatible game they are intended to be used with. A (non-exhaustive) list of IWAD files and their sizes are described elsewhere in this text for easy identification. IWAD files are not intended to be optional, since they are needed for 95% of most game-related data. Even if a PWAD file is used, the IWAD is normally still needed for the majority of game graphics & other important data. Bad Mood IS capable of running without an IWAD, but only when supplied with a PWAD containing sufficient data to function alone. This is EXTREMELY RARE and is a side- effect of Bad Mood being written from the ground-up as opposed to a direct port from the PC. Bad Mood is much much cleverer. ;) PWAD path: -p select path for optional PWAD file. The '-p' switch is used to specify the path for an optional file called a PWAD. PWAD files (or Patch-WADs to give them their full name) are a clever way of customising normal IWAD game levels, or replacing them completely - by overlaying some (or all) of the components contained within the IWAD with new customised level data. Normally, you will want to try out PWAD files which have already been developed and distributed on and for the PC platform. The only consideration here is that it can be difficult to determine which game each PWAD is designed to work with. Most often, the PWAD will be based on Doom or Doom II, but trial-and-error is occasionally needed to find out. The wrong choice will result in trashed graphics! A tool called FalconWadTool is available which will help solve such problems, allowing the contents of each PWAD (or IWAD) to be examined in detail and therefore allow the user to determine each PWAD game type. See lower down for more details. You can replace a level by generating a new map using GemDEU (still under development by one member of the BM team) and by then loading the resulting PWAD alongside the IWAD for which it was designed. You must either design your PWAD to use the graphics from a full IWAD, or you might even want to add your own graphics to the PWAD itself. It doesn't really matter so long as the graphics used by the new map are available from either specified WAD. Missing or unavailable textures will result in trashed graphics! PWAD files have many advantages which include small size, the lack of restrictions on free distribution (unlike most IWAD files which are strictly commercial-ware) and the fact that PWAD files are easily modified and hacked about using a vast array of tools and editors. Level warp: -w warp to a specific level. The '-w' switch (based on the -warp switch from Doom & Doom II) is used to 'warp' directly to any given level. The level itself is specified using what is called a level marker. Level markers usually come in the form 'ExMy' where 'x' is the 'episode' and 'y' is the 'mission'. In other words, e1m2 would be episode #1, mission #2. This format is used for Doom & Heretic compatible WADs. For Doom II, the format is a little different: 'MAPxx' where 'xx' is the level number. map02 would specify level #2 and map14 would specify level #14. This difference is a bit annoying, but then it wasn't my idea. People just can't stick with their own standards! :) Examples: -------- Bear in mind that specifying a PWAD path and 'warp'ing to specific levels are completely optional in all the following cases. Doom / Heretic: -------------- Doom or Heretic game: bm.ttp -idoom.wad -we1m2 Doom or Heretic game with a PWAD level overlay: bm.ttp -idoom.wad -psilly.wad -we1m1 Doom or Heretic game using old BM syntax: bm.ttp doom.wad e1m3 Doom II: ------- Doom II game: bm.ttp -idoom2.wad -wmap12 Doom II game with a PWAD level overlay: bm.ttp -idoom2.wad -pdaft.wad -wmap01 Doom II game using old BM syntax: bm.ttp doom2.wad map24 *----------> Additional help <----------------------------------* Identifying WAD files: --------------------- PWAD files: By examining the WAD in a text editor or some other form of ascii dump tool, you will see the word PWAD right at the start of the data. If you see IWAD instead, then you should start to worry about how you managed to load a multi-megabyte file into a text editor. IWAD files are never small! Further examination using this technique, or by using something like FWT (FalconWadTool) you should be able to spot the words 'E1M1' or 'MAP01' somewhere in the file. E1M1 or similar means this is a Doom or Heretic PWAD. MAP01 or similar means a Doom II PWAD. Beyond this, it's not so easy to distinguish between Heretic & Doom PWAD files. You will just need to experiment on the basis that Doom PWADs are very much more common. IWAD files: IWAD files are much easier to spot. They are BIG, and there are only a few different ones available. Here are some of the more well known IWADs for easy identification: DOOM1.WAD (4MB) - Doom #1 shareware DOOM.WAD (10MB) - Doom #1 registered DOOM.WAD (12MB) - Doom #1 commercial (Ultimate Doom) DOOM2.WAD (14MB) - Doom #2 commercial HERETIC1.WAD (5MB) - Heretic shareware HERETIC.WAD (??MB) - Heretic registered HEXEN.WAD (10MB) - Hexen shareware (NOT SUPPORTED!) HEXEN.WAD (??MB) - Hexen commercial (NOT SUPPORTED!) There are others, but these are the ones I am familiar with. *----------> Recent History <-----------------------------------* v2.11a -> v2.12a: * Sky textures incorporated - highest available sky index is used. * Transparent walls now rendered as objects. No vertical repeating! * Nasty z-clipping bug rectified in wall-mapping for very long walls. * Transparent walls optimised for generation & clipping. * DSP floor-buffers increased to allow greater scene complexity. * Small modification to IKBD routine for badly behaved AB040 boards. * Screen routines made slightly more modular for easier access. v2.12a -> v2.13a: * Incorrect sky texture scaling rectified. * Display size corrected to 320x168 (status bar) & 320x200 (fullscreen). * Optimised for 2-sided linedefs with matching opposite sectors. This leads to major speed improvements on very complex levels - especially with large, fragmented expanses of sky or floor & adjoining corridors or doorways. v2.13a -> v2.14a: * Some inconspicuous Doom 'bugs' emulated to allow better WAD compatibility. * Quick-alpha texture assigned to 'middle' textures named 'sky1'. * Some optimisations made to wall/floor-generator. *----------> Text Credits <-------------------------------------* Documentation compiled by: Doug Little @ Black Scorpion <101573.1275@compuserve.com> *----------> End <----------------------------------------------*