Bastian / bstats-metrics

The different bStats Metrics classes
https://bStats.org
MIT License
98 stars 114 forks source link

Added Krypton support #85

Closed BomBardyGamer closed 3 years ago

BomBardyGamer commented 3 years ago

Not sure if this one will get merged, as no other project has accepted an implementation for this platform for their software before, but I guess it's worth a go anyway.

This PR adds support for my new Minecraft server project, Krypton. Specifically, this is for use in plugins (I know there needs to be changes to the backend before this works, but I thought that giving plugins this option in the first place may encourage plugins to make use of it).

Feel free to flame me for anything you're not happy with. Oh, and also, I'm perfectly happy to maintain this myself, I don't think it's fair to put this sort of burden on other developers when I'm the one who wants this.

Bastian commented 3 years ago

Thank you for the PR! Like already discussed on the bStats server, I'm more than happy to add support for your software once it reaches a sufficient user base. For now, I'll close this PR but might re-open it in the future if necessary.

Feel free to flame me for anything you're not happy with.

You wrote the Metrics class in Kotlin. While this sounds reasonable since your software also focuses on Kotlin, I'm afraid that this might not work well with the auto-generation of Metrics classes. It exists to allow developers that are not familiar with build tools to just copy & paste a single file in their project.

Here's the code that generates the Metrics classes (run gradlew generateMetrics). The generated files can be found in the single-file branch.

The code generation relies on the JavaParser library and will most likely not work with Kotlin (especially with a mixture of Kotlin and Java).

BomBardyGamer commented 3 years ago

Ah, yes that might be a bit of an issue. I'll see what I can do about that anyway. Perhaps I could just place the metrics class within the API itself and provide native bStats support within the API.