1-- OldSkoolGravityGame --
2 - A gravity game in glorious 70's style vector graphics.
4To run the game, type:
7-- Index --
80.0 osgg Info and License
110.3 Command line arguments
121.0 Level editing
131.1 Level elements
172.0 Requirements, Compiling, Installation
200.0 osgg Info and License
21Author: Jimmy Christensen
22Project page: http://sf.net/projects/osgg
24 Everything except the font: GPL v3 or (at your option) newer.
25 Bandal.ttf: Artistic License; Version 1 or (at your option) newer.
30The objective in the game is to navigate your spaceship through the
31waypoints in each level. The next waypoint is shown on the radar,
32which is the green box to the right. You have a limited amount of
33fuel for travelling between waypoints, however, when you land on a
34waypoint, your ship is refilled. You also have a limited amount of
35laser shots which are also refilled. The fuel and ammo is shown as
36two lines in the box next to the radar. The other lines in that box
37is your velocity and the critical (maximum) velocity for a successfull
38landing. Your ship will crash if the velocity is over the red lines.
39When every waypoint in a level is completed, the game continues to the
41The game will print out scores for each level to the standard output.
47F10: Toggle sound on/off
48F11: Toggle fullscreen on/off
49F12: Take screenshot (saves in current dir, screenshot_XX.tga)
50t: start new game
51s: toggle between editor and game
52ESC: Exit (or, if creating a polygon, cancel creation)
53Mousewheel up/down: zoom in / out
55In game controls:
56t: start new game from starting level.
57Arrow up : Thrust
58Arrow Left/Right: Rotate ship
59Space: Shoot laser
60p: save (for the duration of the game) current position
61o: restore (undefined behaviour if used before a game is saved)
64Left Mouse Button: Add/Edit/Drag
65Right Mouse Button: Move around the board
660: Adding: Polygons
671: Collision detection on from the next verticy (default on)
682: Collision detection off from the next verticy (remember to put it on again when wanted)
693: Landing platform (this can only be used to create entities, not to make part of the level a platform)
704: Next verticy is white
726: Invisible (transperant)
76q: Adding: The ship (Player start position)
77w: Adding: Bases
78e: Adding: enemies
79d: Write the first polygon to verts.txt ("export that polygon for use as a entity")
80m: Adding: Mission waypoints.
81n: Use the added mission waypoints. (Press after defining waypoints, overrides existing)
82g: save map to whichever level file.
83t: start new game from starting level
84del: remove polygon or entity
870.3 Command line arguments
88All arguments are optional.
89./osgg [NUM] [--levelfile FILE] [--playdemo FILE] [--savedemo FILE] [--nosound] [--fullscreen] [--bgcolor RRGGBB] [--edit] [--is]
90NUM :Start at level NUM instead of 0. ./osgg 3 would make the game start at level 3.
91--levelfile :Loads FILE instead of level 0 for editing/playing/creating.
92--playdemo :Plays the demo FILE, you have to select a level.
93 ./osgg 5 --playdemo mycoolbeatingoflevel5.bin
94 ./osgg --levelfile some.level --playdemo mebeatingsomelevel.bin
95--savedemo :Record demo with F1, save with F2, saves to FILE instead of demo.bin
96--nosound :Turn sound off (it will still load sounds etc, compile with -DNOSOUND to disable sounds totally)
97--fullscreen :Start in fullscreen (in the current resolution)
98--bgcolor :sets RRGGBB to background color instead of black.
99 ./osgg --bgcolor 222222 is light grey
100 ./osgg --bgcolor FF0000 is red.
101--edit :Start up in editor mode instead of play mode.
102--is :The game saves progress in level each time you land on a base,
103 and restores it when you die, instead of starting from start.
105Windows users need to edit winosgg.bat to apply the arguments
1091.0 Level Editing
110Refer to the controls section to see how to do actions described here.
1121.1 Level Elements
113A level consists of:
114Entities - Ship, Base, Enemy
115Polygons - The enviroment, consist of verticies.
116Waypoints - The Route that the player has to travel in order to complete the level.
119Remember to select "Adding: Polygons"
120Hover over a verticy of a polygon and press del to remove the polygon.
121Polygons is a section of verticies, verticies are the points on the map
122between which lines are drawn. A polygon can contain as many verticies as
123desired, and in diffrent colors and with either collision detection on or off.
124If collision detection is on on a verticy and the ship collides with the line
125between that verticy and the next, the player dies. If the collision detection
126is off, nothing happens, the ship flies right through that line.
127To create a polygon, click where you want the first corner of the polygon,
128then click to add more verticies, to finish the polygon, hold your mouse
129over the first verticy and the curser changes color, click to complete.
130After completing a polygon you can drag around the verticies if desired, hover
131the cursor over a verticy, and the curser changes color, then hold mouse to drag.
134To add a entity, first choose the type of entity to add (you can only add one ship)
135Press where you want it placed, then hover over the small dot and drag it into place.
136To delete a entity, hover over it and press del.
139Enter "Add waypoint" mode by pressing m
140Hover over the base (the cursor changes color) which should be the first base (the base on which the ship starts)
141and 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.
142When you are done, add the waypoint list to the map, by pressing n.
143You can not edit waypoints, if you wish to define new waypoints for a allready saved map, edit the game and enter the editor again.
1472.0 Requirements, Compiling, Installation
148To compile you need the development versions of the following libs:
153You also need the "make" program and the g++ compiler aswell as the standard c++ lib.
155To compile cd into the dir where you unpacked osgg, type:
158If you want to compile and install (dont to this if you have no idea what any of it means), type:
160then move the binary:
161cp osgg /path/to/games/binaries/
162and create a dir for the datafiles:
164and copy the datafiles:
165cp -a * "/path/to/data/dir/"