SuperTux source code

Max Teufel 8aa1f1766a AppImage: include version %!s(int64=7) %!d(string=hai) anos
.github 36105b3807 .github: add an issue template %!s(int64=8) %!d(string=hai) anos
.travis 8aa1f1766a AppImage: include version %!s(int64=7) %!d(string=hai) anos
contrib 280d663a2f contrib: Archive Schroedinger's boxes (#390) patch %!s(int64=8) %!d(string=hai) anos
data aff4b74c7e Add new backgrounds by BlasterMaster %!s(int64=7) %!d(string=hai) anos
docs 8234d9c14f Icecrusher: Do not stop rising when there's an obstacle %!s(int64=8) %!d(string=hai) anos
external de93cc819a Add addons with precedence to the tinygettext search path. %!s(int64=8) %!d(string=hai) anos
man 9324a91826 supertux/man/man6/supertux2.6: Fix a syntax error. %!s(int64=14) %!d(string=hai) anos
mk 82f2979ef0 Cleanup windows build files %!s(int64=8) %!d(string=hai) anos
src 308a367035 Mark more method const %!s(int64=7) %!d(string=hai) anos
tests 6c0eec1840 Add test for collision.cpp %!s(int64=8) %!d(string=hai) anos
tools 82f2979ef0 Cleanup windows build files %!s(int64=8) %!d(string=hai) anos
translations @ c6cfdecb50 21d4e208b1 Update translations to latest version %!s(int64=8) %!d(string=hai) anos
.editorconfig ecf879928a tools: add .editorconfig (#424) %!s(int64=8) %!d(string=hai) anos
.gitattributes 719d035065 Add gitattributes file %!s(int64=8) %!d(string=hai) anos
.gitignore 6980bdccff Add Visual Studio Code project file to .gitignore. %!s(int64=7) %!d(string=hai) anos
.gitmodules fa20949d26 data: remove submodule %!s(int64=8) %!d(string=hai) anos
.mention-bot 7c09a68f43 .mention-bot: add configuration file %!s(int64=8) %!d(string=hai) anos
.travis.yml 17905c2e23 Travis/AppImage: fix some stuff %!s(int64=7) %!d(string=hai) anos
CMakeLists.txt a6a6b3ac40 pass compile flags to external projects %!s(int64=8) %!d(string=hai) anos
CODINGSTYLE 6442318bc6 CODINGSTYLE: document translator comments %!s(int64=8) %!d(string=hai) anos
CONTRIBUTING.md 4e1a4511f6 CONTRIBUTING: inform users of the ability to edit issues %!s(int64=8) %!d(string=hai) anos
Doxyfile.in 286a4f3b43 Integrate cmake and doxygen %!s(int64=8) %!d(string=hai) anos
INSTALL.md 0151fd08bc Add changes from PR-586 %!s(int64=8) %!d(string=hai) anos
LICENSE.txt 1e5b57e303 Fixed Windows builds, also changed version numbering scheme (currently cannot handle archives) %!s(int64=9) %!d(string=hai) anos
NEWS.md 1531f2c00c Release SuperTux v0.5.0 (stable) %!s(int64=8) %!d(string=hai) anos
README.md b62cd9603c Add Codacy badge %!s(int64=7) %!d(string=hai) anos
appveyor.yml 47f2c2cd88 Don't build on AppVeyor for coverity_scan %!s(int64=7) %!d(string=hai) anos
appveyor64.yml 47f2c2cd88 Don't build on AppVeyor for coverity_scan %!s(int64=7) %!d(string=hai) anos
config.h.cmake 757132a36c Improve datadir handling; fixes #394 %!s(int64=8) %!d(string=hai) anos
configure d67e254c94 add autotools-like wrapper configure and Makefile %!s(int64=13) %!d(string=hai) anos
extract_strings.py c1f284e8d7 Replace custom iterator with enumerate, thanks, leyyin [ci skip] %!s(int64=9) %!d(string=hai) anos
makedist.sh da28455afb makedist.sh: don't strip off too much of the version string %!s(int64=8) %!d(string=hai) anos
makepot.sh 9dcaa48733 makepot.sh: remove unnecessary code %!s(int64=8) %!d(string=hai) anos
supertux2.appdata.xml a8b6943dce Add changelog for 0.3.5a %!s(int64=9) %!d(string=hai) anos
supertux2.desktop b85a897dab Update desktop menu entry file to conform to XDG specs %!s(int64=9) %!d(string=hai) anos
version.cmake.in 93e7715818 Added support for source tarballs %!s(int64=9) %!d(string=hai) anos
version.h.in 3dc79f987c Fix PACKAGE_VERSION being empty, add unit test case for that issue %!s(int64=9) %!d(string=hai) anos

README.md

SuperTux

Codacy Badge Build Status AppVeyor Build Satus Coverity Scan Build Status Github All Releases

Description

SuperTux is a jump'n'run game with strong inspiration from the Super Mario Bros. games for the various Nintendo platforms.

Run and jump through multiple worlds, fighting off enemies by jumping on them, bumping them from below or tossing objects at them, grabbing power-ups and other stuff on the way.

Story: Penny gets captured!

Tux and Penny were out having a nice picnic on the ice fields of Antarctica. Suddenly, a creature jumped from behind an ice bush, there was a flash, and Tux fell asleep!

When Tux wakes up, he finds that Penny is missing. Where she lay before now lies a letter. "Tux, my arch enemy!" says the letter. "I have captured your beautiful Penny and have taken her to my fortress. The path to my fortress is littered with my minions. Give up on the thought of trying to reclaim her, you haven't got a chance! -Nolok"

Tux looks and sees Nolok's fortress in the distance. Determined to save his beloved Penny, he begins his journey.

Documentation

Important documentation for SuperTux is contained in multiple files. Please see them:

  • INSTALL.md - Requirements, compiling and installing.
  • README.md - This file
  • NEWS.md - Changes since the previous versions of SuperTux.
  • LICENSE.txt - The GNU General Public License, under whose terms SuperTux is licensed. (Most of the data subdirectory is also licensed under CC-by-SA)
  • docs/levelguidelines.txt - Very useful information for those that want to design levels for SuperTux.
  • data/credits.stxt - Credits for people that contributed to the creation of SuperTux. (You can view these in the game menu as well.)

Running the game

SuperTux makes use of proc to see where it is. In other words, it does not have any need to be installed and can be run from anywhere. This makes it possible to click in the executable in your filemanager (i.e. Konqueror or Nautilus) as opposed to many other Linux games.

Options can be reached from the menu, so you don't need to specify arguments, but if you want, type supertux2 --help to check the ones that are available. Also, notice that SuperTux saves the options, so it's often enough to specify them once. For example, fullscreen mode causes problems on some setups, so just run supertux2 --window and you should be set.

The game uses OpenGL to render the graphics. You will either need a CPU with about 1 GHz or an accelerated video card with recent graphics drivers.

Playing the game

Both keyboards and joysticks/gamepads are supported. You can change the controls via the Options menu. Basically, the only keys you will need to use in-game are to do the following actions: jump, duck, right, left, action and 'P' to pause/unpause the game. There isn't much to tell about the first few, but the "action" key allows you to pick up objects and use any powerup you got. For instance, with the fire flower, you can shoot fireballs, or with the ice flower fire ice pellets.

Other useful keys include the Esc key, which is used to go to the menu or to go up a level in the menu. The menu can be navigated using the arrow keys or the mouse.

In the worldmap, the arrow keys are used to navigate and Enter to enter the current level.

Development status

With the release of SuperTux 0.4.0 (December 2015), we wanted to provide a fairly stable release. The release of SuperTux 0.5.0 should have fixed some stability issues from 0.4.0 and introduced a new level editor. Development of the game will continue (of course), now working towards more releases. Most notably, development focus will be shifted on providing a better gameplay experience.

The Forest World (you can check it out: Start Game > Contrib Levels > Forest World) is relatively unstable, which is why it resides only in the contrib levels menu. We (SuperTux Team) intend to continue with the development of the Forest World, but decided that in order to allow more access to the most recent version (in repositories etc.) we would have to release Milestone 2 without the Forest World included in the Story Mode. Constructive feedback with regards to the Forest World is welcome.

Don't forget that you can get involved with the development at https://github.com/supertux/supertux, or get notified about the recent changes on Twitter @supertux_team

The End

Thanks for playing SuperTux.

The SuperTux Team