GriefPrevention Official Thread [1.10/1.11/1.12] TOWN/WECUI Support

Yeah that might work, or maybe I can look at the vector for the flying block when it lands - if it’s straight down I don’t care, otherwise drop as an item. Dunno. I’ve been putting this off a long time because outside of creative mode it’s too expensive, time consuming, and low-power for griefers to bother with. Maybe it’s time - there’s a corner case where if you manage to land a block just right (next to single-block-high fence on the inside), then animals can be baited out with the right food.

True. Only had an issue with this a few times. Once was when we used GP for creative plots, then it’s not as troublesome for griefers to build sand cannons. They seemed to like shooting sand at my creative spawn and other plots. Other than that, I can only recall one or two instances where players did that in Survival. Quick clean up compared to the time it takes to mess up.

Any plans to improve MySQL loading speeds? It can afford up to minutes with thousands of claims.

@BigScary what do you think about splitting it up into multiple plugins like other plugins and mods do it with different content. So you would have one for the Protections, one for the Chat stuff and one for the Bans… This way people that prefer other plugins can simply ignore them. Ofc this is can also be done via the config already and I assume most of the people here that talked about it already do so, but as the topic came up more than once…

Another thing might be the consideration if it would be worth it and possible from your timetable to make the worldguard bridge configurable, instead of ignoring it. I have seen a lot of GP System like clones that have been created to work with worldguard. In order for more features (flags, inheritance…) and finally a bigger and especially more stable/performant market of third party extensions (shops, taxes, farming licenses, real estate, permission plugins with wg region support…) -> I don’t see the big advantage at the forge anit grief integration in 6.x or in the faster loading time from flat file and sql, though I have modded servers. I do see the big advantage at the possibility of a bigger repository of extensions. No offense but the public extensions for gp that I know of are very very limited, known for instability and lacking of features compared to the ones of worldguard and especially the support of other well known plugins.

I can pull strings but not that many strings.

Plus it’s not strictly an API issue. We would actually have to rewrite a substantial part of Minecraft.

Besides that, having callbacks on every set block call is considerably more expensive than handling “bulk” events.


Also, as far as the WG API goes, a lot of it was not written by me until recently (I worked on WG primarily in 2010 and early 2011, and then once again starting in 2014), and I was hampered by the fact that I couldn’t change a lot of the API (to make it better) without also breaking a lot of plugins. However, now that everything is broken by the recent changes…

4 Likes

[quote=“BigScary, post:78, topic:1123”]- Limit on # of times a player gets the “you’re building outside a land claim” message. Probably only once for each time he strays outside his land claim, and only if he’s near it.
[/quote]

This is already configurable

I think he had to rollback most changes BC_Programming implemented, so likely that limit as well, And also looks like he wants to make the limit a bit smarter, so that users aren’t harassed if they likely know they’re far outside the claim.

No specific plans. I’m not sure I can make SQL go faster - basically I’m just asking SQL to give me the whole claims table during boot. Can’t put that off until later, otherwise some land claims not loaded yet would be griefable until they were finished loading.

No, one of the biggest benefits of GP is that you download exactly one thing that fixes all your problems. It’s true that sometimes server owners suggest splitting up the plugin - what you don’t see is the thousands of server owners who don’t bother to comment just to say “I like it like this.”

I see your points, but this is a giant maybe. It comes down to what I can afford to support. I already have a nightmare on my hands thanks to many different mod platforms (almost-Bukkits), two data storage modes, SQL, and offline/online authentication modes. If I were to add to that deep WG integration and the skillions of not-mine plugins, just imagine all the “I have this problem” questions which would result in “after hours of investigation, I’ve determined your problem is not due to my plugin after all, but this other thing you’re doing with your server instead”.

Not in the new versions. :smile:

1 Like

How hard would it be to make a forge mod that would track the mods blocks and ect.

Not sure how plausible it’d be, or how much more of a nightmare it’d be to create, but would it be possible to add a way for GP to load modules (potentially stored in the GP folder) that could enable compatibility with various protection plugins? Maybe if that can be done, then the community can work out the modules to implement the compatibility.

Aside from that, I’d think with the API elements you currently have in place, it may already be possible to write plugins to mediate, although handling events may be a bit of a pain.

Might be a reason to switch to WorldGuard, it has blazing fast startup times in version 6 I believe, maybe even see how @sk89q does it and do something similar. Waiting several minutes for a server to come online is a very long time, especially for the players.

It doesn’t matter for me and I don’t know why so many picked it up as you can disable all these features via config. I just thought maybe it would good to split it up if so many don’t like it this way. (Essentials did it the same way)

Yeah sounds true. Looks like the best solution would be a griefprevention clone for worldguard. As a side note, many mod developers only accept issue reports if they have been verified without any other mods and if it is a compatibility issue they expect detailed information. While I understand that gp aims for small servers and newbies, I do have to say: when have people gotten support for gp? I don’t know, but I nearly never got any help with issues inside gp, the documentations could really need a cleanup and the most questions are unanswered from the team and mainly answered by other users. No offense, that is just my experience over the last year.

I wasn’t on the project over the last year. :smile:

It made sense for Essentials to do that because, as it turns out, nothing in Essentials is really essential.

I agree, but curious - how often do you reboot your server?

1 Like

Hey, it’s TheShadbusher.

Once Sponge is released I can run a test server with GP with some friends to debug if you need it.

Every 6-8 hours, but it does from time to time as well (mods with bugs that “can’t” be resolved). I guess it’s not a huge issue, but still - Performance improvements where possible would be great.

Is it the entire machine that reboots, or just the Minecraft process that restarts? If its the entire machine MySQL be restarted, dumping any data it has cached. In other words, MySQL will have to “warm up” again from a cold start. This doesn’t mean that the GP boot process can’t be improved, just saying if you can avoid restarting the entire system perhaps it will not be as bad.

Only the MC server of course.

How much memory are you giving MySQL? It’s performance varies dramatically depending on how much memory it is being given, the table sizes that are being accessed, and the type of queries that are being run. The default parameters “out of the box” are set for a small database size and result in very poor performance for serious workloads. It is also possible that adding indexes could help performance. Profiling would need to be done to be sure.

My machine, which has 64 GB and which runs the prism plugin with 3 spigot and 2 cauldron servers among other plugins has an allocation of up to 4 GB for MySQL. Once MySQL is “warmed up”, queries for most things are nearly instantaneous.

We were having a discussion about Sponge possibly attempting to mitigate DDoS attacks here, then eventually started talking about application layer DoS attacks, and I believe, as far as those attacks are concerned for Minecraft, it may be nice if GriefPrevention could mitigate those attacks. Not DDoS attacks in general, but only the sort that send massive successive join packets to the server. I was hit by one (on an online server) that joined tons of new users into the game, fully logged in, so it stressed out Essentials loading/creating user data, chunk loading, file creation for the new users, etc.

I believe GP has long masked join/leave spam, but not sure about the actual joining and leaving of same-IPs too quickly. I think this may have been added before, but probably had to disable it if it prevented log-in attempts in more extended time-frames, like a minute between log in attempts. I’d rather it just hide the join/leave messages rather than prevent connections entirely in a time frame of a minute or so.

I think it’d be more ideal for layer 7 DoS attempts if GP would prevent connections after maybe 3-5 successive logins from a same IP, disregarding the username entirely, and within a small time frame of just a few seconds. Not sure what sort of caching or performance hit this would entail, and it’s not a common issue I’d suspect, just something to consider.

It may be worth adding a feature to prevent “Login Attacks” where users attempt multiple logins on the server really fast. It was suggested in another post on a different thread that this should be implemented with this plugin if possible.

1 Like