SuperTux source code

Philip 91b941700d Reset spawn fade type when using Level.spawn (#2957) 5 mēneši atpakaļ
.ci_scripts 2ca00ffc97 Echo branch name in deploy.sh 7 mēneši atpakaļ
.github 411d228aa5 Revert "Check out submodules recursively" 5 mēneši atpakaļ
.tx cbb20d9cc9 Update transifex config to latest version 1 gadu atpakaļ
contrib ec0a078502 contrib: remove outdated, unofficial KDevelop project 6 gadi atpakaļ
data 299fca6386 Update translations 5 mēneši atpakaļ
external 1fa2a76c84 Revert "Update tinygettext submodule" 5 mēneši atpakaļ
man 678df3cece Updated the manual pages (#1989) 2 gadi atpakaļ
mk 86fbb0d228 Remove -DCMAKE_CXX_COMPILER and -DCMAKE_CXX_FLAGS from physfs ExternalProject_Add call (PhysFS is written in C) 6 mēneši atpakaļ
src 91b941700d Reset spawn fade type when using Level.spawn (#2957) 5 mēneši atpakaļ
tests 97c59b4104 Rename `Rectf::contains(const Rectf&)` to `Rectf::overlaps(const Rectf&)` to reflect what this method actually does (#2734) 10 mēneši atpakaļ
tools fcfb3220f3 Use Miniswig from external submodule (#2440) 1 gadu atpakaļ
.clang-tidy 5cb721bc18 Fix some more clang-tidy warnings 5 gadi atpakaļ
.editorconfig ecf879928a tools: add .editorconfig (#424) 8 gadi atpakaļ
.gitattributes af36e7a45a Change .gitattributes (#1096) 5 gadi atpakaļ
.gitignore 276fde3d12 Auto-generate scripting reference (#2434) 1 gadu atpakaļ
.gitmodules 3c243e77d8 Change submodule reference to point to the main physfs repository 7 mēneši atpakaļ
CMakeLists.txt 3bd8395870 Update CMakeLists.txt 7 mēneši atpakaļ
CODINGSTYLE.md 5ddc70c658 typo 9 mēneši atpakaļ
CONTRIBUTING.md b6c970d021 Improve CONTRIBUTING.md 5 mēneši atpakaļ
Doxyfile.in 17820af0e8 doxygen -u Doxyfile.in 6 gadi atpakaļ
INSTALL.md 0dc40254b5 Fix WASM builds 1 gadu atpakaļ
LICENSE.txt a9e0d669b9 Revert "Update LICENSE.txt" 6 gadi atpakaļ
NEWS.md c1ddb4f28c Release SuperTux 0.6.3 (stable, bugfix) 2 gadi atpakaļ
README.md 2e08c1b7fa hestitate -> hesitate in README.md [ci skip] (#2809) 8 mēneši atpakaļ
clickable.yaml a4d0d323de Fixes and updates for Ubuntu Touch port (#2510) 1 gadu atpakaļ
config.h.cmake d6265b08e4 Remove redundant _SQ64 define 2 gadi atpakaļ
configure d67e254c94 add autotools-like wrapper configure and Makefile 13 gadi atpakaļ
flake.lock 29541ae3e5 Update Nix flake to use packages.${system}.default 2 gadi atpakaļ
flake.nix 2014263b34 Remove boost references in some files (#2703) 11 mēneši atpakaļ
guix.scm 2014263b34 Remove boost references in some files (#2703) 11 mēneši atpakaļ
makedist.sh 835386b0c5 Update Freedesktop Metainfo (#2684) 11 mēneši atpakaļ
makepot.sh fa5b9aa353 Change makepot.sh to pick up data.stcd and update messages.pot 5 mēneši atpakaļ
org.supertuxproject.SuperTux.metainfo.xml 835386b0c5 Update Freedesktop Metainfo (#2684) 11 mēneši atpakaļ
supertux2.desktop.in b5a86ce8d5 Major improvements to UBports build (#1705) 3 gadi atpakaļ
supertux2.svg b50fa77d1c Increased SuperTux icon size to 128x128 6 gadi atpakaļ
version.cmake.in b5a86ce8d5 Major improvements to UBports build (#1705) 3 gadi atpakaļ
version.h.in 41356f078a World-specific custom title screen levels (#2667) 11 mēneši atpakaļ

README.md

SuperTux

Windows MacOS GNU/Linux Android WebAssembly Ubuntu Touch Github All Releases

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.

Screenshot

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! 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.

Installation

For major platforms, stable releases are built and available for download from supertux.org or alternatively directly from GitHub. You should be able to install these using default tools provided by your platform. On macOS, when Gatekeeper is enabled (default) it will refuse to open SuperTux. This is due to the lack of a signature on the application. If you wish to open SuperTux anyway without disabling the Gatekeeper feature entirely, you can open the application from the context menu (control click on the icon). macOS will then remember your choice the next time.

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)
  • data/credits.stxt - Credits for people that contributed to the creation of SuperTux. (You can view these in the game menu as well.)

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.

Community

In case you need help, feel free to reach out using the following means:

  • IRC: #supertux on Libera Chat hosts most of the discussions between developers. Also, real-time support can be provided here. If you don't know how to use an IRC client, you access the channel using a web-based client. Please stay around after asking questions, otherwise you will be disconnected and might miss potential answers.
  • Matrix: #supertux:matrix.org is bridged to our IRC room.
  • Forum: The SuperTux community is very active on the forum, the discussion ranges from feature proposals to support questions. In particular, most community-contributed add-ons are published there first, so this is worth checking.
  • Mailing Lists: The supertux-devel mailing list is dead. Here is the archive.
  • Social Media: Mostly on Twitter at the moment.
  • Discord: Also, you can join our Discord server to get in touch with us.

Development status

As of now, with the release of SuperTux 0.6.3 (December 2021), the Forest World is almost finished, since the ghost forest section has been included. However, some levels, especially the Ghostree Level, are considered to be placeholders, because for the next version (0.7.0) a great overhaul is planned with new features like reworked boss fights, graphics, and worlds. If you have some Constructive Feedback, Contributions or ideas to share, don't hesitate to contact us with one of the possibilities given above.