Skip to content
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

Add support for Nautilus over SMLHelper #2

Merged
merged 4 commits into from Mar 11, 2024
Merged

Add support for Nautilus over SMLHelper #2

merged 4 commits into from Mar 11, 2024

Conversation

FirEmerald
Copy link
Contributor

Non-destructive, code for SMLHelper version is intact and can be compiled by fixing the csproj file's subnautica directory, installing SMLHelper, and then using the DebugSML or ReleaseSML configurations.

note: may require installation of the Nautilus project templates.

Non-destructive, code for SMLHelper version is intact and can be compiled by fixing the csproj file's subnautica directory, installing SMLHelper, and then using the DebugSML or ReleaseSML configurations.

note: may require installation of the Nautilus project templates.
replace existing Logger with improved Logger
add additional constructors to BaseItem
automatically copy built DLL to game directory
replace simple text-based dock state saving with more robust JSON-based saving
re-add saving of docking state to txt file, for compatibility with older versions of the mod (just in case)
@K07H
Copy link
Owner

K07H commented Mar 9, 2024

Hello,
I was about to release an update of my mod for Nautilus already, but I will look at what you did on your side as well before publising my update, in case there are some modifications I didn't think of.
Also I noticed you took the freedom to reupload my mods on NexusMods without prior permission and without even contacting me, which not only is a violation of the permissions set on the mod but is also unethical in my opinion. I think you should re-think your contribution methodology.

@FirEmerald
Copy link
Contributor Author

FirEmerald commented Mar 9, 2024

I tried to find a way to contact you, I will remove the mods though since you are updating them.
Edit: mods are removed. Well, hidden, I'll delete them fully once you have your update out just so people understand that you're back.
I wasn't intending to breach license but from all appearances you had dropped from subnautica modding entirely.
Also, I would appreciate if you would unblock me from your mods and retract the slander. I did in fact attempt to contact you, but couldn't find any contact info. I opened this pull request as a result, to see if you'd respond to it. Also, I never reuploaded your mods, only the DLL's (and config file for decorations mod as I changed a single comment on it. Language files might also count since the strings come from the code). All I wanted to do was allow people to use your mods with the current version of other mods.

@FirEmerald
Copy link
Contributor Author

Alright so apparently someone noticed that the license to your mod is in conflict with the permissions on your mod page, and asked the nexus staff about it. Supposedly, I am actually allowed to host a recompiled dll under the license so long as it was open-source (I was in compliance with the license you have applied to the code), which is what I had done. I'm going to wait about a day for your response on this, and if you're either okay with it or do not respond I'm going to un-hide the pages until your official ports are out, but I will be editing them to be more clear as to the fact they do not contain the assets, only recompiled DLL and language files.
I am not trying to steal your work, just make it usable.

@K07H
Copy link
Owner

K07H commented Mar 10, 2024

Hello, the way you did that excuse me to doubt so. Why not just ask me instead of directly publishing your fork on your Nexus pages + advertising on my own pages to go download your recompiled version... Also you might be compliant with Github policy but not with the permissions I've set on NexusMods, and I always said I'm welcome to contributions.
PermissionsAndContact
I already made some alternative versions of my mods for Nautilus locally, but for the Decorations Mod there was too much bugs introduced with Nautilus the last time I tested. Now I thank you for trying to help produce working versions for Nautilus (I just don't like the way you did it), you are not the only one who provided some help there (MrPurple also sent a Nautilus version on Github earlier). I will test with the latest Nautilus version and your modifications, and if it works well I will publish the alternative version (and of course you will be added in "special thanks" section). Now I kindly ask you to remove your versions from NexusMods if you like my mods and really want to help. Thank you.

@K07H K07H self-assigned this Mar 10, 2024
@K07H K07H added the enhancement New feature or request label Mar 10, 2024
@FirEmerald
Copy link
Contributor Author

firt of all, i already hid the mods as soon as you had contacted me. secondly, as i mentioned according to nexus staff the code license takes presedence over the listed mod permissions. i also didn't notice the contact me section underneath the permissions, i apologize for that.

@K07H
Copy link
Owner

K07H commented Mar 10, 2024

Thanks for hidding your front pages, that's better than nothing, but I was asking to remove them so that the modified files are not hosted/distributed by NexusMods anymore. Also you are mistaking the license code (GPL) with NexusMods policy, which are 2 seperate things. NexusMods is a private company and they can use the policies they want (as long as it doesn't break the law). And as you can read here they are very clear about their distribution permissions:
DistributionPermissions

@FirEmerald
Copy link
Contributor Author

FirEmerald commented Mar 10, 2024

I understand what you're trying to go at but to go with the nexus permissions over the license on your code would be to be in violation of that exact license. A license isn't something you should chose haphazardly; you should know how it works.
image
now, the actual assets from the mod are a different story, assuming they aren't in the repo, but I never distributed them in the first place.
And the reason the files are hidden, not removed, is so that if someone tries to find the page, they can get a clear view of why exactly the files aren't available.
EDIT: I also went back and looked under the permissions section of the cyclops docking mod page. You have a discord username posted, but it's in the old format and unusable. That's why I couldn't contact you apart from on github. I suppose I just didn't check on the Decoration's Mod page then. that's on me. Regardless the link on that one also only goes to your nexus user account, which is not a contact method at all.

@K07H
Copy link
Owner

K07H commented Mar 10, 2024

Excuse me but why are you acting like this? What's your goal exactly by going over this permissions debate? Because it does not look like you want to help me, I don't feel that at all. If you wanted to contact me you could simply send a message to me with NexusMods messaging system, you don't even need to look on my mods pages.
Anyway NexusMods policy is not a code license, and they can have this policy since it doesn't brake at all the code license. Unless they don't respect their own policy but that would be suprising and concerning.

@FirEmerald
Copy link
Contributor Author

FirEmerald commented Mar 10, 2024

I don't know how to send someone a message that way, and I didn't feel like going through the hassle of doing so would be more effective than a github pull request, which does send an email when I do. (unless you have that turned off).
And my goal over the permissions debate is that you don't seem to be aware of how your license works. I'm trying to help you here. I never even asked for credit with my changes. But you've been aggressive towards me every step of the way, even after I've admitted to my mistakes.
And while you keep saying you have a Nautilus version on the way, why haven't you told the many, many people who have asked? why stay completely silent about it for almost a year? I wouldn't have even posted anything if it hadn't seemed like you'd completely abandoned your mods. I'm not sure what it was you expected to have happen, but I know if I left something in a nigh unusable state for several months without providing any status updates, I wouldn't be surprised at all to see someone else eventually fix it.

Anyway NexusMods policy is not a code license, and they can have this policy since it doesn't brake at all the code license.

NexusMods policy applies to files you have uploaded to nexus. It does not apply to your code hosted here on github, which you have made subject to the GPL license. That's why it takes priority. To attempt to say otherwise, as I mentioned before, is to be in violation of the license, rendering your ownership over the code void, and I highly doubt that's what you want to do, and it's certainly not what I want you to do. But if you really feel this strongly about it, I would suggest confirming what I have said with Nexus staff, and seeing what kind of action you must take. I'm not sure how a code license change would work, but it certainly would only be able to apply to any new changes you make, and not the repository in it's current state.
I'm not a fan of the way this conversation has been going. I've tried to give you the benefit of the doubt every step of the way but you've met me with hostility at almost every turn.

@K07H
Copy link
Owner

K07H commented Mar 10, 2024

No I don't think you understand how a policy works, at least we don't agree on that. The code is certainly licensed under GPL but that doesn't mean you have the right to reupload a modified version of my mod on NexusMods, they do what they want with their web service, and their policy is clear about reuploading a mod as I already showed to you.
Me being hostile? Well maybe I would be less hostile if you didn't reupload my mods on NexusMods without even "going through the hassle" of contacting me (but you surely found the time for "going through the hassle" of advertising for your own NexusMods page on all my pages and in multiple conversations). Then you straight start a permission debate here, while I said I was looking at your contribution. No, I'm just defending myself and my projects here, don't mistaken this with being hostile towards you, I don't even know you.

@FirEmerald
Copy link
Contributor Author

Except I did go through the hassle of trying to contact you in a reasonable manner. I opened a pull request on github.
And you must have missed the part where I pointed out that it was Nexus staff who stated that the code license takes precedence over nexus permissions. Like I stated, take this up with them if you really feel you're in the right on this - but the GPL states otherwise as well, and they'd have to content with the GNU if they want to state otherwise.

I'm just defending myself and my projects here

from what? what possible threat have you seen in a port that doesn't claim ownership of anything in your mod, doesn't distribute any more than the bare minimum (therefore requiring your own mod to even function), doesn't disagree with your licensing, and only exists so long as it's required? This is the biggest part I'm scratching my head about. I cannot possibly fathom why you are upset beyond any reason than the fact that you didn't realize your license was permitting this, and that the only communication method I had for you didn't get to you in a timely manner for some reason.

@K07H
Copy link
Owner

K07H commented Mar 10, 2024

Well first I thought it was a full reupload, I only noticed later on it still required my mod to be downloaded, so yeah it's less bad than what I thought when I replied to it on NexusMods. Still I don't like the idea of going through multiple users pages, installing the mod should be simple, that's why your contribution is welcome, but as part of the project and not a separate one.
A PR is not communication, I'm not constantly checking every github automated messages I receive, and you directly uploaded the modified versions of my mods on NexusMods without even giving me the time to check for the github automated emails and reply to you anyway. It's very simple to send a message to me as you can see: https://www.google.com/search?q=OSubMarin. You could have send a message :

  • Through NexusMods messaging, very easy.
  • Through Discord (my ID is on various locations, on my projects, my Youtube page and so on).
  • Through Youtube (there is both my email address and Discord ID there).
  • Through Twitch messaging.
  • Through ModAPI Hub Discord.
  • Through GameServersHub Discord.

And so many other places. Honestly not being able to contact me directly is surprising me, nobody ever told me that. But anyway that doesn't matter anymore now. I just added a link to my Discord server on my NexusMods pages to make it even more easier.
Please let me know what else can I do for you so that we can move on with this, on my side I simply ask you to remove the reuploaded versions from NexusMods.

@FirEmerald
Copy link
Contributor Author

FirEmerald commented Mar 10, 2024

I stated multiple times I only uploaded the changed DLLs and language files.

You could have send a message :

Through NexusMods messaging, very easy.
Through Discord (my ID is on various locations, on my projects, my Youtube page and so on).
Through Youtube (there is both my email address and Discord ID there).
Through Twitch messaging.
Through ModAPI Hub Discord.
Through GameServersHub Discord.

  1. I don't know how to use nexusmods messaging; there's no link to it from your userpage.
  2. The discord ID you provided is in the legacy format and no longer works
    3/4. I wasn't aware you have a youtube or twitch
    5/6. I don't even know what those are, and I'm not going to join a discord server just to attempt to contact a single person.

I understand how you must feel, but the burden of providing up-to-date contact info is the authors responsibility. I do agree I should have done more to try to contact you, but you also should have made it easier to be contacted and maintain up-to-date contact info.
I don't plan to take the mods down again, but I'd be more than willing to let you upload them to your official mod pages as an "other file" with a disclaimer that you're not going to be working on those, someone else made them, no need to even put my name on them because I barely did anything anyways, unbanning me from commenting (so I can tell people that they can simply download them there), and instead working on your own ports, after which I would gladly delete the mod pages. So long as people have a version they can use, I'm happy.

@K07H
Copy link
Owner

K07H commented Mar 10, 2024

Contacting me is very simple, the fact that you are able to code some alternative versions, that you are directly uploading them on NexusMods, and advertising on all my pages (even directly replying to some users) to go download on your pages, but not being able to contact me, is just too much for me to handle sorry.
I don't see why I would accept all your requests with all this, specially that you refuse my only request to remove the additional pages from NexusMods.

@FirEmerald
Copy link
Contributor Author

FirEmerald commented Mar 10, 2024

My two requests are that a version is available that people can use with nautilus, and that I can explain to people what's happened before it gets out of hand. I don't request credit. The only reason I'm leaving the pages up is so people can download it - and therefore stop posting over and over about getting a nautilus port.
And it's not like the code was hard to do, I have minimal experience with C# as a language and had never once worked on a subnautica mod, much less a bepinex mod. As I've told people before, it was an easy port, all it needed was someone to actually do it. (The decorations mod was a lot more work, but it was just transferring everything over to the new constructors. Time-consuming but not difficult).
People have been waiting for almost a year for this and taking it down now only upsets them. Hell, I only even ported the Decorations Mod by request. I didn't initially intend to do it since I wasn't using it.

@K07H
Copy link
Owner

K07H commented Mar 10, 2024

Your commits clearly shows there are numerous edits you had to do everywhere, so you need programming skills and a global understanding of how modding works plus Subnautica modding understanding, that's why not being able to message me is surprising to me. And now with what you say I don't understand who are you for people requesting to you an update of my mod? There's no link to your profile on the mods pages. And why doing so if you're not even using it? I've been modding Subnautica since 2018 and I never heard of you. It seems you don't have any Subnautica mods on your profile which is even more suprising.
And no I don't want to upload additional files which then needs to be overwritten on some dlls or some additional NexusMods pages or w/e shenanigans. I want it to stay simple: You go on the official page, go "Files", hit download, simple.
Anyway I will still test your modifications, and if they are working well I will merge them in the repository and publish the alternate version.

PS: As a temporary solution what I suggest is that you send your modified versions to the people who ask you using private messages, I didn't link to your profile and I won't do it so that you don't get spammed. Your reuploads of modified versions on NexusMods I want them down.

@FirEmerald
Copy link
Contributor Author

those "numerous edits" are mostly just find-and-replace. and while i don't know hardly anything about subnautica modding, I have several years of experience in minecraft modding, and have made a bonelab mod before as well (which is how I know how to use newtonsoft JSON).
Essentially, C# is a C-based language. So is Java. A lot of the programming conventions carry over.
As for porting the mod, for the most part it's as simple as following the official nautilus porting guide
And if you really want to see where the bulk of my work is

PS: As a temporary solution what I suggest is that you send your modified versions to the people who ask you using private messages, I didn't link to your profile and I won't do it so that you don't get spammed.

I don't know how to private message people. I'm sure a lot of other people feel the same. Plus, if the files are removed, people don't even know they exist, so they're just gonna go back and bug your posts again for an update. I don't really care how the ports get distributed as long as it's in a way people can actually find them.

@K07H
Copy link
Owner

K07H commented Mar 10, 2024

I don't know if I need to laugh really... I think you don't realize that no it's not something someone without C# or Subnautica modding background would do easily (specially considering how big these 2 mods are). If you had such profile I would say okay why not, but it's not the case. And even if that's true and you were able to pull this all out I'm sure then that you would have enough skills to find a way to message me. No I think I have a better explanation for all this to be happening like this, by you. This looks way too much like the shady practices which made me leave the SML Helper Discord. I will take the time to bring this to the attention of NexusMods administrators tomorrow since you don't want to take the page out.

@FirEmerald
Copy link
Contributor Author

I'm not even in the SMLHelper discord, never have been. Even if you don't believe me, can promise you that much. I can promise you the only knowledge of Subnautica modding - or bepinex modding in general - is from porting these mods. If you really think I'm some sort of in-disguise subnatica modder I have a discord server with ~1000 members in it who can tell you they've never heard of me modding subnautica, only minecraft.

@K07H K07H merged commit 1134731 into K07H:main Mar 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants