If Google wins Google v. Oracle America then would creating API compatible software clones be legal? As of this writing, the Google v. Oracle America case over some of the Java APIs is set for argument on Wednesday, October 7, 2020 in the US Supreme court. If Google wins the case will that mean that it will be legal to make API compatible clones of software? That is, would the creation of an API compatible clone of a different developer platform, say a popular game engine such as the Unity game engine, be legal? I'm imagining someone creating a platform where programs originally written against one platform, could be easily ported to a different platform in a similar manner that programs that only relied on the Java APIs Google re-implemented could be easily ported to Android. One could imagine giving developers a better platform licensing deal, (maybe even making the new platform open-source,) or providing other incentives to switch to the new platform. If Google wins the case, do we know whether or not examples like this one would definitely be affected, or, definitely would need further legislation? Or would it depend on exactly how the decision is reached?
We can't really know until the ruling is made. The Supreme Court might issue a ruling that encompasses all software APIs, or may predicate its ruling on this more specific situation, e.g. that because Oracle's library is so extensive its structure can be copyrighted even if that does not necessarily mean that any individual function signature can be copyrighted. They could also decide based on something unrelated to the heart of the copyright question - skimming through the petition for a writ of certiorari, they could make a decision based on the original implied license from Sun, for example. Hopefully their decision will answer the copyright question of function declarations completely, but it isn't required to.
Yes, you do. But you should not base your claim primarily on copyright, but just on the license contract you agreed to. It's typically much easier to prove that a party did not fulfill its part of a sales contract (here: Pay the agreed amount) than to prove violation of a copyright you own. Also, you then only need to sue one guy, and not care about every platform your game might be hosted on. This is particularly difficult here, since they have not done anything wrong. It's not their fault that the publisher didn't properly pay the programmer. They (very likely) got their copy of the game legally. For details, you should consult a lawyer. We can't give you detailed legal advice.
The first question is whose law you are concerned with, since in principle you might have violated copyright law in any country, and might be sued under the laws of multiple countries. The US has a concept of "fair use" which is notoriously difficult to apply. When you are sued in the US, you can defend against the allegation by arguing certain things: telegraphically, this includes purpose and character of use, nature of the work, substantiality in relation to the whole, and effect on market. Plus there is a 5th factor to be considered, transformativeness. The court then weighs these factors to decide if the use is "fair". By reading existing case law on the topic (conveniently available from the US Copyright office) you might develop a fact-based opinion of the risk: you would be vastly better off hiring an attorney who specializes in US copyright law to do an analysis for you. Do not hire a programmer to give you legal advice (do not hire an attorney to debug code). You would "fail" on the test of substantiality in that you are copying a highly substantial portion of the original work(s). You would "win" on nature of use (research especially non-profit and commentary are the underlying purposes that drive fair use law). It's not clear how you would fare w.r.t. nature of the work, which is intended to distinguish the extremes "news report" and "literature and artistic work" where copying news is at the fair use end of the spectrum. It is not clear how you would fare on "effect on market", but probably not so badly: are you avoiding some licensing fee? Coupled with the tranformativeness consideration, you are most likely having no effect on the market, since the product that you will distribute is not the original work, but a scientific conclusion about the work. Germany has different laws, and this article would be relevant if you cared about Germany. There was a change in the law that expanded the analog of fair use pertaining to research use. That law allows 15 percent of a work to be reproduced, distributed and made available to the public for the purpose of non-commercial scientific research. That, b.t.w., does not refer to what you are planning to do (unless you also publish quotes); for personal scientific research you may reproduce up to 75 percent. Since this is a new law only a year old, you could become part of the cutting edge in testing the limits of the law. So the standard disclaimer applies: ask your attorney. But note section 60d of the law which legalized data mining, and is squarely on point: (1) In order to enable the automatic analysis of large numbers of works (source material) for scientific research, it shall be permissible to reproduce the source material, including automatically and systematically, in order to create, particularly by means of normalisation, structuring and categorisation, a corpus which can be analysed and to make the corpus available to the public for a specifically limited circle of persons for their joint scientific research, as well as to individual third persons for the purpose of monitoring the quality of scientific research. In such cases, the user may only pursue non-commercial purposes. (2) If database works are used pursuant to subsection (1), this shall constitute customary use in accordance with section 55a, first sentence. If insubstantial parts of databases are used pursuant to subsection (1), this shall be deemed consistent with the normal utilisation of the database and with the legitimate interests of the producer of the database within the meaning of section 87b (1), second sentence, and section 87e. (3) Once the research work has been completed, the corpus and the reproductions of the source material shall be deleted; they may no longer be made available to the public. It shall, however, be permissible to transmit the corpus and the reproductions of the source material to the institutions referred to in sections 60e and 60f for the purpose of long-term storage.
If you are producing and selling it, that is an absolute bar to patentability by anyone else (this is known as prior art). So if you are using it very publicly before they file, they can't get the patent.
The reason for this is simple: You can’t install C or C++. C or C++ is just a programming language and C/C++ code compiles to machine code. Machine code can directly be executed by the processor (CPU) in your computer. Java, however, is normally compiled to byte-code only a Java Virtual Machine can execute. And this Java virtual machine is what you get from Oracle and Oracle wants you to accept a license agreement. You likely also have accepted some kind of license agreement when you began using or bought your computer. That’s the same you did for the Java Virtual Machine, but this time for your whole computer, which includes the processor that is responsible for executing the machine code. Java in this context also refers to the Java libraries that ship alongside the JVM. While C or C++ also have standard libraries they are part of your operating system and you have agreed to a license covering them when you installed your operating system (or began using it).
Monopoly is a trademark of Parker Brothers. You would need to get permission to use that trademark. The artwork of the game is copyrighted and cannot be duplicated without violating that copyright. In general, the labels meaning phrases like "Go to Jail" and "New York Avenue" are probably copyrighted and some court decisions have decided that labels are a copyrightable element. However, there is some gray area. The game mechanics are not copyrightable and can be duplicated. What this means is that if you clone the game and use new labels (like new property names and card titles) then you are probably fine. You would have to make a novel board design. If you clone the game, but use the game's labels, then you could potentially lose in court. Of course, remember that corporations will sometimes sue just to intimidate people, even if they have a losing case. Just because your clone is non-infringing doesn't mean they won't sue you. It costs them money to sue people, so if your clone is obscure or not used by many people it could fly under the radar and be ignored by the company. If your clone was a success and became widely used, that would significantly increase the chance you could get sued. In most cases a company will threaten infringers before they sue them, because it is a lot cheaper to threaten somebody than sue them. Therefore, you could make your clone and just plan on discontinuing it if they threaten you. Of course, there is a small risk they would sue you anyway. If you made no money then you are probably safe because it would be a lot harder for them to argue that you commercially damaged them if you made no money.
It does mean that you cannot reuse any parts of the source code, even small simple ones. You would have to rebuild the code from scratch. There is a significant chance that the code would be "substantially similar" to the code that you were hired to build, also that if anybody else were to write a bubble sort or 24-to-am/pm conversion routine, it would look the same, where even variable names (which should describe function) are the same or very similar. In case of an infringement lawsuit, you would have to defend yourself by showing that there are only a few ways to code a given function. Copyright protects only the "expression", not the abstract idea. A linked list is an idea, which can't be protected by copyright; same with recursion, pointers, stacks, object-oriented programming... Anything that involves copy and paste is infringement. If you re-read the copyrighted code and then try to reconstruct it, you probably crossed the infringement line. If you remember the problems and solutions and accidentally write somewhat similar code, that is probably on the safe side. From the perspective of the programmer not wanting to always reinvent the wheel, it would be most useful to make a distinction in the contract between "the essentials of the customer's program" versus "incidental utility work". The difficulty will arise in saying specifically what is essential vs. incidental. For instance, I know that if I were to hire you to develop a speech-recognition system, low-level audio-acquisition and encoding would not be essential to my purpose, whereas DSP parsing routines would be the center of my interest. The programmer would then want to retain recycling rights to all non-essential code.
I'm assuming that you are not seeking to change the license, and so it will remain GPLv3. As long as you've built on the original software, that license still applies. You also need to keep the previous copyright notices, including the names of the original people. Assuming that, everything you're doing is legal, which is what's on topic here. There is some etiquette around forks (which is what you're doing), which would be on topic at the Open Source Stack Exchange. I'm puzzled by your desire to have a different license text. You can't change the license from GPLv3, so that has to stay the same. (If the original has GPLv3 "or, at your option, any later version", you can drop the any other version text if you like.)