<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><description>News about WorldGuard</description><title>WorldGuard</title><generator>Tumblr (3.0; @worldguard)</generator><link>http://worldguard.tumblr.com/</link><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/worldguard" /><feedburner:info uri="worldguard" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://tumblr.superfeedr.com/" /><feedburner:browserFriendly></feedburner:browserFriendly><item><title>New blog</title><description>&lt;p&gt;News is now posted here: &lt;a href="http://minecraftnews.sk89q.com/"&gt;http://minecraftnews.sk89q.com/&lt;/a&gt;&lt;/p&gt;</description><link>http://worldguard.tumblr.com/post/4810192220</link><guid>http://worldguard.tumblr.com/post/4810192220</guid><pubDate>Thu, 21 Apr 2011 13:31:19 -0400</pubDate></item><item><title>News! Preliminary download!</title><description>&lt;p&gt;See &lt;a href="https://spreadsheets.google.com/ccc?hl=en&amp;amp;key=tmzLJerg2AJGcut1xRKLKjg"&gt;https://spreadsheets.google.com/ccc?hl=en&amp;amp;key=tmzLJerg2AJGcut1xRKLKjg&lt;/a&gt;&lt;/p&gt;</description><link>http://worldguard.tumblr.com/post/4280405465</link><guid>http://worldguard.tumblr.com/post/4280405465</guid><pubDate>Sat, 02 Apr 2011 06:27:41 -0400</pubDate></item><item><title>5.x slated for Friday</title><description>&lt;p&gt;I&amp;#8217;ve been working on WorldGuard along the week. As it looks, I will be making a release on Friday. I&amp;#8217;m going to have WorldGuard for Minecraft 1.4 for sure, since I have a server to update too!&lt;/p&gt;</description><link>http://worldguard.tumblr.com/post/4235955326</link><guid>http://worldguard.tumblr.com/post/4235955326</guid><pubDate>Thu, 31 Mar 2011 12:55:00 -0400</pubDate></item><item><title>Wednesday the day</title><description>&lt;p&gt;I&amp;#8217;m going to have some time Wednesday. At this point, however, WorldGuard is now blocking me from my updating server (previously WorldGuard just worked so it wasn&amp;#8217;t an issue), so I really need to finish it ASAP.&lt;/p&gt;</description><link>http://worldguard.tumblr.com/post/4204575395</link><guid>http://worldguard.tumblr.com/post/4204575395</guid><pubDate>Wed, 30 Mar 2011 03:17:51 -0400</pubDate></item><item><title>Progess update</title><description>&lt;p&gt;I am going to start making these posts on a daily basis until WorldGuard gets released. Right now it&amp;#8217;s Monday morning, meaning the week has started. I&amp;#8217;m available less during the week as I am busy with other things, so WorldGuard may trudge along at a slower pace.&lt;/p&gt;
&lt;p&gt;So far I&amp;#8217;ve been reading through the code from start (plugin load) and working towards testing the fire spread and such settings, eventually getting to testing regions. I&amp;#8217;ve temporarily disabled some code (mob spawn checking, healing flag, iConomy support) so I can work on core features, then once I get those in, I will restore those removed features and get them to work.&lt;/p&gt;</description><link>http://worldguard.tumblr.com/post/4155615816</link><guid>http://worldguard.tumblr.com/post/4155615816</guid><pubDate>Mon, 28 Mar 2011 03:57:57 -0400</pubDate></item><item><title>A real update on WorldGuard</title><description>&lt;p&gt;I have a secret: WorldGuard 4/5 has been done for about a month. I didn&amp;#8217;t want to release it because some of the code was just really, really terrible. There were come conceptual problems with how things such as region priorities were handled that I really didn&amp;#8217;t like. I felt that after I got several other developers on board, the team was too quick to add in features that many things weren&amp;#8217;t thoroughly discussed enough. (However, I really appreciate the work that the other WorldGuard developers did &amp;#8212; they added a lot of things that I honestly would never had time to approach and they introduced some good ideas in the project.) Fortunately, just today, I rewrote a number of things that has bothered me a lot, meaning progress towards WorldGuard 5 is better than ever &amp;#8212; more work has been done today (by me) than in the last 4 weeks combined.&lt;/p&gt;
&lt;p&gt;That said though, while progress is great and I can actually see a release tomorrow (that&amp;#8217;s said with some honestly). I&amp;#8217;m taking a break for tonight though. Before I do that though, I want to discuss two changes that were made (today or by the other developers).&lt;/p&gt;
&lt;p&gt;First off, I think WorldGuard, as far as I know, the only &amp;#8220;advanced&amp;#8221; area protection plugin &amp;#8212; as in that it knows about priorities and parent-child relationships, and not only that, it does them in a way that balances their strengths and weaknesses. Four problems that I tried to solve with the system are:&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;It should be advanced enough so that more complicated protection setups are possible.&lt;/li&gt;
&lt;li&gt;It should be entirely ignorable until it&amp;#8217;s needed, and yet easy to grasp when it is required.&lt;/li&gt;
&lt;li&gt;It should reduce duplication and reduce the chance of error by making the process of defining regions intuitive.&lt;/li&gt;
&lt;li&gt;It needs to be fast.&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;Thus, I try to achieve all those four by first emphasizing parent-child relationships over priorities. They make sense. If you make a town, it is the &lt;em&gt;parent&lt;/em&gt;, and when you make plots, they are the &lt;em&gt;children&lt;/em&gt; of the parent. If a system of priorities was used instead, you&amp;#8217;d have to remember that the town was priority, say, &amp;#8220;4&amp;#8221;, and all plots must be priority, say, &amp;#8220;3&amp;#8221;. Imagine having a ton of cities, with potential subplots and subplots, and such &amp;#8212; trying to juggle all those numbers would become quite difficult. If you were to bring on a new administrator, you&amp;#8217;d have to teach him/her all the numbers. Parent-child relationships are easy to understand.&lt;/p&gt;
&lt;p&gt;However, they are not the end all to all problems. What if you wanted to have two overlapping regions with one having greater priority, but a parent-child relationship would make no sense? That&amp;#8217;s where priorities come in &amp;#8212; you can set one region to have a higher priority and it will override all other lower priority regions. However, priorities are a &amp;#8220;last resort&amp;#8221; option because who wants to remember a bunch of numbers? Having it, however, gives power to the user to do all the crazy protection schemes that s/he wants, and hopefully, use of it is rare enough that human memory isn&amp;#8217;t a problem.&lt;/p&gt;
&lt;p&gt;Having two separate systems brings a problem though: what if you have both parent-child relationships and parents in a huge mess in one area? WorldGuard applies the following rules for determining priority:&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Child regions will override parent regions.&lt;/li&gt;
&lt;li&gt;A higher priority region will always override a lower priority region, even if the higher priority region is a parent of a lower priority child.&lt;/li&gt;
&lt;li&gt;If you have two overlapping regions that are equal in priority per the two rules above, the behavior is indeterminate. For example, if two regions have an enter message and they are of the same priority, then either region could be used for the message. (The reason for the indeterminate behavior is due to how WorldGuard is designed to process the regions quickly and thus it loses &amp;#8220;order&amp;#8221;).&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;To be fast, WorldGuard loops through the list of application regions in way that will never ever loop through the same list more than once*. It never needs to &amp;#8220;climb a tree&amp;#8221; either to find parents, giving the additional advantage that it is impossible crash the server if you have regions inheriting themselves (although WorldGuard already prevents that when you set parents).&lt;/p&gt;
&lt;p&gt;That example about enter messages brings us into the next topic. WorldGuard supports non-boolean flags! Before you could really only set a flag to be &amp;#8220;on&amp;#8221; or &amp;#8220;off&amp;#8221; (none, allow, or deny). Not with the new WorldGuard &amp;#8212; enter and leave messages are flags just like everything else, and you can set the prices of regions (for economy) and do other cool things. There&amp;#8217;s even a location flag so you can have per-region spawn locations and teleport locations! This flag system was added by the other developers, but it was also one thing that I wanted to rewrite to be cleaner.&lt;/p&gt;
&lt;p&gt;Now there&amp;#8217;s really a lot more to this upcoming release. We have per-world blacklists and per-world fire protection settings, among many other new changes.&lt;/p&gt;
&lt;p&gt;So hopefully, WorldGuard 5 will be coming out &lt;em&gt;very soon&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;*It does, however, have to use some hash sets &amp;#8212; this may negate the  gain, but there are some nice other advantages to this way though.&lt;/p&gt;</description><link>http://worldguard.tumblr.com/post/4124603267</link><guid>http://worldguard.tumblr.com/post/4124603267</guid><pubDate>Sat, 26 Mar 2011 23:23:00 -0400</pubDate></item><item><title>Where's WorldGuard 4?</title><description>&lt;p&gt;Currently I&amp;#8217;m going over the code and reorganizing some things. This will take a few days.&lt;/p&gt;</description><link>http://worldguard.tumblr.com/post/3725336334</link><guid>http://worldguard.tumblr.com/post/3725336334</guid><pubDate>Tue, 08 Mar 2011 13:17:51 -0500</pubDate></item><item><title>Upcoming WorldGuard 4.0 release</title><description>&lt;p&gt;WorldGuard 4.0 will start entering beta this week. New features include:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Multi-world support for both protection and blacklists&lt;/li&gt;
&lt;li&gt;Polygonal region support&lt;/li&gt;
&lt;li&gt;Welcome and farewell messages&lt;/li&gt;
&lt;li&gt;Healing flag to turn on healing inside a region&lt;/li&gt;
&lt;li&gt;Better region management command permissions&lt;/li&gt;
&lt;li&gt;Control mob spawning inside a region&lt;/li&gt;
&lt;li&gt;Warp to region command&lt;/li&gt;
&lt;li&gt;Per-region spawn points&lt;/li&gt;
&lt;li&gt;Water flow control flag&lt;/li&gt;
&lt;li&gt;Every flag now has a &amp;#8220;default&amp;#8221; state that you can change&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Right now, what&amp;#8217;s left is some rigorous testing on our part (to make sure everything works) before we let you guys use it.&lt;/p&gt;
&lt;p&gt;Say thanks to DarkLiKally, Redecouverte, and wallnuss for their impressive work on 4.0!&lt;/p&gt;</description><link>http://worldguard.tumblr.com/post/3575160541</link><guid>http://worldguard.tumblr.com/post/3575160541</guid><pubDate>Mon, 28 Feb 2011 21:49:03 -0500</pubDate></item></channel></rss>
