Repository navigation
Combo Ship for Android 0.4.13
Combo Ship for Android 0.4.13 is the Ocarina of Time + Majora's Mask combo randomizer for Android phones. It is an unofficial Android port of ComboShip, a cross-game randomizer inspired by OoTMM and built on Ship of Harkinian and 2 Ship 2 Harkinian. Both games run natively in one app, with no emulator and no PC needed.
No ROMs are included. You need your own legally obtained OoT and MM ROMs. This is an unofficial fan project, not affiliated with Nintendo, Harbour Masters, the 2 Ship 2 Harkinian team, the OoTMM team or upstream ComboShip.
The README explains everything the app includes and how it differs from upstream ComboShip.
New in 0.4.13:
- Master Quest dungeons from your normal OoT ROM, as in OoTMM.
- Wallmaster Shuffle now works with Master Quest dungeons, cross-game warp songs and a starting OoT warp song.
- OoTMM's OoT warp-song places.
- Fixes for seed setup, saves when crossing games, and co-op seed sharing.
Download and install
-
On your phone, under Assets below, tap
ComboShip-Android-0.4.13-arm64.apk(about 45 MB), not "Source code". If your browser warns about the file, choose Download anyway. -
Open it. If Android asks, allow your browser or file manager to install unknown apps. The app is not from Google Play and is signed with a development key, so Google Play Protect may warn you. You can still install it, usually with More details, then Install anyway.
-
First install:
- Copy your two ROM files to the phone first. Unzip them if they are in a
.zip. - Open Combo Ship and tap Allow file access. On Android 11 and newer, turn on the switch Android shows, then go back.
- Choose your OoT ROM, then your MM ROM. The game starts by itself; choose Extract on the ROM Setup panel.
- At the file select, tap Menu, then Apply preset on Home, then Randomizer → Generate → Generate combined seed.
- Tap Return to game, pick an empty file (File 1 unless you changed it), wait for Seed ready for OoT + MM, and choose Start Randomizer.
Full steps: README.
- Copy your two ROM files to the phone first. Unzip them if they are in a
-
Updating an earlier Combo Ship build: install over it. Do not uninstall first or clear app data. Your ROMs, saves and settings are kept, and saves keep their seeds. Make a backup first with App options → Back up saves and settings.
An APK built by someone else, including one you built yourself, has a different signature. This APK cannot install over it.
Requirements
- Android 9 or newer, 64-bit ARM (arm64-v8a), OpenGL ES 3.0.
- Your own ROMs, as raw
.z64,.v64or.n64files (not ZIP):- Ocarina of Time: a normal (not Master Quest) ROM that Ship of Harkinian accepts. Tested: N64 USA 1.0. The Master Quest dungeons need the USA 1.0 ROM.
- Majora's Mask: N64 USA 1.0 or GameCube USA. Tested: N64 USA 1.0.
What's new
- Master Quest dungeons, as in OoTMM. With an OoT USA 1.0 ROM, any of the 12 OoT dungeons can be its Master Quest version, played from your normal ROM with OoTMM's bundled Master Quest data.
- Search "MQ Dungeon Setting" in the Randomizer tab. The settings are None, Set Number, Random or Selection Only.
- Allsanity makes each dungeon Master Quest on a coin flip, as OoTMM's does.
- Wallmaster Shuffle in more seeds:
- With Master Quest dungeons. One combination can't be made, in OoTMM either: Master Quest Spirit Temple and Bottom of the Well with a normal Shadow Temple and Ganon's Castle. When your settings always give that combination, the row says what to change. When a random roll gives it, generation stops and asks you to try another seed.
- With "Play warp songs across games" and Song of Soaring at any age (OoT), as OoTMM allows.
- With a starting OoT warp song, for example Prelude of Light. The Beginner preset still needs Song of Soaring removed from MM's starting items.
- OoT warp songs and the ocarina now work where OoTMM allows them, in new seeds:
- Warp songs, Soaring and Farore's Wind work in the Gerudo Training Ground and inside Ganon's Castle.
- OoT's warp songs are refused in the Windmill and Dampé's grave.
- The ocarina works at Granny's Potion Shop and the Shooting Gallery.
- Files you already started keep the old behaviour.
Fixes
- A seed with a Random starting age now always starts at the same age. Before, the age was chosen again when a seed was set up after an app restart, loaded with the Plandomizer, or loaded on a co-op partner's device. Link could then start at the other age than the seed was made for, which can leave it unbeatable. The Allsanity and Beginner presets use a Random starting age.
- This has been the case since at least 0.4.5.
- New seeds record their choices. The seed view shows the starting age and required trials, and warns for older seeds.
- Files you already started are unaffected.
- Crossing games no longer loses the room you left from. Warping to the other game with a warp song, Soaring or Farore's Wind used to forget what you had just done in that room. A chest you opened could close again and give its item twice, and a door you unlocked could lock again while the key stayed used. This affected both games.
- Saving a seed made in the app onto another file with Randomizer > Plandomizer works again for Wallmaster seeds. In 0.4.12 this was refused, which broke the co-op step for the second player. A failed save now says plainly that the file was left unchanged.
- With "Skip story cutscenes", returning the Deku Princess no longer loops through dozens of black screens.
- Starting with Song of Soaring in MM now greys out Wallmaster Shuffle in the menu, instead of failing only when generating.
How this build was tested
- Shipping build with no developer code. The APK checks passed, with the same signing key as before.
- 213 automated tests pass (2 skipped on Windows).
- On the emulator, with release candidates of this version:
- All 220 Master Quest rooms of the 12 dungeons were checked against OoTMM's data, as child and as adult.
- All 16 Master Quest Wallmasters sent Link where their seed said.
- Cross-game warp songs, Soaring and the Song of Time return worked.
- Captures after crossing games, a starting Prelude of Light seed and the new warp-song places worked.
- The Deku Princess skip worked, and installing over 0.4.12 kept the existing save.
- A Random starting age stayed the same after app restarts.
- Plandomizer saves of seeds made in the app worked.
- A room's progress was kept after crossing games.
- 46 test seeds made by this version's generator generated, reproduced byte for byte, and those with logic were confirmed beatable. They covered Wallmaster seeds with Master Quest dungeons, cross-game songs and a starting warp song, Master Quest seeds without Wallmasters, and 0.4.12 seeds made again.
- Not tested on a phone. Not tried: adult Link jumping a fence on Epona in MM, and co-op over the Internet.
Known issues
- Some Wallmasters only drop when Link stands still on the ground near their spot for a few seconds, as in the original game.
- In MM's Save Editor, edits made while OoT is the game in front don't stick, and the same goes the other way around. Switch to the game you want to edit. A fix is planned for 0.4.14.
- A new glitch in the original games, using a bottle at the end of an attack, can break Powder Keg boulders in MM. It works here too. Logic never requires it.
Known limits
- Early build. Most testing is on an emulator, plus some checks on the owner's own phone.
- Not yet checked on a real device: audio delay and quality, keyboards, SD card storage, mods, MM cycle resets, and multiplayer over the Internet.
- Seeds and patches from the OoTMM website do not work. Use the built-in generator.
- Wallmaster Shuffle:
- It offers Own Game, not yet OoTMM's Full.
- It still can't be combined with Ship's OoT entrance shuffles, Enemy Randomizer, a starting Song of Soaring, or Warp Songs and Soaring Spots Shuffle.
- MM entrance shuffle and cross-game entrance shuffle are not available yet.
- No Windows, Linux or macOS builds here. On a PC, use upstream ComboShip.
- Based on upstream ComboShip as of September 17, 2026. Later upstream changes are not included.
- Not on Google Play, and the app does not check for updates.
Help wanted
- Play a seed with Master Quest dungeons.
- Report any room that looks wrong, or any Wallmaster that takes Link somewhere other than its line in the
.entrances.txtfile.
Report problems in Issues, not to upstream projects. Include the app version, your phone model and Android version. App options → Back up saves and settings makes a ZIP with logs. It has no ROMs, but it does include spoiler logs.
Checksums
- APK SHA-256:
7277b4aa2925912eadce455b4a56294e18f5779a05a0f391630431220a3dcfd0 - Signing certificate SHA-256 (Android Debug, same key as earlier Combo Ship builds):
162c4deb267e71cee159fffe81be7a0dc582f2aad126b599d3a43bd7d6246676 - Source: tag
v0.4.13-android, commita5a0bdab. The APK itself was built from commitd74a3aa1(tagv0.4.13-rc3), and the release commit changes only documentation.
Licenses
License notices: see THIRD-PARTY-NOTICES.txt under Assets below, and the README.
- The Master Quest dungeon data is OoTMM's, under its MIT license, which the APK includes.
- The notices file adds the Fast3D, ZAPDTR, OTRExporter and OoT-Randomizer license texts, which the APK does not include yet.
Full changelog: ComboAndroid/docs/CHANGELOG.md
Unofficial fan project, not affiliated with Nintendo, Harbour Masters, the 2 Ship 2 Harkinian team, the OoTMM team or upstream ComboShip. Built largely with AI coding agents. No ROMs or ROM-extracted game archives are included.