configuring-flo-auction-version-3/Scopes Section of config.yml
Configuring floAuction version 3
Scopes Section of config.yml
The auction scopes is the brunt of the floAuction version 3 update. It required a nearly entire system rewrite and warrants it's own configuration page to explain how to use it. The default value, below, permits auctioning everywhere and considers all worlds part of the same auction area.
auction-scopes: default: name: 'Default Auction Scope' type: 'worlds' worlds: - '*' config: disabled-commands-inscope: {}
"auction-scopes" is the main configuration label. This is in your config.yml file, probably towards the end. The word "default" on the second line is the id of the auction scope. "name" should be self explanatory. At the end is an optional config section where you can insert almost any of the config settings from the rest of the config.yml to override them in this scope.
There are three different "type"s of scope currently available. The first kind is "worlds" as the default is. In "worlds" type scopes, you list each participating world in the "worlds" parameter. For example, if you wanted your role playing worlds to have separate auctions from your main worlds, you could separate them into different scopes like this:
auction-scopes: normal_worlds: name: 'Main Worlds' type: 'worlds' worlds: - 'world' - 'world_nether' - 'world_the_end' rpg_worlds: name: 'Role Playing Worlds' type: 'worlds' worlds: - 'rpgworld' - 'rpgworld_nether' - 'rpgworld_the_end'
(Note: "normal_worlds" and "rpg_worlds" above are the id of the scopes. This has to be unique for each scope, but does not have to be the ones I specify here.)
The second type of scope is the "house" type. This functions like the old auction-house feature in the late version 2 branch. If upgrading from version 2, floAuction will, if it exists, automatically create a house matching the one from that version and disable auctioning on the rest of the server. The house type requires "house-world" and coordinates to define the house. This example was automatically created on my test server when preforming the update mentioned in bold.
auction-scopes: auction_house: name: Auction House type: house house-world: world house-min-x: 289 house-min-y: 75 house-min-z: 216 house-max-x: 297 house-max-y: 80 house-max-z: 226
(Note: "auction_house" above is the id of the scope. This has to be unique for each scope, but does not have to be the one I specify here.)
The final type is "worldguardregion". This requires a "region-id" specified which matches the id of an area created with WorldGuard.
auction-scopes: wgregion: name: WorldGuard Region type: worldguardregion region-id: wgauction
(Note: "wgregion" above is the id of the scope. This has to be unique for each scope, but does not have to be the one I specify here.)
Ordering Your Scopes Properly
When specifying multiple scopes on one server, it actually is important to specify them in the correct order, especially if any of them overlap. floAuction checks each scope in the order listed to determine which scope a player is in.
Having a "worlds" type scope with the world "*" will cause floAuction to consider the entire server a single scope, all locations and all worlds. If you make this the first one in the list, all scope checks will find the user or location inside that scope and all other scopes will be ignored. Here's an example of that:
auction-scopes: only_working_scope: name: 'Only Scope that Works' type: 'worlds' worlds: - 'superflous_world_reference' - '*' - 'superflous_world_reference_nether' unaccessable_scope: name: 'Does not matter since no one can be here' type: 'worlds' worlds: - 'irrelevant_world'
You can have auction houses and WorldGuard regions specified in a world that already has auctions in order to specify different language or config settings, or even to disable auctioning in a part of the world. Here's a couple handy examples. The first scope below specifies a WorldGuard region named "auctionsdisabled" in which all auctions are disabled. The second scope is a built-in style auction house with no taxes. The third is a taxed scope defined as the whole world "world".
auction-scopes: disabled_area: name: 'Disabled Auctions Scope' type: 'worldguardregion' region-id: auctionsdisabled config: allow-sealed-auctions: false allow-unsealed-auctions: false tax_free_house: name: 'Tax Free Auction House' type: house house-world: world house-min-x: 289 house-min-y: 75 house-min-z: 216 house-max-x: 297 house-max-y: 80 house-max-z: 226 config: allow-early-end: true auction-start-tax: 0 taxed_world: name: 'Taxed World Scope' type: worlds worlds: - world config: auction-start-tax: 100