Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
128 commits
Select commit Hold shift + click to select a range
ef8b197
fix (#986)
lightmanLP Feb 14, 2025
84a7fd4
Anchor
garrettjoecox Feb 14, 2025
67eabc4
add condition to isSaveLoaded (#256)
balloondude2 Mar 21, 2025
c3a341a
Add remaining cutscene skips for enemies
Eblo Mar 3, 2025
90b224e
Early returns for VB_ENEMY_CUTSCENE_ACTION calls
Eblo Mar 3, 2025
3c6eaf2
Sequester EnPametfrog cutscene skips
Eblo Mar 9, 2025
6fa395c
Remove per-actor hooks, use new camera hooks
Eblo Apr 4, 2025
cef31cd
Use update hooks instead of init/destroy hooks
Eblo Apr 6, 2025
1231fd6
Cleanup includes
Eblo Apr 6, 2025
7f9bd20
basic hacky mouse support
lightmanLP Jan 3, 2025
e0d3242
fix
lightmanLP Feb 4, 2025
9a46117
column update
lightmanLP Feb 4, 2025
2418619
disabled -> hidden
lightmanLP Feb 4, 2025
d9d8b87
typo
lightmanLP Feb 4, 2025
a411652
fix inverts
lightmanLP Feb 5, 2025
3e906c4
remove shield flag check
lightmanLP Feb 6, 2025
e1d3920
shield invert cvars
lightmanLP Feb 6, 2025
d499440
mouse shield control
lightmanLP Feb 6, 2025
1ed7c57
bunch of renames for better understanding
lightmanLP Feb 6, 2025
a30e6e3
change cvar default value
lightmanLP Feb 9, 2025
1099071
some messy math
lightmanLP Feb 15, 2025
af95b12
reset shielding logic
lightmanLP Feb 15, 2025
4b122bd
separate custom shielding handle
lightmanLP Feb 15, 2025
96b5322
shielding handle update
lightmanLP Feb 15, 2025
bdca4af
small rename
lightmanLP Feb 22, 2025
6715ec6
update settings
lightmanLP Feb 22, 2025
a851c58
note
lightmanLP Feb 22, 2025
e3b6131
some fixes
lightmanLP Feb 22, 2025
e3f8c18
more fixes
lightmanLP Feb 22, 2025
6867b10
fix inverts
lightmanLP Feb 22, 2025
7beb3b1
note
lightmanLP Feb 22, 2025
03de134
moving around
lightmanLP Apr 16, 2025
9019b1b
freelook in z-target triggering fix
lightmanLP Apr 16, 2025
1b608f8
ztarget tweak
lightmanLP Apr 16, 2025
cc9702e
temporary shielding mouse pos reset
lightmanLP Apr 17, 2025
db33d73
mouse cursor hint
lightmanLP Apr 18, 2025
5ab07e8
basic soh copy-pasted quickspin
lightmanLP Apr 19, 2025
c2145d2
fix
lightmanLP Apr 30, 2025
2849a6e
Merge commit 'refs/pull/922/head' of https://github.com/HarbourMaster…
lilacLunatic Apr 30, 2025
d261a68
Merge branch 'anchor' of https://github.com/garrettjoecox/2ship2harki…
lilacLunatic May 13, 2025
be60489
Merge branch 'develop' of https://github.com/HarbourMasters/2ship2har…
lilacLunatic May 13, 2025
6e10dbe
int -> SectionColumns
lilacLunatic May 14, 2025
120c657
Fix cracking/buzzing with streamed audio (#1153)
lilacLunatic May 14, 2025
8427be9
Fix notebook events in Kafei's hideout (#1146)
Eblo May 16, 2025
60c0ce9
Separate CAN_PLAY_SONG from MeetsMoonRequirements (#1152)
Eblo May 16, 2025
8b7675a
Add FixSceneGeometrySeams toggle (#1145)
garrettjoecox May 16, 2025
bde6fcf
[Better Warp] Wrap entrance value for supported count on each scene (…
Archez May 16, 2025
52606a4
Merge branch 'develop' of https://github.com/HarbourMasters/2ship2har…
lilacLunatic May 16, 2025
089f845
LUS update (#1142)
louist103 May 18, 2025
c01e3f4
[Rando] Shuffle Grass v2 (#1155)
balloondude2 May 18, 2025
4a4460e
Fix audio crackling (#1154)
lilacLunatic May 18, 2025
254009b
Apply SoH voice sfx change (#1156)
Eblo May 18, 2025
a85fc6b
Merge branch 'develop' of https://github.com/HarbourMasters/2ship2har…
lilacLunatic May 18, 2025
3142df4
Fix inaccessible playstate check (#1157)
garrettjoecox May 18, 2025
4e228e0
[Enhancement] Add N64 Weird Frames restoration (#1077)
Sirius902 May 18, 2025
e38bd9f
Merge branch 'develop' of https://github.com/HarbourMasters/2ship2har…
lilacLunatic May 19, 2025
cc92e79
missing include LUS
lilacLunatic May 19, 2025
4e48979
Increase save buffer size
lilacLunatic May 19, 2025
aa10698
Merge commit 'refs/pull/1038/head' of https://github.com/HarbourMaste…
lilacLunatic May 20, 2025
0985f43
[revert later] mouse z-aim
lilacLunatic May 20, 2025
4425ae3
Move thank you to general tab, tweaks to disclaimer (#1162)
garrettjoecox May 20, 2025
008b0df
Fix goron dust particles not spawning by seeding gIrqMgrRetraceTime &…
garrettjoecox May 20, 2025
298fea4
add event to sst entrance chest (#1163)
balloondude2 May 28, 2025
3221402
Add enhancement for hidden grottos visibility (#1158)
Eblo Jun 5, 2025
0cc6c61
[Rando] Add Grass CSMC (#1170)
balloondude2 Jun 12, 2025
1d319d1
Implement fix for Mikau healing cutscene audio (#1165)
Eblo Jun 12, 2025
6208594
Merge pull request #1175 from balloondude2/merge-satoko
balloondude2 Jun 16, 2025
eb7d1f0
Add vector support to comboboxes (#1159)
louist103 Jun 28, 2025
c7f2068
Change rando sword pickup fix to check if not FD (#1183)
Eblo Jun 28, 2025
2660976
Update Skip Tooltips (#1178)
balloondude2 Jun 28, 2025
5994836
Fix BGM replay bug caused by enhancements that bypass normal scene tr…
Eblo Jun 28, 2025
e714630
Reorganize Menu Items (#1186)
balloondude2 Jul 1, 2025
2e63d71
Add Rando Grass Model Fade-In (#1174)
balloondude2 Jul 9, 2025
94d7887
Restrict Rando Settings for French Vanilla and Vanilla (#1190)
balloondude2 Jul 9, 2025
5b86f5a
[Rando] Separate Gorman Track inner region (#1193)
Eblo Jul 9, 2025
c305972
Fix incorrect backend ID for OpenGL in README.md (#1197)
Ammar-Sadaoui Jul 9, 2025
7d23c7f
Tweak cosmetic editor to handle Zora colors, add missed pieces (#1198)
Eblo Jul 9, 2025
2d1d038
Lus Bump (#1179)
louist103 Jul 21, 2025
0126e45
Port advanced resolution editor et al from SoH (#1200)
Eblo Jul 21, 2025
cf204b8
Use cycleObtained where feasible (#1201)
Eblo Jul 21, 2025
894630d
Skip Intro Persistence Fix (#1202)
mckinlee Jul 21, 2025
b9d50a9
[Rando] Update rando menu description, contributors list (#1205)
Eblo Jul 21, 2025
5139d60
Bump for Rena Alfa (#1206)
Eblo Jul 21, 2025
4a02498
basic hacky mouse support
lightmanLP Jan 3, 2025
2cd1e7f
fix
lightmanLP Feb 4, 2025
5724065
column update
lightmanLP Feb 4, 2025
568285d
disabled -> hidden
lightmanLP Feb 4, 2025
fc3ff03
typo
lightmanLP Feb 4, 2025
6e4f5de
fix inverts
lightmanLP Feb 5, 2025
ece4ade
remove shield flag check
lightmanLP Feb 6, 2025
06f12bc
shield invert cvars
lightmanLP Feb 6, 2025
7f3d153
mouse shield control
lightmanLP Feb 6, 2025
3bfddc2
bunch of renames for better understanding
lightmanLP Feb 6, 2025
c870000
change cvar default value
lightmanLP Feb 9, 2025
67a859f
some messy math
lightmanLP Feb 15, 2025
c1624c6
reset shielding logic
lightmanLP Feb 15, 2025
d404d8f
separate custom shielding handle
lightmanLP Feb 15, 2025
8583d0c
shielding handle update
lightmanLP Feb 15, 2025
4406a77
small rename
lightmanLP Feb 22, 2025
cba2df4
update settings
lightmanLP Feb 22, 2025
e571a73
note
lightmanLP Feb 22, 2025
693f984
some fixes
lightmanLP Feb 22, 2025
169909d
more fixes
lightmanLP Feb 22, 2025
0aa1991
fix inverts
lightmanLP Feb 22, 2025
7ee9e27
note
lightmanLP Feb 22, 2025
2ca7a41
moving around
lightmanLP Apr 16, 2025
a8ab927
freelook in z-target triggering fix
lightmanLP Apr 16, 2025
b551190
ztarget tweak
lightmanLP Apr 16, 2025
57db2ef
temporary shielding mouse pos reset
lightmanLP Apr 17, 2025
ca34d0b
mouse cursor hint
lightmanLP Apr 18, 2025
be60c86
basic soh copy-pasted quickspin
lightmanLP Apr 19, 2025
d5fb57b
fix
lightmanLP Apr 30, 2025
dc2e5b4
move condition
lightmanLP May 11, 2025
e94c602
disable capture in kaleido
lightmanLP May 11, 2025
4ace7d3
small fixes
lightmanLP May 11, 2025
dfefac7
fix mouse capture state buffering
lightmanLP May 11, 2025
4a999c5
small rename
lightmanLP May 11, 2025
f67e0a1
🔧
lightmanLP May 11, 2025
c5c6fff
[temporary] capture toggle for ben menu
lightmanLP May 11, 2025
7d256ae
compat1
lightmanLP Jul 24, 2025
cf3fc8c
Add tooltips to starting item checkboxes (#1209)
Mrlinkwii Jul 25, 2025
698d408
[Enhancement] Underwater Ocarina (#1091)
Sirius902 Jul 30, 2025
343f42b
Merge branch 'develop' of https://github.com/HarbourMasters/2ship2har…
lilacLunatic Jul 30, 2025
897da96
Merge branch 'develop' of https://github.com/HarbourMasters/2ship2har…
lilacLunatic Jul 30, 2025
ee7953b
[LL] removing stale VBs
lilacLunatic Jul 30, 2025
a402594
Merge commit 'refs/pull/922/head' of https://github.com/HarbourMaster…
lilacLunatic Jul 30, 2025
d1ed699
[LL] Removing stale mouse files
lilacLunatic Jul 30, 2025
874b5a0
Force rerun of builds
lilacLunatic Oct 29, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
18 changes: 15 additions & 3 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ jobs:
- name: Build 2Ship
run: |
export PATH="/usr/lib/ccache:/opt/homebrew/opt/ccache/libexec:/usr/local/opt/ccache/libexec:$PATH"
cmake --no-warn-unused-cli -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"
cmake --no-warn-unused-cli -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DBUILD_NETWORKING=1 -DINCLUDE_MPQ_SUPPORT=1
cmake --build build-cmake --config Release --parallel 10
(cd build-cmake && cpack)

Expand Down Expand Up @@ -207,6 +207,18 @@ jobs:
cmake ..
make
sudo make install
- name: Install latest SDL_net
run: |
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
if [ ! -d "SDL2_net-2.2.0" ]; then
wget https://www.libsdl.org/projects/SDL_net/release/SDL2_net-2.2.0.tar.gz
tar -xzf SDL2_net-2.2.0.tar.gz
fi
cd SDL2_net-2.2.0
./configure
make -j 10
sudo make install
sudo cp -av /usr/local/lib/libSDL* /lib/x86_64-linux-gnu/
- name: Install libzip without crypto
run: |
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
Expand All @@ -229,7 +241,7 @@ jobs:
- name: Build 2Ship
run: |
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
cmake --no-warn-unused-cli -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE:STRING=Release -DBUILD_REMOTE_CONTROL=1
cmake --no-warn-unused-cli -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE:STRING=Release -DBUILD_REMOTE_CONTROL=1 -DBUILD_NETWORKING=1 -DINCLUDE_MPQ_SUPPORT=1
cmake --build build-cmake --config Release -j3
(cd build-cmake && cpack -G External)

Expand Down Expand Up @@ -296,7 +308,7 @@ jobs:
VCPKG_ROOT: ${{github.workspace}}/vcpkg
run: |
set $env:PATH="$env:USERPROFILE/.cargo/bin;$env:PATH"
cmake -S . -B build-windows -G Ninja -DCMAKE_MAKE_PROGRAM=ninja -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache
cmake -S . -B build-windows -G Ninja -DCMAKE_MAKE_PROGRAM=ninja -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DBUILD_NETWORKING=1 -DINCLUDE_MPQ_SUPPORT=1
cmake --build build-windows --config Release --parallel 10

(cd build-windows && cpack)
Expand Down
1 change: 1 addition & 0 deletions CMake/FindOpusFile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
find_path(OPUSFILE_INCLUDE_DIR
NAMES opusfile.h
PATHS /usr/include/opus /usr/local/include/opus /opt/local/include/opus /opt/homebrew/include/opus
PATH_SUFFIXES "opus/"
DOC "Directory where opusfile.h is located"
)

Expand Down
2 changes: 0 additions & 2 deletions CMake/lus-cvars.cmake
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
set(CVAR_VSYNC_ENABLED "${CVAR_PREFIX_SETTING}.VsyncEnabled")
set(CVAR_Z_FIGHTING_MODE "${CVAR_PREFIX_SETTING}.ZFightingMode")
set(CVAR_NEW_FILE_DROPPED "${CVAR_PREFIX_GENERAL}.NewFileDropped")
set(CVAR_DROPPED_FILE "${CVAR_PREFIX_GENERAL}.DroppedFile")
set(CVAR_INTERNAL_RESOLUTION "${CVAR_PREFIX_SETTING}.InternalResolution")
set(CVAR_MSAA_VALUE "${CVAR_PREFIX_SETTING}.MSAAValue")
set(CVAR_SDL_WINDOWED_FULLSCREEN "${CVAR_PREFIX_SETTING}.SdlWindowedFullscreen")
Expand Down
25 changes: 10 additions & 15 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@ set(CMAKE_CXX_STANDARD 20 CACHE STRING "The C++ standard to use")

set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment version")
set(GAME_STR "MM")
project(2s2h VERSION 1.1.2 LANGUAGES C CXX)
project(2s2h VERSION 2.0.0 LANGUAGES C CXX)
include(CMake/2ship-cvars.cmake)
include(CMake/lus-cvars.cmake)
set(PROJECT_BUILD_NAME "Satoko Charlie" CACHE STRING "" FORCE)
set(PROJECT_BUILD_NAME "Rena Alfa" CACHE STRING "" FORCE)
set(PROJECT_TEAM "github.com/harbourmasters" CACHE STRING "" FORCE)

execute_process(
Expand Down Expand Up @@ -56,12 +56,6 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
endif()
endif()

if (CMAKE_SYSTEM_NAME MATCHES "Windows|Linux")
if(NOT DEFINED BUILD_CROWD_CONTROL)
set(BUILD_CROWD_CONTROL OFF)
endif()
endif()

# Enable the Gfx debugger in LUS to use libgfxd from ZAPDTR
set(GFX_DEBUG_DISASSEMBLER ON)

Expand Down Expand Up @@ -107,20 +101,21 @@ endif()
# Global configuration types
################################################################################
if (CMAKE_SYSTEM_NAME STREQUAL "NintendoSwitch")
set(CMAKE_C_FLAGS_DEBUG "-g -ffast-math -DDEBUG")
set(CMAKE_CXX_FLAGS_DEBUG "-g -ffast-math -DDEBUG")
set(CMAKE_C_FLAGS_RELEASE "-O3 -ffast-math -DNDEBUG")
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -ffast-math -DNDEBUG")
set(CMAKE_C_FLAGS_DEBUG "-g -ffast-math -DDEBUG -fPIE")
set(CMAKE_CXX_FLAGS_DEBUG "-g -ffast-math -DDEBUG -fPIE")
set(CMAKE_C_FLAGS_RELEASE "-O3 -ffast-math -DNDEBUG -fPIE")
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -ffast-math -DNDEBUG -fPIE")
elseif(MSVC)
# We need to remove RTC1 as it is not compatible with O2, which we set for some files in DEBUG
string(REGEX REPLACE "/RTC(su|[1su])" "" CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}")
string(REGEX REPLACE "/RTC(su|[1su])" "" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
set(CMAKE_C_FLAGS_RELEASE "/O2 /DNDEBUG")
set(CMAKE_CXX_FLAGS_RELEASE "/O2 /DNDEBUG")
else()
set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG")
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
set(CMAKE_OBJCXX_FLAGS_RELEASE "-O2 -DNDEBUG")
set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG -fPIE")
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG -fPIE")
set(CMAKE_EXE_LINKER_FLAGS "-pie")
set(CMAKE_OBJCXX_FLAGS_RELEASE "-O2 -DNDEBUG -fPIE")
endif()

if(NOT CMAKE_BUILD_TYPE )
Expand Down
8 changes: 7 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,13 @@ Congratulations, you are now sailing with 2 Ship 2 Harkinian! Have fun!
| 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 `2ship2harkinian.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.
Currently, there are three rendering APIs supported: DirectX 11 (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 also change the API manually in the `2ship2harkinian.json` file by finding the `"Backend": {` section and updating the backend ID and name. Be sure to use one of the valid values:

- `0` = DirectX 11 (default on Windows)
- `1` = OpenGL
- `2` = Metal (default on macOS)

# Custom Assets

Expand Down
2 changes: 1 addition & 1 deletion libultraship
Submodule libultraship updated 141 files
7 changes: 6 additions & 1 deletion mm/2s2h/BenGui/BenGui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
#include "2s2h/Rando/CheckTracker/CheckTracker.h"

#ifdef __APPLE__
#include "graphic/Fast3D/gfx_metal.h"
#include "graphic/Fast3D/backends/gfx_metal.h"
#endif

#ifdef __SWITCH__
Expand Down Expand Up @@ -57,6 +57,10 @@ std::shared_ptr<ItemTrackerWindow> mItemTrackerWindow;
std::shared_ptr<ItemTrackerSettingsWindow> mItemTrackerSettingsWindow;
std::shared_ptr<DisplayOverlayWindow> mDisplayOverlayWindow;

UIWidgets::Colors GetMenuThemeColor() {
return mBenMenu->GetMenuThemeColor();
}

void SetupGuiElements() {
auto gui = Ship::Context::GetInstance()->GetWindow()->GetGui();

Expand All @@ -73,6 +77,7 @@ void SetupGuiElements() {
gui->GetGameOverlay()->TextDrawNotification(30.0f, true, "Press - to access enhancements menu");
#else
gui->GetGameOverlay()->TextDrawNotification(30.0f, true, "Press F1 to access enhancements menu");
gui->GetGameOverlay()->TextDrawNotification(30.0f, true, "Press F2 to toggle mouse cursor");
#endif
}

Expand Down
5 changes: 5 additions & 0 deletions mm/2s2h/BenGui/BenGui.hpp
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
#ifndef BenGui_hpp
#define BenGui_hpp

#include <BenGui/UIWidgets.hpp>

namespace BenGui {
void SetupHooks();
void SetupGuiElements();
void Draw();
void Destroy();
UIWidgets::Colors GetMenuThemeColor();
}

#define THEME_COLOR BenGui::GetMenuThemeColor()

#endif /* BenGui_hpp */
1 change: 1 addition & 0 deletions mm/2s2h/BenGui/BenInputEditorWindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
#include <Context.h>
#include "public/bridge/consolevariablebridge.h"
#include "controller/controldevice/controller/mapping/ControllerRumbleMapping.h"
#include "controller/controldeck/ControlDeck.h"
#include "utils/StringHelper.h"
#ifndef __WIIU__
#include "controller/controldevice/controller/mapping/sdl/SDLAxisDirectionToButtonMapping.h"
Expand Down
Loading
Loading