How To Update SM64CoopDX: The Ultimate Step-by-Step Modding Guide
Updating Super Mario 64 Coop Deluxe preserves lobby synchronization, prevents multiplayer connection desyncs, and enables compatibility with the latest custom Lua scripts and character models. This technical guide outlines how to execute both automated launcher updates and manual binary replacements without losing your save files or active mod configurations. Following these precise steps ensures a stable, high-performance 60 frames-per-second multiplayer experience.
Pre-Update Backup and Technical System Requirements
Before modifying any game files, establishing a clean system baseline prevents the corruption of your progression data and custom modifications. Super Mario 64 Coop Deluxe, a highly optimized fork of the sm64ex-coop project, relies on specific directory structures within your system's user profile. Ensuring you have the correct files backed up and knowing where they reside is critical prior to initiating any update sequence.
Essential Update Checklist and Requirements
- Estimated Update Duration: 5 to 10 minutes.
- Financial Investment: Free (Open-source project).
- Mandatory Assets: A legally acquired, unmodified Super Mario 64 US ROM file in z64 format (specifically matching the SHA-1 hash sum of 3a3c5656eb4444fc0d50d4f72f65a1d10295da4c) if a complete clean build is required.
- Required System Access: Administrator privileges on your operating system to write files to protected user directories.
- Prerequisite Technical Knowledge: Familiarity with Windows File Explorer navigation, directory paths, and archive extraction tools such as 7-Zip or WinRAR.
Backup File Paths and Save Preservation
All user configurations, save progression, and custom Lua mods are decoupled from the main game executable. They are stored in your operating system's local application data folder. To protect these files, navigate to the following path on Windows:
C:\Users\YourUsername\AppData\Roaming\sm64coopdx
To quickly access this folder, press the Windows Key + R, type %appdata%\sm64coopdx in the Run dialog, and press Enter.
Before updating, copy the entire sm64coopdx folder to a secure backup location on your desktop. Specifically verify that the file named coop_save_file.bin (which contains your completed star counts and character unlocks) and the mods directory (which contains all your downloaded Lua modifications) are safely copied.
Step-by-Step SM64CoopDX Update Methodologies
There are two primary pathways to update Super Mario 64 Coop Deluxe: using the official automated Desktop Launcher or performing a manual executable and asset replacement.
Step 1: Backing Up Saves, Configuration Files, and Custom Lua Mods
Before running any installer or overwriting old application folders, you must safeguard your save files and active mods directory. This ensures that even if an update fails, no progress or customization is lost.
- Close any running instances of Super Mario 64 Coop Deluxe.
- Open Windows File Explorer and navigate to the search bar.
- Input %appdata% and hit Enter to access the Roaming folder.
- Locate the folder labeled sm64coopdx.
- Right-click the folder, select Copy, and paste it onto your Desktop or an external backup drive.
- Verify that the file coop_save_file.bin exists inside the copied folder, as this holds your campaign progress.
Warning: Skipping this step may lead to accidental deletion of custom Lua files or save states if you execute a clean install rather than a standard patch update.
Step 2: Updating via the Official Coop Deluxe Launcher
The official Desktop Launcher is the recommended method for most users. It automates version checking, downloads necessary delta updates, and preserves local file paths without requiring manual file extraction.
- Launch the SM64CoopDX Launcher application on your desktop.
- Upon opening, the launcher queries the main update repository hosted on GitHub. If an update is detected, a prominent blue Update button will replace the standard Play button.
- Click the Update button. The launcher will automatically fetch the latest compiled binary assets, dll dependencies, and base resource packs.
- Monitor the progress bar. The launcher downloads compressed assets and extracts them directly into your local folder.
- Once the process completes, the button label will revert to Play.
- Click Play and look at the bottom-right corner of the main menu screen to confirm that the displayed version number matches the latest release notes.
Pro-Tip: If the launcher fails to detect an update automatically, click the gear icon in the launcher settings and select Force File Verification. This scans your directory for modified or outdated files and replaces them with the newest official versions.
Step 3: Performing a Manual Update via GitHub Releases
For players who prefer not to use the launcher, or for those running the game on Linux or Steam Deck via compatibility layers, manual updates provide granular control over the installation files.
- Navigate to your web browser and open the official GitHub release repository for sm64coopdx.
- Under the Releases section, locate the latest version tag marked with the green Latest label.
- Download the zipped asset package corresponding to your operating system. For Windows, download the file named sm64coopdx-windows-portable.zip or similar.
- Locate the downloaded zip archive in your Downloads folder, right-click it, and select Extract All.
- Open your existing installation directory where the previous version of sm64coopdx.exe is located.
- Copy the newly extracted files from the downloaded folder.
- Paste these files directly into your existing installation directory. When prompted by Windows, select Replace the files in the destination.
- Double-click the newly pasted sm64coopdx.exe to run the game and initialize the upgraded code structures.
Step 4: Verifying Version Compatibility and Asset Re-Extraction
After the update finishes, you must verify that the base assets are aligned with the new executable's code structure. Occasionally, major version updates alter how the original Super Mario 64 textures and sounds are rendered.
- Launch the game and access the Host Game menu.
- Observe the network configuration options. If the update was successful, new options or menu layouts specific to the update should be visible.
- Try joining a public lobby from the built-in server list. If you connect successfully without receiving a Version Mismatch prompt, your client is properly updated and synchronized.
- If the game crashes on startup after a manual update, it indicates that your compiled assets do not match the new binary. Navigate back to your installation folder, delete the build directory (excluding your ROM and save files), and run the launcher again to force a clean asset extraction.
Guide: How To Update Your Ps5 System Software - GLHW
Directory Structures and Version Configurations
When managing updates manually, knowing the precise file types, roles, and storage locations prevents manual installation errors. The table below details the essential components of a standard Super Mario 64 Coop Deluxe installation.
| File or Directory Name | Default System Location | Technical Role in Gameplay | Recommended Update Action |
|---|---|---|---|
| sm64coopdx.exe | Main Installation Folder | Primary game engine binary compiled for modern x86/x64 systems. | Must be overwritten completely with every new version release. |
| coop_save_file.bin | %appdata%\sm64coopdx | Stores campaign progression, stars, coin scores, and character configurations. | Never delete. Keep a backup copy outside the application directory. |
| mods folder | %appdata%\sm64coopdx\mods | Holds user-installed Lua script modifications, custom gamemodes, and textures. | Leave intact, but check for compatibility updates from mod authors. |
| baserom.us.z64 | Main Installation Folder | Raw ROM dump used for asset extraction of original textures, audio, and models. | Do not alter. Ensure the SHA-1 hash is correct to pass compilation. |
| SDL2.dll / glew32.dll | Main Installation Folder | Dynamic-link libraries handling controller inputs, audio output, and OpenGL rendering. | Replace with the new versions packaged in the latest update zip file. |
| res folder | Main Installation Folder | Contains compiled localized language tables, custom HUD assets, and menu fonts. | Overwrite entirely to prevent missing UI textures or glitched text strings. |
Troubleshooting Common Update Failures and Desync Issues
Even with automated tools, local system configurations, third-party antivirus utilities, or outdated custom mods can interfere with the update process. Use the diagnostics below to identify and resolve common issues.
Scenario 1: Version Mismatch Error When Joining Servers
- Root Cause: The host or client is running a different minor or major build version of the application. This prevents the Lua networking engine from synchronizing player coordinates and custom model animations safely.
- Actionable Fix: Launch the Coop Deluxe Launcher and click the force updates button. If the error persists, coordinate with the host to determine their exact version number (displayed on the game's bottom-right main menu). Ensure both parties download the corresponding build zip from the GitHub releases page.
Scenario 2: Red Screen or Immediate Crash on Launch
- Root Cause: This occurs when the updated executable attempts to load legacy assets, corrupted shaders, or incompatible configurations inside the AppData folder.
- Actionable Fix: Navigate to %appdata%\sm64coopdx and locate the file named sm64_config.txt. Rename this file to sm64_config.txt.bak. This forces the updated game to generate a fresh, non-corrupted configuration file on the next launch. If this fails, delete the local build folder and re-extract your clean Super Mario 64 US ROM.
Scenario 3: Mod Compilation Script Errors in Chat After Loading
- Root Cause: A previously downloaded custom Lua mod contains deprecated functions or APIs that are no longer supported by the updated version of Super Mario 64 Coop Deluxe.
- Actionable Fix: Access %appdata%\sm64coopdx\mods and temporarily move all subfolders to a temporary folder on your desktop. Re-enable your mods one by one to isolate the broken script. Visit the community mod platforms to download updated versions of the affected Lua scripts compatible with the latest game engine update.
Scenario 4: Launcher Fails to Connect or Write Files (Permission Denied)
- Root Cause: Windows User Account Control (UAC) or third-party antivirus programs are blocking the launcher from downloading and overwriting binaries in your destination directory.
- Actionable Fix: Right-click the SM64CoopDX Launcher executable or shortcut and select Run as Administrator. If the issue remains, ensure the game is not installed in the protected Program Files folder; instead, run it from a user-created folder such as C:\Games\SM64CoopDX.
Frequently Asked Questions
Will updating SM64CoopDX delete my save files?
No. Your save files are stored in the %appdata%\sm64coopdx directory under the name coop_save_file.bin. This folder is separate from the installation directory where the main executable is modified, ensuring your progress is preserved. Making a copy of this file before updating is still recommended.
Why is my custom Lua mod not working after updating?
Major game updates often include adjustments to the internal Lua API to improve performance or security. These adjustments can deprecate older functions. If a mod fails to load, check the console or in-game chat for specific line errors, and download the latest version of the mod from its creator.
Can I play multiplayer with someone on an older version of Coop Deluxe?
No. To maintain game state synchronization and avoid immediate crashes, all players in a multiplayer lobby must run the exact same version of the executable. Connecting to a host with mismatched versions will result in a connection error.
How do I fix the "Missing Base ROM" error after a manual update?
This error occurs if the update process overwrote or moved the original baserom.us.z64 file. To fix this, locate your original, legal Super Mario 64 US .z64 ROM file, rename it exactly to baserom.us.z64, and place it in the same folder as the newly updated sm64coopdx.exe.
Where can I find the official updates for Coop Deluxe?
The safest places to download updates are through the built-in auto-updater in the official Desktop Launcher, or by visiting the releases page of the official sm64coopdx GitHub repository. Avoid downloading update binaries from unofficial third-party websites.
Join the Ultimate Multiplayer Mario Experience
Now that your client is running the latest stable build, you are ready to host lag-free lobbies, explore new custom character models, and enjoy optimized custom gamemodes. Keep your launcher updated regularly to ensure you never miss out on community features, performance patches, and engine improvements.