Dolphin, the GameCube and Wii emulator - Forums

Full Version: What are some things you would like to see in Dolphin 6.0?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11
Allow Searching of non MEM1 areas through cheat search. Gecko Codes would need to be created instead of AR Codes if the memory address is not within MEM1. Searching of MEM2 would also need to be deactivated for GameCube Games.
It's a pity that I can't make this work with Dolphin's 3D Vision mode (sky depth):


In 3D Vision Automatic mode (3D disabled in Dolphin), there are problems with the "StereoCutoff" setting in the Nvidia Profile Inspector. If I change that setting to 0x00000000, the HUD and other things are affected by convergence and separation but geometry is fixed. With the default setting, some geometry near the camera is affected and not rendering at the correct depth.

I can manually fix the HUD, sky, etc shaders that are badly affected by disabling "StereoCutoff", but it takes more time than the ideal solution of using Dophin's 3D Vision mode + just the sky shader modification.

For example, the sky vertex shader


requires

Code:
r0.x-=stereo.x*(dot(cproj[2].xyzw, r1.xyzw)-stereo.y+0.35);

, which corrects the very high effect of convergence, instead of just

Code:
r0.x+=stereo.x;

, which just makes it go from screen depth to 100% depth.

In both cases, for this game I have to assign that vertex shader fix to just one pixel shader (or a small selection). N64 games shader vertex shaders for too many effects and geometry.
The sky in Super Mario 64 is drawn with Orthographic Projection.
(08-27-2016, 10:10 PM)gamemasterplc Wrote: [ -> ]The sky in Super Mario 64 is drawn with Orthographic Projection.

Still, it's possible to put it at depth. I've been fixing the HUD and other things for an hour successfully. I think it's done. I needed to make different fixing formulas in the vertex shaders to different pixel shaders, using shader overrides in the d3dx.ini. All is working perfectly except for the life and oxygen bar and that Mario icon at the start of the levelsĀ (they share the pixel shader with trees, which render correctly, so I can't modify this shader). I think I would be able to release fixes like this, with correct geometry and HUD. The problem is the shader filenames, that can change with graphics settings, builds, etc. But for something to use at just myself (or telling other people to use certain builds and settings, and what to change in the Nvidia profile), it's good enough.
Thank you all for your thoughts,I can name two big issues/limitations with Cheat Engine in my experience struggling to use it efficiently.

1. Byte endian order is frustratingly the opposite ordering,making 3F 80 00 00 look like 00 00 80 3F and require searching in that order,this kept scrambling my brain on my previous attempts to use it for searching.

2. Locations change drastically on each boot session for many exe programs,making things really complicated having to search for a common value in order to figure out the new location on each session.

(Despite those,I found some cool codes for Sonic Heroes on PC a long while back,such as freezing time for specific elements and several stats/physics/action mods,too bad Sonic Retro noped my wiki edits adding them in even though they actually work.)

As I already mentioned for the in-built Dolphin memory debugger,its really unstable with the frequent risks of crashing and random errors from how it constantly refreshes the memory if you try to scroll down or sometimes even when typing to a specific location in search.
A simple fix for this alone is to stop the frequent refreshing and add a button to press for it to be refreshed manually.
Also,only refresh the bytes that are changed,as it very clearly stands out that the entire memory refreshes rather than just the modified bytes,this most likely is the leading cause of the instability/errors/crashes and lost value results when using it.
Many times I find that some of the values of addresses go missing with hyphens indicating a blank value result instead of the actual value.

Hopefully these extra details that I forgot to mention and outright didn't think of earlier will help in fixing those problems.

Summary: Please make memory refreshing manual via a button on the UI,and make it only refresh the modified bytes instead of everything.
@retroben

Do you have a recent Dolphin build with full debugger functionality enabled? I've been told that you can't set memory breakpoints in the regular builds and have to compile Dolphin with a special option to enable breakpoints.
I found a page that says its called DebugFast,but I am currently on a slightly old Vulkan pr build because Vulkan crashes less to my experience at least on Android,having this on Ishiiruka would be great,but not much I can do about the Nvidia driver 372.54 flickering issues,Wind Waker runs okay for the most part.
I used the command to enable the debugger via a shortcut trick so I can quickly access either one.

I wouldn't have much or any benefit with breakpoints unless I knew how to do that kind of stuff,I only know the basic searching trial and error and some scooped up knowledge over time.
I don't think it would need it for the potential 60fps code I want to find,as that's mainly for ASM and pointer location codes while the byte that controls fps should be a static address.
If the searching wasn't so complicated,I could maybe try to find a single object's value and figure out how to find a certain object/NPC that I am looking for.
Guys, do you think there could be code that would control/improve LOD?
What's an example of LOD working poorly?
I saw it working pretty well in a games repainted stream video switching between different repainted textures by distance.


Another thought on memory search (attempts for 60fps codes,TP idling video hits 60fps),Desmume has a really technologically impressive RAM search that is shared by a Genesis emulator as well with the entire memory updating in realtime causing slowdown but allowing you to search for if the number of changes is less than 2 to clear out the frequently changing ones and then hitting clear change count and searching for greater than 0 once you reach what you know changes to remove tons more results and then searching for values in the remaining ones with less than 03 to end up with addresses at 00-02 as values,and after all of that,you can browse the entirety of results that are left to deduce what addresses you are looking for and weeding out remaining stragglers above 02 or changing values when the fps hasn't changed yet.
I know that it would run several times worse with up to a whopping 128MB RAM vs. NDS' tiny 4MB RAM but it can be helped by pausing emulation when the RAM search window is in focus.

How did AdderDee find that multiple-lined 60fps code for Sonic Colors though with such limitations,did he happen to use cheat engine despite reversed endian byte order?

The main thing to help for finding new cheats on Dolphin would be having a better fully fledged memory viewer in a seperate window to avoid those instabilities of having it attached to the main one and being displayed vertically,instead displaying it with 16 bytes horizontally x 16 rows vertically with a manual refresh button that colors changed bytes red much like what PJ64's memory viewer does.
(I already had a few more searches ruined by random hanging with errors crashing it between window focus switching)
I could get a better look at where the asm starts and mess around with various things until finding amazing visual corruptions and other really fun and interesting things,the only downside being that Gamecube ASM is pretty different from N64 MIPS and unfamiliar to me currently.
Something completly different: I would like to see a per game controller setting.
I prefer keyboard / mouse control in some games, and wiimote in other games. There are already presets useable, I would like to see them as setting value in game settings.

Changing the visible title of the game in the gui. Right now I need to step into titles.txt everytime I don't like the name of a game. i.e. the names of the Guitar Hero fanchise are different from game to game (GH or Guitar Hero).

As already written: A gui interface for all / most of the config settings, which are to be set in a text file right now. Maybe even an external config edit app.

Some kind of benchmark tool, with various situations to get a hint, which part of the computer is too slow. But this is more of a difficult part, cause this need to be done as gc / wii software with all of the dirty tricks working on the gc / wii.
Pages: 1 2 3 4 5 6 7 8 9 10 11