-- OldSkoolGravityGame -- - A gravity game in glorious 70's style vector graphics. To run the game, type: ./start.sh -- Index -- 0.0 osgg Info and License 0.1 Objective 0.2 Controls 0.3 Command line arguments 1.0 Level editing 1.1 Level elements 1.2 Polygons 1.3 Entities 1.4 Waypoints 2.0 Requirements, Compiling, Installation --------------------------------- 0.0 osgg Info and License Author: Jimmy Christensen Project page: http://sf.net/projects/osgg License: Everything except the font: GPL v3 or (at your option) newer. Bandal.ttf: Artistic License; Version 1 or (at your option) newer. --------------------------------- 0.1 Objective The objective in the game is to navigate your spaceship through the waypoints in each level. The next waypoint is shown on the radar, which is the green box to the right. You have a limited amount of fuel for travelling between waypoints, however, when you land on a waypoint, your ship is refilled. You also have a limited amount of laser shots which are also refilled. The fuel and ammo is shown as two lines in the box next to the radar. The other lines in that box is your velocity and the critical (maximum) velocity for a successfull landing. Your ship will crash if the velocity is over the red lines. When every waypoint in a level is completed, the game continues to the next level. The game will print out scores for each level to the standard output. --------------------------------- 0.2 Controls F10: Toggle sound on/off F11: Toggle fullscreen on/off F12: Take screenshot (saves in current dir, screenshot_XX.tga) t: start new game s: toggle between editor and game ESC: Exit (or, if creating a polygon, cancel creation) Mousewheel up/down: zoom in / out In game controls: t: start new game from starting level. Arrow up : Thrust Arrow Left/Right: Rotate ship Space: Shoot laser p: save (for the duration of the game) current position o: restore (undefined behaviour if used before a game is saved) Editor controls: Left Mouse Button: Add/Edit/Drag Right Mouse Button: Move around the board 0: Adding: Polygons 1: Collision detection on from the next verticy (default on) 2: Collision detection off from the next verticy (remember to put it on again when wanted) 3: Landing platform (this can only be used to create entities, not to make part of the level a platform) 4: Next verticy is white 5: Grey 6: Invisible (transperant) 7: Red 8: Green 9: Blue q: Adding: The ship (Player start position) w: Adding: Bases e: Adding: enemies d: Write the first polygon to verts.txt ("export that polygon for use as a entity") m: Adding: Mission waypoints. n: Use the added mission waypoints. (Press after defining waypoints, overrides existing) g: save map to whichever level file. t: start new game from starting level del: remove polygon or entity --------------------------------- 0.3 Command line arguments All arguments are optional. ./osgg [NUM] [--levelfile FILE] [--playdemo FILE] [--savedemo FILE] [--nosound] [--fullscreen] [--bgcolor RRGGBB] [--edit] [--is] NUM :Start at level NUM instead of 0. ./osgg 3 would make the game start at level 3. --levelfile :Loads FILE instead of level 0 for editing/playing/creating. --playdemo :Plays the demo FILE, you have to select a level. ./osgg 5 --playdemo mycoolbeatingoflevel5.bin ./osgg --levelfile some.level --playdemo mebeatingsomelevel.bin --savedemo :Record demo with F1, save with F2, saves to FILE instead of demo.bin --nosound :Turn sound off (it will still load sounds etc, compile with -DNOSOUND to disable sounds totally) --fullscreen :Start in fullscreen (in the current resolution) --bgcolor :sets RRGGBB to background color instead of black. ./osgg --bgcolor 222222 is light grey ./osgg --bgcolor FF0000 is red. --edit :Start up in editor mode instead of play mode. --is :The game saves progress in level each time you land on a base, and restores it when you die, instead of starting from start. Windows users need to edit winosgg.bat to apply the arguments --------------------------------- 1.0 Level Editing Refer to the controls section to see how to do actions described here. 1.1 Level Elements A level consists of: Entities - Ship, Base, Enemy Polygons - The enviroment, consist of verticies. Waypoints - The Route that the player has to travel in order to complete the level. 1.2 Polygons Remember to select "Adding: Polygons" Hover over a verticy of a polygon and press del to remove the polygon. Polygons is a section of verticies, verticies are the points on the map between which lines are drawn. A polygon can contain as many verticies as desired, and in diffrent colors and with either collision detection on or off. If collision detection is on on a verticy and the ship collides with the line between that verticy and the next, the player dies. If the collision detection is off, nothing happens, the ship flies right through that line. To create a polygon, click where you want the first corner of the polygon, then click to add more verticies, to finish the polygon, hold your mouse over the first verticy and the curser changes color, click to complete. After completing a polygon you can drag around the verticies if desired, hover the cursor over a verticy, and the curser changes color, then hold mouse to drag. 1.3 Entities To add a entity, first choose the type of entity to add (you can only add one ship) Press where you want it placed, then hover over the small dot and drag it into place. To delete a entity, hover over it and press del. 1.4 Waypoints Enter "Add waypoint" mode by pressing m Hover over the base (the cursor changes color) which should be the first base (the base on which the ship starts) and click to add the start of the waypoints, then hover over the other bases and click on those too, yellow lines are drawn between them. When you are done, add the waypoint list to the map, by pressing n. You can not edit waypoints, if you wish to define new waypoints for a allready saved map, edit the game and enter the editor again. --------------------------------- 2.0 Requirements, Compiling, Installation To compile you need the development versions of the following libs: sdl sdl-image sdl-ttf opengl You also need the "make" program and the g++ compiler aswell as the standard c++ lib. To compile cd into the dir where you unpacked osgg, type: make If you want to compile and install (dont to this if you have no idea what any of it means), type: DATADIR="/path/to/data/dir/" make then move the binary: cp osgg /path/to/games/binaries/ and create a dir for the datafiles: mkdir "/path/to/data/dir" and copy the datafiles: cp -a * "/path/to/data/dir/"