Skip to content

HarbourMasters/Starship

Repository files navigation

Starship

Developed by:

Discord

Official Discord: https://discord.com/invite/shipofharkinian

If you're having any trouble after reading through this README, feel free ask for help in the Starship Support text channels. Please keep in mind that we do not condone piracy.

Quick Start

Starship does not include any copyrighted assets. You are required to provide a supported copy of the game.

1. Verify your ROM dump

The supported ROM is the USA 1.1 Rev A version. You can verify you have dumped a supported copy of the game by using the SHA-1 File Checksum Online at https://www.romhacking.net/hash/. The hash for a US 1.1 ROM is SHA-1: 09F0D105F476B00EFA5303A3EBC42E60A7753B7A.

2. Verify your ROM is in .z64 format

Your ROM needs to be in .z64 format. If it's in .n64 format, use the following to convert it to a .z64: https://hack64.net/tools/swapper.php

2. Download Starship from Releases

3. Generating the OTR from the ROM

Windows

  • Extract every file from the zip into a folder of your choosing.
  • Copy your ROM to the root of the folder you extracted the zip to.
  • Run "generate_otr.bat"

MacOS

  • Extract every file from the zip into a folder of your choosing.
  • Copy your ROM to the root of the folder you extracted the zip to.
  • Run "generate_otr.sh"

4. Play!

  • Launch Starship.exe Congratulations, you are now sailing with Starship! Have fun!

Configuration

Default keyboard configuration

N64 A B Z Start Analog stick C buttons D-Pad
Keyboard X C Z Space WASD Arrow keys TFGH

Other shortcuts

Keys Action
F1 Toggle menubar
F11 Fullscreen
Tab Toggle Alternate assets
Ctrl+R Reset

Graphics Backends

Currently, there are three rendering APIs supported: DirectX11 (Windows), OpenGL (all platforms), and Metal (macOS). You can change which API to use in the Settings menu of the menubar, which requires a restart. If you're having an issue with crashing, you can change the API in the starship.cfg.json file by finding the line "Backend":{... and changing the id value to 3 and set the Name to OpenGL. DirectX 11 with id 2 is the default on Windows. Metal with id 4 is the default on macOS.

Custom Assets

Custom assets are packed in .o2r or .otr files. To use custom assets, place them in the mods folder.

If you're interested in creating and/or packing your own custom asset .o2r/.otr files, check out the following tools:

Development

Building

If you want to manually compile Starship, please consult the building instructions.

Powered by libultraship

Special Thanks:

  • ZeldaRET : for teaching me the fundamental knowledge of N64 decompilation.

  • Decompals : for helping in the initial disassembly and decompilation of the game.

  • HM64 Team : for creating Libultraship and helping with various issues.

  • DarioSamo : for providing important fixes to the renderer and information about the inner workings of the game graphics system.

  • garrettjoecox : for contributing with interpolation fixes to this port.

  • inspectredc : for contributing to the SF64 decompilation project.

  • Lywx : for co-developing this port as a lead and creating Torch asset extraction system.

  • m4xw : for helping with audio issues in this port.

  • Malkierian : for contributing with important fixes to this port.

  • petrie911 : for contributing to the SF64 decompilation project as a lead.

  • Ryan-Myers : for contributing to the SF64 decompilation project.

  • Thar0 : for contributing with an improved Starfield that can be interpolated to any framerate.

  • TheBoy181 : for contributing to this project with various widescreen enhancements such as level floors, an extended Starfield among other things.

  • Wiseguy : for providing important information about the inner workings of the N64 platform, as well as helping with the decompilation process.