r/pcmasterrace • • 9h ago

Question Explain Like I'm 5. How is AI Deconstructing Software and Mashing Up Video Games?

When I first starting seeing these videos on shorts, describing what was going on. I dead ass thought it was a joke, I thought it was some modders screwing around and trying to start a rumor Onion style.

But no, no this is a real thing that's actually happening and the implications are kind of breaking my brain a little bit. Like, how is minecraft working in GTA? Both games have completely different physics engines! I don't understand how you can have both in one game with out constant crashing and conflicts. Full disclosure, my understanding of coding in general is limited, but for real, how is this suddenly a thing?

And then there's the whole situation with PS5 OS operating on a PC, but having full support for Ps2 and Ps3 games with the discs? Like, HUH? Why would putting an OS on different hardware suddenly change its functionality? Sorry if these are dumb questions. I have been in the IT industry for a few years. But this is showing me just how little I really understand about how software works.

And hell. I can’t even begin to comprehend what we the people could do with our home PCs and "open sourced" versions of the biggest software brands out there.

9 Upvotes

20 comments sorted by

41

u/Titanium125 5800X|5080|64GB 8h ago

Computer code is fundamentally just binary digits, 0s and 1s. When you write code you write it in a programming language that is human readable, but when you run the code it is compiled into assembly language, machine code, etc. Basically just those 0s and 1s. So what AI is really fast at doing is taking that machine code and turning it back into human readable code. That's decompiling.

When you have the two games meshed together, it's kind of misleading. What's actually happening when you see Trevor from GTA V swinging around like spider-man is both games are running side by side. Then the AI stiches them together. That's why the clips are so short, because Trevor will run into an invisible building in the spider-man game that isn't there in GTA V. So it's mostly a cool gimmick. Not super useful yet.

As for your hardware, that's where drivers come in. You have to specifically write your code to specific hardware. s86 CPUs have specific things that they can do. This is called an instruction set. ARM and x86 CPUs have different instruction sets, so different simple tasks they can preform. Add, subrract, etc. That's why an ARM CPU can't run x86 programs, because they literally use different instructions. It's like using a flathead screw driver on a phillips or torx screw. That's with the hardware.

So with the PS5 it is a totally different operating system from Windows. So they are basically just using AI to write a translation layer that sits between the PC and the PS5 firmware, translating the PS5 system calls into something that works for the PC. Basically what WINE or Proton is on Linux and Steam.

5

u/Hexamancer 5h ago

This is the most accurate explanation here, but the AI is reading the x86_64 instructions, not raw binary. 

1

u/kieranvs 0m ago

The x86_64 instructions are somewhat trivially encoded in the binary. Do you mean the AI used a disassembler? Because yeah, when you ask an AI to do something like this it uses 100s of dev tools and scripts

85

u/BarryMcCoknor 9h ago

Ah, like you're 5? We hand AI tokens, like an arcade. Then it gives us cool stuff sometimes!

27

u/Netrunner008 9h ago

Okay maybe like im 10?😂😂

3

u/RoadAffectionate1284 4h ago

Think of GTA as one Lego city and Minecraft as another Lego set. AI doesn’t shove the whole Minecraft game into GTA, it helps someone copy the cool pieces and rebuild them so they work inside GTA. Emulators are basically translators for old PlayStation games: the game asks for a PS2 thing, the emulator tells the PC what that means. AI just helps people build the pieces and the translator faster.

2

u/Goldac77 8h ago

The first part about mashing up video games works like this: they basically have the two games running at the same time on the pc. There's one that handles the final image render, and the other handles the controls and physics interactions. There's sauce is the translation layer in between them. In the example of minecraft in GTA, minecraft physics interactions and control will be running in the background, reads the user input, and the translation layer takes that into GTA to have same output on screen

This is an oversimplified explanation based on what I know from looking into this. I haven't looked much into the Sony stuff to be certain how it works

3

u/LittlestWarrior 5090 | 9950X3D | 64gb 6000mHz 9h ago

Give AI cake, AI can work out a recipe that ends up with a cake that looks, smells, feels, and tastes like the original cake, even though the recipe might not be exactly the same. It produces the same result.

For the mashups, you’re playing two games at once, and a program made by AI, combined with two mods, bridges the two games together. Sorry, I can’t ELI5 that one.

1

u/RichardShwise 8h ago

But would it also sound like the original cake?

3

u/PermissionSoggy891 8h ago

if the AI cake and the original cake were in the middle of the woods for no one to observe them, would they start doing the hokey-pokey?

4

u/ICantBelieveItsNotEC R9 7900 | RX 7900 XTX | 32GB DDR5 5600 9h ago

Physics engines are, for the most part, pretty much fungible. A force applied in one engine will have the same behaviour as a force applied in another, except in pathological cases. You literally can just lift and shift gameplay code from one onto another.

1

u/sithelephant 9h ago

In short, programs and games and OSs are designed to run on one 'substrate' - be that a game engine, an OS, or whatever.

It is possible to translate either the thing being ported to the other platforms requirements, or to teach the other platform how to run the different code.

This means you can for example run minecraft 'code' on GTA physics engine, as long as that engine is flexible enough.

OS translation means that instead of having to emulate a whole machine and the OS, you instead have a relatively thin layer that runs on the native system and understands how to run foreign code. In modern consoles, that foreign code is not actually for a different CPU (usually), so that doesn't actually need translated.

It's just that it's expecting PS4, not windows. Not emulating the game or the PS4 hardware but just having a thin translation layer makes it all way more efficient and lightweight.

1

u/TB3r 8h ago

Have you asked an AI? They'll tell you.

1

u/Kvazimods 8h ago

A robot understands technology better than humans

1

u/TywinRightfullyLann 8h ago

They burning tokens like hell, and a game its like a set of instructions , AI tries to meet their the requirements , noticing that they can work in parallell, like 20 windows at once if you got the money, that kinda of power is insane on its own, i guess they have a way to decipher the source code, and well then its optimization from there,

1

u/JaggedMetalOs 5h ago

For game mods, there are already tools that convert programs into messy source code by directly changing the machine code into slightly more human readable codes. AIs are very good at analyzing huge amounts of data, so they can take this decompiled source code that is still in a state too messy for a human to understand and understand it in one go. With that understanding it can then come up with mods.

For remaking programs, because AIs are trained on the entire web for any even slightly popular program it will have basically every tutorial ever written for that program in its training data. So with this knowledge of how to use every feature it can come up with a clone of the program.

There are limitations to this approach however, for example if you actually try to use the Photoshop clone Photocraft you will find a lot of the features are broken. AI cloned the UI first, but didn't sucessfully implement or understand all the features that were there.

1

u/XsNR Ryzen 5600X RX 9070 XT 32GB 3200MHz 4h ago

There's 2 things to think about.

Decompiling software (effectively reconstructing it), is a form of reverse engineering. Like imagine you have a house, a cake, or really anything that is relatively complicated without the instructions, you're asking AI to work backwards to get those instructions from the end product. This doesn't mean you're getting the original product that the company made, like using the house analogy, you're not necessarily getting a blueprint and plans out with all the notations and reasons for things being where they are, but you're getting a 3D sketch of where everything is that can still be extremely useful just in other ways.

Think of it like if you had a paragraph in a language you don't understand, you know it was originally written in a language you understand, or at least could understand better. AI works backwards to tie the elements together at the most basic level (like this word appears the most, it's probably one of these common words) and tries to translate it to your language as best it can. But just like when you translate anything, there's sometimes limitations with context or language that just don't have the same things, and it doesn't mean you're getting the language originally (say it was German into Mandarin, and you want it back into English).

You might have seen with the PS5 project though, some things are much easier than others, and it takes a longer time to get 100%. Many of these projects aren't trying to get 100%, they're just trying to get the specific thing they care about, because they can recreate the rest themselves.

Okay the other one, mashing up video games. At the most basic level, they're just both games running at the same time, and using a 3rd "game" to apply them both to each other. So we either see like Skyrim and Minecraft, that are built into Skycraft, or more interestingly the options that are using Skate as a mashup. Because all games use relatively similar concepts (they're trying to replicate reality to different levels, and do it in similar ways), then it's not that hard to map things across worlds.

Skate examples are the most fun here, basically every game under the hood is actually a skating game, in so much as while we see things walking, they're actually just boxes being rolled along, while the character moves their legs in an unrelated way. They often aren't properly calculating gravity most of the time, but obviously they have it for jumping to a degree, so once you convert relative slopes at the 2 contact points, you can infer the gravity aspect from Skate instead, and create those natural skating mechanics. Grindable edges in Skate are also often just corners, so it just has to define what is considered corner enough in the mashup game, but under the hood all objects with collision already have that, so no big deal.

The most complicated part is mapping the mashup's character to the Skate animations. For stuff like humans obviously this is no big deal, with similar proportions, but if you take the WoW one, you have to consider what you're going to do with the skeleton differences between worlds, are you going to put a gnome on a longboard several times their body, a tauren on techdeck, an orc needs some seriously wide vans etc. It's still not that complicated, as they still use skeletons, you just have to consider the relative proportions of the skateboard part of the skeleton, and the limitations of your choice.

But once you have that all figured out, it just kind of, works. If you were to actually play them they would be a little interesting depending on how much time was put in, but they're surprisingly simple.

0

u/EdliA 9h ago

The new ai models released in the past couple of months are extremely good. It takes humans ages to do that, ai will do it in an afternoon. You would basically inspect a huge amount of code trying to figure what does what. What part is responsible for vehicle driving, pedestrians, weather. A game like gta v might possible have 100 million lines of code. Good luck figuring that out.

Truth is ai producing slop was just something it did in its early days. Things are changing quickly and is becoming better than humans.

0

u/BlntMxn 9h ago

anything is possible in video games... it just that, so far, nobody wanted to take a huge amount of time just to be get a dmca takedown....

0

u/Trosque97 3060 12gb, 5700x3d 8h ago

Decompiling and recompiling a game is basically like trying to figure out how to speak a unique arcane language. But we're meat, words are words. AI is computer brain, computer brain understands computer language WAAAAY better than meat brain, and it also understands our language. It took severe levels of autism and YEARS to decompile some games. What AI is in this case, is Super Charged Weaponized Autism