[DynmapCore] Dynmap not rendering any tiles
Martmists-GH opened this issue ยท 5 comments
The problem is that I'm the maintainer for the Fabric port, as it's not supported by you guys. There's little to no documentation on what's needed to implement dynmap on a new platform, hence why I'm having these issues. Cross-referencing my code with existing implementations also doesn't provide much helpful information as (from what I can see) everything is implemented properly.
Because this is related to an unofficial port not being done by the Dynmap team - so whoever is working on that should be supporting the effort elsewhere. 'DynmapCore' isn't a library or independently supported component - it's a block of shared code used by the supported versions built WITHIN this repository: whether it works or doesn't work anywhere else is a happy accident, at best, as the interfaces between the platform specific components and the shared components change routinely and without warning or concern for compatibility. The only supported interfaces are those published by DynmapCoreAPI and dynmap-api, and those only in conjunction with the official releases built within this repository.
Sure - it's not documented because the code is open and I don't support enabling other folks to produce unofficial versions: that's all the cost of supporting it without any of the benefits. The time and effort to produce and maintain documentation for the sake of folks building unofficial versions, much less porting to platforms that I don't yet support, is more effort than doing the platform myself - and invites all kinds of problems:
- WHEN there are problems, they'll come to my support channels. And they will be just as satisfied with the response as you were to me closing this issue, since it isn't a deliverable we built and support. This is no different than bringing a Forge problem to the Minecraft support people, or PaperMC-specific problems to the SpigotMC folks.
- WHEN some third party produces a bad version - due to mistakes or malicious intent - Dynmap's (and my) reputation as one of the oldest and more stable server plugins will be exploited and compromised by that. I'm not saying this is true of you, but I honestly don't know you from Adam, so I cannot say one way or the other.
- WHEN the port winds up being abandoned (over the years, this has happened 90% or more of the time within the first year, when folks have done forks), the users are unhappy and put pressure on me to pick up the abandoned work. Dynmap just released its final updates for Forge and Spigot on 1.8.9 about a month ago - unless someone is willing to commit to a similar support horizon (and almost no other plugin devs are), we're not on compatible terms. Heck, I've been asked for help on a Forge 1.7.10 version in the last 6 months, which received its last update about 2 years back.
I am willing to review and accept a PR to support any new platform with a sufficient installed base to justify the long term commitment to support - Fabric does easily meet this bar, and I actually DO intend to support officially (it's just a non-trivial effort in time that naturally falls behind the priorities of the 20k+ servers supported by the current platforms, and I do work full time plus for a living...). That said, I'm not willing to spend time and energy enabling any deliverable that I cannot assure is safe, secure, and long-term supported for the community I've been taking care of for 9 1/2 years now.
It's open source, so you're free to do what you wish (with appropriate attribution, and a new name - don't call it Dynmap, although you can say it's based on it), but it will not be considered supported or otherwise 'blessed' by this team. That's not a rebuke - this stuff is open source because I believe in open source and have been an active contributor to open source projects for over 20 years now - but it is a practical necessity in a community that is so dependent upon trust, reputation, and good faith. If you or your team aren't the ones who reviewed and delivered code, you aren't the ones that support it - it's really that simple.