[HN Gopher] The Legend of Zelda: Twilight Princess Decompilation
___________________________________________________________________
The Legend of Zelda: Twilight Princess Decompilation
Author : skibz
Score : 235 points
Date : 2023-11-24 19:09 UTC (1 days ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| Lammy wrote:
| Cute usage of `.link` TLD lol https://zsrtp.link/about
| jdechko wrote:
| And the "include_link.mk" file. Yea, that's probably a good
| thing.
| grishka wrote:
| And let's not forget that the final executable is produced by
| a _linker_.
| gmgmgmgmgm wrote:
| CnD coming ASAP or does this kind of thing get a pass?
| minimaxir wrote:
| Many Nintendo games (including Legend of Zelda: Ocarina of
| Time) have been decompiled and have not been attacked by the
| Nintendo Ninjas: https://github.com/zeldaret/oot
|
| The more pressing legal concern here is the use of game assets,
| which these decompilations work around by requiring the user to
| provide a ROM to extract them first.
| vore wrote:
| I don't think that's a real legal defense. Code is just as
| subject to copyright as game assets (why wouldn't it be? it's
| just another kind of game asset), and the whole extracting
| assets thing making decompilations free from copyright
| infringement that gets bandied about is complete armchair
| lawyering. It's only by Nintendo's good graces these are
| still allowed to be hosted on GitHub.
| chungy wrote:
| It's nearly trivial to get a file copy of the game disc if
| you own a Wii and the game. No copyright infringement
| needed to get the assets.
|
| Even still, the reverse engineering part to put the
| executable code into C++ is definitely copyright
| infringement.
| jandrese wrote:
| Reverse engineering isn't copyright infringement.
| Distributing the reverse engineered source code is
| probably infringement however.
| ska wrote:
| > Distributing the reverse engineered source code is
| probably infringement however.
|
| Probably not if it actually reverse engineered (with a
| firewall) but that's not what they are doing (i.e.
| decompilation isn't' reverse engineering)
| EMIRELADERO wrote:
| Decompilation is an essential (although not mandatory for
| some cases) part of reverse-engineering.
|
| As for decompilation projects that have only
| reconstructed source code and no game media assets, it's
| probably fair use.
| ska wrote:
| It's an often used tool, sure , but for legal protection
| of reverse engg, your implementation side is firewalled
| from all of that.
|
| It's not likely to be fair use to distribute, fwiw.
| vore wrote:
| It is not fair use in itself: https://courses.cs.duke.edu
| /cps182s/fall02/cscopyright/Copyr...
| Decompiling object code produces an approximation of the
| original source code. Merely making this rough copy would
| usually violate the copyright holder's exclusive rights,
| even if the person who decompiled the code only used it
| as a preliminary step in making another work.
|
| The only reason anyone believes this is fair use is
| because the copyright holders have chosen not to enforce
| it.
| EMIRELADERO wrote:
| It is more likely to be fair use in this specific
| instance, as the copyrighted work to which the analysis
| is applied to is the whole game, not the code itself.
|
| A big part of fair use analysis is in the effect on the
| market for the original work. If people have to obtain a
| copy to even use the project in any interactable way, the
| effect is either none (if we suppose every user of the
| project gets their original copy illegaly) or
| positive/benefitial to the copyright holder (if it makes
| those users actually buy legit copies)
| charcircuit wrote:
| The game is a copyrighted work, but so is the source
| code. The compiled code is a derivative work, and so is
| the decompiled code. Nintendo is not selling the source
| code, so arguing about sales in the market does not makes
| sense.
| EMIRELADERO wrote:
| The fair use analysis is done on the work as a whole, the
| Zelda game that's registered on the Copyright Office. Not
| the code only.
| ThatPlayer wrote:
| Decompilation might be fine, but distributing the results
| isn't a part of reverse-engineering.
|
| Fair use is limited scope. One of the first criteria is
| use. Fair use is generally reserved for education,
| criticism, comment, and news. At best you could say this
| is education, but even then one of the other criteria for
| fair use is the amount of the work published. If you're
| teaching or criticizing this code, the whole codebase is
| probably too much. Some snippets would be fine like you
| would see in code reviews or reviews of books and such.
| KaiserPro wrote:
| https://www.legislation.gov.uk/ukpga/1988/48/section/50B
|
| Says that its totally not legal to distribute decompiled
| code, or indeed:
|
| > uses the information to create a program which is
| substantially similar in its expression to the program
| decompiled or to do any act restricted by copyright.
|
| If it was legal, there would be loads of decompiled
| binaries floating around for windows, Adobe, autodesk and
| any number of other expensive bits of software.
| AshamedCaptain wrote:
| Reverse engineering without consent _is_ copyright
| infringement. As in order to obtain a copy of the
| software you likely signed an EULA which will likely have
| the standard anti-reverse engineering verbiage which
| you'll be violating, therefore you are copying (whether
| for your personal enjoyment or not) the works of the
| author without permission.
|
| There are a series of well documented exceptions...
| normally found in copyright law. (And this most
| definitely does not fall into one of them).
| pama wrote:
| There is no limitation in copying the work of an author
| for personal enjoyment without permission. If I use my
| neurons to read and create an exact copy I can retell to
| myself, or I write it on pen and paper, or I type it on a
| personal computer, or I read it out loud, or read it out
| loud and record it for myself I don't violate anything.
| Otherwise one would never be able to play copyrighted
| sheet music on a digital piano say. Reverse engineering
| might violate other agreements but not copyright law.
| AshamedCaptain wrote:
| > There is no limitation in copying the work of an author
| for personal enjoyment without permission.
|
| Actually there is in many jurisdictions of the world,
| including mine (France). There are some exceptions
| enshrined in copyright law, for which we actually pay a
| tax.
|
| But this is besides the point. It's not even about the
| personal copies you make from your legally-obtained
| original copy on the first place. It's about where you
| obtained that initial copy from. Most definitely not
| legally from the author, if he is not authorizing RE.
|
| > Reverse engineering might violate other agreements but
| not copyright law.
|
| What other agreements does it violate? It is copyright
| law the only thing that puts a restriction between you
| and doing whatever the fsck you want with that code.
| There is a reason the RE exceptions are enshrined in
| copyright law...
| grishka wrote:
| You probably haven't signed anything if you bought the
| game on a physical medium.
| realusername wrote:
| > Reverse engineering without consent _is_ copyright
| infringement. As in order to obtain a copy of the
| software you likely signed an EULA which will likely have
| the standard anti-reverse engineering verbiage which
| you'll be violating
|
| This reasoning is only valid in the US, this kind of anti
| reverse engineering clause has no value in the EU,
| reverse engineering is a predefined exception granted to
| copyright which cannot be voided.
| AshamedCaptain wrote:
| I mention in the original comment that there are several
| exceptions (in copyright law), but these are for specific
| purposes. However this is not one of them. If it was, you
| could literally apply the same reasoning to any piece of
| software in the planet.
| realusername wrote:
| The specific purpose usually being interopability, yes it
| does apply to almost any piece of software on the planet.
|
| More specifically, it's always allowed for DRM code
| (because by definition their whole goal is to block
| interoperability), any kind of proprietary file reading
| and any kind of porting.
|
| Here in the case of these games, the interoperability
| argument is very easy to make since they can only run on
| legacy hardware not even produced anymore.
| AshamedCaptain wrote:
| Ok, do you realize that from you what you claim you can
| conclude that (software) copyright is useless? Go to
| https://news.ycombinator.com/item?id=38410176
|
| _Anyone_ could get any piece of software, claim that they
| want to run it on their new-fangled "x85" instruction
| set, and, according to your rationale, you'd be able to
| just decompile it to a different programming language and
| distribute your translation as much as you want!
|
| > More specifically, it's always allowed for DRM code
| (because by definition their whole goal is to block
| interoperability), any kind of proprietary file reading
| and any kind of porting.
|
| For the record, you are completely misunderstanding the
| point. These exception allows you to perform RE to
| _understand_ the code in question for interoperability,
| not to strip it from copyright and start distributing it
| as if it was your own code. And in most jurisdictions
| such exception only becomes possible when it's the _only
| option available_ to interoperate. As this is _hardly_
| the only option available to run this game on your
| platform (emulation, for example, is completely legal,
| AND you could RE this title to fix your emulator), this
| exception hardly applies here.
| realusername wrote:
| > _Anyone_ could get any piece of software, claim that
| they want to run it on their new-fangled "x85"
| instruction set, and, according to your rationale, you'd
| be able to just decompile it to a different programming
| language and distribute your translation as much as you
| want!
|
| Yeah, why not? If you have to run through all of this
| complexity to run the software you have to run, I don't
| see what it would not fit as an exception.
|
| You realize that those protections against copyright
| aren't granted for free right? Everybody pays absurdly
| high rate of copy rights on every medium they buy in the
| EU and that's why those exceptions are there. If there is
| no means to copy what you own to use it in a different
| configuration, those would be meaningless.
| AshamedCaptain wrote:
| > Yeah, why not? If you have to run through all of this
| complexity to run the software you have to run, I don't
| see what it would not fit as an exception.
|
| What complexity? Emulators are almost everywhere, and
| they don't require you to violate any copyright (or a
| significantly smaller amount), and therefore much likely
| to fit under one of these exceptions (they do). "But the
| illegal way is easier, your honor!" doesn't really get
| you anywhere...
|
| This world where software copyright does not exist is not
| an utopia of free source code, it's a wild wild west of
| obfuscated and/or inaccessible software and the company
| with largest pockets has the monopoly since it can do
| whatever it wants.
|
| > You realize that those protections against copyright
| aren't granted for free right?
|
| "Protections against copyright?" You mean exceptions,
| right? Copyright is ironically free.
|
| > Everybody pays absurdly high rate of copy rights on
| every medium they buy in the EU and that's why those
| exceptions are ther
|
| Not everybody in the EU, even though in my country
| (France) we do. However, how is this related at all to
| the discussion at hand? They are not even related to
| software copyrights at all! (For which there is already
| an exception for personal copies, and for which official
| we pay nothing).
| realusername wrote:
| > Not everybody in the EU, even though in my country
| (France) we do. However, how is this related at all to
| the discussion at hand? They are not even related to
| software copyrights at all! (For which there is already
| an exception for personal copies, and for which official
| we pay nothing).
|
| That's exactly where this exception is coming from. You
| can't make personal copies nowaydays without breaking
| some kind of DRM and that's why there's an
| interoperability exception.
|
| France is indeed one of the worst in this racket but most
| of the EU has similar implementations.
|
| > This world where software copyright does not exist is
| not an utopia of free source code, it's a wild wild west
| of obfuscated and/or inaccessible software and the
| company with largest pockets has the monopoly since it
| can do whatever it wants.
|
| Well that's exactly where we at now, I'm writing this
| comment from a phone which has thousands of piles of
| obfuscated inaccessible and non modifiable software.
| Copyright is what led us there.
| AshamedCaptain wrote:
| > That's exactly where this exception is coming from. You
| can't make personal copies nowaydays without breaking
| some kind of DRM and that's why there's an
| interoperability exception.
|
| I have already addressed the interoperability exception a
| couple messages before. In no way it just basically makes
| all copyright protections pointless by allowing you to
| claim "OK, now I can decompile this software and
| distribute it as I please!".
|
| > Well that's exactly where we at now, I'm writing this
| comment from a phone which has thousands of piles of
| obfuscated inaccessible and non modifiable software.
| Copyright is what led us there.
|
| Hardly. Copyright doesn't necessarily prevent nor make
| tivoization easier. The GPLv3 (or some new, specific
| legislation to this end) are the only things that would
| successfully prevent tivoitzation.
| realusername wrote:
| > In no way it just basically makes all copyright
| protections pointless by allowing you to claim "OK, now I
| can decompile this software and distribute it as I
| please!".
|
| I've never claimed that but it also goes further than the
| conglomerates would make you believe.
|
| > Hardly. Copyright doesn't necessarily prevent nor make
| tivoization easier. The GPLv3 (or some new, specific
| legislation to this end) are the only things that would
| successfully prevent tivoitzation.
|
| While its true that open devices and software are
| possible under copyright laws, it's more of a hack and
| clearly not the default.
|
| I don't know how you would call a law to force opening up
| the sources of software but it's incompatible with the
| copyright concept, that's for sure.
| pjerem wrote:
| > Code is just as subject to copyright as game assets
|
| The decompiled code is not the code that Nintendo wrote.
| This isn't the equivalent of steeling original code but
| more like generating a brand new code that would compile to
| the same executable.
| bri3d wrote:
| The decompiled code is a 1:1 translation, so it's a
| derivative work. You can't distribute a translated book
| without an agreement with the copyright owner, even if
| the translator contributed original creative work on top.
| The analogy is literally 1:1.
| ThatPlayer wrote:
| > This isn't the equivalent of steeling original code but
| more like generating a brand new code that would compile
| to the same executable.
|
| That doesn't make it not copyright infringement. As long
| as it's based on the same executable, that's a derivative
| work. In the same way if I were to recreate Star Wars A
| New Hope with new actors and new sets. If I were to play
| a cover of Micheal Jackson's Thriller with new
| instruments and new voices.
|
| That's why clean-room design is a thing. To recreate the
| same function not based off the copyrighted executable,
| but rather its interactions with the user, other
| programs, and files. Interactions that aren't
| copyrightable.
| qwery wrote:
| You could do a clean-room implementation[0] of Michael
| Jackson's Thriller and the rights holders could still
| take you to court and have a good shot at winning. You
| could have never heard Thriller, come up with an
| obvious[1] melodic phrasing that some lawyers reckon
| sounds close enough and still get sued.
|
| Of course, none of that _makes it copyright infringement_
| , only the (would-be) judge does.
|
| [0] The product of which is roughly equivalent to a cover
|
| [1] obvious to a musician or composer
| vore wrote:
| If I took images from the game and converted them to
| WebPs then distributed them, that is still copyright
| infringement, even though those are not the images
| Nintendo created. Likewise, if you do the same with
| machine code to reconstructed code, that's the same in
| principle.
| AshamedCaptain wrote:
| Why is it always the same on every thread of this type?
| Perhaps I can grab the code segments of a Windows ISO,
| apply a series of mechanical transformations, and proceed
| to call it Freedows and freely distribute it as my own? I
| am having trouble understanding the thought processes
| that lead to these conclusions. Too much ChatGPT?
|
| By this logic copyright protection on software would be
| meaningless. The GPL would be meaningless. I could grab
| any program in the world, "translate it" to my favorite
| language-du-jour, and call it my own.. Goodbye viral
| license requirements...
| hoten wrote:
| These decompilation projects are not using the
| distributed game binary to derive the code in their ports
| directly. It's just used as a rubric. The source code
| generated from this process is not Nintendo's. That's the
| idea, at least. Different from taking Windows ISO and
| jumbling it up into a rude goldberg machine and claiming
| it as a new work.
|
| Do consumers agree to a end user agreement that specifies
| they cannot decompile the game?
| http://en.wikipedia.org/wiki/Reverse_engineering#Legality
| AshamedCaptain wrote:
| > These decompilation projects are not using the
| distributed game binary to derive the code in their ports
| directly
|
| That is the definition of decompilation. What are they
| using as input, if not the "distributed game binary"?
|
| > The source code generated from this process is not
| Nintendo's.
|
| This is just claiming the consequent. The output of my
| magical code transformation method is also not
| Microsoft's.
|
| > Different from taking Windows ISO and jumbling it up
| into a rude goldberg machine and claiming it as a new
| work.
|
| Yet that is exactly what decompilation is...
|
| What distinction are you trying to make here? If I
| translate it to a different language, it is OK? That's as
| absurd as it gets and still basically strip all software
| from copyright.
|
| > Do consumers agree to a end user agreement that
| specifies they cannot decompile the game?
|
| For the record... yes.
| mjg59 wrote:
| They took the distributed game binary and ran it through
| a tool that produced an approximation of source code. At
| this point the decompiled code is clearly a mechanical
| transformation of the game binary, and so holds the same
| copyright status. This code is then cleaned up such that
| it compiles and functions and variables are given
| sensible names. This is, arguably, a creative endeavour,
| but it's also clearly a derivative work of the original
| binary and so is still controlled by copyright law.
|
| The decompilation itself may or may not be a copyright
| violation - that's likely to vary depending on
| jurisdiction. If someone in a jurisdiction where it's
| legal were to write a description of the behaviour of the
| decompiled code and if someone else were to implement a
| codebase that happened to compile to the same original
| binary code then there's an argument that no infringement
| occurred (a functional description of the behaviour of a
| work is potentially not derivative of that work, and re-
| implementing the code based on that description is then
| not constrained by the original copyright), but that's
| not what happened here.
|
| I don't _like_ that this is the case, but let 's take it
| to a logical conclusion - if I take an interpreted
| language with a bytecode compiler, I can typically
| decompile it to something almost 100% identical to the
| original code (I'd lose comments and maybe variable
| names, but that depends on the language). Does this mean
| I can take copyrighted Python code, run it through the
| interpreter, dump the state, decompile it, and have an
| independent work not subject to the original license?
| matheusmoreira wrote:
| > They took the distributed game binary and ran it
| through a tool that produced an approximation of source
| code.
|
| > At this point the decompiled code is clearly a
| mechanical transformation of the game binary, and so
| holds the same copyright status.
|
| Courts disagree with you.
|
| Sony Computer Entertainment v. Connectix Corp.
|
| https://scholar.google.com/scholar_case?case=716676913673
| 727...
|
| > The object code of a program may be copyrighted as
| expression, 17 U.S.C. SS 102(a), but it also contains
| ideas and performs functions that are not entitled to
| copyright protection. See 17 U.S.C. SS 102(b).
|
| > Object code cannot, however, be read by humans.
|
| > The unprotected ideas and functions of the code
| therefore are frequently undiscoverable in the absence of
| investigation and translation that may require copying
| the copyrighted material.
|
| > We conclude that, under the facts of this case and our
| precedent, Connectix's intermediate copying and use of
| Sony's copyrighted BIOS was a fair use for the purpose of
| gaining access to the unprotected elements of Sony's
| software.
|
| Not only are the methods of operation which underlie the
| code completely unprotected, the copying of and the
| application of tools to the code for the purpose of
| exercising your _right_ to discover those unprotected
| elements is fair use.
| saagarjha wrote:
| Posting the quote "Object code cannot, however, be read
| by humans" in a discussion about decompiling a game is
| definitely a strange option to take.
| qwery wrote:
| I'm not sure why. I think most threads of any type
| usually feel the same as other threads of the type. As
| for your Windows hypothetical, not sure which Windows
| you're talking about, but I don't think Microsoft would
| really care if you did the equivalent of the projects
| being discussed to Windowses of approximately that age.
| If you do something obviously different, like _freely
| distribute a modified Windows ISO as your own_ , I would
| expect to encounter some resistance.
| AshamedCaptain wrote:
| > If you do something obviously different, like freely
| distribute a modified Windows ISO as your own, I would
| expect to encounter some resistance.
|
| And this is exactly what this Github repository is doing.
|
| If you are arguing "abandonware", then this is no legal
| argument whatsoever.
| matheusmoreira wrote:
| https://www.law.cornell.edu/uscode/text/17/102
|
| > (b) In no case does copyright protection for an
| original work of authorship extend to any idea,
| procedure, process, system, method of operation, concept,
| principle, or discovery, regardless of the form in which
| it is described, explained, illustrated, or embodied in
| such work.
|
| The way the game works is not protected. Only Nintendo's
| code is.
| AshamedCaptain wrote:
| You are doing the same mistake as the other poster:
| claiming the consequent. I could also say that my magical
| transformation process produces code which is not
| Microsoft's, even when it obviously ingests code that is
| Microsoft's. Why would your method be stripping copyright
| protection while mine wouldn't? What's the difference
| from what you are claiming?
|
| Frankly at this point I just want to point out that if in
| your world view this is allowed, then _all_ software
| copyright is pointless, since anyone could apply the same
| rationale to any program in the world. What's the point
| of the GPL on such world?
| matheusmoreira wrote:
| > even when it obviously ingests code that is Microsoft's
|
| Fair use.
|
| Sony Computer Entertainment v. Connectix Corp.
|
| https://scholar.google.com/scholar_case?case=716676913673
| 727...
|
| > The object code of a program may be copyrighted as
| expression, 17 U.S.C. SS 102(a), but it also contains
| ideas and performs functions that are not entitled to
| copyright protection. See 17 U.S.C. SS 102(b).
|
| > Object code cannot, however, be read by humans.
|
| > The unprotected ideas and functions of the code
| therefore are frequently undiscoverable in the absence of
| investigation and translation that may require copying
| the copyrighted material.
|
| > We conclude that, under the facts of this case and our
| precedent, Connectix's intermediate copying and use of
| Sony's copyrighted BIOS was a fair use for the purpose of
| gaining access to the unprotected elements of Sony's
| software.
|
| Not only are the methods of operation which underlie the
| code completely unprotected, the copying of and the
| application of tools to the code for the purpose of
| exercising your _right_ to discover those unprotected
| elements is fair use.
|
| > then _all_ software copyright is pointless
|
| It is pointless. I am a copyright abolitionist.
|
| > What's the point of the GPL on such world?
|
| None. The GPL was literally created in response to
| copyright protection being extended to software. No
| copyright, no point to the GPL.
| AshamedCaptain wrote:
| > [software copyright] is pointless.
|
| So you provide one answer on my question of which thought
| process leads to these conclusions: wishful thinking.
|
| Sigh.
|
| See what I just wrote on the other comment:
|
| > These exceptions allows you to perform RE to
| _understand_ the code in question for interoperability,
| not to strip it from copyright and start distributing it
| as if it was your own code. And in most jurisdictions
| such exception only becomes possible when it's the _only
| option available_ to interoperate. As this is _hardly_
| the only option available to run this game on your
| platform (emulation, for example, is completely legal,
| AND you could RE this title to fix your emulator), this
| exception hardly applies here.
|
| This is exactly what actually happened in the case you
| are quoting.
| lrvick wrote:
| People will de-compile proprietary software and GPL it,
| and others will have AI clone/port GPL code to new
| languages then back to the original language again to de-
| GPL code.
|
| Overall this will make software copyright laws pointless,
| but in the end everything anyone cares about will be open
| source. I am here for this outcome.
| AshamedCaptain wrote:
| Frankly I think you have a very rosy view. If this were
| to happen I foresee companies would immediately start
| treating code as if it was a private key, using
| ridiculous hardware protection mechanism, tivoization,
| SaaS, and the like as much as possible. The entire reason
| code is so accessible right now is because companies only
| care about making it "inconvenient" for home piracy,
| relying on the threat of legal action for everyone else.
| Imagine a world where if you don't do it then your
| competitors can legally use your software. Everyone who
| isn't already releasing their software under the BSD or
| PD would stop doing so since just about everyone else
| could just shamelessly rip it into their next closed as
| hell & secure boot'd device. Your "AI" would have zero
| source code to train on. Only the companies with the
| largest resources would be able to break the latest
| obfuscation mechanisms, leading to more effective
| imbalances in power. And on and on..
|
| Mandating open software & open hardware is one thing, but
| simply removing copyright doesn't led there -- it leads
| to a even more dystopic world.
| Salgat wrote:
| Is a translation of a book not also protected under the
| original copyright? This is just a human readable form of
| the original binary.
| colechristensen wrote:
| There are fair use carveouts for reverse engineering code
| to, for example, make it usable on different platforms. I
| don't believe this kind of decompile project has ever had
| its day in court and the laws are written in such a way
| that the outcome is at least somewhat likely to be skewed
| in favor of reverse engineering. Nintendo may be avoiding
| bringing suit because they don't think they could win or
| that the judgement might make expanded rights explicit
| encouraging more of this kind of thing.
|
| EFF on the topic https://www.eff.org/issues/coders/reverse-
| engineering-faq
| chungy wrote:
| It's even possible that Nintendo evaluates the harm of
| these projects to be rather lower compared to
| distributing the complete games themselves. Even though
| it's not based in any legal reality, the projects'
| firewall of "You must provide art assets from your own
| copy of the game" may suffice to keep the lawyers away.
|
| I know, Nintendo will litigate anyone for any reason, but
| it is possible for a company to look away when these
| measures are taken.
| LegibleCrimson wrote:
| Yeah, seems most likely. In the past, they've explicitly
| taken down distributions of things like the SM64 PC port,
| but left the decompilation.
|
| Companies don't have to C&D. If something poses very
| little financial danger, but taking it down presents
| significant risk of PR harm, it's not worth it. The C&D
| would cost more than it would save, so it makes no
| business sense.
|
| Don't ask me why they even bothered taking down fan
| games, though. They seem to care a lot about art assets
| in particular.
| chungy wrote:
| > Don't ask me why they even bothered taking down fan
| games, though. They seem to care a lot about art assets
| in particular.
|
| If talking about AM2R, it posed a rather credible threat
| against the success of the official Metroid 2 remake
| (ignoring the fact that AM2R is of much higher quality
| anyway). Plus it contained ripped sprites from Zero
| Mission, Fusion, and incorporated all of the characters
| and enemies that Nintendo owns.
|
| You can't just make your own Lord of the Rings or Star
| Wars without infringing the copyright of the original
| work. Same with fan remakes.
| LegibleCrimson wrote:
| That one I get to a degree, but they've hit a lot of
| others for less clear benefit.
| ThatPlayer wrote:
| Those fair use exceptions only cover the process of
| reverse engineering specifically. From that article:
| "Reverse engineers execute code and/or make copies of
| software as part of analyzing the way the program works."
|
| But distributing the code is not part of the reverse
| engineering process, so that fair use doesn't apply. Also
| from that article:
|
| > It is highly risky to copy any code into a program you
| create as a result of reverse engineering, because that
| copy could infringe copyright unless it is a fair use
| under copyright law.
| qwery wrote:
| I obviously don't speak for who you replied to, but I just
| wanted to point out that they made no claim about
| copyright.
| vore wrote:
| Legal concern = copyright infringement. What other legal
| concerns are there in this scenario?
| ace2358 wrote:
| Very cool! These decompilation projects are getting more and more
| ambitious! We've had androids games ported to the PS vita, Super
| Mario 64 running on a modded PS4, I've got diable 1 one my
| switch. It's great!! Thanks to the hard workers!!
| speps wrote:
| What was the Android game ported to PS Vita? It sounds
| challenging but not nearly as much given the Vita CPU is ARM
| and GPU supports OpebGL ES 2. Lots of the Vita components were
| phone components.
| smith7018 wrote:
| The ports work because the Vita has an Arm v7 processor and
| Android games can run on the bare metal. The developers
| figured out that they just needed to patch some methods
| (presumably IO, gpu calls, and OS methods) to work on the
| Vita's OS.
|
| https://wololo.net/2022/11/10/ps-vita-android-
| ports-30-games...
| pjmlp wrote:
| Android games fully written with the NDK, not Android games
| in general.
| causi wrote:
| One of the spookiest to me is Mario 64 running on the Funkey S.
| doomlaser wrote:
| > Our long-term goal is to produce a highly documented and
| complete C++ codebase for every version of _Twilight Princess_.
| Having clear and readable source code will aid speedrunners,
| glitch hunters, and modders curious about how particular parts of
| the game work.
|
| > Our primary goal is a full decompilation of the GameCube USA
| version with appropriate documentation. After this is achieved,
| we plan to decompile the other versions of the game.
|
| Cool project.
| okl wrote:
| I guess that proposing symbol names could be an apt use case for
| AI. Some papers are referenced here:
| https://github.com/nforest/awesome-decompilation#ai-based-de...
| geiagal wrote:
| thanks for the link! I do a lot of hand decompilation and I
| wonder if AI could be helpful...
| zamadatix wrote:
| Perhaps a better landing page to start from if you haven't seen
| the other efforts before either: https://zelda64.dev/
| 99_00 wrote:
| Playing twilight princess made me appreciate the beauty of
| twilight in nature - the colors, lighting, shadows, sounds.
| explaininjs wrote:
| It made me appreciate the goth girls in nature too...
| https://www.bing.com/images/search?q=midna
| shampto3 wrote:
| I've been having a blast playing an online multiplayer mod of
| ocarina of time for the PC port that was made from a
| decompilation a while back. I'm excited to see the fun stuff that
| is made from other decompilation projects like this.
| jcul wrote:
| Could you share a link?
| shampto3 wrote:
| Thanks, I should have included it in the original comment.
|
| https://github.com/garrettjoecox/anchor
|
| This is a fork of the Ship of Harkinian PC port for ocarina
| of time. If you just want to play the normal game on PC, you
| can go to the original repo here:
| https://github.com/HarbourMasters/Shipwright
| garrettjoecox wrote:
| Hey that's me. Glad you're enjoying it.
| Icathian wrote:
| Man I love HN.
|
| Also, thanks for making this. It looks amazing.
| fho wrote:
| That's literally what I dreamed about as a little kid :-)
| Cypher wrote:
| how do you play that one?
| gmerc wrote:
| Sooner or later LLMs will trivially shift code from one language
| to another too, which will be fun
| CM30 wrote:
| The most interesting thing to see here will be what the modding
| scene does once/if the project is finished. Because generally,
| decompiled games are a hell of a lot easier to mod in any notable
| way than ones where you have to code any additions in assembly
| language, and it gets easier still when someone ports it to PC or
| what not.
|
| Just look at Super Mario 64. Since that game got decompiled and
| ported, we've since the number of custom elements in your average
| ROM hack skyrocket, and the complexity of some of the projects
| people have made using the engine reach ridiculous degrees. Prior
| to this, we mostly only saw custom powerups, enemies, bosses and
| objects in hacks by Kaze Emanuar. Post this happening, such
| things pop up in contest and game jam hacks made in a few weeks.
|
| Same thing with Ocarina of Time, and other affected games. When
| people understand the source code (and then when it becomes much
| easier to modify), the complexity of a community's work goes up
| tenfold.
|
| So yeah, it could be interesting to see whether any ambitious
| Twilight Princess mods start development after this, assuming it
| gets finished. I don't think there's much of a scene for those
| right now either, so this could be what kickstarts said community
| in general too.
___________________________________________________________________
(page generated 2023-11-25 23:02 UTC)