-
-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Is it possible to create a tool to convert Tabletop Simulator packages? #273
Comments
Agreed, and not only that, but this feature has been by far and away the most highly requested feature since I started the project. However, before this is implemented in the game, I want to make sure that we are 100% in the clear when it comes to the legal side of things. Since this involves both Tabletop Simulator and potentially the Steam Workshop, I would like to check both of their Terms of Service / End User License Agreements before proceeding. Any help in reading these would be appreciated! |
I have some experience with Godot and believe an open source alternative to Tabletop Simulator is vital for preservation given the lack of support the original app currently receives from its developers. I'm a developer, not a lawyer, but here are the relevant legal documents. Steam Workshop To my amateur reading of those links, a tool that either reads or converts existing mods is outside the scope of either agreement. This seems to me to be a similar situation that video game emulators already forged a path through. Namely that being able to read and execute proprietary assets isn't a violation of any EULA. Distributing those assets is a different beast entirely, but also doesn't seem to be within the scope of TTC. I have created a few TTS mods. I think there are two separate issues technically. The first is importing TTS mod assets into TTC. The second is being able to run the scripts from the mods. From a preservation standpoint, importing the assets is much more important than importing the scripting. It is also technically much simpler to implement. If you already have some other thoughts on this aspect of your project, I'm happy to hear what you think. I would love to pull down what you've already developed and prove out some rudimentary mod importing/converting. |
Agreements I've had a read through of both agreements. The TTS EULA is pretty forgiving, it only mentions "mods" in the sense of dynamically-linked libraries and derivatives of the game itself, and they have a catch-all statement for custom content (the bit we're interested in) saying they are not responsible for their implementation. The Steam Workshop Agreement has a potentially damning clause, however. Under section 6B, it states:
So given that workshop items are what they call "Subscriptions", section 2A applies:
This was to be expected. We're only going to be able to use the items for personal use, unless we have the creator's explicit permission. There's also this under the same section:
I'm assuming this doesn't mean much, since you need to download the workshop items via Steam anyways. However, under section 2G, it states:
This 100% counts under "create derivative works based on". Given this, we have to either solve "Except as otherwise permitted under this Agreement (including any Subscription Terms or Rules of Use), or under applicable law notwithstanding these restrictions", which asking the owner's explicit permission may do, but I'm not 100% sure on that, or we need the written consent of Valve themselves. If neither can be solved, then converting mods may still be possible, but only if the mod was NOT downloaded from the Steam Workshop. Mod Conversion On your point about the actual conversion, I'm in agreement that converting the assets themselves will be a lot easier than the scripts. In fact, I think it's pretty much been decided in #65 that the Lua API for TTC will not attempt to replicate that of TTS's, so converting the scripts from one game to the other automatically will be pretty much impossible in that regard. Lastly, one more thing that was recently discovered on the Discord is that some (maybe most?) TTS mods are bundled as "Unity Asset Bundles", which may or may not have their own license (will need to check), and their own implementation difficulties when it comes to the conversion. |
Whilst I appreciate you taking the time to contact Valve, I am still somewhat concerned about the clause I mentioned earlier. I may try to contact them myself about that specific clause in the agreement, and whether using the local files to make derivatives for personal use is okay. |
That reads to me how I understood the issue before reaching out to any of these groups. At the end of the day, they don't deal with any licensing for a third party interacting with mods. The only thing to possibly worry about would be the copyright holders for game mods that were created without their consent. Does that align with your understanding of these replies? |
That's not the way I'm reading it. From both section 2G, and the reply I got from Valve, they do not allow derivative works to be created from workshop content (even in a non-commercial context), unless I guess the creator of the content gives explicit permission, or decides to create the derivative work themselves. So in summary, from my understanding so far it should be okay to convert local TTS files into TTC ones, as long as the files did not originate from the Steam Workshop, and as long as the files aren't redistributed without the author's consent. The crux of the issue though is that most, if not all, TTS mods are downloaded via the workshop. So even if there was a way to convert the mods in-game, and it explicitly said "do not convert mods from the workshop", an argument could be made that even if that disclaimer is there, users don't really have a choice - unless there is another way to download TTS mods that I am unaware of? |
I'm working on a project separate from Tabletop Club that has mod management as a goal. Once your project has defined a format for its own mods, I plan to add mod conversion to my project which will sidestep the entire discussion about where the mods come from and push that concern away from Tabletop Club. |
What about converting assets from a open source game instead? I mentioned it on discord about the Vassal Engine Modules that are pretty much complete and I if it is allowed I would likely try to develop a way to port it. ^^ |
Vassal is one of the conversion targets I plan to include in https://github.com/XBigTK13X/tabletop-librarian
…On Tue, May 16, 2023, 9:32 PM DayOS ***@***.***> wrote:
What about converting assets from a open source game instead? I mentioned
it on discord about the Vassal Engine Modules that are pretty much complete
and I if it is allowed I would likely try to develop a way to port it. ^^
—
Reply to this email directly, view it on GitHub
<#273 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AADLKGNDLVYILRBS665FX7TXGQ2FBANCNFSM6AAAAAAXFCHGIY>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
I had a chunk of free time this past week to start prototyping my ideas for Tabletop Librarian. I got far enough along that I'm confident it will serve as a replacement for TTS Mod Backup for my needs. I filed a few issues to track progress on Tabletop Club conversion. It isn't high on my priority list, but I do plan to look into it once I get the Tabletop Simulator interactions hammered out. |
There are other ways. https://www.nexusmods.com/tabletopsimulator/mods/ has mods listed Open Source board/card/dice games (arcmage, tinytactics, emata.org and saga.li) probably can find other ways to distribute their games too |
I think it's worth noting that another TTS competitor, Tabletop Playground, does have an official tool to convert mods from TTS: https://tabletop-playground.com/knowledge-base/importing-from-tabletop-simulator/ |
Huh - that's... interesting, considering a member of Valve's legal team told me directly that we can't use the mods outside of the context that they were uploaded for (in this case, Tabletop Simulator). 🤨 |
Perhaps legal means TC cannot download mods from Steam, convert and then use Compared to Tabletop Playground which provides a tool to convert mods outside of Steam for your own created mods So as long as I'm the creator of the mod then I can do what I want with it on my own system and distribute in whatever format I prefer |
That's true, if it's your own mod then you can do whatever you want with it, since you own the rights to it. But if an official tool was to be made to convert mods from TTS->TTC, then the target audience for that tool would only be a select few people, that being the original mod creators. I would personally love for the game to have the ability to convert TTS mods, and I know I'm not the only one (this has been by far and away the most requested feature), but I'm not sure if I can justify spending so much time developing and testing a feature that only a few are (legally) allowed to use, compared to something like a scripting API, which would be aimed towards everyone who creates content for TTC. My current thinking is that this would probably make more sense as an unofficial tool that is developed separately, rather than something that comes packaged with the game. |
Agreed that for the sake of official develop time adding features to TC that benefit all is a better priority And would certainly appreciate a scripting API |
If this feature could be implemented, it would reduce a lot of duplication of work.
The text was updated successfully, but these errors were encountered: