Skip to content

Releases: Odrannnn/MetroidPrimePort

v0.18.0

Choose a tag to compare

@Odrannnn Odrannnn released this 07 Oct 15:00

Any screen shape now works: near-square and tall screens get the whole picture
instead of black bars (#12), ultrawide cutscenes are no longer close-ups (#14),
and Android gets touch controls you can lay out yourself plus a new twin-stick
layout (#11).

You need your own disc image. Metroid Prime (USA) v1.00, GM8E01 disc 0
revision 0. Nothing here contains any part of the game — no disc, no assets.

What changed

Screens of any shape

  • Below 4:3 (near-square screens, foldables, portrait-ish windows), the game
    fills the screen
    instead of letterboxing (#12). The view keeps retail's
    width and gains height, and the HUD spreads over the extra height: the
    helmet, bars, visor and beam selectors stay on the screen edges, the morph
    ball view is full height, and the arm cannon sits low in the world so shots
    still leave the muzzle toward the crosshair.
  • Menus, the file select and the save, message and options screens keep their
    proportions on any shape, and nothing draws outside their panels.
  • Wider than 4:3, the widescreen HUD bends instead of stretching: the
    helmet's curves stay curved, and the bars slide out with their struts.
  • Ultrawide cutscenes are framed like retail instead of zoomed-in close-ups
    (#14), and the front-end Options text stays on its panel.
  • The 21:9 limit is gone: very wide windows and multi-monitor setups work.

New defaults

Existing settings are kept; these apply to new installs and anyone who never
changed them.

  • Aspect ratio follows the window on every platform.
  • Widescreen HUD is on.
  • Cutscenes have no black bars: below 16:9 they fill the screen. The bars
    can be turned back on in F1 > Video > Display ("Cutscene black bars").

Android touch controls

  • Move and resize every touch control (#11): F1 > Touch controls > Edit
    layout.
  • New "Twin stick (Remastered)" layout: right stick to aim, the D-pad for
    visors, hold Y to switch beams with the D-pad, with Xbox-style button
    prompts in game.
  • The touch overlay shows each button's function next to its letter:
    F1 > Touch controls ("Button descriptions").

Performance

  • Room geometry stays on the GPU by default, on Android and desktop. On the
    phones tested this gives 8–27% more frames per second.

Remastered import (very experimental, unsupported)

the Remastered import and everything built on it are very
experimental and currently unsupported.
Remove mods/remastered-models
to get the retail game back. Nothing changes unless you run the import
yourself, and nothing of Remastered ships with the port. Everything below
needs a re-import.

  • The flamethrower's swoosh draws with Remastered's material instead of a
    white wedge.
  • Many more effects import: effects whose colour texture is empty now
    convert, and Ridley's breastplate effects are paired.
  • An import with missing files is refused instead of crashing when a room
    loads.

Downloads

Platform File Notes
Linux MetroidPrime-x86_64.AppImage chmod +x, then run.
Linux MetroidPrimePort.flatpak flatpak install --user ./MetroidPrimePort.flatpak
Linux metroid-prime-port-0.18.0-linux-x86_64.tar.gz Bare binary and licences
Windows metroid-prime-port-0.18.0-windows-x86_64.zip Unzip anywhere; needs a Visual C++ redistributable
Android metroid-prime-port-0.18.0-android-arm64.apk Sideload; arm64-v8a, Android 9+

Licence

MIT covers this project's own work, but not the game code under
src/ and include/, which remains Nintendo's. See LICENSE and NOTICE.
Metroid Prime is a trademark of Nintendo. This project is unaffiliated with
Nintendo and Retro Studios.

v0.17.0

Choose a tag to compare

@Odrannnn Odrannnn released this 06 Oct 22:32

Clearer handling of incomplete disc images (#8), cutscenes and menus that fit
ultrawide screens (#9), Discord Rich Presence out of the box, and Remastered
rooms lit by their baked lightmaps, with a much faster re-import.

You need your own disc image. Metroid Prime (USA) v1.00, GM8E01 disc 0
revision 0. Nothing here contains any part of the game — no disc, no assets.

What changed

Disc images

  • An incomplete disc image is refused instead of hanging on the Nintendo
    logo
    (#8). A truncated or partly downloaded image (often a compressed
    RVZ/WIA/GCZ) used to open, then freeze the game at the logo. The port now
    checks the end of the image when it opens it and asks for another one.
  • If reading the disc still fails mid-game, the port remembers it: the next
    start refuses that image, asks for another, and shows a red notice saying
    why.
  • An unexpected error in the game loop is now written to the log and reported,
    instead of leaving the game frozen.

Ultrawide screens

  • Cutscenes keep their 16:9 framing on screens wider than 16:9 (21:9 and
    up) instead of being cropped at the top and bottom (#9).
  • The file-select and other front-end screens are pillarboxed, so their text
    stays on its panels (#9).

Discord

  • Rich Presence works out of the box: the port has its own Discord
    application with the logo and world pictures. It's on by default and can
    be turned off in F1.
  • The presence shows the room, energy, missiles and item percentage, with the
    current world's picture.

Fixes

  • Android: firing with the mouse no longer stops working after a boss dies
    during a held charge shot.

Remastered import (very experimental, unsupported)

the Remastered import and everything built on it are very
experimental and currently unsupported.
Remove mods/remastered-models
to get the retail game back. Nothing changes unless you run the import
yourself, and nothing of Remastered ships with the port. Everything below
needs a re-import.

  • Rooms are lit by Remastered's baked lightmaps, which carry most of a
    room's light and the sun's shadows. Sun shadows (the Frigate's docking
    hangar most of all) now look like Remastered's instead of faint, and the
    sun's brightness comes from Remastered's own light rather than a guess.
  • Suns switched by the room script (the Frigate intro's shots) come and go
    with their scenes.
  • Elite Quarters Access: the grating floor of the walkway is back, and two
    other rooms get their missing trims and decals.
  • Faster re-imports: converted textures are kept between imports, so a
    re-import after an update converts only what changed. A full-geometry
    re-import that once took over a minute takes seconds when the textures are
    unchanged.

Downloads

Platform File Notes
Linux MetroidPrime-x86_64.AppImage chmod +x, then run.
Linux MetroidPrimePort.flatpak flatpak install --user ./MetroidPrimePort.flatpak
Linux metroid-prime-port-0.17.0-linux-x86_64.tar.gz Bare binary and licences
Windows metroid-prime-port-0.17.0-windows-x86_64.zip Unzip anywhere; needs a Visual C++ redistributable
Android metroid-prime-port-0.17.0-android-arm64.apk Sideload; arm64-v8a, Android 9+

Licence

MIT covers this project's own work, but not the game code under
src/ and include/, which remains Nintendo's. See LICENSE and NOTICE.
Metroid Prime is a trademark of Nintendo. This project is unaffiliated with
Nintendo and Retro Studios.

v0.16.0

Choose a tag to compare

@Odrannnn Odrannnn released this 06 Oct 19:41

A fix for black worlds on Adreno 730 phones (#7), an OpenGL ES option,
Remastered sun shadows, more room for the touch controls, and much better
logs for reporting GPU problems.

You need your own disc image. Metroid Prime (USA) v1.00, GM8E01 disc 0
revision 0. Nothing here contains any part of the game — no disc, no assets.

What changed

Graphics drivers

  • Adreno 730 (Galaxy Z Fold4, Snapdragon 8+ Gen 1 phones): the world no
    longer draws black
    (#7). The driver mishandled a bounds check in the
    shaders; on that GPU the port now uses a form it handles. Other GPUs are
    unchanged.
  • F1 > Video > Quality > Use OpenGL ES renders through OpenGL ES instead
    of Vulkan, for drivers that draw wrongly under Vulkan. It takes effect after
    a restart, and if OpenGL ES crashes while starting, the next start goes back
    to Vulkan by itself.

Diagnostics

The log (metroid_prime_port.log; on Android in
Android/data/org.metroidprime.port/files/) now carries what's needed to
debug a GPU or driver problem, so please attach it to a report:

  • Device and GPU: phone model, chipset and Android version, the GPU's
    driver, features and limits, the screen formats it offers, and the
    settings the game started with.
  • Hang watchdog: if the game stops producing frames, the log says what the
    game and render threads were doing and for how long, with the game thread's
    call stack (on Android, the system log around the hang too), and when frames
    resume. On Android a lost GPU device also saves the system log.
  • Frame times at a few points after start, and a note when a shader takes
    long to compile.
  • F1 > Video > Quality > GPU self-test draws ten known patterns through
    the game's own rendering path, reads them back and writes PASS or FAIL for
    each to the log.

Android touch controls

  • Side margin moves every control in from the screen edges (for curved
    screens and cases), Stick inset gives the left stick extra room, and
    Button inset does the same for the face buttons and C-stick only. They
    go up to 300 dp; Reset margins puts them back. F1 > Controls > Touch &
    gyro.
  • With drag aiming, the R button only shows where it does something:
    in Morph Ball, in the pause menu and on the map.

Remastered import (very experimental, unsupported)

the Remastered import and everything built on it are very
experimental and currently unsupported.
Remove mods/remastered-models
to get the retail game back. Nothing changes unless you run the import
yourself, and nothing of Remastered ships with the port. Everything below
except the sky fix needs a re-import.

  • Sun shadows: rooms with a Remastered sun (the Frigate's docking hangar
    most of all) cast real-time shadows from it, and lit surfaces take its
    colour.
  • The docking hangar's force-field barrier and its shootable red
    lights
    use their Remastered models.
  • Glass with see-through panes (the Elite Quarters Access windows) is
    transparent again instead of an opaque haze.
  • Elite Quarters Access: the sliding stone panel at the Plasma door is no
    longer a grey block.
  • Skies whose glow the import dropped (the planet seen from the Frigate
    hangar) are no longer nearly black. This one needs no re-import.

Downloads

Platform File Notes
Linux MetroidPrime-x86_64.AppImage chmod +x, then run.
Linux MetroidPrimePort.flatpak flatpak install --user ./MetroidPrimePort.flatpak
Linux metroid-prime-port-0.16.0-linux-x86_64.tar.gz Bare binary and licences
Windows metroid-prime-port-0.16.0-windows-x86_64.zip Unzip anywhere; needs a Visual C++ redistributable
Android metroid-prime-port-0.16.0-android-arm64.apk Sideload; arm64-v8a, Android 9+

Licence

MIT covers this project's own work, but not the game code under
src/ and include/, which remains Nintendo's. See LICENSE and NOTICE.
Metroid Prime is a trademark of Nintendo. This project is unaffiliated with
Nintendo and Retro Studios.

v0.15.0

Choose a tag to compare

@Odrannnn Odrannnn released this 06 Oct 16:44

Reworked Android touch controls (mouse-style drag aim, beam and visor
wheels, touch map controls), a reorganized F1 menu, and more of Remastered's
materials.

You need your own disc image. Metroid Prime (USA) v1.00, GM8E01 disc 0
revision 0. Nothing here contains any part of the game — no disc, no assets.

What changed

Android touch controls

  • One layout, the GameCube one (#5). The Xbox twin-stick layout is gone.
    By default there's no C-stick: dragging on any free part of the screen aims
    like a mouse, and the left stick strafes. F1 > Controls > Touch & gyro >
    Classic GameCube layout brings back the C-stick and the D-pad. In that
    layout a drag turns Samus and looks up and down, and the view levels out
    again when you lift your finger.
  • Beam and visor wheels replace the D-pad. Hold the Visor or Beam button,
    slide to a sector and let go. They show the game's own icons (read from
    your disc), with beams in their colours. Items you don't have yet are left
    empty, and letting go in the centre cancels. Tap Visor for Scan Visor is
    an option.
  • While you hold A to charge a beam, sliding that finger also aims.
  • Map: tap the minimap, or the map button beside the eye, to open the
    map. In the map, slide one finger to pan, pinch to zoom and twist two
    fingers to rotate.
  • Tablets: the controls stay at phone size and within thumb reach,
    instead of growing and spreading along the edges.
  • START and MENU are round icons in the bottom-left corner. L and R are
    taller, and the gyro now aims with the touch controls too.
  • The touch overlay always uses the GameCube button mapping, whatever control
    preset is picked for real controllers.
  • The app is marked as a game, so game modes and launchers recognize it.

Remastered import (very experimental, unsupported)

the Remastered import and everything built on it are very
experimental and currently unsupported.
Remove mods/remastered-models
to get the retail game back. Nothing changes unless you run the import
yourself, and nothing of Remastered ships with the port. Everything below
needs a re-import.

  • The Chozo artifacts and the Frigate's orange force fields are drawn
    with Remastered's own shaders. So are the hologram materials and the
    arm-cannon particle models (no more solid white smoke blobs).
  • The arm cannon's missile petals no longer tear into a box when they
    open.
  • The arm cannon's stripes glow bright yellow, as in Remastered, instead
    of dim orange-brown.
  • The beam menu icons are tinted with each beam's colour, as in
    Remastered.
  • Room lighting is sampled more like Remastered's: the light grid sits on
    the right points, and rooms borrow lighting their neighbours baked.
  • The import's Room geometry too and Particle effects choices are
    remembered between starts.
  • The Mods page no longer lists the import's report files as ignored.

Fixes

  • With toggle lock-on, the lock lets go when the target dies, instead of
    keeping the aim on its body.
  • Windows: programs the game starts (ffmpeg during the Remastered import,
    for example) no longer open a console window each.

Other

  • F1 menu reorganized into Game, Controls, Video, Remastered, Mods,
    Archipelago, Tracker, Save states, System and Debug. Game > Audio has music
    and sound-effect volume sliders.
  • The four frame-smoothing checkboxes for uncapped frame rates are one
    setting, Smooth uncapped frames (on by default). The simulation-rate
    setting is marked very experimental.
  • The Tracker's item, scan and room counts are hidden behind Show progress
    (off by default), so opening the tab doesn't spoil how much is left.

Downloads

Platform File Notes
Linux MetroidPrime-x86_64.AppImage chmod +x, then run.
Linux MetroidPrimePort.flatpak flatpak install --user ./MetroidPrimePort.flatpak
Linux metroid-prime-port-0.15.0-linux-x86_64.tar.gz Bare binary and licences
Windows metroid-prime-port-0.15.0-windows-x86_64.zip Unzip anywhere; needs a Visual C++ redistributable
Android metroid-prime-port-0.15.0-android-arm64.apk Sideload; arm64-v8a, Android 9+

Licence

MIT covers this project's own work, but not the game code under
src/ and include/, which remains Nintendo's. See LICENSE and NOTICE.
Metroid Prime is a trademark of Nintendo. This project is unaffiliated with
Nintendo and Retro Studios.

v0.14.0

Choose a tag to compare

@Odrannnn Odrannnn released this 06 Oct 06:13

Crash fixes (Windows enemies, a memory corruption, the Remastered import on
the Flatpak), Remastered lava, much faster re-imports, more of Remastered's
effects and materials, and a tidier portable install.

You need your own disc image. Metroid Prime (USA) v1.00, GM8E01 disc 0
revision 0. Nothing here contains any part of the game — no disc, no assets.

What changed

Remastered import (very experimental, unsupported)

The Remastered import and everything built on it are very
experimental and currently unsupported.
Remove mods/remastered-models
to get the retail game back. Nothing changes unless you run the import
yourself, and nothing of Remastered ships with the port. Everything below
needs a re-import.
An import from an older version says so with a notice
on start and a line in the Mods panel.

  • Re-imports only redo what changed. Parts of the import whose inputs and
    code are unchanged are reused from the previous import, so a re-import with
    nothing new takes about a second. A full import is faster too. F1
    Reconvert everything still forces a full one.
  • Lava is drawn with Remastered's own shader, each pool's own settings
    and its heat shimmer.
  • Particle effects: many more of Remastered's particle materials are
    drawn, such as the ship's engine flames and the morph-ball bomb, which were
    white squares or dark spheres before. The charge beams are fixed (white
    squares on the Ice Beam, dark discs on the Power and Wave Beams, stray lines
    on the Plasma Beam), and the Ice Spreader keeps its frost layer.
  • Arm cannon: the Wave, Plasma and Phazon panels and the beam glow light
    up as in Remastered.
  • Glow follows each room's exposure, as in Remastered, and is no longer
    toned down. Materials with their own maps but no base texture (Samus' eyes,
    the Phazon Suit's glow and more) are drawn with Remastered's materials
    instead of falling back to retail's.
  • The Metroids' domes are drawn with Remastered's glassy shell.
  • The Ice Beam's gun frosts over while charging, as in Remastered.
  • Space Pirates wear the colour of their beam (purple Wave, white Ice,
    red Plasma) instead of all yellow.
  • The outdoor Tallon Overworld rooms show Remastered's sky instead of
    retail's dark cloud dome.
  • The tank in the Frigate's Waste Disposal is no longer black.
  • The extra gunship parked on the Frigate's hangar dock is gone.
  • An import started at the title screen now unloads the old files first.
  • The import no longer crashes partway through on the Flatpak (#6).

Fixes

  • Windows: the game no longer crashes when the first enemy appears (the
    Frigate's parasites, past the airlock) (#4).
  • A memory corruption that could crash the game a few rooms in (seen on
    Windows in the Frigate) is fixed.
  • A damaged shader cache, for example after copying a new version over an old
    one, is rebuilt instead of crashing after the splash screen.
  • The morph ball's rolling sound no longer cuts out on surfaces without a
    rolling sound of their own.
  • With the HD font off, accented letters show their accents.
  • Android: the touch controls hide whenever the F1 overlay opens, instead
    of sometimes staying drawn over it.

Other

  • Portable installs (the Windows zip and the Linux tarball) keep settings,
    saves, mods and caches in a user/ folder beside the executable. An older
    install's files are moved there on the first start; nothing is deleted. The
    AppImage, Flatpak and Android app are unchanged.

  • The Windows zip has far fewer loose files: SDL, zlib, libpng, nod, OpenSSL,
    the controller button images and the shader cache seed are now built into
    the executable.

  • A skips a skippable cutscene, as Start does.

  • The Archipelago connection and chat are one F1 tab; restart, screenshot
    and exit moved to the top of Extras.

Downloads

Platform File Notes
Linux MetroidPrime-x86_64.AppImage chmod +x, then run.
Linux MetroidPrimePort.flatpak flatpak install --user ./MetroidPrimePort.flatpak
Linux metroid-prime-port-0.14.0-linux-x86_64.tar.gz Bare binary and licences
Windows metroid-prime-port-0.14.0-windows-x86_64.zip Unzip anywhere; needs a Visual C++ redistributable
Android metroid-prime-port-0.14.0-android-arm64.apk Sideload; arm64-v8a, Android 9+

Licence

MIT covers this project's own work, but not the game code under
src/ and include/, which remains Nintendo's. See LICENSE and NOTICE.
Metroid Prime is a trademark of Nintendo. This project is unaffiliated with
Nintendo and Retro Studios.

v0.13.0

Choose a tag to compare

@Odrannnn Odrannnn released this 05 Oct 18:11

Remastered's volumetric fog, water, skies and hundreds more of its effects,
a themed F1 overlay with menu sounds, and Linux builds that run on older
distributions. Linux, Windows and Android, all built from one commit (f5e43637).

You need your own disc image. Metroid Prime (USA) v1.00, GM8E01 disc 0
revision 0. Nothing here contains any part of the game — no disc, no assets.

What changed

Remastered import (very experimental, unsupported)

As before: the Remastered import and everything built on it are very
experimental and currently unsupported.
Remove mods/remastered-models
to get the retail game back. Nothing changes unless you run the import
yourself, and nothing of Remastered ships with the port. Everything below
needs a re-import.
An import from an older version now says so with a
notice on start and a line in the Mods panel.

  • Volumetric fog, drawn as Remastered draws it, with its per-room regions
    and transitions. Retail fog that Remastered doesn't draw is left out.
  • Water uses Remastered's own surface, shader and underwater filter, and
    shows through the X-Ray Visor as in Remastered.
  • Each room's own sky replaces the world's, lit in its Remastered colour
    and loaded with the room so the retail sky no longer flashes up.
  • Many more of Remastered's particle effects: effects are now matched to
    retail by name, room placement, script slot and character animation events,
    and swoosh, electric, flipbook and model-particle effects convert. Effects
    are drawn through Remastered's own particle materials. Effects that came
    out as white squares, or vanished after their first frame, are fixed.
  • Characters get Remastered's backlight, including each room's own setting.
    Metroids and other glowing creatures glow at full strength instead of
    near-black.
  • Textures scroll and pulse with each model's own animation, such as the
    stripes on the arm cannon, which now keeps its metal look.
  • Scenery that moves in Remastered, such as the elevator panels in the
    Frigate, the hangar debris, the Mines turbine and the Omega Pirate's tank,
    now moves too.
  • The Power, Varia and Phazon Suits are replaced in third person.
  • On phones whose GPU lacks BC textures, the import writes ASTC instead.
    Colour and normal maps also keep their detail better at a distance.
  • The Remastered options have their own page in F1, with a warning that
    they're experimental.
  • Several import failures found in an audit are fixed.

F1 overlay

  • Three themes (Prime, Remastered and Plain) and menu sounds, both
    in F1 > Render > Display.
  • The concept-art gallery is no longer upside down.
  • The text language can change while the game runs.

Graphics

  • The EFB scale goes up to 4x, and dynamic resolution can go down to 0.5x
    (Lowest scale).
  • The window opens at 1280x720 by default, kept within the screen.

Platforms

  • Linux: the AppImage and the tarball now run on older distributions
    (glibc 2.34 or newer, e.g. Debian 12, Ubuntu 22.04, LMDE 6) (#3).
  • Android: a fix for a crash on start on Adreno GPUs such as the
    Galaxy S23's (#2).
  • Windows: no console window, and the title bar is always on screen.

Fixes

  • A sound crash on Android tablets right after firing is fixed.
  • Eyons keep sweeping their beams when the frame rate varies.
  • A missing resource is read from the disc instead of closing the game.
  • A crash now leaves a report in the log.

Downloads

Platform File Notes
Linux MetroidPrime-x86_64.AppImage chmod +x, then run.
Linux MetroidPrimePort.flatpak flatpak install --user ./MetroidPrimePort.flatpak
Linux metroid-prime-port-0.13.0-linux-x86_64.tar.gz Bare binary, textures and licences
Windows metroid-prime-port-0.13.0-windows-x86_64.zip Unzip anywhere; needs a Visual C++ redistributable
Android metroid-prime-port-0.13.0-android-arm64.apk Sideload; arm64-v8a, Android 9+

Licence

Unchanged. MIT covers this project's own work, but not the game code under
src/ and include/, which remains Nintendo's. See LICENSE and NOTICE.
Metroid Prime is a trademark of Nintendo. This project is unaffiliated with
Nintendo and Retro Studios.

v0.12.0

Choose a tag to compare

@Odrannnn Odrannnn released this 04 Oct 22:53

Remastered text in five languages, a concept-art gallery and much more of
Remastered's look, plus a GameCube-style touch pad and dynamic resolution.

You need your own disc image. Metroid Prime (USA) v1.00, GM8E01 disc 0
revision 0. Nothing here contains any part of the game — no disc, no assets.

What changed

Remastered import (very experimental, unsupported)

As before: the Remastered import and everything built on it are very
experimental and currently unsupported.
Remove mods/remastered-models
to get the retail game back. Nothing changes unless you run the import
yourself, and nothing of Remastered ships with the port. Most of the items
below need a re-import.

  • Text in French, Spanish, German, Italian and Dutch, taken from
    Remastered (F1 > Extras > Text > Language; applies on the next start).
    Text that Remastered lacks stays English.
  • Concept-art gallery (F1 > Extras > Gallery), made from Remastered's art.
  • The morph ball gives off Remastered's light, and a power bomb's blast
    tints the room's lighting.
  • Door frames glow in their Remastered colour, the arm cannon reflects its
    own surroundings, the Ice Beam's frost shell no longer covers the cannon,
    and lit glass and additive effects are drawn as in Remastered.
  • Distant cut-out textures such as grass keep their coverage instead of
    thinning out.
  • Scenery that Remastered draws with the retail model is left to the retail
    model, so it's no longer drawn twice.
  • Faster, especially on phones. Repeated props are merged into combined
    models, distant ones use Remastered's coarser levels of detail, and the
    renderer does less work per pixel.

Android touch controls

  • The touch pad is shaped like a GameCube pad: a big A with B, X and Y
    around it, a one-piece D-pad cross, a smaller C-stick beside the face
    buttons, and the triggers and Z on the right.
  • The buttons stay plain and translucent by default. F1 > Input > Touch
    controls > Coloured buttons
    gives them the GameCube colours.
  • The pad is hidden with an eye in the bottom-right corner (struck
    through while hidden). Before, the hide button also opened the overlay.

New

  • Dynamic resolution (F1 > Quality, under the EFB scale): lowers the
    internal resolution, down to 1x, while the frame rate is under a target,
    and raises it again when there is room.

Fixes

  • A world warp into an elevator room now plays that room's music.
  • Mouse buttons held when the F1 overlay opens no longer stay pressed.
  • A draw too big for the frame's buffers is now skipped (with a warning in
    the log) instead of closing the game.
  • Archipelago: the client reports version 0.6.8.

Downloads

Platform File Notes
Linux MetroidPrime-x86_64.AppImage Self-contained. chmod +x, then run.
Linux MetroidPrimePort.flatpak flatpak install --user ./MetroidPrimePort.flatpak
Linux metroid-prime-port-0.12.0-linux-x86_64.tar.gz Bare binary, textures and licences
Windows metroid-prime-port-0.12.0-windows-x86_64.zip Unzip anywhere; needs a Visual C++ redistributable
Android metroid-prime-port-0.12.0-android-arm64.apk Sideload; arm64-v8a, Android 9+

Licence

MIT covers this project's own work, but not the game code under
src/ and include/, which remains Nintendo's. See LICENSE and NOTICE.
Metroid Prime is a trademark of Nintendo. This project is unaffiliated with
Nintendo and Retro Studios.

v0.11.0

Choose a tag to compare

@Odrannnn Odrannnn released this 04 Oct 10:17

Faster elevator rides, a speedrun timer in the game's own font, a tidier F1
overlay and higher refresh rates on Android.
Linux, Windows and Android, all built from one commit (e83bd36e).

You need your own disc image. Metroid Prime (USA) v1.00, GM8E01 disc 0
revision 0. Nothing here contains any part of the game — no disc, no assets.

What changed

New

  • Elevator ride setting (F1 > Extras > Cutscenes, or pause > Options >
    Visor): Original keeps the retail ride of at least 5 s, Fast shortens
    it to about 2 s, and Skip cuts it to under a second. As in retail, the
    skipped transition stops sound effects at the switch.
  • The in-game timer uses the game's font. It sits in the bottom-right
    corner, over the HUD and pause screens, and its digits no longer jump
    sideways as they count. Turn it on in the overlay or with timer 1 in
    the console.

Overlay

  • Every page is tidier. Settings are grouped under headers, and the
    explanations are tooltips on the desktop (on Android they still show
    under each setting). Rendering options say what the recommended value is.
  • Teleport is one searchable list of room names, plus a world list.
    A debug teleport now starts the destination room's music.

Fixes

  • On very wide screens most of the scene could vanish (above about
    3.3:1, or above 2:1 at the widest field of view). The culling now holds.
  • Android ran at 60 Hz on 90/120 Hz screens. The game now asks for the
    display's fastest mode. The Performance tab's simulation rate no longer
    reads above its target when the frame cap leaves time idle.

Remastered import (very experimental, unsupported)

As before: the Remastered import and everything built on it are very
experimental and currently unsupported.
Remove mods/remastered-models
to get the retail game back. Nothing changes unless you run the import
yourself, and nothing of Remastered ships with the port.

  • An import now unloads the mods while it runs and loads the result when it
    ends, without a restart. On Android this keeps a large import from running
    out of memory.
  • The import reads Remastered's lighting table (the environment BRDF) out of
    your own copy of the game, and reflections use it instead of an
    approximation. This needs a re-import.

Downloads

Platform File Notes
Linux MetroidPrime-x86_64.AppImage Self-contained. chmod +x, then run.
Linux MetroidPrimePort.flatpak flatpak install --user ./MetroidPrimePort.flatpak
Linux metroid-prime-port-0.11.0-linux-x86_64.tar.gz Bare binary, textures and licences
Windows metroid-prime-port-0.11.0-windows-x86_64.zip Unzip anywhere; needs a Visual C++ redistributable
Android metroid-prime-port-0.11.0-android-arm64.apk Sideload; arm64-v8a, Android 9+

Licence

Unchanged. MIT covers this project's own work, but not the game code under
src/ and include/, which remains Nintendo's. See LICENSE and NOTICE.
Metroid Prime is a trademark of Nintendo. This project is unaffiliated with
Nintendo and Retro Studios.

v0.10.1

Choose a tag to compare

@Odrannnn Odrannnn released this 04 Oct 07:42

A small fix release: clearer handling of a wrong or missing disc image, and a
log file that is now on by default so problems can be reported.
Linux, Windows and Android, all built from one commit (5fc0aa15).

You need your own disc image. Metroid Prime (USA) v1.00, GM8E01 disc 0
revision 0. Nothing here contains any part of the game — no disc, no assets.

What changed

Fixes

  • A wrong disc image made the game close again and again with no
    message. The game now names the file, says which disc it needs, forgets
    it and asks for another one. On Android a picked file with the wrong
    header is no longer copied.
  • Disc messages have a Close button, and on Android, Back closes them.
    Cancelling the file picker now asks whether to pick a disc or close,
    instead of quitting with no message.

Log file

  • The log is on by default on every system, so a crash can be reported
    without first finding a setting. It is written to
    metroid_prime_port.log in the game's user folder, and on Android also
    to Documents/MetroidPrime/, where any file manager can reach it.
  • The log leaves out personal details: your home folder and user name
    are replaced, and Archipelago server and slot names are dropped. The
    per-frame counter is gone (MP_FRAME_LOG=1 brings it back).
  • Turn it off in F1 > Debug > Log. The setting is new, so an older
    log_file=0 no longer turns it off.

Remastered import (very experimental, unsupported)

As before: the Remastered import and everything built on it are very
experimental and currently unsupported.
Remove mods/remastered-models
to get the retail game back. Nothing changes unless you run the import
yourself, and nothing of Remastered ships with the port.

  • The Frigate's big square and round doors no longer look shut once open.
  • Phendrana's Frost Cave no longer shows a Tallon mud floor in place of
    its ice slab.

Both need a re-import.

Downloads

Platform File Notes
Linux MetroidPrime-x86_64.AppImage Self-contained. chmod +x, then run.
Linux MetroidPrimePort.flatpak flatpak install --user ./MetroidPrimePort.flatpak
Linux metroid-prime-port-0.10.1-linux-x86_64.tar.gz Bare binary, textures and licences
Windows metroid-prime-port-0.10.1-windows-x86_64.zip Unzip anywhere; needs a Visual C++ redistributable
Android metroid-prime-port-0.10.1-android-arm64.apk Sideload; arm64-v8a, Android 9+

Licence

Unchanged. MIT covers this project's own work, but not the game code under
src/ and include/, which remains Nintendo's. See LICENSE and NOTICE.
Metroid Prime is a trademark of Nintendo. This project is unaffiliated with
Nintendo and Retro Studios.

v0.10.0

Choose a tag to compare

@Odrannnn Odrannnn released this 04 Oct 00:16

Mostly fixes and smoothness: a memory leak that got Android killed, a shutdown
hang, a charge hum that could loop forever, an invisible wall in Magmoor, and
less stutter from the overlay, Archipelago and audio threads. The experimental
Remastered import gains colour grading, bloom, auto exposure, glass, suits and
beams, and an opt-in particle effect step.
Linux, Windows and Android, all built from one commit (58d81700).

You need your own disc image. Metroid Prime (USA) v1.00, GM8E01 disc 0
revision 0. Nothing here contains any part of the game — no disc, no assets.

What changed

Fixes

  • Memory leak while walking around (most visible in Magmoor and on
    Android, where the game was eventually killed). Old screen-copy sizes for
    fog volumes were never freed. Android also caps mod textures at 1024.
  • Closing the window (Alt+F4) could hang the game on shutdown.
  • A charged beam's hum could keep playing after the shot. The PC mixer
    now retires a stopped looping voice every frame, as the GameCube does.
  • Magmoor Caverns, Workstation: an invisible wall over the lava crust with
    a model mod installed. Solid scenery now takes its collision box from the
    disc's model, as retail does, not from the mod's.
  • A game with some PBR materials could abort while building a shader
    ("Uniform size exceeds maximum").
  • A missing UV set no longer aborts the game (a mod model that reads one
    now logs a warning naming the model and draws).
  • Controller connected mid-game: a real pad now takes player 1 even when
    the Android touch overlay was holding it.
  • Smoother play: settings save when a slider is let go rather than every
    frame, button prompts update a few times a second, frame pacing sleeps in
    one go, and the Archipelago client, debug console, log and audio threads no
    longer stall the game. Archipelago checks are sent within a tenth of a second.

New

  • Start without a prompt when the disc image is beside the executable (or
    in a subfolder of it; for an AppImage, beside the AppImage).
  • Log to a file: F1 > Debug > Log, MP_LOG_FILE=1 (also on Android).
  • Exit game button in F1 > Session, and teleport to an area that isn't
    loaded in the cheats panel.
  • Empty lock-on: with mouse aim or twin stick, L with nothing to target
    strafes like holding L on a GameCube pad.
  • Free camera can show Samus's body, and F1 > Audio's sample list is
    sorted and can be frozen.

Remastered import (very experimental, unsupported)

As before: the Remastered import and everything built on it are very
experimental and currently unsupported.
Expect wrong or missing models,
lighting that is off, crashes and heavy memory use, and a re-import after
most updates — this release needs one. Remove mods/remastered-models
to get the retail game back. Nothing changes unless you run the import
yourself, and nothing of Remastered ships with the port.

  • Rooms take Remastered's look: each room's colour grade (with its local
    grade hints, under water and in fights), bloom, auto exposure eased between
    rooms, blended reflection probes, and glow at the room's own exposure.
  • Every suit and beam gets its Remastered model, ball and gun, with the
    Wave/Plasma glow animated. Door shields, glass, waterfalls and two-sided
    surfaces draw by Remastered's own rules, and UVs keep each map's wrap mode.
  • Room geometry follows Remastered's scripts (scenery and geometry that
    appears or hides with the story) and can stay on the GPU (setting).
  • Particle effects (opt-in): a checkbox in the import panel (or
    MP_REMASTERED_EFFECTS=1) converts Remastered's effects to the game's
    format. Off by default.
  • The import is faster and uses less memory, and resources past 2 GiB spill
    into extra PAKs instead of failing to boot.

Details for mod authors are in docs/NATIVE_PORT.md.

Downloads

Platform File Notes
Linux MetroidPrime-x86_64.AppImage Self-contained. chmod +x, then run.
Linux MetroidPrimePort.flatpak flatpak install --user ./MetroidPrimePort.flatpak
Linux metroid-prime-port-0.10.0-linux-x86_64.tar.gz Bare binary, textures and licences
Windows metroid-prime-port-0.10.0-windows-x86_64.zip Unzip anywhere; needs a Visual C++ redistributable
Android metroid-prime-port-0.10.0-android-arm64.apk Sideload; arm64-v8a, Android 9+

Licence

Unchanged. MIT covers this project's own work, but not the game code under
src/ and include/, which remains Nintendo's. See LICENSE and NOTICE.
Metroid Prime is a trademark of Nintendo. This project is unaffiliated with
Nintendo and Retro Studios.