• PeachMan@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      6 months ago

      Nintendo’s execs calling Boeing’s execs: “Hey, can you refer us to your…fixers? You know…rhymes with shmassassin…yeah you know, those guys.”

  • ramirezmike@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    6 months ago

    a comment on that site really condescendingly claims this is how he would have handled it and that a script could be written in half a day to do the work.

    my understanding is that an emulator effectively recreates the hardware’s different components in software so that from the game’s “perspective” it’s running on a real machine more or less.

    This process instead decompiles the game code and recompiles for a new target machine.

    I suspect one can’t just pump out a script in an afternoon to do this, but I am curious what is the complexity here?

    • MajorasMaskForever@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      6 months ago

      For graphics, the problem to be solved is that the N64 compiled code is expecting that if it puts value X at memory address Y it will draw a particular pixel in a particular way.

      Emulators solve this problem by having a virtual CPU execute the game code (kinda difficult), and then emulator code reads the virtual memory space the game code is interacting with (easy), interprets those values (stupid crazy hard), and replicates the graphical effects using custom code/modern graphics API (kinda difficult).

      This program is decompiling the N64 code (easy), searches for known function calls that interact with the N64 GPU (easy), swaps them with known valid modern graphics API calls (easy), then compiles for local machine (easy). Knowing what function signatures to look for and what to replace them with in the general case is basically downright impossible, but because a lot of N64 games used common code, if you go through the laborious process for one game, you get a bunch extra for free or way less effort.

      As one of my favorite engineering phrases goes: the devil is in the details

  • Kit@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    1
    ·
    6 months ago

    Nintendo could have raked in millions by doing it themselves, but they prefer their closed ecosystem.

    • Max-P@lemmy.max-p.me
      link
      fedilink
      English
      arrow-up
      1
      ·
      6 months ago

      The quality of what the community is doing vs what they shipped with NSO especially on launch is laughable.

      Native OoT and MM on the switch would have been really sick. Instead they went with 90s level of emulator quality.

    • DacoTaco@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      arrow-down
      1
      ·
      edit-2
      6 months ago

      Has nothing to do with their closed eco system. They basically did similar stuff with some of the stuff in the sm3d collection thingy.
      Nintendo is a company that only wants make new stuff, innovations.
      For example, they ( mostly miyomoto ) has been quoted to not understand that people want another f-zero, as the game’s principals and ideas have been fully flushed out and no new ideas could make it feel like something new.
      They also usually dont do remakes/remasters unless its so new/different it can be considered a new game ( see metroid 2 on 3ds ).

      If that is a smart business position to have, i will leave for you to decide, but do get your facts a bit straight :)

      EDIT: also, nintendo has used open source projects for internal projects before, so idk how “closed ecosystem” is part of their stuff :)

      • wizardbeard@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        6 months ago

        They basically did similar stuff with some of the stuff in the sm3d collection thingy.

        They did not.

        For Super Mario 64, they emulated it. They increased the resolution the game renders at (trivial with emulation of 3D systems) and they used basic LUA patches in the emulator to override HUD textures with higher resolution ones adjusted for the Switch controller.

        They did not add any further enhancements in any way. Compared to even 64 DS, it was extremely sophomoric. Compared to the Super Mario 64 decomp project, and what its native switch port is capable of (more on that later), it’s an incredibly lazy port. They didn’t even fix the slowdown with Bowser’s Sub that is as simple as adjusting a single compiler flag when you build the ROM from the N64 game source code.

        For Sunshine, it’s an admittedly impressive solution of mostly emulation with some sections of the game engine ported (I think it’s the audio processing?). Once again, the game is rendered at a higher resolution, but they did not redo ot improve further any textures (besides some of the HUD again), graphical effects, or game content. Wind Waker HD this ain’t.

        For Galaxy they cannibalized the existing port of it to Android on the NVidia Shield. The Switch shares most of the important internals with it (CPU, GPU). It’s a combo of emulation with certain key code ported, like Sunshine. Again, besides resolution and HUD, no improvements.

        Beyond that, Nintendo has been content to sell straight up emulation through the Virtual Console service since the Wii. They’ve had multiple instances of straight ports over the years, and some of the most popular Switch games are straight ports with DLC bundled in.


        There are numerous impressive remakes they have done over the years, but that is absolutely not the norm.


        The Super Mario 64 decomp on the Switch supports (not available in Nintendo’s official port in 3D All Stars):

        • Effectively infinite render distance for objects (coins, enemies, stars, etc)
        • 60 fps (compared to the original/all stars 30fps at best)
        • True analog camera control using the right stick (All Stars is just the original’s clunky button based control mapped to the stick)
        • All sorts of QoL options like collecting stars not kicking you out of a level, options for streamlined/faster message boxes
        • Optional bugfixes
        • Optional cheats
        • Variety of HD texture packs to choose from
        • Variety of higher quality 3D model packs to choose from
        • Support for an astounding variety of mods. Levels, entire new games, new characters, new movement and control options (Odyssey Mario in 64 with full cappy and enemy capture mechanics anyone?)
        • Support for many more languages
        • Nearly all of the above is toggleable mid-game from the pause menu.

        I don’t think anyone was expecting something amazing out of 3D All Stars, but they absolutely fucking phoned it in.

        • DacoTaco@lemmy.world
          link
          fedilink
          English
          arrow-up
          0
          arrow-down
          1
          ·
          edit-2
          6 months ago

          Ye, the sm64 was just a jit emulation, you are correct there. Not gonna deny that either. The sms and smg emulations are interesting and impressive though. They basically use a combination of jit compilation and aot compilation to basically take in the rom and adjust code as they go, but its technically running +/- natively, if i read the switchbrew wiki page correctly, thanks to the aot compilation. I find that impressive, from a technical standpoint.
          Could they have added more and do more changes? Yes, ofcourse. Im not saying the fan made stuff isnt impressive, it is and i love it!
          But for nintendo, who strives to create new experiences and things, not rehashing older stuff, is why they kept it basic. For them adding that stuff doesnt make sense as the game doesnt add new enough experiences. They dont care if a bug is fixed or graphics are improved. Those dont get you new experiences or gameplay mechanics. Thats what nintendo strives for.

          Again, if that is a good stance to have as a company i leave up to others to make opinions on, thats not up to me to decide or voice my opinion on ^^

          Fyi, since you seem to know what youre talking about, nintendo’s r&d have used open source projects before internally and we assume it is done to look at older games and see how they worked or if they could be used to make projects like sm3d ( without doing what the license doesnt permit )

      • xkforce@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        6 months ago

        Nintendo is a company that only wants make new stuff

        They’ve been digging mario out of the dumpster for the last 40 years wtf are you dementia-ing on about?

      • TachyonTele@lemm.ee
        link
        fedilink
        English
        arrow-up
        0
        ·
        6 months ago

        Damn you got mob downvoted for explaining exactly how Nintendo thinks. You’re absolutely right. People don’t seem to want to accept that Nintendo operates as an idea toy company. Once they’ve explored a new idea/gimmick they consider it completed and move on.

        • Cethin@lemmy.zip
          link
          fedilink
          English
          arrow-up
          0
          ·
          6 months ago

          Except they don’t? What about Odyssey was new? It’s just a new version of SM64. Sure, it’s got a few different mechanics than SM64, Sunshine, and Galaxy, but those are all the same game at the core, right? This isn’t the only series they do like this.

          • TachyonTele@lemm.ee
            link
            fedilink
            English
            arrow-up
            0
            ·
            6 months ago

            The game mechanics and gimmicks are different in everyone of the games you just listed.

            • Cethin@lemmy.zip
              link
              fedilink
              English
              arrow-up
              0
              ·
              edit-2
              6 months ago

              Barely. Odyssey even specifically references most of the older games to point out how it’s very similar. They all add a small movement mechanic, but other than that jumping has been the same since SM64.

              If we say the Mario games are totally different and don’t reuse ideas, no game does. Literally every game changes at least something small. Hell, patches in some games change more than what has changed between those games.

              • TachyonTele@lemm.ee
                link
                fedilink
                English
                arrow-up
                0
                arrow-down
                1
                ·
                6 months ago

                Ok. Let me know after you’ve actually played any of those games.

                Have a good one.

  • yamanii@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    Saw the twitter post yesterday, good thing they waited until it was basically ready to go before showing off, now even a C&D can’t stop it.

    • Cethin@lemmy.zip
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      6 months ago

      I don’t think there’s grounds for a C&D here anyway. I don’t think it uses any copywritten material. It transcodes the game into C I think, and that’s all. It does not rely on anything Nintendo created.

        • Cethin@lemmy.zip
          link
          fedilink
          English
          arrow-up
          0
          arrow-down
          1
          ·
          6 months ago

          Sure. They could do something in Japan, but if they want to force the development to stop they need to use the laws where the developers are (probably the US). If they want to go after the github (assuming they’re using that for some reason) repo, Microsoft is an American company so US law applies.

          • SmilingSolaris@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            6 months ago

            https://www.wipo.int/treaties/en/ip/berne/

            Actually because Nintendo is a Japanese company it means Japanese law applies to their work in America and America will facilitate the laws execution as if it was it’s own because we are in this treaty.

            It’s why Nintendo gets away with all of its bullshit already. Because they are following Japanese copyright law which is significantly more heavy than American.

  • HollowNaught@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    arrow-down
    1
    ·
    6 months ago

    This might be a hot take, but i prefer the compressed graphics of the original in most games over the 4k rerenders