Giter Club home page Giter Club logo

zelda64recomp's Introduction

Zelda 64: Recompiled

Zelda 64: Recompiled is a project that uses N64: Recompiled to statically recompile Majora's Mask (and soon Ocarina of Time) into a native port with many new features and enhancements. This project uses RT64 as the rendering engine to provide some of these enhancements.

This repository and its releases do not contain game assets. The original game is required to build or run this project.


Thank you Blaze for supporting this project by providing Linux ARM64 and Apple Silicon macOS Github Action Runners!

Table of Contents

System Requirements

A GPU supporting Direct3D 12.0 (Shader Model 6) or Vulkan 1.2 is required to run this project. The oldest GPUs that should be supported for each vendor are:

  • GeForce GT 630
  • Radeon HD 7750 (the one from 2012, not to be confused with the RX 7000 series) and newer
  • Intel HD 510 (Skylake)

A CPU supporting the AVX instruction set is also required (Intel Core 2000 series or AMD Bulldozer and newer).

If you have issues with crashes on startup, make sure your graphics drivers are fully up to date.

Features

Plug and Play

Simply provide your copy of the North American version of the game in the main menu and start playing! This project will automatically load assets from the provided copy, so there is no need to go through a separate extraction step or build the game yourself. Other versions of the game may be supported in the future.

Fully Intact N64 Effects

A lot of care was put into RT64 to make sure all graphical effects were rendered exactly as they did originally on the N64. No workarounds or "hacks" were made to replicate these effects, with the only modifications to them being made for enhancement purposes such as widescreen support. This includes framebuffer effects like the grayscale cutscenes and the Deku bubble projectile, depth effects like the lens of truth, decals such as shadows or impact textures, accurate lighting, shading effects like the fire arrows and bomb explosions, and various textures that are often rendered incorrectly.

Easy-to-Use Menus

Gameplay settings, graphics settings, input mappings, and audio settings can all be configured with the in-game config menu. The menus can all be used with mouse, controller, or keyboard for maximum convenience.

High Framerate Support

Play at any framerate you want thanks to functionality provided by RT64! Game objects and terrain, texture scrolling, screen effects, and most HUD elements are all rendered at high framerates. By default, this project is configured to run at your monitor's refresh rate. You can also play at the original framerate of the game if you prefer. Changing framerate has no effect on gameplay.

Note: External framerate limiters (such as the NVIDIA Control Panel) are known to potentially cause problems, so if you notice any stuttering then turn them off and use the manual framerate slider in the in-game graphics menu instead.

Widescreen and Ultrawide Support

Any aspect ratio is supported, with most effects modded to work correctly in widescreen. The HUD can also be positioned at 16:9 when using ultrawide aspect ratios if preferred.

Note: Some animation quirks can be seen at the edges of the screen in certain cutscenes when using very wide aspect ratios.

Dual Analog Camera

Play with a dual analog control layout like later entries in the series! When this option is enabled, the right stick will control the camera. You can still have the C-Buttons mapped to the right stick if you so wish, so long as you also map them to other buttons on the controller. The right stick C-button inputs will be "silenced", except when you take out the ocarina, so you can still play the ocarina with the right stick.

Gyro Aim

When playing with a supported controller, first-person items such as the bow can be aimed with your controller's gyro sensor. This includes (but is not limited to) controllers such as the Dualshock 4, Dualsense, Switch Pro, and most third party Switch controllers (such as the 8BitDo Pro 2 in Switch mode).

Note: Gamepad mappers such as BetterJoy or DS4Windows may intercept gyro data and prevent the game from receiving it. Most controllers are natively supported, so turning gamepad mappers off is recommended if you want to use gyro.

Additional Control Options

Customize your experience by setting your stick deadzone to your liking, as well as adjusting the X and Y axis inversion for both aiming and the optional dual analog camera.

Autosaving

Never worry about losing progress if your power goes out thanks to autosaving! The autosave system is designed to respect Majora's Mask's original save system and maintain the intention of owl saves by triggering automatically and replacing the previous autosave or owl save. However, if you'd still rather play with the untouched save system, simply turn off autosaving in the ingame menu.

Low Input Lag

This project has been optimized to have as little input lag as possible, making the game feel more responsive than ever!

Instant Load Times

Saving and loading files, going from place to place, and pausing all happen in the blink of an eye thanks to the game running natively on modern hardware.

Linux and Steam Deck Support

A Linux binary is available for playing on most up-to-date distros, including on the Steam Deck.

To play on Steam Deck, extract the Linux build onto your deck. Then, in desktop mode, right click the Zelda64Recompiled executable file and select "Add to Steam". From there, you can return to Gaming mode and configure the controls as needed. See the Steam Deck gyro aim FAQ section for more detailed instructions.

Planned Features

  • Ocarina of Time support
  • Mod support and Randomizer
  • Texture Packs
  • Model Replacements
  • Ray Tracing (via RT64)
  • Multi-language support with support for loading custom translations

FAQ

What is static recompilation?

Static recompilation is the process of automatically translating an application from one platform to another. For more details, check out the full description of how this project's recompilation works here: N64: Recompiled.

How is this related to the decompilation project?

Unlike N64 ports in the past, this project is not based on the source code provided by a decompilation of the game. This is because static recompilation bypasses the need for decompiled source code when making a port, allowing ports to be made without source code. However, the reverse engineering work done by the decompilation team was invaluable for providing some of the enhancements featured in this project. For this reason, the project uses headers and some functions from the decompilation project in order to make modifications to the game. Many thanks to the decompilation team for all of the hard work they've done.

How do I set up gyro aiming on Steam Deck?

This project provides mouse aiming as a way to allow using gyro on Steam Deck, as the Steam Deck's gyro sensors cannot be read directly. First, launch the game in Gaming Mode, press the Steam button and go to "Controller Settings". Choose "Controller Settings" again in the menu that follows, and then set "Gyro Behavior" to "As Mouse".

Controller Settings menu

You'll probably also want to change the default behavior so that you don't need to be touching the right stick to allow gyro input. To do so, click on the Gear icon to the right of "Gyro Behavior" and ensure that "Gyro Activation Buttons" is set to "None Selected (Gyro Always On)." If this isn't the case, then select that option and then press "Select None" in the following menu.

Where is the savefile stored?

  • Windows: %LOCALAPPDATA%\Zelda64Recompiled\saves
  • Linux: ~/.config/Zelda64Recompiled/saves

How do I choose a different ROM?

You don't. This project is only a port of Majora's Mask (and Ocarina of Time in the future), and it will only accept one specific ROM: the US version of the N64 release of Majora's Mask. ROMs in formats other than .z64 will be automatically converted, as long as it is the correct ROM. It is not an emulator and it cannot run any arbitrary ROM.

If you want to play a modded ROM or in another language, note that support for modding and other languages will be added to the project itself in the future and will not rely on you supplying a different ROM.

Known Issues

  • Intel GPUs on Linux may not currently work. If you have experience with Vulkan development on Linux, help here would be greatly appreciated!
  • The prebuilt Linux binary may not work correctly on some distributions of Linux. If you encounter such an issue, building the project locally yourself is recommended. A Flatpak or AppImage may be provided in the future to solve this issue. Adding the Linux version to Steam and setting "Steam Linux Runtime" as the compatibility tool or launching it via Gamescope may work around the issue. Alternatively, running the Windows version with Proton is known to work well and may also work around this issue.
  • Overlays such as MSI Afterburner and other software such as Wallpaper Engine can cause performance issues with this project that prevent the game from rendering correctly. Disabling such software is recommended.

Building

Building is not required to play this project, as prebuilt binaries (which do not contain game assets) can be found in the Releases section. Instructions on how to build this project can be found in the BUILDING.md file.

Libraries Used and Projects Referenced

Special thanks to thecozies for designing and helping implement the launcher and config menus!

zelda64recomp's People

Contributors

angheloalf avatar briaguya-ai avatar danielryb avatar dcvz avatar gabrielcnoble avatar guiarcencio avatar jpburnett avatar mr-wiseguy avatar nadiaholmquist avatar qurious-pixel avatar reonu avatar thar0 avatar thecozies avatar theofficialgman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

zelda64recomp's Issues

Portable option

Would it be possible let this have a "portable" option? As in everything related to this gets saved in the folder I have it in instead of having files being written to appdata/local?

cant change what button opens the menu

can cause some controllers like the NSO n64 to have it mapped to c right causing you to lose a c button but i might just be being stupid and cant see the option to change it

HUD Filtering

Some elements of the HUD (such as ActionButton symbols like A, B, Cs or sun and moon sprites rotating around the main timer display) have a smoothing filter while elements like the rupie count or the map do not have one. The emulator applies a smoothing filter to almost everthing HUD related I think.

Unfortunately I dont know what the correct behaviour of the HUD filtering should be. Is the one of this project the right one?

Game closes on N64 Logo

Describe the bug
I was able to select my rom and start the game, and it shows the spinning N64 logo for a brief moment before closing the window.

Desktop (please complete the following information):

  • OS: Windows 10
  • Version: 1.0.0
  • CPU: AMD Ryzen 3 2200G with Radeon Vega Graphics
  • GPU: AMD15DD Graphics

Additional context
I think my drivers are up to date, I tried updating all of the ones that seemed related to graphics and all of them were up to date.

Steam Deck gyro configuration does not work in first person view, and is unreliable during first person item use

Describe the bug
After following the recommended configuration to enable gyro aiming on the Steam Deck, gyro controls do not reliably respond. Gyro aim does not work during C-Up first person, and is largely unreliable during first person item aiming (tested with Deku Bubble).

To Reproduce
Steps to reproduce the behavior:

  1. Follow the binding recommendations from section How do I set up gyro aiming on Steam Deck?
  2. Return in game and go into C-Up first-person view. The camera does not follow any movement of the gyro.
  3. Equip Deku Mask and aim a bubble shot with gyro. The camera does not follow gyro movement. If it does follow gyro movement, tapping the analog stick disables further gyro aiming.

Expected behavior
The camera should move along with the gyro's movement in C-Up first person view. The camera should reliably follow gyro movement during first person item use.

Screenshots
Gyro has been configured to always be on:
steam deck gyro always on
Controls have been configured as recommended in setup guide:
steam deck control binding

Desktop (please complete the following information):

  • OS: Linux / Steam Deck
  • Version: 1.0.0
  • CPU: AMD Ryzen
  • GPU: AMD Ryzen APU

Additional context
After following the recommended configuration for gyro aiming on Steam Deck, I had no luck getting gyro aim to work. After an hour of trying different settings tweaks including

  • Gyro configuration in Steam mapping set as Mouse
  • Gyro configuration in Steam mapping set as Gyro To Mouse [Beta]
  • Changing gyro sensitivity within Recompilation
  • Changing mouse sensitivity within Recompilation

The gyro aim suddenly worked while using the Deku Bubble after going back to the recommended configuration. I found with further testing that if gyro aim did work, afterwards using the analog stick to aim would disable gyro aiming, and I could not aim with it anymore. It isn't clear why this happens, so I can't tell if the problem lies with how Recompilation is reading inputs, or if it's a configuration issue based on Steam's controller mapping.

Using a Switch controller, I get this weird drift

I'm using the PowerA Wireless GameCube controller for Nintendo Switch, and I'm noticing that the left stick is very, very sensitive. This controller has no issues in other games, platforms, and I even tested it. I think this may be a bug.
To Reproduce
Steps to reproduce the behavior:

  1. Map movement control to left stick in PowerA GameCube controller
  2. A slight move up will move Link up but then down

Additional context
The game runs fine with a Dualsense Edge and a Switch Pro Controller, it's with this controller specifically I'm seeing the issue. But again, this controller doesn't have this behavior in other platforms/games.

Just letting you know.

Also thank you for all your hard work!

Please add an appimage file

An appimage is much more akin to a .exe file and will automatically run with just a double click without creating any clutter/needing dependencies installed.

Flatpak would also be good!

Switch N64 Controller C-Right Binding Issue (ALSO: GC Controller L & R Triggers Broken)

Describe the bug
When trying to set C Right on the switch online N64 controller it seems to be bound be default to escape so it closes the menu instead of binding, at least for me.

Desktop (please complete the following information):

  • OS: Windows 10
  • Version: 1.0.0
  • CPU: Intel i7-8700
  • GPU: NVIDIA GeForce RTX 2060 SUPER

Additional context
Maybe an option to bind options menu open and close or disable escape to close on the binding screen?

EDIT: Would also like to note gamecube controllers L and R triggers constantly activate even when not pressing, probably analog trigger related?

Request: Xbox Dev Mode support

This project is amazing. I am super impressed. I just wanted to request support for running it using Xbox Dev Mode. If anyone is inclined to make that happen, please let me know!

Fresh boot on 720p screen results in overdraw + cropped borders

Describe the bug
On 720p (1360x768 in particular) resolutions, the app starts in full screen and does not scale properly.

Expected behavior
I expected no text to be cut off.

Screenshots
image
image
image

Desktop (please complete the following information):
OS: Windows 10
CPU: Ryzen 5600x
GPU: NVIDIA RTX 3050

Additional information
Pressing F11 appears to fix it somehow, and the setting gets saved into AppData.
image

Crashes on startup (Windows 10 LTSC X64)

Double clicking the executable (with or without a n64 rom present) on my main Windows 10 LTSC X64 build just crashes
image_2024-05-11_130529845

If there's a specific filepath I need to name the rom, let me know.
GPU: GeForce 1060 6GB
CPU: AMD Ryzen 3600X

Menu freezes unless I launch it from terminal

Describe the bug
When I try to launch the game from a file manager, the game just freezes immediately and I have to do killall Zelda64Recompiled -9 to properly kill it (just killall Zelda64Recompiled does not work, even with sudo).
It also occasionally freezes when I launch it from terminal with no error messages (gets to Loaded font face 'PromptFont' [regular] from 'assets/promptfont/promptfont.ttf'. then hangs, but it also gets to that when it successfully launches)
Sometimes it freezes on a black screen, sometimes on the menu (before the backgorund fades in)

To Reproduce
Steps to reproduce the behavior:

  1. Make binary executable
  2. Run it from a file manager or terminal (higher chance of working from terminal)

Expected behavior
The game should either close if it crashed (would be nice with error message in terminal) or run properly

Screenshots
Kept launching it from terminal until it froze, I couldn't interact with any of the buttons and the background image never loaded.
bild

Desktop (please complete the following information):

  • OS: Arch Linux
  • Version: Linux Zen 6.8.9
  • CPU: Ryzen 7 5800X
  • GPU: Radeon RX 580 / Nvidia RTX 3080

Additional context
I also have an Nvidia RTX 3080 but it's not the primary GPU and should not be used by the game. Tried launching it with prime-run as well (should use the 3080) with similar results (sometimes worked, sometimes didn't)
Also might be worth mentioning that I'm on Wayland.

Add support for downsampling when using Auto resolution

I noticed downsampling options aren't supported when using Auto resolution, but it would make sense to support them (at least for 2x) considering the game doesn't use mipmaps. This means textures look grainy at a distance unless you have some kind of SSAA (or TAA) in place.

Downsampling with Auto resolution will be rather demanding (especially for 4x), so there should be an appropriate warning when selecting it. This option be too much for most integrated graphics at high framerates, but modern dedicated GPUs should be able to render the game at 4K, 5K or even 8K internally when targeting 60 FPS.

Ship of Harkinian provides this option with a render scale slider that goes from 0.25 to 2.0 (values above 1.0 are downsampling), and it works pretty well there.

PS: Is there a reason why 8x MSAA is not listed in the options? From what I read, custom MSAA sample positions are being used but I'm not sure if this approach is compatible with 8x MSAA.

[Feature Request] Raphnet N64 controller support

The Switch N64 controller seems to work but I'd love to use my original N64 controller instead.

If it's of any help, here's the lines for the Raphnet N64 Adapters from gamecontrollerdb.txt

030000009b2800006100000000000000,Raphnet N64 Adapter,+rightx:b9,+righty:b7,-rightx:b8,-righty:b6,a:b0,b:b1,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,leftshoulder:b4,lefttrigger:b2,leftx:a0,lefty:a1,rightshoulder:b5,start:b3,platform:Windows,
030000009b2800006300000000000000,Raphnet N64 Adapter,+rightx:b9,+righty:b7,-rightx:b8,-righty:b6,a:b0,b:b1,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,leftshoulder:b4,lefttrigger:b2,leftx:a0,lefty:a1,rightshoulder:b5,start:b3,platform:Windows,
030000009b2800003c00000000000000,Dual N64 to USB v3.5,,+rightx:b9,+righty:b7,-rightx:b8,-righty:b6,a:b0,b:b1,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,leftshoulder:b4,lefttrigger:b2,leftx:a0,lefty:a1,rightshoulder:b5,start:b3,platform:Windows,

Game does not launch-- black screen (in window) briefly and exits

Describe the bug
The launcher is just closing after I have finished providing a Majora's Mask ROM file. The repository calls out the original US version of the game, but no SHA hash or anything like that, so I have no idea if I am using the correct ROM with it not launching like this. I went into C:\Users\xxxx\AppData\Local\Zelda64Recompiled and deleted the .z64 file/assets and tried again with both a .z64 and .n64 version of the ROM, still no luck.

To Reproduce
Steps to reproduce the behavior:

  1. Select ROM and launch game

Expected behavior
The game should launch.

Screenshots
N/A

Desktop (please complete the following information):

  • OS: Windows 10
  • Version: 1.0.0
  • CPU: Intel(R) Core(TM) i5-8600K CPU @ 3.60GHz, 3600 Mhz, 6 Core(s), 6 Logical Processor(s)
  • GPU: NVIDIA GeForce RTX 2080 Ti

Additional context
N/A

Segfault on Ubuntu 22.04

Describe the bug
When trying to launch it, the window pops open and then it segfaults. Gdb shows it's crashing inside XQueryExtension.

To Reproduce
Just launch it.

Expected behavior
No segfault.

Screenshots
image

Desktop (please complete the following information):

  • OS: Ubuntu 22.04 LTS
  • Version: 1.0.0
  • CPU: Intel Core i5-8265U
  • GPU: Intel UHD 620

Microstutters on a freesync 240hz monitor

Describe the bug
The game runs full speed at a very high frame rate (240fps/240hz) but there are noticeable microstutters or the frametime isn't perfect. This makes the game look not as smooth as it should be.

Desktop (please complete the following information):

  • OS: Windows 10
  • Version: 1.0.0
  • CPU: Intel i4 4670
  • GPU: NVIDIA GTX 1060 6GB

Additional context
I tries other framerates like 60 and 120 but the frame rate still doesn't seem perfectly synced/smooth. I also tried some odd frame rates to maybe force freesync/gsync to kick in (such as 239) but there's no difference.

Temple progress not saved with autosave

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to snowhead temple
  2. Do some of the temple
  3. Wait for an auto save
  4. Reload game
  5. See issue

Expected behavior
After loading the autosave the dungeon progress should be saved.

Screenshots
Nothing would really work aside from being able to collect more than 15 stray fairies.

Desktop (please complete the following information):

  • OS: Windows 11
  • Version: 1.0.0
  • CPU: Intel Core i7 12700KF
  • GPU: Geforce RTX 3070 ti

Additional context
I wanted to start the game back up after going to bed and the dungeon progress was reset but not my items or fairies.
This was also right after getting the fire arrows and exiting the room.

The Windows executable wont launch!

Describe the bug
When i try to launch the .exe file, a windows pops-up and close a few seconds later.

To Reproduce
Steps to reproduce the behavior:

  1. Open the file Zelda64Recompiled.exe

Expected behavior
Having the launcher pop up i guess?

Screenshots
image

Desktop (please complete the following information):

  • OS: [Windows 10](Sandbox mode for testing)
  • Version: [2004]
  • CPU: [Intel Core i7 8850H]
  • GPU: [No gpu in the Sandbox but i have a Nvidia Quadro P2000]

Additional context
Trying to launch the executable from a sandbox.

Does this user interpolation?

I am very sensitive to interpretation. It literally makes me sick. I was wondering if this used interpretation or if it was real frames per second. There’s a huge difference if this is actual 60 FPS+ I’m all in.

App closes on Start Game after ROM is selected

Game closes on boot after selecting the ROM and attempting to boot. ROM has been checked with ROM hasher to ensure is not a bad dump.

To Reproduce
Steps to reproduce the behavior:

  1. Run the .exe
  2. Select the MM64 ROM
  3. Hit "Start Game"
  • Windows 10
  • Version 10.0.19045 Build 19045
  • Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz, 2904 Mhz, 8 Core(s), 16 Logical Processor(s)
  • NVIDIA GeForce GTX 1660 Ti

[Feature Request] RetroAchievements Support

Really impressed with the amount of work and effort that's gone into this project. I can't wait to see the potential of more additions in the future.
One thing I would really like to see implemented hopefully is support for achievements, specifically with RetroAchievements. Perhaps when more games are supported as well.

Cannot change rom directory or new rom, crashes after start

Describe the bug
after choosing a zip file as source rom, the program does show "start game" even if the file was wrong. cannot change anymore and game crashes after .

To Reproduce
Steps to reproduce the behavior:

  1. choose a zip file of MM-Rom (U) and start game.
  2. Wait for failure-message because of wrong file type
  3. quit and restart program
  4. launch Zelda64Recompiled again
  5. there is only the option to start game
  6. if you do it crashes, cannot choose another file as source rom
  7. repeating this process with another extracted file of the program or PC restart does not change the result.

Expected behavior
either

  1. a button showing up to Choose new rom file
    or
  2. the same failure-message (wrong file type) and after possibility to browse and choose new rom source

Screenshots
start screen

Desktop (please complete the following information):

  • OS: Windows 11
  • Version: 1.0.0
  • CPU: Ryzen 7 2700X
  • GPU: Nvidia RTX2080

Additional context
i never had the chance to choose my intended rom source. it was a clicking mistake choosing the zip file. why can't i choose a new rom file? do i have to

cmake - No Sources given to target: RecompiledFuncs

Describe the bug
A clear and concise description of what the bug is.
`
CMake Error at CMakeLists.txt:41 (add_library):
No SOURCES given to target: RecompiledFuncs

CMake Generate step failed. Build files cannot be regenerated correctly.
`
To Reproduce
try to build the project via cmake after building and adding rsp from n64recomp

Desktop (please complete the following information):

  • OS: Linux mint
  • Version: 21.3
  • CPU: AMD Ryzen 7 2700X (16) @ 3.700G
  • GPU: NVIDIA GeForce RTX 3080 Ti

Screenshots
image

Additional context
mostly just lost on how to produce this requirement for cmake at this point, seem to be pretty close to getting it to compile

Main Menu never launches

I have Windows 11, GTx 1080, Ryzen 5950X 64GB RAM everything is fully up-to-date etc...

I noticed in the FAQs it mentioned things like steam overlays and wallpaper engine cause stuttering issues so when i couldn't open it I closed those, tried again, made sure nothing was starting on reboot, then rebooted the computer and i still can't get the .exe to open the menu

on my secondary computer, intel core i5-9400 16GB RAM, basic GPU (RTX A2000) and the .exe menu opens instantly no problems

I don't seem to see a log file it creates

The zelda64.exe runs for a minute or so in task manager and then goes away, but no windows pop up

EDIT - I have double checked my nvidia graphics driver and it's the newest one updated yesterday, reinstalled just incase, no difference, I enabled the full dump in regedit but it's not creating any logs

Executable don't launch on Zorin OS 17.1 Core

Bug description

i've been facing some problems while trying to launch the Zelda64Recompiled executable, after searching for solutions i could resolve some of them but now i reached in one that i have no ideia how to solve. The problems are the following:

  1. When trying to run through the terminal the message error while loading shared libraries: libSDL2-2.0.so.0: cannot open shared object file: No such file or directory was displayed. The solution i used was to download the library: apt-get install libsdl2-2.0-0. (solution found here;

  2. After that when trying to run again the terminal shows: ALSA lib pcm_dmix.c:1032:(snd_pcm_dmix_open) unable to open slave. The solution i used is from this post of dev.to;

  3. Now it shows the following error: Segmentation Fault it also shows ALSA lib pcm.c:8568:(snd_pcm_recover) underrun occurred sometimes.

To reproduce

Steps to reproduce the behavior:

  1. launch the Zelda64Recompiled executable on Zorin OS 17.1 Core.

Screenshots

zeldaRecompiler-error

(Falta de segmentação = Segmentation Fault)

Desktop

  • OS: Linux Distro - Zorin OS
  • Version: 17.1 Core
  • CPU: AMD ryzen 7 2700u
  • GPU: AMD Randeon 500 series

Minimap won't open

While the rest of the controls work fine, for some reason the minimap won't open. Even when I change the button that activates it, nothing happens. Changing the HUD and aspect ratio has also not fixed this.

EDIT: Whoops, this is the first time I've really played the game and thus didn't realise you had to buy a map from Tingle first. My bad.

Writing to the save file hangs

The write completes as the contents will be correct on next boot, but the game never stops waiting for the write to finish.

[Feature Request] Cutscenes aspect ratio correction

Majora's Mask presents its cutscenes in widescreen within the original 4:3 image, as pictured below:

Untitled-1

Using the expanded aspect ratio option instead has them displayed in 21:9 (when playing in 16:9), which changes the original framing and displays things that shouldn't be seen, leading to one of the currently listed known issues with widescreen support:

Desktop_2024_05_11_16_55_08_251

Ideally, I think cutscenes should always be displayed within a full 16:9 frame that matches the original aspect ratio, with either vertical or horizontal letterboxing added for 4:3 and 21:9 resolutions (This is the way the Halo Master Chief Collection team addressed the longstanding FOV/letterboxing issues with Combat Evolved cutscenes somewhere around 2020, although they later reverted it for unknown reasons).

This would result in an accurate fullscreen presentation of the cutscenes in 16:9, while preventing any potential issues with animations for ultrawide resolutions: (although I'm guessing ultrawide users would wish for the letterboxing to be optional)

Untitled-2

Expected performance

Is it normal that my pc can't hold 60 fps (interpolated) at 1080p (no AA) most of the time? I know, i know - my pc is old 😅
PS - also it will be nice to include internal FPS counter (and other stats), because you don't recommend enabling MSI afterburner..

  • OS: Windows 10
  • Version: latest
  • CPU: i5-3570
  • GPU: GTX 970

Снимок экрана (3837)

[Feature Request] Dual Analog Camera Control

I won't pretend to know how any of this works but seeing as you've gotten gyro and mouse aiming in first person I assume that full analog camera control like in MM3D or SoH should be a possibility?
I don't know if that would be possible through this program alone or if it would require a romhack like those SM64 hacks that bind the second controllers analog stick to control the camera but analog camera controls are the thing I'm missing the most out of this.

[Feature Request] USB to OEM Controller Dongle Support - Hyperkin Adaptor M07412

I'm looking to use an OEM controller through the Hyperkin M07412 Adapter.

Image

While trying to map buttons it does not recognize the controller. Windows does see the adapter and buttons do work.

The problem is easy to test, just plug your controller into the adapter. Plug the adapter in the PC. Set the adapter Switch to "PC". Windows then recognized the adapter. Go to Game Controllers in Windows. Click Properties and all the buttons can be tested.

Image

  • OS: Windows 11
  • Version: 22H2
  • CPU: Intel 13900k
  • GPU: 4070 TI

[Feature Request] Support for GameCube Collector's Edition version

The program recognizes my dumped Zelda Collector's Edition ROM of Majora's Mask, but it says it's the wrong version (understandably). It would be great if this ROM could also be loaded, as I believe it's easier to dump your own copy of the GameCube version than the N64 cart.

Program doesn't open in older Windows 10 updates

Is this intended? I'm still using Windows 10 1909 as my main and i have to update it for this program to function it seems. But there might be reasons for someone not wanting to update Windows so i was wondering if there's no choice, thanks.

[Feature Request] Please make or enable a portable version

Hi,

Is it possible to make this app 'portable'?
Settings are now (hardcoded?) stored in:
%USERPROFILE%\AppData\Local\Zelda64Recompiled\

I would like to make the suggestion to make the app portable so that one folder contains all data.
Start app portable when for example when user creates the following in the binary folder:
\Zelda64Recompiled (folder)
\portable.txt file (file like Dolphin Emulator makes itself 'portable')

Thank you!

8BitDo Ultimate Bluetooth Controller Doesn't Work with USB dongle.

When in USB 2.4Ghz mode the controller isn't detected in any way shape or form. Bluetooth works but due to interference it's unusable.

To Reproduce

  1. Use 8BitDo Ultimate Bluetooth Controller in 2.4ghz USB mode
  2. Doesn't work

Expected behavior
It should work it's a USB game pad.

Desktop (please complete the following information):

  • OS: Windows 11
  • Version: 1.0.0 I think
  • CPU: Ryzen 7000 Mobile
  • GPU: Ryzen 7000 Mobile

Additional context
I had this same problem with fallout New Vegas where it would show up in windows game pad and when I get in game nothing. I previously fixed this using steam input but with this not being on steam I don't know how to add it as a non-steam game to add support.

I tried installing the driver software and putting it in both switch and xbox mode but that didn't make a difference.

I uninstalled the steam input extended driver support that also didn't make a difference.

[Feature Request] macOS Support

I don't know if it's easy to implement, but a macOS version of the project would be very cool. I think native Metal API support would be hard to implement, but since the Linux version uses Vulkan, you could use a translation layer like MoltenVK to translate the Vulkan API calls into Metal API calls and then create a macOS version. I know it's not that easy, and it needs more work than that, but at least it would be less work than a native Metal version.

The exe dont open

Hey when i doble click the exe it just loading blue circle for briev moment

When i dont click the exe my cpu usage is 1 percent but if i open it it jump to whoping 50-78 percent dispate it was not opening and nothing in the task manager

I using windows 10
Pleass heellp me i want this badly.did i need put this on c hard drive

Changing Rom

I need to change the selected rom. How is this done? I apologize if this is a bad question. Thank you all for your hard work.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.