Lembas-Modding-Team / pvp-mode

A Minecraft mod offering various options to manage availability for and ability to PvP.
GNU Lesser General Public License v3.0
5 stars 3 forks source link

Public release: 1.0.0-BETA #21

Closed AlteOgre closed 6 years ago

AlteOgre commented 6 years ago

So ... how close are we to release public beta v1.0? What is the exact current status of the mod / needs to be completed for that release? As discussed almost a month ago, VF would strive to launch the publuc beta v1.0 after completing a few bug fixes and implementing the combat logging. We're very close to that milestone. Remaining bugs are fixed with test confirmation. Is the combat logging feature fit to unleash it to servers or does it need a few more improvements first? Was testing sufficient yet, or do we need a few more specific tests? How does it match Maht's teleport blocker? Think combat initiation trigger and duration timer. We could settle for a rough default for v1.0 and tune it in next version(s)? There have been a few additional improvements in the meantime, which are those exactly? Just a brief reminder of them and I will check them out and add to the LOTRmod wiki page / GitHib wiki, if needed. I recall improved pvphelp, pvpconfig addition, blocking of teleports after combat initiaition ... anything else?

As Mevans still hasn't responded to our request for endorsement, I cannot create a dedicated wiki page yet, so I will create a new thread in the News & Announcements Board, as approved by my wiki staff colleagues and just like CM did for his NEI Addon. I 'only' need confirmation of v1.0 completion: make it the new master (incl. updated readme etc.).

Let's work on that now before continuing on any other (announced) additions.

Overview (added by @CraftedMods)

Todo (before official release):

Changelog:

CraftedMods commented 6 years ago

I think we can release Beta 1.0 if the combat logging and pvpconfig PR were merged. Some new featured/improvements of Beta 1.0 are:

I think the improvements related to combat logging should be released with a new version. Otherwise we'll work forever on Beta 1.0. Currently, there's no PR for the pvpconfig command. I'm currently working on this feature, but it requires some of the current PR's to be merged. @AlteOgre I think it would make sence if you have the main responsibility for creating issues for planned features and assigning them to milestones for future versions.

CraftedMods commented 6 years ago

Should we release a pre-release version for testing purposes? It would be 1.0.0-BETA.1. Or should we release 1.0.0-BETA directly? What do you think?

AlteOgre commented 6 years ago

Which aspects are still to be tested? If there is some uncertainty about feature behaviour in proper servers, I'd go for the pre-release and distribute it to a few server owners: Veliks and MilkMC are best targets imo.

CraftedMods commented 6 years ago

We should test everything. The highest risk in my opinion is that something did break with the last changes. Also some testing related to performance would be nice - so we would know how high the priority for performance related fixes is. Currently the're assigned to 1.1.0-BETA, but if performance suffers noticeable, we have to move this to 1.0.0-BETA.

CraftedMods commented 6 years ago

If @Mahtaran reviewed the last two remaining PRs from me and I created a PR for the pvpconfig command (with only display support), I would suggest that we won't work on new features for this release but release some pre-releases for testing purposes. If the tests work fine, we'll release 1.0.0-BETA and merge development with master.

CraftedMods commented 6 years ago

@AlteOgre Could you post your thoughts about #26 ? If we change it, we should change it as soon as possible.

AlteOgre commented 6 years ago

Okay, so we should test it all again with latest version. Do note that I believe we won't get any significant performance test results unless we can test it on a major server. We could ask Veliks and Milk to run the test version on their servers. They both have peak attendances of 10+ players daily. Poke me when the test version is ready and when you agree to approach Veliks and Milk. Then I'll forward our request and do some tests on my local lan server as well.

CraftedMods commented 6 years ago

Do they know how to use a monitoring tool like Visual VM?

CraftedMods commented 6 years ago

I've added a proposed changelog and a todo list for the next release to the first post.

CraftedMods commented 6 years ago

Also, for the next release, we should create a Github Project for it (an not an issue).

AlteOgre commented 6 years ago

Agreed. Please let me wrap up all planned features in issues, based on the lengthly / scattered notes we still have in that Fb group before defining the next update. We will have to make choices for 1.1.0-BETA, and allocate resources conveniently (both for the mod and all involved).

CraftedMods commented 6 years ago

All issues in the milestone 1.0.0-BETA were closed. I've created a PR (#36 ) with the formattings.

CraftedMods commented 6 years ago

Merged #36. The milestone remains open, because of bugs which may occurr with the tests.

AlteOgre commented 6 years ago

I sense all the necessary mergers may have been executed by now. Which is the jar that can be used for testing?

CraftedMods commented 6 years ago

I'll build it later and provide a link to it. Could you meanwhile look over the readme file in the branch development and check (and if necessary expand) it? For this you don't have to create a PR but can edit it directly in the branch development. Also you could add the entries in the post above to the changelog (again directly in the branch development).

AlteOgre commented 6 years ago

Could you please make the default accuracy for the proximity 100 instead of 64? I found 100 works better, less confusing. Current development readme.md looks good afaic.

CraftedMods commented 6 years ago

Fixed with 555999917a033ce81edb5fb9da0432e2b2680501. Note that I didn't create a PR for it. Also I adjusted the changelog above.

CraftedMods commented 6 years ago

Also, I updated the changelog with 11df48de6fb3010d5c91897c3745d33715bc97d9.

CraftedMods commented 6 years ago

I built 1.0.0-BETA.1 and added it to development (with #37 ). We'll create a Github release only for the first full version, 1.0.0-BETA. The development branch contains the pre-release.

CraftedMods commented 6 years ago

Download: https://github.com/VulcanForge/pvp-mode/raw/development/pvp-mode-1.0.0-BETA.1.jar @AlteOgre Please distribute it to our testers. Everything what they do report (especially bugs) should be opened with a new issue which will be assgned to the milestone 1.0.0-BETA - unless we think that this really is something for the next versions.

AlteOgre commented 6 years ago

Okay. Thanks! I'll be available for this in next few days, starting now. Both Veliks and Milk have indicated they are willing to test it. I will do some LAN server checks to rule out major bugs before I further distribute it.

AlteOgre commented 6 years ago

Tested in LAN with Grumpy and me + each one hired unit. I think I tested all possible scenarios. All functioned properly. So I'll forward the test version to Veliks and Milk asap (within a hour, after some household things).

One remarkable aspect for later concern: If a player with PvP Mode ON attacks a player with PvP Mode OFF, or his hired units, and this triggers a hired unit to attack as well, the hired unit will remain attacking without causing any damage. That looks silly but can be very annoying as well. Something to tackle in a future update.

CraftedMods commented 6 years ago

Please open an issue for this.

AlteOgre commented 6 years ago

This is the message I just sent to our guinea pigs:

Here it is: https://github.com/VulcanForge/pvp-mode/raw/development/pvp-mode-1.0.0-BETA.1.jar The changelog (not included in the jar (yet)): https://github.com/VulcanForge/pvp-mode/blob/development/changelog.txt

Do note that the permission nodes have changed because of a few command structure changes. We aim those changes to be improvements ofc. :grin:

I tested most of the functionalities in a LAN server environment with two accounts and all seemed to be working as intended. We hope you will be able to confirm this.

CraftedMods commented 6 years ago

The permission nodes are based on the command names and the modid, are they?

AlteOgre commented 6 years ago

If I understand it correctly, those nodes are directly derived from the class files that define / are referred to by commands.

CraftedMods commented 6 years ago

Thanks. This is important to know - for compatibility reasons. I'll include it into the guidelines.

AlteOgre commented 6 years ago

Forge documentation may likely provide clearer evidence for this. After all, all plugin and mod developers using permissions (which are a great deal of them), should be informed properly about how Forge assigns/defines permission nodes.

CraftedMods commented 6 years ago

I think permission nodes were added by Forge Essentials. I've never heard from permission nodes from Minecraft Forge. Forge Essentials creates a file with the permission nodes of all registered commands. Do you have such a file (or can the testers provide a such one)? It should be something like PermissionList.txt.

AlteOgre commented 6 years ago

In that case plugins like Pex and GM could act in a similar manner. Yet, I cannot find any such file ever created by Pex on my old 1.7.10 servers. So it seems to work a little differently as both you and me assumed. I think the list of permissions created by FE can be considered a user friendly service. FE derives them from the file structure for the users. Users do have to type in all permissions they wish to assign in a config file anyway. Pex and GM work in a similar manner, with and without Forge. Maybe it's Spigot/Bukkit/Forge that guides this, or the permissions mods/plugins themselves ofc. Better no more speculating (I tend tod o that a lot), and dive into the code of things?

CraftedMods commented 6 years ago

This was no speculation. I actually read about it (https://github.com/ForgeEssentials/ForgeEssentials/wiki/Permissions-tutorial). Also I assumed that currently we only talk aboutForge Essentials. I don't think that we really have to know how these plugins work - as we see it seems that the permission node names were generated based on the filename for Forge Essentials, but other plugins may do this with other methods. So the only important thing regarding this is that we shouldn't change the command names and command file names unless really necessary.

AlteOgre commented 6 years ago

I saw that too and wasn't suggesting you were speculating (I was to some extent). I wasn't merely talking about FE as there are many servers not using that but instead using a KCauldron fork and either Pex or GM for permission management. And yes, no command changes unless much needed and unavoidable. As we only had a few servers running the pre-BETA, I felt the changes we made in past month would be no big issue.

CraftedMods commented 6 years ago

Do you know how many servers are running this mod? And how many servers are interested in using it?

AlteOgre commented 6 years ago

Currently three use it. At one point in past months there were 9 server owners who showed serious interest. Some of the planned features are crucial for server staff to implement it. We'll get to that later. At some point we may even consider to make the toggle pvp on/off functionality configurable as some servers are not willing to offer fully consentual pvp, but are much interested in other (planned) features of the mod (like the combat logging, blocking of teleportation and blocking of pvp when using non-allowed gear).

AlteOgre commented 6 years ago

On a sidenote: CM, did you just join the wiki discord as Malvegil#1928?

CraftedMods commented 6 years ago

Yes, I did. But I'll only be there sometimes to look for news and so on, so don't expect that I'll be very active.

AlteOgre commented 6 years ago

I somehow had expected Maht to have implemented the blocking of teleportation after combat was initiated, but it seems that is not the case. What is the status of that feature? It was mostly discussed in the Fb chat. If not implemented, I will open a seperate issue on it.

mahtaran commented 6 years ago

Yeah sorry, I’ve been reall busy with exams. I’ll try to implement it as soon as possible, but I’ve got no clue when that is.

CraftedMods commented 6 years ago

Any feedback from our testers so far?

AlteOgre commented 6 years ago

No oddities or malfunctions reported so far. Both Veliks and MilkMC have implemented the new version on their servers.

CraftedMods commented 6 years ago

Nice. Could you ask them to look how the performance with pvp logging enabled is (I'm thinking about #42)? Some input regarding this would be nice, so we can correctly priorize this issue.

CraftedMods commented 6 years ago

Just say if you think that we can finish the testing phase and release the first version.

CraftedMods commented 6 years ago

Are our testers still testing? Two weeks seem very long for such a small mod like this.

AlteOgre commented 6 years ago

We can consider the version ready for master. I asked for feedback several times and observed the experiences in-game. No complaints/bugs regarding v1.0.0-BETA. Do make it the new master and declare it complete. I'll prepare a new wiki thread as discussed, and close the old one, in next few days. Sorry for being less active last weeks, but I had a lot of trouble coping with my abdominal nerve pains, so all productive thinking and action went considerably slower. I mainly just played as a zombie because of that. Nonetheless, I compiled all open issues in one document. Next is to turn them into issues and prioritise them. That will be continued in another thread ofc.

CraftedMods commented 6 years ago

Thanks, I'll prepare the release. Also, no need to excuse. It's understandable that you cannot work on this mod if you have abdominal nerve pains. Get well soon!

CraftedMods commented 6 years ago

I've created the release and uploaded the built (and final) JAR. See https://github.com/VulcanForge/pvp-mode/releases/tag/1.0.0-BETA

CraftedMods commented 6 years ago

I just saw that AlteOgre updated the wiki and created a new forum thread in the LOTR Mod Wikia. Thanks! The work on 1.0.0-BETA is now officially finished.