----------------------------------------------------------------------- - Explosion of an Aeroplane - - README - ----------------------------------------------------------------------- 0. THE TEAM (KOOPA TROOPERS) * Initial design, initial SFX, and the title screen: Lauri Konttori * Design: Koopa Troopers (the whole team) * Lead programmer: Ville Helin * 2D & 3D Graphics: Ville Helin * Additional programming, and level editor: Markus Eräpolku * Level 1 (MUSTIKKA): Jaakko Iisalo * Level 2 (EKYPTI): Juha Impivaara * Level 3 (ROME): Ville Helin (100% ripped from photographs) * Sound FX: Ilmari Hakkola 1. DESCRIPTION Dogfight in multilayer early 20th century settings. Multiplayer via dswifilib. This game is in its early stages, but feel free to experiment, and post us your comments. Currently you can play against other players, collide and destroy the level graphics, and shoot down other planes. That's not much, but just wait for the next version. :) 2. TECHNICAL INFORMATION We used the following things in making this game: * DevKitPro (http://www.devkitpro.org) * DSWifi (http://akkit.org/dswifi/) * Blender (http://www.blender.org/) * Tile Driller (http://www.iki.fi/~vhelin/tiledriller.html) * Gimp (http://www.gimp.org) * DS Tek - Nintendo DS Technical Information (http://neimod.com/dstek) * NDSTech Wiki (http://www.bottledlight.com/ds/index.php?n=Main.HomePage) * DekuTree64's MOD player programming tutorial (http://deku.gbadev.org) * NDSLIB documentation (http://www.drunkencoders.com/documents/DS/ndslib.htm) * gbadev.org Forums (http://forum.gbadev.org) * libfat (http://chishm.drunkencoders.com) * libcartreset (http://licklick.wordpress.com) Also note that the ingame graphics are created using the 3D hardware (even the particles are small alpha blended 3D triangles and rectangles). The game runs in full 60fps. The sound engine supports 4-8 channel MODs, and the remaining channels (of the total 16) can be used for sound effects. The network code has been proven to work with five simultaneous players (we need more testers with a DS), and if you have a wireless router supporting local broadcasting to Wifi, then you are in for a treat. If it works, that is. :) So far I haven't been able to test the broadcasting as my D-Link DI-524 doesn't seem to broadcast to Wifi channels... You can adjust the delay in frames between outgoing network update packets, and the default value is three (frames). The game utilizes simple, linear dead reckoning algorithms to extrapolate the missing data. The clients use port 8888, and the server resides at the port 8889, so remember to have these opened in your Wifi router. 3. DEFAULT KEYS This is the default key mapping, but you can change it from the key configuration menu page. L - Switch the layers B - Slow acceleration (faster turning) A - Fast acceleration (slower turning) LEFT - Turn left RIGHT - Turn right X - Machine gun Y - Special weapon (shown on the HUD) R - Change the special weapon UP - Quick turn START - Toggle pause Also, if you press down L+R in less than 0.5s after your plane has started to explode, it will shoot (with 50% chance per bullet) some of the special weapon bullets into random directions. Press SELECT+START to reset the DS to GBA slot (using libcartreset). Press down L+R while the game boots to skip the loading of the saved configuration. Press down the both acceleration keys for super turbo! Note that changing layers eats the plane's battery, but fortunately it gets recharged quite quickly. 4. TODO Explosion of an Aeroplane 1.0 will have these features: * More particles * Bigger explosions * Huge explosions * Make plane explosions shoot out plane parts * More smoke * Flames to turbo boost * More weapons * Super nuke * At least eight levels * Menu screens * Weapons configuration * More different radars * More AI bots * Enemy planes * Enemy soldiers * Multiplayer * CO-OP mode * More graphics, enhance the old * At least eight different planes * New title screen * Make auto zooming better * Mark out-of-level with something. A dotted line? * Make the planes bounce nicer when they hit each other * Add frustum culling * Enhance dead reckoning * Make the AI turrets look nice Optional: * Add particles that affect the planes? * Add support for 512x512 256 color levels with one layer * Add support for 512x512 4 color levels with four layers * Add support for 1024x1024 4 color levels with one layer * Musics (4-8 channel MODs) * More sound effects * Add emergency eject (with a flying escape pod) * Optimize server statistics structures * Compress the network packets even more And this is a list of features that we'll do for Explosion of an Aeroplane 2: * Intro animation * Single player game * Story * Levels * Layer looping * Background color properties (can the color be destroyed? do the planes collide with it? etc.) * Support for MIDI files? In general Explosion of an Aeroplane 1 is about multiplayer, 2 will be about single player experience. 5. USAGE Use the brilliant No$gba v2.3c+ to play Explosion of an Aeroplane, or better yet, use the real hardware as no emulator so far emulates the Wifi connection! To play this game: * Compile and run the server (under explosionOfAnAeroplaneServer directory). * Configure your DS to connect to your favourite AP (perhaps using Mario Kart, and edit the first settings, settings number 1). * Now start all Explosion of an Aeroplane clients. * Go to the NET menu page. * Type in the server's IP. * Go to the PLAY menu page. * Select the game mode (and go and change your plane, if you want to). * Press "CONNECT!" once to connect to the AP, and the game server. * Now at this point all clients must be connected to the server. * Now press "READY!" in all clients to begin a match. * When you've recieved "VICTORY!" or "DEFEAT" notice, press "END!" to disconnect from the server. Now you can start another game by pressing "CONNECT!" and "READY!" like before. 6. CONTACT If you have any questions, feel free to contact us at vhelin#iki.fi. 7. THANKS TO * The DevKitPRO guys! :) * Stephen Stair for DSWifi! * All the folks contributing to those fine DS hardware documents. * Chishm for libfat! * Lick for libcartreset! * Tuomo Lehtinen and Tuomas Erikoinen for good ideas. * Aaron Rogers for taking some screenshots! * You? 8. LEGAL STUFF You use this on your own risk. We don't take responsibility for anything. The archive file (explosionOfAnAeroplane_0.2.6.tar.gz) must be distributed as it is. You are not allowed to change the files inside the archive file, add anything to the archive file, rename the archive file, or repackage the files inside the archive file. You are not allowed to sell this game without a written permission from us all (also known as a contract). Currently you are only allowed to distribute the archive file as it is, for no charge. The server code under the "explosionOfAnAeroplaneServer" directory is licensed under GPL. See the file LICENSE for more information about the license. You can take the server code out from the archive and use it according to LICENSE.