bcf9f392f0
* Adds in-game display of certain rando collectibles. Before, these were only available through the Item Tracker ImGui Window. With this commit, they can be accessed via holding C-Up on the Map Screen. Currently I've added Greg and Triforce Pieces (when applicable) to this menu. Boss Souls, Ocarina Buttons, and eventually Silver Rupees will be added later. * Adds ocarina buttons to in-game display * Initial pass on rendering the text on a black background. * Starting to render boss soul icons * Better alignment and rendering of Boss Soul icons. * Adds icons prefixing the list entries. * Switches boss souls to 32x32 icon. * Partially working Matrix/Vtx implementation Currently hardcoded Greg text, replacing map screen completely. * Now rendering properly thanks to Archez! * Better implementation of accessing the new page. - now attached to Quest status instead of Map - now triggered by a toggle instead of holding a button - now has its own background (temporarily save screen but will be replaced with something custom later) * Make KaleidoEntry's reactive to game state Adds Greg proper and Triforce Hunt to the Misc. Collectibles Page. * Conditionally render Triforce Hunt * Documentation/Cleanup * WIP Ocarina Buttons rendering * Working ocarina buttons display * Renders buttons as Gray instead of using Grayscale This may seem inconsistent, but with Grayscale they technically render as different shades of gray, especially with custom cosmetics. With this they now render as the same shade of gray. * Makes Ocarina Icon gray when no buttons have been collected. * Adds Boss Souls. Currently they run off the menu, need to implement scrolling. * Implement Scrolling for the menu. Need to figure out how to throttle the stick inputs still. * Moves input handling to draw function. I hate it but that's how Kaleido does it and there's some input throttling logic in there, so in order to make this feel like a kaleido menu I have to also handle input in the draw function. * Removes custom cosmetic handling of Ocarina Buttons. I've chosen not to respect the cosmetics for the sake of accessibility and color contrast, but the code is still present and commented out in case we want to reverse that decision. * Hopefully fixes mac build errors. * Implements update function via Hook. * Another mac fix hopefully * Cleans up unused code from the rectangle based attempt. * Clean up more unused code * Commit Boss Soul icon * Fix typo * Remove commented code * Improve toggle functionality * Re-introduce cosmetic matching for ocarina buttons * Revert some unnecessary formatting changes * Fix cursor/page turning issue More improvements to come here (drawing arrows, custom text at the bottom, etc.) * Fix some more formatting changes * One last batch of formatting reverts |
||
---|---|---|
.devcontainer | ||
.github/workflows | ||
CMake | ||
docs | ||
libultraship@0302eab051 | ||
OTRExporter@2cfdb39609 | ||
scripts | ||
soh | ||
ZAPDTR@04d42249d2 | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
CMakeLists.txt | ||
copy-existing-otrs.cmake | ||
Dockerfile | ||
README.md |
Website
Official Website: https://www.shipofharkinian.com/
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 Support text channels. Please keep in mind that we do not condone piracy.
Quick Start
The Ship does not include any copyrighted assets. You are required to provide a supported copy of the game.
1. Verify your ROM dump
You can verify you have dumped a supported copy of the game by using the compatibility checker at https://ship.equipment/. If you'd prefer to manually validate your ROM dump, you can cross-reference its sha1
hash with the hashes here.
2. Download The Ship of Harkinian from Releases
3. Launch the Game!
Windows
- Extract the zip
- Launch
soh.exe
Linux
- Place your supported copy of the game in the same folder as the appimage.
- Execute
soh.appimage
. You may have tochmod +x
the appimage via terminal.
macOS
- Run
soh.app
. When prompted, select your supported copy of the game. - You should see a notification saying
Processing OTR
, then, once the process is complete, you should get a notification sayingOTR Successfully Generated
, then the game should start.
Nintendo Switch
- Run one of the PC releases to generate an
oot.otr
and/oroot-mq.otr
file. After launching the game on PC, you will be able to find these files in the same directory assoh.exe
orsoh.appimage
. On macOS, these files can be found in/Users/<username>/Library/Application Support/com.shipofharkinian.soh/
- Copy the files to your sd card
sdcard
└── switch
└── soh
├── oot-mq.otr
├── oot.otr
├── soh.nro
└── soh.otr
- Launch via Atmosphere's
Game+R
launcher method.
4. Play!
Congratulations, you are now sailing with the Ship of Harkinian! 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 |
F5 | Save state |
F6 | Change state |
F7 | Load state |
F9 | Toggle Text-to-Speech (Windows and Mac only) |
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 shipofharkinian.json
file by finding the line gfxbackend:""
and changing the value to sdl
for OpenGL. DirectX 11 is the default on Windows.
Custom Assets
Custom assets are packed in .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 .otr
files, check out the following tools:
Development
Building
If you want to manually compile SoH, please consult the building instructions.
Playtesting
If you want to playtest a continuous integration build, you can find them at the links below. Keep in mind that these are for playtesting only, and you will likely encounter bugs and possibly crashes.