mircokroon / minecraft-world-downloader

Download Minecraft worlds, extend server's render distance. 1.12.2 - 1.21
GNU General Public License v3.0
1.23k stars 80 forks source link

Support WDL-Companion #63

Open Primorior opened 4 years ago

Primorior commented 4 years ago

Hey, thanks for the update to 1.16.2.

As a server owner on a server which uses WDL-Companion in order to restrict players the download of the world, it would be nice, if your application would support this too and doesn't download the world if the server says no lol.

https://www.spigotmc.org/resources/world-downloader-api-wdlcompanion.19950/

mircokroon commented 4 years ago

I could implement it such that it pretends to be the other world downloader and requests permissions when joining. However, it would remain trivial for someone that knows a little bit about Java to remove that and recompile the program.

I'm not really sure how valuable this really is, other than warning players that the server does support them using the application.

mircokroon commented 4 years ago

This WDL uses proxy connections, just disable "allow-proxy-connections" on the server.properties

As far as I know this doesn't work, it doesn't function as a proxy so much as it pretends to be the client. To the server it's invisible.

More specifically, allow-proxy-connections works like this: "If the ISP/AS sent from the server is different from the one from Mojang's authentication server, the player is kicked". Because the downloader runs on the same network as the client in most cases this does not trigger the proxy detection.

AoElite commented 3 years ago

If you could just send a plugin message to a server when they connect that would be great. Most players don't know Java anyway so it doesn't matter if it's easily bypassable.

mircokroon commented 3 years ago

Well, considering the relatively low value and the fact that I would have to put time into figuring out how the plugin messages work and implementing it, I don't really think this is a high priority right now. There's also cracked versions of the other downloader that don't have this so even without Java knowledge you can get around it.

Of course I'd happy to accept a PR if someone else wants to implement it.

JasonTable commented 3 years ago

As someone who is anti-DRM. This is a feature that I would be against having. The good thing is that unlike the WDL mod, this is open source so if it was implemented, someone could fork the project and remove it.

ghost commented 3 years ago

As someone who uses this software because I am sick of servers shutting down or owners resetting the map and not providing a world download for players, I am strongly opposed to server owners being able to block them. I have old world downloads from friends who have since passed away and witout tools like this, their creations would be gone forever. The vast majority of server owners don't care about preservation of the many hours spent by their playerbase shaping the world.

The second this is implemented, a fork with the check removed will be created and people will use that instead of the original; I'll do if it nobody else does. No Java knowledge required, just download the releases from the fork. This feature will actively harm @mircokroon because it'll cause players to use someone else's releases of their code instead of the original work.

I am strongly voting to close this as WONTFIX, and to not merge any pull requests that implement this 'feature'.

mircokroon commented 3 years ago

Mostly I agree. I'd say if you build something on a server, it is yours and you should have the (legal and moral) right do do with it what you want.

On the other hand, this tool can be used to steal other's people's work. You can go onto a minigame server and download maps that they have put time and money into to use on your own server. I don't think 'DRM' is the solution to that problem though, DRM in films and games has shown pretty definitively that it doesn't really stop anyone.

I think the best middle ground is just to warn players if the server doesn't want them downloading the world, but not preventing them from actually doing it. I'm not sure if that's possible with how the plugin channels work though, as telling the server "hey I have a world downloader" could just let them auto-kick you.

TypicalShavonne commented 3 years ago

you CANT stop people download your map, it is NOT possible to stop.