pingus - A puzzle game where you have to save penguins
Pingus is a side-scrolling puzzle game where the player has to guide a group of
penguins from the entrance of a level to the exit, in between the path is
blocked by numerous obstacles and dangers that the player has to overcome by
assigning actions to the penguins.
- -h, --help
- Displays this help
- -V, --version
- Print version number and exit
- -v, --verbose
- Enable info level log output
- -D, --debug
- Enable debug level log output
- -Q, --quiet
- Disable all log output
- -w, --window
- Start in Window Mode
- -f, --fullscreen
- Start in Fullscreen
- -r, --renderer=RENDERER
- Use the given renderer, defaults to sdl. Available
- A simple software renderer based on SDL, this is the
default and the safest options.
- The OpenGL renderer will use hardware acceleration to
render the graphics, it is much faster then the SDL renderer and
recommended when the hardware supports OpenGL.
- The delta renderer uses SDL for rendering and doesn't use
hardware acceleration, it will however try to increase rendering
performance by only re rendering screen elements that have changed. Using
the delta renderer will disable some effects such as scrolling background
to allow maximum benefits.
- -g, --geometry=WIDTHxHEIGHT
- Set the window resolution for pingus (default: 800x600).
Note that --geometry only applies to the window resolution, for the
fullscreen resolution use --fullscreen-resolution
- -R, --fullscreen-resolution=WIDTHxHEIGHT
- Set the resolution used in fullscreen mode (default:
- Enable software cursor
- Disable automatic scrolling. Automatic scrolling will cause
the screen to scroll whenever the mouse reaches the border of the screen.
Automatic scrolling will only be active in fullscreen mode or when
mouse-grab is enabled.
- Enable drag'n drop scrolling. By default Pingus will use a
rubber-band scrolling where the scroll speed depends on how far away the
cursor is from the position when the mouse button has been clicked. In
drag&drop mode scrolling will behave more like in traditional GUI
applications such as Gimp, where clicking the scroll button will 'pick up'
the playfield and allow to move it around till it is released again.
- -s, --disable-sound
- Disable sound
- -m, --disable-music
- Disable music
- -l, --language=LANG
- Select language to use with Pingus
- List all available languages
- -e, --editor
- Loads the level editor
- -d, --datadir=DIR
- Load game datafiles from DIR
- -u, --userdir=DIR
- Load config files and store savegames in DIR
- -a, --addon=DIR
- Load game modifications from DIR. Files in DIR will be used
instead of the files in found in the main datadir of Pingus, thus allowing
to modifications, such as sprites replacements, additional levels, etc. to
the game, without changing the main data files.
- Don't read ~/.pingus/config
- -c, --config=FILE
- Read config from FILE
- Uses the controller given in FILE
- Enables some special features for developers
- -t, --speed=SPEED
- Set the game speed (0=fastest, >0=slower)
- -k, --fps=FPS
- Set the desired game framerate (frames per second)
- Set the size of the map tiles (default: 32)
All gameplay related keyboard shortcuts are configurable via a controller config
file, see --controller
- W, A, S, D
- Scroll in the level
- Hold to ast-forward
- P, R
- Pause the game.
- S, F
- Advance the game by a single frame.
- Activate armageddon.
- Leave the current screen/level.
- Show/hide the FPS counter.
- AltReturn, F11
- Switch to fullscreen/window mode.
- Toggle mouse grab, when active, the mouse can not leave the
- Ctrlo, F5
- Show the option menu.
- Make a screenshot. Screenshots are stored in
- Toggle the developer mode, see --developer-mode
- c (only in developer-mode)
- Show the collision map overlayed over the regular
- k (only in developer-mode)
- Clear the screen for delta mode debugging.
- The Basher will to a horizontal dig, leaving behind it a
tunnel. It is not able to dig through metal.
- The Blocker will stop and stay in position, directing other
penguins to turn around when they reach him.
- The Bomber will blow up on the spot and take a bit of
surrounding ground with it.
- The Bridger will build a small bridge, useful for crossing
- The Climber actions allows a Pingu to travel upwards a
vertical wall. Unlike other actions the climber action is a permanent
addition to the Pingus ability.
- The Digger will dig a hole into the ground. It can't dig
- The Floater action will give a penguin a small propeller
that lets him gently glide down from great heights that would otherwise be
- The Jumper will let the Pingu do a big leap forward,
allowing him to cross chasm and small vertical obstacles.
- The Miner will dig a diagonal hole into the ground.
- The Slider will make a tiny leap forward, gliding on its
belly for a short while, allowing the Pingu to make it through narrow
Pingus comes with a build in level editor. The level editor can currently be
used to edit level files (*.pingus) as well as prefabricated objects
(*.prefabs). Worldmaps (*.worldmap) can currently not be edited with the
All Pingus data files, except the sound and images, are raw text files and can
be edited in a text editor if the editor isn't sufficient.
If you want to submit a level to be included in the next release follow the
following naming convention:
Do not use space or uppercase in the levelname and keep the levelname simple
). The filename
should not reflect the actual level title, it simply should be unique and not
conflict with other peoples levels. If you plan on building a whole levelset,
name the levels after the levelset.
To submit a level send it to <firstname.lastname@example.org>.
A prefab, short for prefabricated object, is a group of objects that have been
combined into a new single object. A classic case of a prefab would for
example be a snowman, it is build out of multiple smaller snowball objects and
then saved as prefab to allow easy reuse in multiple levels. Unlike simple
object groups, prefab are saved as reference in the level, thus if the prefab
is updated, all levels will see the change. Like object groups prefabs can be
ungrouped to break them back down to individual objects if individual editing
is needed, they are seizing to be prefabs at that point and changes to the
.prefab file will no longer be reflected in the level.
Prefabs behave pretty much like regular levels, to create a prefab simply start
a new level and insert the objects as usual, unlike regular levels the level
size is ignored and thus you have to place your object around the center of
the levels, marked by a cross, to have the prefab function properly. To save a
prefab as prefab instead of level you have to append .prefab suffix to the
Thumbnail generation for prefabs is currently done offline with the script
available from the Pingus source
The Pingus level editor is best used with a combination of mouse and keyboard,
all essential functions have keyboard shortcuts.
Unlike more traditional GUIs, the Pingus editor lacks scrollbars, so to move
around the level or the object list on the right simply use the middle or
right mouse button and drag&drop the list around.
Objects from the object list can be inserted into the level by drag&dropping
them over to the level.
- Delete, Backspace
- Delete all currently selected objects
- Select or unselect all objects
- Duplicate the currently selected objects
- I, K, J, L
- Move the current selection by one pixel, if Shift is
held, move it by 32 pixel.
- PageUp, PageDown
- Raise or lower an object
- ShiftPageUp, ShiftPageDown
- Raise or lower an object to the top or bottom
- R, ShiftR
- Rotate an objects 90 degrees, if Shift is held
rotate it the other way around
- F, ShiftV
- Flip an object horizontally
- V, ShiftF
- Flip an object vertically
- B, ShiftB
- Toggle the background color to make it easier to see small
pixel errors. If shift is hold the color will be toggled in the opposite
- +, =, -
- Increase/decrease the repeat value of selected objects,
this will only have an effect on objects having an repeat value
(switchdoors, liquids, ...).
Copyright (C) 1998-2011 Ingo Ruhnke <email@example.com> See the file
AUTHORS for a complete list of contributors. Pingus comes with ABSOLUTELY NO
WARRANTY. This is free software, and you are welcome to redistribute it under
certain conditions; see the file COPYING for details.