Skip to content

RedTopper/Super-Haxagon

Repository files navigation

Banner Render

Icon Super-Haxagon

Super Haxagon is a cross platform, open source Super Hexagon clone for the Nintendo 3DS, Nintendo Switch, Windows, Linux, and the TI-Nspire (yes, the calculator). It is developed in C++ and uses no additional libraries for the core logic, making it easy (in theory) to port to new platforms. It also has a GUI based level editor called Haxa Editor.

Download

You can download the latest build on the releases page to the right.

Warning: The windows/linux versions requires a graphics adapter with OpenGL 3.2 or higher. Super Haxagon may be unsupported on first generation Intel processors, Remote Desktop sessions, or VMs with no hardware acceleration. See #22 for details.

Features

  • Cross Platform
  • Widescreen support
  • High Refresh Rate support
  • Custom Levels
  • OGG decoder for BGM
  • High Score Saving

Building

Super Haxagon targets the 3DS, Switch, Windows (MinGW + MSVC), and Linux. For desktop platforms, it uses a cross platform library called SFML, so it will probably also compile on other platforms that support it.

  1. Clone this repository with git clone https://github.com/RedTopper/Super-Haxagon.git --recursive

3DS Build

  1. Get MinGW and DevkitPro and install dependencies listed in the Makefile
  2. Use the provided Makefile with the command make TARGET:=3DS
  3. Install either the CIA or 3DSX on your 3DS

Switch Build

  1. Get MinGW and DevkitPro and install dependencies listed in the Makefile
  2. Use the provided Makefile with the command make TARGET:=SWITCH
  3. Copy the .nro to sdmc:/switch/SuperHaxagon/SuperHaxagon.nro and launch it from the hbmenu

TI-Nspire Build

  1. On Linux (I use WSL/Ubuntu), get and build Ndless
  2. Use the provided Makefile.nspire with the command make -f Makefile.nspire
  3. Copy haxagon.tns to the ndless folder
  4. Rename levels.haxagon to levels.haxagon.tns and copy it to the ndless folder

PC Build

... with MSVC on Windows

  1. Note: you may need the Visual C++ Runtime
  2. Download SFML for your MSVC version
  3. Rename the SFML folder to SFML-MSVC and place it in libraries
  4. Use Visual Studio to open a folder with the CMake file
  5. Build the game
  6. Press play

... with MinGW/msys on Windows

  1. Note: you may need the Visual C++ Runtime
  2. Download SFML for your MinGW version
  3. Rename the SFML folder to SFML-MinGW and place it in libraries
  4. Use the provided Makefile with the command make TARGET:=WIN64 OR use the CMake file
  5. Copy the romfs folder and SFML/bin/openal32.dll library next to the built executable (only needed with Makefile)
  6. Launch the executable

... with GCC on Linux

  1. Install SFML through your distro's package manager
  2. Clone this repository
  3. Use the CMake file or Makefile make TARGET:=LINUX64 to build it
  4. Launch the executable

Credits

Thanks everyone for:

Music Attribution

Werq by Kevin MacLeod
Link: https://incompetech.filmmusic.io/song/4616-werq
License: http://creativecommons.org/licenses/by/4.0/

Screen Saver by Kevin MacLeod
Link: https://incompetech.filmmusic.io/song/5715-screen-saver
License: http://creativecommons.org/licenses/by/4.0/

Call Me Katla, Baby by Dunderpatrullen
Captain Cool by Bossfight
Commando Steve by Bossfight
Dr. Finkelfracken's Cure by Bossfight
Jack Russel by Bossfight
The Maze Of Mayonnaise by Bossfight
Link: https://github.com/SuperV1234/SSVOpenHexagonAssets
License: ᵖˡᵉᵃˢᵉ ᵈᵒⁿ'ᵗ ˢᵘᵉ ᵐᵉ

Cross Platform

Below are a few screenshots featuring the various platforms that Super Haxagon compiles on. The 3DS version is packaged with a custom 3D banner to make it look official. Additionally, the gif was recorded on actual Nintendo Switch hardware.

3D Banner

In Game Windows

In Game 3DS

In Game Switch (GIF)

TI-Nspire

Hardware

More Screenshots

Title Screen Windows Title Screen 3DS Death Spiral Windows Death Spiral 3DS

Proof of Concept

Humble Beginnings Humble Beginnings

(Signature Verification)