Support us on Patreon to keep GamingOnLinux alive. This ensures all of our main content remains free for everyone. Just good, fresh content! Alternatively, you can donate through PayPal. You can also buy games using our partner links for GOG and Humble Store.
We do often include affiliate links to earn us some pennies. See more here.

Well this is a shame but in many ways to be expected. Take-Two Interactive Software, the parent company of Rockstar Games, has filed a lawsuit against the developers of the reverse-engineered GTA III and Vice City code.

This is a bit of an ongoing saga, as Take-Two first got the GitHub repositories taken down, which were later restored when the developer of a fork submitted a counter-notice which wasn't argued so they all went back up. The repositories are still live on GitHub right now. The notice mentions this with Take-Two saying the counter notices were "were made in bad faith, and knowingly and deliberately misrepresented to GitHub the contents".

Plenty more is argued as well of course. In the notice it complains how the code now runs on platforms it was never released for where the "Defendants have sought to exploit a potential market that belongs exclusively to Take-Two", it argues against new cheats enabled in the source code which "are strictly prohibited under Take-Two’s terms of service". It goes further, complaining about modding which Take-Two say "encouraging users to further infringe the original Games and to violate their agreements with Take-Two that prohibit such activities".

As a result of the code being public, Take-Two are claiming it the "Defendants have caused and continue to cause irreparable harm".

Take-Two are looking to get damages paid which as of yet "are not currently ascertainable", so they want it to be worked out. On top of that they want the "maximum statutory damages of $150,000 for each work infringed" and they also want their "attorneys’ fees and full costs" paid as well.

The point about cheats is a funny one. Single-player games from the early 2000s have cheats added in? Extra modding too? Oh no, how completely terrible for people to further enjoy them.

Why was this lawsuit coming to be expected? Well, reverse-engineered code tends to be a grey area with it often being against the law, and code from leaks is a big no for all sorts of obvious legal reasons. That said, the source code did require people to actually buy the games for the data, so Take-Two would have still be getting revenue thanks to it.

Sadly though, like most major publishers, they shy away from any sort of open source. In this case, Take-Two and Rockstar are reportedly doing a big GTA Remastered Trilogy so moving to fully protect their code was obvious.

Article taken from GamingOnLinux.com.
Tags: Misc
33 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly checked on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. You can also follow my personal adventures on Bluesky.
See more from me
The comments on this article are closed.
All posts need to follow our rules. For users logged in: please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Guest readers can email us for any issues.
105 comments
Page: «4/6»
  Go to:

Cybolic Sep 4, 2021
I bought GTA3 when this engine became usable - to bump the Linux sale number and show that the engine has a positive effect - now I've had to file for a refund, which is probably not likely to happen.

UPDATE: Refund denied.


Last edited by Cybolic on 6 September 2021 at 9:36 am UTC
Whitewolfe80 Sep 4, 2021
I'm very sorry to Electronic Arts (EA) for losing "the worst game publisher in the world of the year" title. This year "competition" is so damn tough.

Hey give them time they still have 3 months to close bioware
Purple Library Guy Sep 4, 2021
As I understand new world, corporations split the "markets" between them and became upset someone got to their territory. The claims is so anti-market and anti-capitalistic as whole so I wonder what is going on.
Anti-market perhaps, although markets have always had a lot less of the whole freedom fairy dust than many people are led to believe. Anti-capitalistic, no. We think of markets and capitalism as being near-identical, but they aren't. Capitalism as such has little to do with markets, let alone free ones--monopoly is the objective of every capitalist who gets far enough. The fundamental points that make capitalism a system distinct from other systems is private individuals invest money (capital) to get a profit, employing wage labour to cause the profit to happen. Usually, that involves selling something to someone in something you could call a market, but sometimes it involves outright stealing, sometimes it involves direct selling solely to government as in US defence procurement, sometimes it involves the company store in the company town, where the miners or whoever buy your stuff at your price or they starve. All still capitalism, just not very markety. You can definitely have both markets without capitalism, and capitalism without markets.
(You can also have capitalism without the limited liability corporation)

You (same as politicians) mixing capitalism - private ownership, free market with corporativism - that think you talk about. Its distict thing.
As far as I can figure out what you're saying . . . no.
This isn't really up for debate. Economics has a history which involves various ideas and terms being defined. Economics itself is often bogus in that they do bad logic to get false results while using the terms, but the terms are still defined in a particular way. Going Humpty Dumpty and having you or your political faction redefine the terms to mean something else is like deciding you want "acceleration" to mean something other than "change in velocity over time". It's just wrong.

I explained a bit about what a couple of terms mean. That is in fact what they mean, because that's what the classical economists who invented them used them to mean, and the economic tradition, when it still pays attention to them seriously, still uses them to mean that. Confusion happens because they get used loosely a lot, or for propaganda purposes. People also redefine capitalism a lot to try to wiggle out of cognitive dissonance: "Capitalism is great . . . but the economy is vile . . . how to reconcile?! --> capitalism must be something we're not doing!"
Purple Library Guy Sep 4, 2021
They managed to create their own code in C++ working in the same way as GTA code.

This can be argued, since they did decompile it and use the decompiled code with tools to get code that behaves like the original. Ofc there is more involved than just that, but it's basically using the original code, decompiling it and using tools to get manageable C++ code and work from there - and that can certainly be argued as copyright infringement.

Personally, if they never framed it the way of decompiled code but a green field approach, they'd probably have a better ground at court.
Yeah, I think for instance if someone wrote a book and encrypted it and all you had was the encrypted book, and you could decrypt it but very imperfectly, and so you did that, and then reconstructed a book trying for your best guess at what the wording was originally like, and published that--you'd be violating copyright.
slaapliedje Sep 4, 2021
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.
They recreated the C++ code from the machine code disassembled, then patched it to compile on different platforms... From my understanding that's still one valid way of reverse engineering. The other method of course is to study the data files and create code around interpreting it. Copyright infringement would only be if they literally took the original source code and copied it. That's the part that is copyrighted. Using a disassembler is not illegal in any sense of the word.

Using a disassembler just to look at the code is not illegal no, but if the binary machine code is copyrighted to T2 then the disassembled C++ code is also copyrighted to T2 since its derived from the copyrighted binary. There is precedence here in Sega vs Accolade where the appeals court decided that disassembled code is "fruit of the poisonous tree".

However they also decided that it fell under the fair use doctrine since "disassembly is required for humans to understand object code", but as I see it this does not apply here since the disassembled code was not used to understand how the game engine worked, it was used 1:1 to create the base source code of the project.

Arguing that this is legal would IMHO break the copyright protection that we have on GPL:ed code, in that companies can take our code as base and then do "changes" to it and now claim their own copyright on it and make it proprietary.
Ah, my interpretation was that they rewrote the C++ code based on the assembly code. Not that they basically just did a translation of it to C++ and copied it.
F.Ultra Sep 4, 2021
View PC info
  • Supporter
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.
They recreated the C++ code from the machine code disassembled, then patched it to compile on different platforms... From my understanding that's still one valid way of reverse engineering. The other method of course is to study the data files and create code around interpreting it. Copyright infringement would only be if they literally took the original source code and copied it. That's the part that is copyrighted. Using a disassembler is not illegal in any sense of the word.

Using a disassembler just to look at the code is not illegal no, but if the binary machine code is copyrighted to T2 then the disassembled C++ code is also copyrighted to T2 since its derived from the copyrighted binary. There is precedence here in Sega vs Accolade where the appeals court decided that disassembled code is "fruit of the poisonous tree".

However they also decided that it fell under the fair use doctrine since "disassembly is required for humans to understand object code", but as I see it this does not apply here since the disassembled code was not used to understand how the game engine worked, it was used 1:1 to create the base source code of the project.

Arguing that this is legal would IMHO break the copyright protection that we have on GPL:ed code, in that companies can take our code as base and then do "changes" to it and now claim their own copyright on it and make it proprietary.
Ah, my interpretation was that they rewrote the C++ code based on the assembly code. Not that they basically just did a translation of it to C++ and copied it.
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.
They recreated the C++ code from the machine code disassembled, then patched it to compile on different platforms... From my understanding that's still one valid way of reverse engineering. The other method of course is to study the data files and create code around interpreting it. Copyright infringement would only be if they literally took the original source code and copied it. That's the part that is copyrighted. Using a disassembler is not illegal in any sense of the word.

Using a disassembler just to look at the code is not illegal no, but if the binary machine code is copyrighted to T2 then the disassembled C++ code is also copyrighted to T2 since its derived from the copyrighted binary. There is precedence here in Sega vs Accolade where the appeals court decided that disassembled code is "fruit of the poisonous tree".

However they also decided that it fell under the fair use doctrine since "disassembly is required for humans to understand object code", but as I see it this does not apply here since the disassembled code was not used to understand how the game engine worked, it was used 1:1 to create the base source code of the project.

Arguing that this is legal would IMHO break the copyright protection that we have on GPL:ed code, in that companies can take our code as base and then do "changes" to it and now claim their own copyright on it and make it proprietary.
Ah, my interpretation was that they rewrote the C++ code based on the assembly code. Not that they basically just did a translation of it to C++ and copied it.

Papenhoff specifically mentioned that they used a decompiler (the suit is quoting his own words) and not a disassembler so they turned the binary into c++ code directly with a decompiler.
F.Ultra Sep 4, 2021
View PC info
  • Supporter
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.
This shows that plaintif and you did not understand what reverse engineers say:
1. GTA code was written in C++
2. They managed to create their own code in C++ working in the same way as GTA code.
If you read they took original GTA code, you need to check your sight.

That is not what they did, what they did is:

1. GTA code was written in C++
2. They used a decompiler to turn the GTA binary into fully working C++ code
3. They did changes to the generated C++ code to implement the changes they wanted to make

T2 owns the copyright to the C++ code of the game, but they also of course owns the copyright to the compiled binary so when you use a decompiler to turn the copyrighted binary machine code into autogenerated C++ code then you have just made a 1:1 transformation of the copyrighted code, so this step does not remove any copyrights.

Had they instead used a disassembler to look at how the game engine worked and then wrote their own C++ code based on that observation then what you said would be true, but that is not what they did according to their own wording. Hence why they will have a very hard time making a defense here. But then I'm not a lawyer, not do I play one on TV.
F.Ultra Sep 4, 2021
View PC info
  • Supporter
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.

Since running the software requires the original data files, it is easily defended as a case of fair use. If it turns out not to be so in the courts, it'd be time to ask some pointed questions as to why copyright law is so broken that it isn't.

Fair Use applies to you the end user so you are not performing a copyright infringement by running Re3 with your purchased data files, the devs behind Re3 however infringes on T2:s right to sell the game at a premium on the Switch if they infringed on T2:s copyright when they created Re3.
slapin Sep 4, 2021
  • Supporter Plus
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.
This shows that plaintif and you did not understand what reverse engineers say:
1. GTA code was written in C++
2. They managed to create their own code in C++ working in the same way as GTA code.
If you read they took original GTA code, you need to check your sight.

That is not what they did, what they did is:

1. GTA code was written in C++
2. They used a decompiler to turn the GTA binary into fully working C++ code
3. They did changes to the generated C++ code to implement the changes they wanted to make

T2 owns the copyright to the C++ code of the game, but they also of course owns the copyright to the compiled binary so when you use a decompiler to turn the copyrighted binary machine code into autogenerated C++ code then you have just made a 1:1 transformation of the copyrighted code, so this step does not remove any copyrights.

Had they instead used a disassembler to look at how the game engine worked and then wrote their own C++ code based on that observation then what you said would be true, but that is not what they did according to their own wording. Hence why they will have a very hard time making a defense here. But then I'm not a lawyer, not do I play one on TV.

IIRC there is no decompiled code in re3 source. Also they explained they used dll injection process which would be totally meaningless if they had just decompiled it.
We were lucky that we had symbols from PS2 gta3 and the android games. other than that it was a lot of reading code in IDA and massaging it back into c++. I made a little video about part of the process [1] but i never did part 2.

The strategy for gta3 was to replace function by function of the game until we had everything replaced. for VC we evolved our existing code base by, again, reversing function by function until we had everything done. Just not by dll injection this time.

[1] https://www.youtube.com/watch?v=22BeuOOERLo

You can also read whole discussion: https://news.ycombinator.com/item?id=26130320
F.Ultra Sep 4, 2021
View PC info
  • Supporter
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.
This shows that plaintif and you did not understand what reverse engineers say:
1. GTA code was written in C++
2. They managed to create their own code in C++ working in the same way as GTA code.
If you read they took original GTA code, you need to check your sight.

That is not what they did, what they did is:

1. GTA code was written in C++
2. They used a decompiler to turn the GTA binary into fully working C++ code
3. They did changes to the generated C++ code to implement the changes they wanted to make

T2 owns the copyright to the C++ code of the game, but they also of course owns the copyright to the compiled binary so when you use a decompiler to turn the copyrighted binary machine code into autogenerated C++ code then you have just made a 1:1 transformation of the copyrighted code, so this step does not remove any copyrights.

Had they instead used a disassembler to look at how the game engine worked and then wrote their own C++ code based on that observation then what you said would be true, but that is not what they did according to their own wording. Hence why they will have a very hard time making a defense here. But then I'm not a lawyer, not do I play one on TV.

IIRC there is no decompiled code in re3 source. Also they explained they used dll injection process which would be totally meaningless if they had just decompiled it.
We were lucky that we had symbols from PS2 gta3 and the android games. other than that it was a lot of reading code in IDA and massaging it back into c++. I made a little video about part of the process [1] but i never did part 2.

The strategy for gta3 was to replace function by function of the game until we had everything replaced. for VC we evolved our existing code base by, again, reversing function by function until we had everything done. Just not by dll injection this time.

[1] https://www.youtube.com/watch?v=22BeuOOERLo

You can also read whole discussion: https://news.ycombinator.com/item?id=26130320

Well I do hope for their sake that you are correct and they can prove it, because the T2 lawyers have the main Re3 dev quoted as having written: "So what we typically do is work with the output of the decompiler and massage it back into readable C++"

edit: He have also made a YouTube video where it's quite clear that he cleans up autogenerated decompiler c++ code: https://www.youtube.com/watch?v=22BeuOOERLo&t=48s


Last edited by F.Ultra on 4 September 2021 at 11:25 pm UTC
inckie Sep 5, 2021
I think this case basically gonna boil down to question of "did they use the reverse engineered code in an intermediate nature or not".
slapin Sep 5, 2021
  • Supporter Plus
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.
This shows that plaintif and you did not understand what reverse engineers say:
1. GTA code was written in C++
2. They managed to create their own code in C++ working in the same way as GTA code.
If you read they took original GTA code, you need to check your sight.

That is not what they did, what they did is:

1. GTA code was written in C++
2. They used a decompiler to turn the GTA binary into fully working C++ code
3. They did changes to the generated C++ code to implement the changes they wanted to make

T2 owns the copyright to the C++ code of the game, but they also of course owns the copyright to the compiled binary so when you use a decompiler to turn the copyrighted binary machine code into autogenerated C++ code then you have just made a 1:1 transformation of the copyrighted code, so this step does not remove any copyrights.

Had they instead used a disassembler to look at how the game engine worked and then wrote their own C++ code based on that observation then what you said would be true, but that is not what they did according to their own wording. Hence why they will have a very hard time making a defense here. But then I'm not a lawyer, not do I play one on TV.

IIRC there is no decompiled code in re3 source. Also they explained they used dll injection process which would be totally meaningless if they had just decompiled it.
We were lucky that we had symbols from PS2 gta3 and the android games. other than that it was a lot of reading code in IDA and massaging it back into c++. I made a little video about part of the process [1] but i never did part 2.

The strategy for gta3 was to replace function by function of the game until we had everything replaced. for VC we evolved our existing code base by, again, reversing function by function until we had everything done. Just not by dll injection this time.

[1] https://www.youtube.com/watch?v=22BeuOOERLo

You can also read whole discussion: https://news.ycombinator.com/item?id=26130320

Well I do hope for their sake that you are correct and they can prove it, because the T2 lawyers have the main Re3 dev quoted as having written: "So what we typically do is work with the output of the decompiler and massage it back into readable C++"

edit: He have also made a YouTube video where it's quite clear that he cleans up autogenerated decompiler c++ code: https://www.youtube.com/watch?v=22BeuOOERLo&t=48s

It looks like you never seen a line of code in your life. They get "decompiled" junk which is mostly useless, and look at assembler output to guess what that is really doing and implement particular piece of code. No "decompiled" "code" remains in the process. Because that code is useless unreadable piece of junk. Usually the "decompile" portion is used to have sense of progress and have easier feel of control flow because disassembly might be too intimidating in large hunks, also compilers add various generated portions of code which can be lots and lots of jumps in there and it is a bit easier to look at these in "decompiled" output because semantic labels are there and some control flow operators and function calls are there. It does not produce useful code however, it is just better disassembly. It does not change the notion of looking at machine code then writing your own code. You should write totally your own code in the end. The decompile part is just to produce aid, it is impossible to use the output directly. And even if you manage to make that decompiled code work in your case, that will be too obvious because it will look like gibberish and there is no such code in re3 as I can tell. So it is safe to assume that reverse engineering was done right and the code produced is not Take-Two's code. All the harm portions are also sound not spectacular. There might be some if somebody would sell these games with assets of original games, but nothing like that happens. I guess Take-Two is the only game company in the world which considers modders as harm to their sales. So I guess the harm of the processing will surpass any harm which ever could be from modding these games.
And they should fail now or else lots of projects now are in danger.
rustybroomhandle Sep 5, 2021
Amusing comment from Nightdive studios on the topic:

https://twitter.com/pripyatbeast/status/1433925671995068418

You do this to a game @NightdiveStudio is working on and you get offered a job.


Last edited by rustybroomhandle on 5 September 2021 at 6:58 am UTC
slaapliedje Sep 5, 2021
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.
This shows that plaintif and you did not understand what reverse engineers say:
1. GTA code was written in C++
2. They managed to create their own code in C++ working in the same way as GTA code.
If you read they took original GTA code, you need to check your sight.

That is not what they did, what they did is:

1. GTA code was written in C++
2. They used a decompiler to turn the GTA binary into fully working C++ code
3. They did changes to the generated C++ code to implement the changes they wanted to make

T2 owns the copyright to the C++ code of the game, but they also of course owns the copyright to the compiled binary so when you use a decompiler to turn the copyrighted binary machine code into autogenerated C++ code then you have just made a 1:1 transformation of the copyrighted code, so this step does not remove any copyrights.

Had they instead used a disassembler to look at how the game engine worked and then wrote their own C++ code based on that observation then what you said would be true, but that is not what they did according to their own wording. Hence why they will have a very hard time making a defense here. But then I'm not a lawyer, not do I play one on TV.

IIRC there is no decompiled code in re3 source. Also they explained they used dll injection process which would be totally meaningless if they had just decompiled it.
We were lucky that we had symbols from PS2 gta3 and the android games. other than that it was a lot of reading code in IDA and massaging it back into c++. I made a little video about part of the process [1] but i never did part 2.

The strategy for gta3 was to replace function by function of the game until we had everything replaced. for VC we evolved our existing code base by, again, reversing function by function until we had everything done. Just not by dll injection this time.

[1] https://www.youtube.com/watch?v=22BeuOOERLo

You can also read whole discussion: https://news.ycombinator.com/item?id=26130320

Well I do hope for their sake that you are correct and they can prove it, because the T2 lawyers have the main Re3 dev quoted as having written: "So what we typically do is work with the output of the decompiler and massage it back into readable C++"

edit: He have also made a YouTube video where it's quite clear that he cleans up autogenerated decompiler c++ code: https://www.youtube.com/watch?v=22BeuOOERLo&t=48s

It looks like you never seen a line of code in your life. They get "decompiled" junk which is mostly useless, and look at assembler output to guess what that is really doing and implement particular piece of code. No "decompiled" "code" remains in the process. Because that code is useless unreadable piece of junk. Usually the "decompile" portion is used to have sense of progress and have easier feel of control flow because disassembly might be too intimidating in large hunks, also compilers add various generated portions of code which can be lots and lots of jumps in there and it is a bit easier to look at these in "decompiled" output because semantic labels are there and some control flow operators and function calls are there. It does not produce useful code however, it is just better disassembly. It does not change the notion of looking at machine code then writing your own code. You should write totally your own code in the end. The decompile part is just to produce aid, it is impossible to use the output directly. And even if you manage to make that decompiled code work in your case, that will be too obvious because it will look like gibberish and there is no such code in re3 as I can tell. So it is safe to assume that reverse engineering was done right and the code produced is not Take-Two's code. All the harm portions are also sound not spectacular. There might be some if somebody would sell these games with assets of original games, but nothing like that happens. I guess Take-Two is the only game company in the world which considers modders as harm to their sales. So I guess the harm of the processing will surpass any harm which ever could be from modding these games.
And they should fail now or else lots of projects now are in danger.
Thanks, you basically said what I was trying to. That you can't just 'decompile' code... if you could do that, piracy would be a hell of a lot more rampant than it is, alsi game ports would happen all over the place.

Why is everyone mentioning the Switch? You would still have to do a port to ARM, and somehow distribute it and Nintendo wouldn't touch it!

Having an open source engine really only helps x86 people, unless the engine actually has been ported to ARM, then you are looking at hacked Switches, new Macs and Raspberry Pis...Take Two just wants to make sure people buy their remasters instead of using this to mod their originals to look as good or better...

Here is a thought for them, instead of irritating their fan base by suing them, embrace ports to non-Windows!
F.Ultra Sep 5, 2021
View PC info
  • Supporter
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.
This shows that plaintif and you did not understand what reverse engineers say:
1. GTA code was written in C++
2. They managed to create their own code in C++ working in the same way as GTA code.
If you read they took original GTA code, you need to check your sight.

That is not what they did, what they did is:

1. GTA code was written in C++
2. They used a decompiler to turn the GTA binary into fully working C++ code
3. They did changes to the generated C++ code to implement the changes they wanted to make

T2 owns the copyright to the C++ code of the game, but they also of course owns the copyright to the compiled binary so when you use a decompiler to turn the copyrighted binary machine code into autogenerated C++ code then you have just made a 1:1 transformation of the copyrighted code, so this step does not remove any copyrights.

Had they instead used a disassembler to look at how the game engine worked and then wrote their own C++ code based on that observation then what you said would be true, but that is not what they did according to their own wording. Hence why they will have a very hard time making a defense here. But then I'm not a lawyer, not do I play one on TV.

IIRC there is no decompiled code in re3 source. Also they explained they used dll injection process which would be totally meaningless if they had just decompiled it.
We were lucky that we had symbols from PS2 gta3 and the android games. other than that it was a lot of reading code in IDA and massaging it back into c++. I made a little video about part of the process [1] but i never did part 2.

The strategy for gta3 was to replace function by function of the game until we had everything replaced. for VC we evolved our existing code base by, again, reversing function by function until we had everything done. Just not by dll injection this time.

[1] https://www.youtube.com/watch?v=22BeuOOERLo

You can also read whole discussion: https://news.ycombinator.com/item?id=26130320

Well I do hope for their sake that you are correct and they can prove it, because the T2 lawyers have the main Re3 dev quoted as having written: "So what we typically do is work with the output of the decompiler and massage it back into readable C++"

edit: He have also made a YouTube video where it's quite clear that he cleans up autogenerated decompiler c++ code: https://www.youtube.com/watch?v=22BeuOOERLo&t=48s

It looks like you never seen a line of code in your life. They get "decompiled" junk which is mostly useless, and look at assembler output to guess what that is really doing and implement particular piece of code. No "decompiled" "code" remains in the process. Because that code is useless unreadable piece of junk. Usually the "decompile" portion is used to have sense of progress and have easier feel of control flow because disassembly might be too intimidating in large hunks, also compilers add various generated portions of code which can be lots and lots of jumps in there and it is a bit easier to look at these in "decompiled" output because semantic labels are there and some control flow operators and function calls are there. It does not produce useful code however, it is just better disassembly. It does not change the notion of looking at machine code then writing your own code. You should write totally your own code in the end. The decompile part is just to produce aid, it is impossible to use the output directly. And even if you manage to make that decompiled code work in your case, that will be too obvious because it will look like gibberish and there is no such code in re3 as I can tell. So it is safe to assume that reverse engineering was done right and the code produced is not Take-Two's code. All the harm portions are also sound not spectacular. There might be some if somebody would sell these games with assets of original games, but nothing like that happens. I guess Take-Two is the only game company in the world which considers modders as harm to their sales. So I guess the harm of the processing will surpass any harm which ever could be from modding these games.
And they should fail now or else lots of projects now are in danger.

Yes, only having coded since 1982 makes me never have seen a single line of code if I'm in disagreement with you. Further I did both crack games when I was a teenager and have reverse engineered both software and communications protocols on a professional basis long before decompilers where as good as they are today.

Did you even see the video that I linked? That is Papenhoff cleaning up the output from a decompiler to have it compile and it's for the part of GTA3 that handles environmental garbage (newspapers and leaves). Please inform me on how this didn't happen, you know the very thing that he himself documented in a video!

And to quote Papenhoff for the third time since you keep ignoring it: "So what we typically do is work with the output of the decompiler and massage it back into readable C++." - that is his own words - not mine - and it's from those that I base my comments on that it looks like they indeed did commit copyright infringement.

And again I do hope that you are correct and there is just some form of miscommunication by Papenhoff when he describes what he did. But IF he did what he himself have told that he did then he is on the wrong side.

edit: and you are also forgetting that the GTA3 binary contained debugging symbols, T2 forgot to strip the binaries.


Last edited by F.Ultra on 5 September 2021 at 11:52 pm UTC
F.Ultra Sep 5, 2021
View PC info
  • Supporter
Claim 28 is quite damaging to the reverse-engineering team:
28. Papenhoff has admitted that the source code developed via the re3 and reVC
projects is not original, but rather is (and was intended to be) a copy of the original. In fact,
Defendants have bragged that their derivative source code was created by working backwards
from Take-Two’s final “machine” code to re-create the human-readable code in which GTA was
programmed:

“GTA 3 and Vice City were originally written in [programming
language] C++ . . . The compiled executables that are shipped are in
machine code. So the general task is to go from machine code back to
C++. . . . To go back to C++ is by no means a simple 1:1 mapping, but
over the last 10 or so years decompilers have appeared that help with this
process. . . . So what we typically do is work with the output of the
decompiler and massage it back into readable C++.” Id.


If this is true and it appears to be so, then this is in fact copyright infringement and not something that any of us really can defend.
This shows that plaintif and you did not understand what reverse engineers say:
1. GTA code was written in C++
2. They managed to create their own code in C++ working in the same way as GTA code.
If you read they took original GTA code, you need to check your sight.

That is not what they did, what they did is:

1. GTA code was written in C++
2. They used a decompiler to turn the GTA binary into fully working C++ code
3. They did changes to the generated C++ code to implement the changes they wanted to make

T2 owns the copyright to the C++ code of the game, but they also of course owns the copyright to the compiled binary so when you use a decompiler to turn the copyrighted binary machine code into autogenerated C++ code then you have just made a 1:1 transformation of the copyrighted code, so this step does not remove any copyrights.

Had they instead used a disassembler to look at how the game engine worked and then wrote their own C++ code based on that observation then what you said would be true, but that is not what they did according to their own wording. Hence why they will have a very hard time making a defense here. But then I'm not a lawyer, not do I play one on TV.

IIRC there is no decompiled code in re3 source. Also they explained they used dll injection process which would be totally meaningless if they had just decompiled it.
We were lucky that we had symbols from PS2 gta3 and the android games. other than that it was a lot of reading code in IDA and massaging it back into c++. I made a little video about part of the process [1] but i never did part 2.

The strategy for gta3 was to replace function by function of the game until we had everything replaced. for VC we evolved our existing code base by, again, reversing function by function until we had everything done. Just not by dll injection this time.

[1] https://www.youtube.com/watch?v=22BeuOOERLo

You can also read whole discussion: https://news.ycombinator.com/item?id=26130320

Well I do hope for their sake that you are correct and they can prove it, because the T2 lawyers have the main Re3 dev quoted as having written: "So what we typically do is work with the output of the decompiler and massage it back into readable C++"

edit: He have also made a YouTube video where it's quite clear that he cleans up autogenerated decompiler c++ code: https://www.youtube.com/watch?v=22BeuOOERLo&t=48s

It looks like you never seen a line of code in your life. They get "decompiled" junk which is mostly useless, and look at assembler output to guess what that is really doing and implement particular piece of code. No "decompiled" "code" remains in the process. Because that code is useless unreadable piece of junk. Usually the "decompile" portion is used to have sense of progress and have easier feel of control flow because disassembly might be too intimidating in large hunks, also compilers add various generated portions of code which can be lots and lots of jumps in there and it is a bit easier to look at these in "decompiled" output because semantic labels are there and some control flow operators and function calls are there. It does not produce useful code however, it is just better disassembly. It does not change the notion of looking at machine code then writing your own code. You should write totally your own code in the end. The decompile part is just to produce aid, it is impossible to use the output directly. And even if you manage to make that decompiled code work in your case, that will be too obvious because it will look like gibberish and there is no such code in re3 as I can tell. So it is safe to assume that reverse engineering was done right and the code produced is not Take-Two's code. All the harm portions are also sound not spectacular. There might be some if somebody would sell these games with assets of original games, but nothing like that happens. I guess Take-Two is the only game company in the world which considers modders as harm to their sales. So I guess the harm of the processing will surpass any harm which ever could be from modding these games.
And they should fail now or else lots of projects now are in danger.
Thanks, you basically said what I was trying to. That you can't just 'decompile' code... if you could do that, piracy would be a hell of a lot more rampant than it is, alsi game ports would happen all over the place.

Why is everyone mentioning the Switch? You would still have to do a port to ARM, and somehow distribute it and Nintendo wouldn't touch it!

Having an open source engine really only helps x86 people, unless the engine actually has been ported to ARM, then you are looking at hacked Switches, new Macs and Raspberry Pis...Take Two just wants to make sure people buy their remasters instead of using this to mod their originals to look as good or better...

Here is a thought for them, instead of irritating their fan base by suing them, embrace ports to non-Windows!

No one have claimed that "you can just decompile" and have a finished product, nor do I see how piracy can be any more rampant. Is there a game or application in history that isn't pirated?

Everyone is mentioning the Switch because it was mentioned once so it become a talking point when discussing ports to systems where GTA3 currently is not available.

That T2 should embrace this is something that I think that we are all in agreement with, under the current copyright laws however they don't have to and have chosen not to do so. Please don't see my disagreement on if this is copyright infringement or not as endorsement for T2:s behaviour.
elmapul Sep 7, 2021
BTW have somebody poked Leonard French about this one? I wonder what his opinion is.
an quick google search told me he died in 2017
Arten Sep 7, 2021
As I understand new world, corporations split the "markets" between them and became upset someone got to their territory. The claims is so anti-market and anti-capitalistic as whole so I wonder what is going on.
Anti-market perhaps, although markets have always had a lot less of the whole freedom fairy dust than many people are led to believe. Anti-capitalistic, no. We think of markets and capitalism as being near-identical, but they aren't. Capitalism as such has little to do with markets, let alone free ones--monopoly is the objective of every capitalist who gets far enough. The fundamental points that make capitalism a system distinct from other systems is private individuals invest money (capital) to get a profit, employing wage labour to cause the profit to happen. Usually, that involves selling something to someone in something you could call a market, but sometimes it involves outright stealing, sometimes it involves direct selling solely to government as in US defence procurement, sometimes it involves the company store in the company town, where the miners or whoever buy your stuff at your price or they starve. All still capitalism, just not very markety. You can definitely have both markets without capitalism, and capitalism without markets.
(You can also have capitalism without the limited liability corporation)

You (same as politicians) mixing capitalism - private ownership, free market with corporativism - that think you talk about. Its distict thing.
As far as I can figure out what you're saying . . . no.
This isn't really up for debate. Economics has a history which involves various ideas and terms being defined. Economics itself is often bogus in that they do bad logic to get false results while using the terms, but the terms are still defined in a particular way. Going Humpty Dumpty and having you or your political faction redefine the terms to mean something else is like deciding you want "acceleration" to mean something other than "change in velocity over time". It's just wrong.

I explained a bit about what a couple of terms mean. That is in fact what they mean, because that's what the classical economists who invented them used them to mean, and the economic tradition, when it still pays attention to them seriously, still uses them to mean that. Confusion happens because they get used loosely a lot, or for propaganda purposes. People also redefine capitalism a lot to try to wiggle out of cognitive dissonance: "Capitalism is great . . . but the economy is vile . . . how to reconcile?! --> capitalism must be something we're not doing!"

Sry, i don't know where in past i need to get definition of capitalism for not going humpty dumpty. Even Adam Smith defined cpitalism with markets, so he is clearly going Humpty Dumpty too.

"Therefore, according to Adam Smith’s understanding, capitalism is a system that encompasses the following sets of behavior: “market which is characterized by commodity production”; “private possession of factors of production”; “large section of population that cannot exist independently unless it sells its skills in the labor market”; and “idiosyncratic, materialistic and maximization behavior of most of the individuals in the economy” (Heilbroner, 1987)."
slaapliedje Sep 7, 2021
No one have claimed that "you can just decompile" and have a finished product, nor do I see how piracy can be any more rampant. Is there a game or application in history that isn't pirated?
Simple, if you could 'just decompile' (other wise translate the binary to source code that works in a compiler) than you could remove any copy protection checks easier than the current method of hacking the binary.

Everyone is mentioning the Switch because it was mentioned once so it become a talking point when discussing ports to systems where GTA3 currently is not available.
Which is totally a moot point, as Nintendo would never let something like that onto their system without the blessing of T2. So it isn't like having an open source engine for it is detrimental in having officially licensed versions for platforms it was never on... It's basically for computers where you don't need a company's 'Okay' to distribute software on. Though more and more it looks like Apple wants to force such things...

I can agree with your last point, that T2 should just embrace it, hell maybe hire the people who did it and get a proper multi-platform release for their upcoming remaster!
slaapliedje Sep 7, 2021
And to quote Papenhoff for the third time since you keep ignoring it: "So what we typically do is work with the output of the decompiler and massage it back into readable C++." - that is his own words - not mine - and it's from those that I base my comments on that it looks like they indeed did commit copyright infringement.
Isn't that basically the equivalent of taking the original Aramaic version of the Bible, that Rockstar had the King James Version, then dumping it into a translator, then cleaning up the code for modern English? (sorry been on a 'History' channel kick).

It's the 'massage' part that is the real translation, and probably is the one bit of that quote that doesn't make it copyright infringement. If they showed source code of the original and of the decompiled version, and they were identical, and if it was large enough portions of it, then it can be considered copyright.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.