Releases: SSunnKing/Open-Nectar---Pikmin-Native-PC-Port
Release list
Open Nectar 0.4.7
Needs a retail disc (USA Rev 1 or Europe).
Gameplay and controls
- Mouse look no longer cancels WASD. A small mouse delta was treated as stand-and-turn, so Olimar hitched while running and aiming.
- F1 can bind analog triggers and sticks, not only face buttons.
- DualSense remaps work for the stick and Circle; F1 capture no longer stores the key that opened the bind.
- F1 menu on DualSense / Linux no longer walks itself (IMU / extra motion joystick).
- Quick-release Pikmin grabs work on PC.
- Hold-to-continue plucking is an F1 option, off by default.
Graphics
- Enemy health gauges draw again. Triangle fans were missing GXEnd on PC.
- Boss generators use the correct type on PC.
- Beady Long Legs no longer spawns as the wrong boss.
- Post-process colour writes stay enabled, so the chain does not go black.
- Menus stay sharp after leaving a stage (DoF was still using the captain’s focus on file-select and title).
- Tutorials show PC control names instead of missing GameCube glyphs.
Platforms and install
- PAL Windows no longer crashes before main while reading the language.
- Linux CI / packages: sqrtf/fmodf on public Linux, audio test skipped without SndData, Linux artifact keeps execute bits.
- Invalid PC save slot 0 is rejected so a write cannot land before cardData
Opening intro (demo01)
- The Dolphin’s engine trail is visible again when the ship appears in space.
- Oriented ribbons are drawn camera-facing (the GX FIFO used to drop them).
- The cinematic camera uses the .dsk near/far (0.1 / 32768), not the 1 / 15000 defaults.
Open Nectar 0.4.6 - Fixes
Tutorials
Olimar’s prompts no longer show @ or leftover GameCube glyphs. They print the F1 binding you are using: keyboard names on keyboard, pad names on pad. The C-Stick is T/F/G/H on the default layout. In mouse-cursor mode, A / B / Z also list Left Click, Right Click and Middle Click.
Menus
Leaving a stage no longer leaves depth of field on the file-select and title screens. Those screens have no HUD split, so the pass was blurring the whole interface. In the field, DoF is unchanged.
Throws
A short tap to throw no longer vanishes while the chosen Pikmin is still grabbing or walking over. The throw waits until it is actually in hand. (#11)
Post-process
If the last scene draw left colour or alpha writes off, bloom and the rest of the chain could keep the previous frame. The pass now writes every channel and puts the mask back afterwards. (#12)
Mods
F1 → Mods → Hold to Pluck. Off by default, same tap-per-sprout as the disc. Turn it on and holding Extract after the first pluck keeps going; release or whistle stops. (#13)
Open Nectar 0.4.6
A small hotfix on top of 0.4.5. Same discs, same languages, same installer.
Controls
Remapping from F1 actually waits for the next key or button. Confirming a row with Enter, Space or A used to store that same press as the new binding, so the list flicked back to the default. It now waits until you let go, then takes the next input. Escape cancels.
On a DualSense the Gamepad list no longer walks itself, and Circle is bindable without kicking you out of the submenu. Linux was treating the pad’s motion sensor as a stick held down, and Circle was still “Back” on the frame after you bound it.
PAL on Windows
The European build no longer dies before a window appears. It was asking which language to use during static initialisation, which on MinGW can run before C++ streams exist. USA never asked, which is why only PAL crashed. Linux was already fine.
Saves
A first save with no backup slot chosen could write off the start of the card buffer and crash. Direct boot was the usual way to hit it. The title → file-select path was already safe.
Still the same: you supply your own copy of Pikmin. Supported discs: USA Rev 1 and Europe.
Open Nectar 0.4.5 - PAL Multilanguage
The European release
Open Nectar now runs the PAL disc, and that means it now runs in Spanish, French, German and Italian as well as English.
Nothing is translated by this project: the European disc ships all five languages, and the game has always known how to use them. What was missing was a port that could be built for that release at all — the game's own code is compiled here, and it is conditional on which release it came from in four hundred places.
The installer recognises which disc you gave it and installs the matching build. If the disc carries more than one language it asks which you want to play in, and every language is installed regardless, so changing your mind later is a menu row and not a reinstall. F1 → Language.
The choice is written to your settings, so it survives.
Widescreen
The HUD no longer stretches to fill a 16:9 frame. It is drawn in a wide space with its pieces anchored where they belong — life on the left, the sun bar centred, counters and the day to the right — so the world can be genuinely wide without the interface being pulled out of shape or leaving dark bands at the sides.
And things at the edges stop disappearing. The 3D view was already wide, but what the game decided was worth drawing was still being worked out in 4:3: Pikmin, creatures, objects and particles vanished as they crossed where the old frame's edge used to be. They stay now.
If you preferred the interface boxed in 4:3, PIKMIN_MENU_PILLARBOX=1 puts the menus back.
Fixes
-
Accented characters were drawing as garbage. Any letter above plain ASCII indexed backwards out of the font table and produced a black box full of Japanese glyphs. English text almost never leaves ASCII, which is why it took the Spanish release to expose it but the fault was in the port, not in any one language.
-
The permadeath prompt did not appear on an empty memory card. It asked when a save file existed but had never been used, and stayed quiet in the most ordinary case there is: your very first file. This affects the USA release too, and has since permadeath was added.
-
Cutscenes are no longer blurred. Depth of field follows the captain, and a cutscene puts the camera wherever the scene wants it often with him out of shot entirely — so the whole frame fell outside the focus. It stands down during cutscenes now.
-
The rectangle around every window frame is gone. 0.4 drew a faint box around dialogue icons and message windows. It came from a texture format being read one way for the attract movies and another way by everything else; the movies now do their own colour conversion and leave the rest of the game alone.
-
The attract movies really do play. In 0.4 they could go black. A post-processing pass was unbinding the shader without saying so, and the next thing drawn quietly failed — which for a movie meant a black screen with sound.
-
Deapth of Field graphical glitches
Still the same
You supply your own copy of Pikmin. No game data ships here. Supported discs: USA Rev 1 and Europe
Open Nectar 0.4 - Graphics Mods
Graphics
A Graphics page in the F1 menu, with every effect switchable. The port has to keep running on modest hardware the reference machine here is a GTX 1050 so nothing on this page is mandatory, and everything applies as you move through it, against the scene behind the menu.
-
Depth of field. The focus plane follows Olimar. What sits at his distance stays sharp; what is nearer or further falls away. Four steps, Off through Strong, and the sharp band is measured as a fraction of how far the camera is from him, so it behaves the same in the close follow view and the far one.
-
Ambient occlusion. Contact shadows in creases, under leaves, where a Pikmin meets the ground. Computed from the depth buffer alone — the port has no G-buffer — at half resolution with a depth-aware blur.
-
Bloom. Three named steps rather than a slider, because bloom looks wrong across most of the range a slider would offer.
-
Antialiasing. FXAA, applied to the finished image. Deliberately not MSAA: Pikmin's undergrowth is alpha-tested quads, and MSAA does nothing for those edges because they are not geometry.
-
Colour grading, with gamma, brightness and saturation.
-
Fog: the game's own, which the port had been discarding. GXSetFog was an empty stub: the game was sending fog colour and distances every frame and the port was throwing them away. It is back, applied where the console applied it. There is a toggle, and On is the original.
-
Texture filtering, up to 16× anisotropic. This one was not what it looked like: the port had no mipmaps on any texture at all, so distant ground was not blurry, it was shimmering. The setting now builds the chains, and changing it re-applies to everything already loaded rather than waiting for the next load.
Where these are applied changed too. The post-process pass used to run at the end of the frame, by which time the interface had been drawn into the picture and had overwritten the depth buffer the effects read. It now runs where the world ends and the interface begins, so the HUD stays sharp and the effects measure the world instead of whatever was left behind. Ambient occlusion had been reading that overwritten buffer since it was written, quietly, because occlusion at the wrong distance still looks like occlusion.
The attract movies play
Leave the title screen alone and the pre-rendered movies now decode and play, in full, with their own sound. The title music fades out for them and comes back afterwards.
Laptops with two graphics chips
On a laptop with switchable graphics, the game was running on the processor's integrated GPU while the dedicated card sat idle. That is the default for any program that does not ask otherwise, and this one was not asking.
It asks now, on both platforms — they need entirely different mechanisms — and only where the hardware is actually present, so machines without a discrete GPU are unaffected. The log line [PC Port] GPU: reports which one got the context.
Memory
Entering a stage used about 4 GB. It now uses about 600 MB, and stops growing.
Two leaks, both from the same root: the game's allocations go to the C heap rather than to its own arenas, so resetting an arena freed nothing. One abandoned a 245 MB block on every section change; the other never deleted a GL texture in the port's entire lifetime.
Smaller things
The Mods row in the F1 menu drew (null) next to itself. It now reads Open > like the other submenu rows.
Still the same
You supply your own copy of Pikmin (USA, Rev 1). No game data ships here.
Open Nectar 0.3.5 - Permadeath / Photo Mode
Two new mods
Permadeath
Lose Olimar and the run is over: the day does not simply end, and the save
is erased.
It is not a setting in the F1 menu. Permadeath belongs to a save file, so
you choose it once when you create the file and the file screen marks
the files that carry it. Loading a normal file cannot put you in a run
that deletes itself, and loading a permadeath file cannot quietly turn the
rule off. Copy a permadeath file and the copy is one too.
The erase goes through the game's own delete, the same one the file
screen's Erase option calls, so a slot lost this way ends up in exactly
the state a manually deleted one does not in some state only this mod
produces.
The prompt and the mark on the file screen are built from the game's own
panes, textures and font. They are part of those screens rather than drawn
on top of them.
Photo mode
Press F3. The world stops — every Pikmin, every creature, the captain,
the clock — and the camera is yours.
WASD |
move along the look direction |
Space / Ctrl |
up / down |
| Arrow keys | look |
Q / E |
tilt, R levels |
Shift / Alt |
faster / slower |
It flies like a first-person camera, so the lens goes anywhere: down among
the Pikmin, inside a crowd of four hundred, or above the whole stage.
The Linux download has a new name
nectar-portable-en.tar.gz is now nectar-linux.tar.gz, and the
folder inside it is nectar-linux/ — matching nectar-windows.zip. The
contents and the install steps are unchanged.
Both packages now ship an English README. The Windows one had been sitting
on a Spanish note that still warned the build was untested, which stopped
being true two releases ago.
Still the same
You supply your own copy of Pikmin (USA, Rev 1). No game data ships here.
Open Nectar 0.3.1
A maintenance release on top of 0.3. Three fixes and two new mods.
Fixed: controller sticks inverting at full travel
Reported from a controller on Windows. SDL axes run to -32768, so negating
one for the Y flip gives 32768, one past what the pad's signed byte holds,
which wraps around. Pushing the stick fully up read as fully down. The
conversion now clamps, and a test covers the ends of the range.
Fixed: settings menu unusable with a controller
A held direction advanced the cursor once per frame, which made rows
impossible to land on. Navigation now waits 450 ms before repeating, then
repeats about four times a second.
New mod: Pikmin limit
F1 → Mods → Pikmin limit. How many Pikmin may be on the field at once,
from 50 up to 999. The original is 100.
The Onion's capacity, the field roster and the renderer's matrix pool are
all sized from this number, so it takes effect when a stage loads rather
than in the middle of a day. Tested to 945 Pikmin on screen at once.
High values do cost frame rate, and how much depends on your machine,
the menu warns you.
New mod: Day length
F1 → Mods → Day length. Between 5 and 30 minutes of play per in-game day,
10 being the original.
This stretches the game's own clock, so nothing moves faster or slower.
Sunset simply arrives sooner or later.
For people building from source
The F5/F6 testing shortcuts now compile only under -DPIKMIN_DEBUG_KEYS=ON,
and the menu row that toggles them disappears with them. Release builds
carry no trace of them.
Still the same
You supply your own copy of Pikmin (USA, Rev 1). No game data ships here.
Open Nectar 0.3 — Native Windows Release
This release brings Open Nectar to Windows. The same source now builds a native x86-64 executable for both Linux and Windows, and the mouse wheel gains two uses that make the game noticeably more comfortable to play.
Windows
Open Nectar cross-compiles from Linux to a native Windows executable with MinGW-w64. It is not an emulator and not a wrapper: the same reconstructed game code, built for Windows.
Mouse wheel
A new setting in the Mods menu chooses what the wheel does. One setting with two values rather than two switches, so the two uses can never both be active.
-
Pikmin colour. The wheel picks which colour to throw next. It cycles only through colours actually in your squad: with one colour it does nothing, with two it alternates, with three it cycles. If the chosen colour is out of reach, the captain still grabs the nearest Pikmin rather than nothing.
-
Camera zoom. The wheel pulls the camera between 0.45× and 2.50× of its normal distance. Returning the wheel to colour selection restores the default distance.
Frame rate
The 120 FPS mode now actually presents at 120. The port paces presentation itself rather than using the driver's VSync, and that limiter computed its period against a 60 Hz base with the interval clamped to 1, so the game simulated at 120 and presented at 60.
Input is now sampled once per logical tick instead of once per loop iteration. Only a tick consumes input, and the pad reader is edge shaped: at high refresh rates a button press seen by two polls before the tick that would read it was a press the game never saw. This was losing walking and throw inputs at 144 Hz.
Fixes
- The game could wedge permanently when uprooting a Pikmin. The BGM load hand-off is written from the DVD thread and read from the game thread; a lost signal hung the game on Linux and crashed it on Windows. The wait is now bounded and reports the loss instead of waiting forever.
- Skipping a cutscene left its music playing over the next scene. Cutscenes marked as carrying their music forward now stop it when skipped, since there is no longer a scene to carry it into.
- The installer looked for pikmin/pikmin.real while the build has produced nectar/nectar.real since the project was renamed, so installation failed outright.
- The self-contained package wrappers exported NECTAR_EXECUTABLE_PATH while the launcher read PIKMIN_EXECUTABLE_PATH, leaving the launcher unable to find its own package.
- The Linux packaging script did not enable the JAudio engine, so portable builds shipped with the old mixer.
Known limitations
- 120 FPS is marked experimental, and needs a display that can show it
- Windows has been tested on a 144 Hz monitor; wider hardware testing is welcome
HOW TO INSTALL ON WINDOWS:
- Open nectar-launcher.exe
- Select your ISO (Pikmin (USA) (Rev 1)) and installation folder
- Click install and wait it to finish
- Enjoy!
Credits
The software DSP and bank loader come from pikmin-nextos, adapted here from SDL3 to SDL2. Their licence and attribution are in third_party/nextos-audio/.
Both projects build on the projectPiki decompilation.
Open Nectar v0.2.1
This release makes the game audible. Open Nectar now runs Pikmin's original JAudio sound engine instead of a reimplementation, so music, sound effects and cinematic audio all play.
Sound
Earlier builds drove audio through a hand-written mixer. It reproduced parts of the engine, but instruments were detuned, some effects never fired, and several scenes were silent.
Open Nectar 0.2 runs the game's real audio code instead. The sequencer, instrument banks, oscillators and channel manager are the original ones; only the boundary where the GameCube's DSP chip used to sit is replaced by a software renderer.
What this fixes:
- Background music in menus, the save-file screen, the world map and all stages
- Sound effects: whistle, Pikmin, enemies, objects, UI
- Cinematic audio, including the ending sequence
- Instrument tuning and timbre
- Boss-mode music layers, scene transitions and pausing
- Static and dropouts
- The audio path is covered by a self-test (--audio-self-test) that walks the scenes, stages, boss transitions, muting, sound effects and cinematic streams.
Frame rate
A 120 FPS option joins 30 and 60 in the F1 settings menu. All three are safe: the game integrates by elapsed time, so raising the rate does not speed up gameplay.
120 FPS needs a display that can show it. On a 60 Hz panel with VSync the game still presents at 60.
Fixes
- Sample banks failed to load because a 64-bit host pointer was truncated to 32 bits when the audio heap was set up
- Scenes started silent because the current track id was published after the callback that starts playback, so the callback discarded the new track
Known limitations
- Cinematics play their audio, but video is not decoded yet, the H4M decoder is not implemented
- 120 FPS is marked experimental
Credits
The software DSP and bank loader come from pikmin-nextos, adapted here from SDL3 to SDL2. Their licence and attribution are in third_party/nextos-audio/.
Both projects build on the projectPiki decompilation.
Open Nectar v0.1
OPEN NECTAR — NATIVE PIKMIN PORT FOR LINUX (x86-64)
Self-contained package bundling glibc, SDL2, PulseAudio, ALSA and codecs.
Most dependencies are included, so no additional runtime libraries are required for the majority of the program.
System requirements:
- Linux x86-64 with kernel 3.2 or higher.
- OpenGL driver with libglvnd (present in any distro since 2017).
- X11 or Wayland session.
- Your legal, uncompressed copy of Pikmin USA Rev. 1 (GPIE01), in ISO or GCM format.
The ROM and any Nintendo proprietary resources are not included.
The ROM is not copied or modified during installation.
This release is fully playable and includes several enhancements:
- Modern resolutions
- Multiple aspect ratios
- Full mouse and keyboard support
- 60 FPS support
Controls
- F1 — Open the in-game configuration menu.
- F2 — Quickly switch between the original cursor mode and mouse cursor mode.
Known Issues
- A few sound effects are missing.
- Some music tracks may be missing or contain incorrect notes.
- Olimar may occasionally get stuck and be unable to throw Pikmin until he is repositioned.
- Olimar's running animation may occasionally freeze, making him appear to slide. This usually fixes itself after a few seconds.
Despite these known issues, the game is fully playable from start to finish.
INSTALLATION GUIDE:
- Install only the OpenGL dependencies:
Debian/Ubuntu
sudo apt install libopengl0 libglvnd0 libgbm1 libgl1-mesa-dri
Arch Linux
sudo pacman -S libglvnd mesa
Fedora
sudo dnf install libglvnd mesa-dri-drivers
- Run the launcher:
./nectar-launcher
- To play Run the same launcher on the installation folder:
./nectar-launcher
The launcher will ask for your Pikmin USA Rev. 1 (GPIE01) ISO/GCM. It will extract the necessary assets and run the game. The ROM is not modified or redistributed