First beta release of Dolphin memory engine, how a memory scanner is done?

First beta release of Dolphin memory engine, how a memory scanner is done?

As I explained about 2-3 weeks ago how I talked about how I made a Dolphin memory watcher and I was ready to start work on the scanner, well as expected, it was much easier and I even released the first beta a couple of days ago of the RAM search!

Yes, you can get the sources and run binaries by going to the Github page: https://github.com/aldelaro5/Dolphin-memory-engine

This is going to be a shorter post, but since doing the scanner was still quite the adventure, it’s enough to do a post about how exactly something as complex as a scanner is done and how I managed to make it work like the Cheat Engine one with similar or even better performance.

Continue reading “First beta release of Dolphin memory engine, how a memory scanner is done?”

Advertisements

Progress on my new Dolphin RAM search: the initial RAM watch is done!

FeaturedProgress on my new Dolphin RAM search: the initial RAM watch is done!

About a month ago, I made a post about the frustration of using a RAM search with Dolphin and I more specifically that the only good one, Cheat Engine isn’t cutting it with MANY problems occurring since it was just not made to work with this use case.  At the end of the post, I said that the best solution to this problem would be to actually do a RAM search from scratch instead of doing tons and tons of extensions which just makes the tools more annoying to use while it could just simply work out of the box.  Like there was so much problem that it’s not worth to fix them with so many extensions.  In fact, since I posted this and notified TASVideos about it, a workaround was found that disables ASLR with Dolphin…..this is quite ridiculous that we have to get this far to have a RAM search work.

But I also said that I might just do a RAM search just for these reasons.

And that’s exactly what happened, a few days after the post, I confirmed that I was starting the project.  It’s been a month and honestly, I am VERY happy how it’s been going.  In this post, I am going to tell the difficulties and challenges of doing this, this is my first true project of a somewhat complex program so a lot of stuff was new to me and I found it would be interesting to do a post about it!

Continue reading “Progress on my new Dolphin RAM search: the initial RAM watch is done!”

The annoyance when no RAM search works with an emulator

The annoyance when no RAM search works with an emulator

I talked a lot about how you can use certain tools to research games in such a way that you can figure out how it works internally which might give interesting information or even allow to glitch the game.  I mostly talk that after the emulator which is the most important tool for this, there is one called a RAM search which is so important that its uses isn’t just for reverse engineering, even TASers makes use of it because it provides quick ways to monitor important variables that the game doesn’t show you otherwise.  It’s also very popular to hack stuff like Flash games or things like that.

Well, getting it to work with your program is NORMALLY painless and it’s a very documented process.  There is a few exceptions and due to really specific circumstances, Dolphin emulator is unfortunately one of them.  This problem has been around since forever and is not only still present today, but it got worse which was honestly inevitable to happen.

Continue reading “The annoyance when no RAM search works with an emulator”

About the usefulness and difficulties of emulators

About the usefulness and difficulties of emulators

You probably heard of a concept called “emulation” if you read this blog often.  I even mentioned it several times when I was talking about glitch hunting or even just being able to see more in-depth what the game is doing.  If you actually never heard of it, the featured image of this post is actually illustrating that pretty well, you have Super Paper Mario, a wii game running on something that is clearly not a wii because of the specs info next to that window (its actually my system 🙂 ).  In fact, it’s clearly running of a program on the system which is again, nothing like a wii.  This is mainly what emulation allows you to do and not only it sounds awesome that you can do that, there’s actually much more extended uses of these programs that only these can offer.

First, I just want to tell a little experience I have been having with Dolphin in particular because I actually did (and probably will still) contributed to the project as it is open source (and learning about the project allowed me to do this post).

Continue reading “About the usefulness and difficulties of emulators”

The force 20 glitch explained – where undefined memory accesses can be manipulated

The force 20 glitch explained – where undefined memory accesses can be manipulated

I know I haven’t posted anything since months and in the mean time, my post on the flipping mechanics in Super Paper Mario just got a lot of views due to large interest on reddit, thank you on that btw 🙂

But considering what I am writing on right now, trust me, it was worth the wait.

One of the most fascinating glitches I could ever learn about are those that are in theory so undefined that you have to wonder how in the world the game wouldn’t crash and even worse, could even be with practical researches defined enough to have the glitch work in your favor through some clever manipulation of it.  This is why I still think the most fascinating glitch I learned about is the missingno glitch which I talk more about in this post .  The key part that I find it fascinating is how small the error is, but how elaborated it can become once you know about it.

The force 20 glitch from a game called Gotcha Force is a really great candidate for this description.  In fact, to get why, I think it’s better to just show it.  Here is a video made by the Dolphin emulator channel on YouTube showing an accurate emulation of the glitch and a crash that comes from it:

The first time JMC47 (the main Dolphin tester) showed this to me as a suggestion for me to research on it, I instantly knew: this is going to be awesome to research!

Continue reading “The force 20 glitch explained – where undefined memory accesses can be manipulated”

Extra: my experience with switching from Windows to Linux based operating system

Extra: my experience with switching from Windows to Linux based operating system

I already know the questions you might have from reading the tittle, but let me just state why I decided to write about this so then we can move on 🙂

I have a lot to say about it and nothing prevents me from adding a misc category (thanks WordPress 🙂 ) and I have been lazy playing ff7 lately (I did plan to post an exhaustive review about it).  Since this one is going to be SUPER long and imo is very interesting to let other people know what I actually think of Linux and what I had in mind before I tried it, I figured why not?

So there, it’s not gaming and not really engineering oriented (altough……there is stuff about these OS I will talk about), but it should still be interesting.

Continue reading “Extra: my experience with switching from Windows to Linux based operating system”

My glitch hunting: how the flipping mechanic in Super Paper Mario works

My glitch hunting: how the flipping mechanic in Super Paper Mario works

First, I know I haven’t posted for around 2 weeks, but I had to take a break as my semester just ended and I really got happy to finally be back on glitch hunting Super Paper Mario.  Now, as I was streaming my glitch hunting session, I realised that I could use my blog to post about complex findings I would do that talks deeply about the engineering of the game I am testing.  One of the in my opinion most complex mechanic of Super Paper Mario (which I will call SPM from now on) is the core one: the flipping mechanic.  It is such a simple mechanic to use, but when testing it, it took me 2 weeks to completely figure it out due to how much stuff I had to figure out to just TEST it.  I hope I can find more so I can bring more glitch hunting related post to this blog, but this one was a good start at least.

Continue reading “My glitch hunting: how the flipping mechanic in Super Paper Mario works”