Giter Club home page Giter Club logo

shipwright's Introduction

Ship of Harkinian Ship of Harkinian

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 to chmod +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 saying OTR Successfully Generated, then the game should start.

Nintendo Switch

  • Run one of the PC releases to generate an oot.otr and/or oot-mq.otr file. After launching the game on PC, you will be able to find these files in the same directory as soh.exe or soh.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.

Powered by libultraship

shipwright's People

Contributors

alto1772 avatar amannus avatar archez avatar baoulettes avatar briaguya-ai avatar dcvz avatar emill avatar garrettjoecox avatar garyodernichts avatar greatargorath avatar inspectredc avatar jbodner09 avatar kenix3 avatar kiritodv avatar leggettc18 avatar lildavid avatar louist103 avatar malkierian avatar megamech avatar melonspeedruns avatar nestelami avatar patrick12115 avatar pepe20129 avatar purplehato avatar rozelette avatar sholdee avatar sirius902 avatar stratomaster64 avatar vaguerant avatar xoascf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shipwright's Issues

Keyboard remmaping

Someone can help about how to change the default config inputs Z(44), B(46), A(45) to for example K, L, Ç (ABNT2 keyboards)?? It's being quite hard to play running with W,A,S,D closer the Z,X,C buttons. Or if in future will be added a interface option to remapping the inputs.

Hookshot z target attack, cancels on watery floors, wearing iron boots in water temple

Playing through the water temple. Hookshot can z target and fire just fine with iron boots on, but not while underwater at bottom of water. discovered fighting the first underwater clam enemy. when firing the hookshot (only while targeting) it just keeps canceling the attack i'm trying to do, making it impossible to fight the clam as intended.

this may not be water temple-specific.

Game loads in debug mode regardless of settings

After playing the game in debug mode and then disabling the debug features, the game does not want to load without the debug features turned on anymore.

the ini file shows that debug mode is disabled, however the in game input viewer(not the SOH one) is present, and my save file loads as the map selection screen from debug mode.

If I turn debug mode on from the options bar and back off again, this seems to correctly disable it, so it’s not game breaking by any means. It is a pain though. Even after doing this and saving, the game does not load correctly.

In-game UI uses Gamecube textures instead of N64

This doesn't help you if you've actually hooked up a N64 controller.

It only helps if you are actually using a gamecube controller.

Additionally, different versions use different controller parsing that wouldn't work on an n64 controller.

The switch control scheme is closest to a normal xbox360 controller.

There should probably be some way to get back to n64 colors. or maybe even alternate prompt schemes.

Toggle HUD visibility

[Enhancement]
Minecraft uses F1 I think, to toggle its HUD, allowing for prettier screenshots to be taken. It would be nice to have a Function hotkey in SoH to toggle the HUD visibility for immersion or better screenshot-taking. Even better would be a cycling function, where certain elements are disabled in sequence, until none are visible, then pressing it again brings them all back.

for example:
if press F3:
1st time: disables map overlay
2nd time: disables bottom half of screen HUD
3rd time: disables top half of screen HUD
4th time, toggles the entire HUD back on

If this also disabled text boxes if visible, it's be extra awesome for getting screenshots during cut scenes.

a Debug Toggle/Slider Preventing Defeated Non-Puzzle Monsters from Respawning for Longer

[Enhancement]
It's annoying killing all monsters in a hub room, going one room over, coming back, and having all those enemies back in your face. in some cases, where enemies exist to help refill the consumables you need for a nearby puzzle, it makes sense, but otherwise maybe they could respawn after three rooms, or four, instead of immediately upon leaving the current room. I'm not totally sure how this is tested for in-game (time + number of screens crossed, distance, etc.), but it would be great to actually be able to clear out a dungeon, or at least have them respawn less often when you just defeated them all in an area.

Skip text when picking up an item for the first time

[Enhancement]
A toggle to skip or prevent a few tedious repeating texts/fanfares:

-CONSUMABLE ITEM FIRST TIME PICKUPS: picking up generic consumable items for the first time. I know what a deku seed, deku stick, deku nut, magic bottle, and a blue rupee are, picking up a small key, picking up another gold skultula for example. stuff like this qualifies as "first-time player tutorial info." and should be toggleable to prevent it.

-SONGS: being forced to sit through the whole ocarina song you just played, before its effects happen, AGAIN. a button to skip through this would be nice, even if it keeps audibly playing until done. Wind Waker HD added something like this; you don't have to listen to the whole song again, just play then immediately change the wind direction again. nice.

Lighting broken in grave cutscene

The darken lighting or fog in this scene is absent. As well as some effects missing and overlaying issues. It's even worse in the day
Running on windows 10 SDL2 - OpenGL intel i7 core

Ship.of.Harkinian.SDL2.-.OpenGL.2022-03-23.09-01-31_Trim.2.mp4

How it should look like

lcip.mp4

Linux PR Status Tracker

Title says it all :) I don't know how feasible it is to have a build for Linux/Mac systems. But would be lovely to have.

Can't add tags myself so feel free to edit or close

Best regards
Denny

"Full Day" Length Slider/Multiplier

[Enhancement]
The ability to set the length of a day-night cycle, would be amazing, especially to allow for longer nights for farming even bigger stalchild rupees.

ie
World Time Speed Multiplier:
Real Full-Day Length (24 hrs)
Real Time using system clock (updates upon entering an area where time passes)
0.1x
0.25x
0.5x
0.75x
1x
2x
3x
4x

Another level would be to allow for day and night length adjustment independently. I wish Minecraft had this, since imo Full Days are just too short in MC and OOT.

Map doesn't update between rooms

When moving between rooms, the map isn't updating for me. I only tested Dodongo's cavern so far, I didn't pay enough attention in the Deku Tree.

image

The map updates after bringing up/dismissing the START menu or when a cutscene plays.

Ability to use zip or 7z archives instead of MPQs

I'll probably take a crack at this myself later, but I figured I'd open a formal issue in the meantime. It would be really useful to be able to package mods as 7z or zip files, and would probably reduce confusion. I know there's tooling for MPQs, but it's just an extra unecessary step. From what I've read, the main reason it's using MPQs is because using a Blizzard archive format is funny, which is...kind of a terrible reason.

invisible cursor when fullscreen DirectX

Trying to use the F1 menu to adjust volume or something while in fullscreen its quite hard. It would be really nice to show the cursor when the menu is active or map the menu to controls

Option to toggle OFF (Bilinear?) texture filtering

Enhancement. The option to toggle on/off bilinear texture filtering/blurring, to instead render sharp square pixels using nearest neighbor/closest/point filtering. For some older 3d games with low-res textures (Metal Gear Solid on GOG with mods is another good example), this can look better than the intended blurred version and also aid pixel artists in understanding how the textures were made/painted.

Set Language (Changing language not working bug)

Hi, I was trying to help someone out who wanted the game to be in German, I knew that game has a debug function to set it to French, English, or German so I attempted to help, however I was having trouble getting the game to accept the inputs(as they needed to be entered from the 3rd controllers input) and at one point was able to set it to French but was unable to replicate it.

Anyways the main reason im making this post here is that it would be great if instead of having to set this from the debug functions if it could be entered from the SoH console instead.

Controller axis inversion

this has been a common request on discord

by default, aiming/c-looking in oot is inverted (joystick down looks up, joystick up looks down). this can be counterintuitive for people accustomed to games where the opposite is true (joystick up looks up, joystick down looks down)

the controller mapping in shipofharkinian.ini doesn't differentiate between movement joystick input and aim/look joystick input, so inverting aim without inverting movement is not currently possible

A "take screenshot" Function hotkey

(Enhancement)
Currently when in fullscreen, taking a screenshot via dropbox renders out a black screen (in OpenGL mode, I think).

it would be nice to have a built-in hotkey for rendering out a screenshot like Minecraft does with the F1 button (maybe F4 or something?). perhaps with a toggle that prevents it from capturing the hud if toggled on. would be great for allowing people to easily take pretty screenshots, which could increase hype and interest in the project.

hide/close console for steam deck

title^

hide or have a option for the console to not appear so that the Steam Deck doesn't keep switching and flashing the screen.

Filtered-0B442433-B0fa-4A14-B87b-0226F5f106cf-1-1.mp4

Various graphics rendering issues

How Morpha appears in SoH:

soh3

How it would look correctly rendered:

GLideN64_THE_LEGEND_OF_ZELDA_003

Bongo Bongo's effect issue in Kakariko Village CS (likely caused by more issues than just noise):

soh1

How it would look correctly rendered:

GLideN64_THE_LEGEND_OF_ZELDA_001

Keys in SoH:

soh14

How it would look correctly rendered:

GLideN64_THE_LEGEND_OF_ZELDA_011

Piece of Heart's in SoH:

soh13

How it would look correctly rendered:

GLideN64_THE_LEGEND_OF_ZELDA_009

Red Ice in SoH:

soh6

How it would look correctly rendered:

GLideN64_THE_LEGEND_OF_ZELDA_004

Rupees in SoH:

soh15

How it would look correctly rendered:

GLideN64_THE_LEGEND_OF_ZELDA_012

Warp Crystals in SoH:

soh5

How it would look correctly rendered:

GLideN64_THE_LEGEND_OF_ZELDA_005

Spike enemies in SoH:

soh7

How it would look correctly rendered:

GLideN64_THE_LEGEND_OF_ZELDA_006

Torch Slug's in SoH:

soh10

How it would look correctly rendered:

GLideN64_THE_LEGEND_OF_ZELDA_008

Link on the pause screen in SoH crops out his sword and restricted items do not get grayed out:

soh8

GLideN64_THE_LEGEND_OF_ZELDA_007

Pausing makes the fog go missing from objects/actors in SoH:

soh9

Door and grave circle transitions appear as white in SoH while it should be black:

soh16

GLideN64_THE_LEGEND_OF_ZELDA_016

soh19

GLideN64_THE_LEGEND_OF_ZELDA_001

Lake Hylia incorrect water level appearance/behavior

Issue: in lake hylia the functional water level can get out of sync with the visible water level

vlcsnap-2022-03-23-20h06m48s579

Expected behavior

  • as a kid, lake hylia's water level appears high, and link can swim in the high water
  • as an adult (before water temple), lake hylia's water level is low, and link can swim in the low water

Observed behavior

  • as a kid, lake hylia's water level sometimes appears high, but link can only swim in the (invisible) low water

Reproduction steps

  • close soh completely and reopen it
  • ensure debug mode is enabled
  • use map select to load lake hylia as adult
  • ensure the water level is low
  • use map select to load lake hylia as kid
  • the water appears high, but link can't swim in it

Additional Information

I first encountered this bug with debug mode disabled by:

  • going to lake hylia as an adult
  • using the console "reset" command
  • deleting my save file and starting a fresh one
  • going to lake hylia as a kid in the new file

i then made some videos trying to reproduce the bug

wishlist: randomizer support

ootr is great, and it's on gh

by using the existing randomizer code (possibly in collaboration with members of the ootr dev team), it should be possible to support randomizer functionality directly in soh without needing to patch roms

Disable drops/items timed despawn

[Enhancement]
It's always been really stressful to me how, as soon as an enemy drops some rupees, hearts, bombs, etc. you better drop what you are doing and rush over to pick them up before the EVAPORATE. this was probably done for RAM limitations or something back in the day, but is totally unneeded now I'd bet.

A slider in the debug menu to make things stay a specific amount of time, or a multiplier, or just a toggle that makes them stay until you leave that map zone, would be great for reducing the pointless stress caused by making items appear in the world.

Toggle [like Fast Text] To Speed Up Climbing, Block Pushing, and Chest Opening Animations

[Enhancement]
Like the original slow text, some of Link's animations slow the pacing a lot, especially in the case of these constant interruptions. Here are some animations that could benefit from having a speed-up option [maybe options for 1x, 2x, 3x, 4x]:
-climbing vines and ladders
-pushing and pulling blocks
-opening large and small chests
-bottling an item
-unbottling an item
-King Zora moving to the side

Perhaps there are other tedious repeated animations that would benefit from having this toggleable flag as well.

Navi Voice Volume Slider

[Enhancement]
The many volume sliders in SoH are glorious, especially for people like me who are easily fatigued by constant music and fanfares playing during exploration. Navi's voice needs a slider as well, especially since she can randomly yell at you, and it's very stressful. A volume slider for Link's voice would make sense, too, but I'm not sure if that should be a separate enhancement idea.

Instructions for Keyboard users only?

Any guidance for keyboard/mouse users? If so, how does one configure the shipofharkinian.ini file?
(Specifically, what keys do what)

I've figured out the following:
typical WASD
X=Enter
C=Back

Thanks!

First Kaepora Gaebora cutscene can softlock

During your first encounter with Kaepora Gaebora, there's a window of time where you can enter an action input (e.g. swinging the sword, using the C buttons). If you do so, something breaks and the camera doesn't stay on Kaepora Gaebora when he flies away and instead returns to Link. At this point, no controller or keyboard input works and Link is unable to move. If you make sure to only hit the A button during this interaction, you can avoid the issue.

I'm running on Windows 10 version 19043.1586 using the D3D11 backend.

Here's the save file I can reproduce this with:
oot_save.zip

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.