API - nik2143/FastAsyncWorldedit-Legacy GitHub Wiki

Porting WorldEdit API code to FAWE

Firstly, FAWE isn't meant to modify the behavior of the WorldEdit API. Existing code should run faster simply by having FAWE installed. Porting code (which is using the WorldEdit API) to work async is as easy as putting it in an async thread (e.g. With the bukkit scheduler).

That said, the FAWE API offers additional functionality not already available in WorldEdit. Below are some examples for WorldEdit and FAWE:

Dependency

Repository: http://ci.athion.net/job/FastAsyncWorldEdit/ws/mvn/

Dependency: com.boydti:fawe-api:<version> or com.boydti:fawe-api:latest

Note: Add FAWE as a dependency before WorldEdit (e.g. in pom.xml or build.gradle)

Threading

  • Performance tips with FAWE
  • Run sync/async tasks with the FAWE TaskManager
  • Break up complex tasks using FAWE TaskBuilder

Players

  • FawePlayer
  • WorldEdit player
  • Player Job API
  • Player Progress API
  • Player region restrictions

Modify the world Async (or load it)

  • Anvil API
  • WorldEdit world
  • EditSession
  • Bukkit API wrappers
  • FaweQueue

NBT and Formats

  • Schematic pasting
  • NBT stream API
  • Custom clipboard formats
  • Recovering corrupt NBT

NMS abstraction

  • Light API
  • NMSMappedFaweQueue
  • Packet Sending

Web

  • Web API

Misc Utilities

  • Block and Biome colors

Extending features

  • Adding Custom Masks, Patterns or Transforms
  • Adding Custom Brushes or Commands
  • Adding Custom clipboard formats
  • Javascript API
⚠️ **GitHub.com Fallback** ⚠️