WFT

Add Custom Floating Texts to your PocketMine-MP server

WFloatingText - 1.5.3

Hello, and welcome to WFloatingText.

Please note that 1.5.2 to 1.5.3 you will now need to use \# instead of #

NOW IN API 5.0

This is the official recode of my old plugin WFT, witch had some issues. Overall I was not happy with the result, the code was messy, it was all in one file, there was useless and in-efficient code, with a hard api to use, so decided to recode it.

I have added features, because I felt the plugin needed them, and removed features, as some features where not needed.

Features added

  • WFT-OLD Migration
  • Multiple language support
  • Optional display identifier
  • More Tags
  • Per-Player Texts
  • Packet Texts over Entity
  • More efficient and pretty code
  • Operator texts More info here
  • Operator change detection
  • Multi newline support

Migration: This should have been added on 1.0, but texts from WFT-OLD will now be automaticly migrated to WFT format.

Language support: You can now change the language of the plugin to suit your server.

Display identifier: You can now turn on or off the option to see the texts unique identifier (Much like Texter, but optional).

More tags: Added many more tags for better, they are also player specific.

Per-Player texts: Players will now get a specific text depending on what tag you use.

Packets: The old plugin used entities, putting more load on the server, whereas this plugin uses packets, therefore creating a more lightweight plugin.

Efficient and pretty code: The code in this plugin is WAY more efficient and clean that the old plugin. The code is also spaced out in multiple files.

Operator texts: Have the option only displaying text to operators, this could be useful for a general server overview in your spawn world without it affecting your general players! Again, more info here

Operator change detection: WFloatingText will now automatically detect when your operator status changes, so no more annoying re-logging

Multi-newline support: You can use either \n for a new line for always player facing texts, or use \# to keep the shape of your text, or have the best of both worlds

Bug Fixes

List form would crash the server

Status: Fixed

Version: >=1.5.1

Fixed in: <=1.5.2

https://github.com/WolfDen133/WFT/issues/21

Status: Fixed

Version: >=1.3.5

Fixed in: <=1.3.6

https://github.com/WolfDen133/WFT/issues/20

Status: Fixed

Version: >=1.3.4

Fixed in: <=1.3.5

https://github.com/WolfDen133/WFT/issues/12

Status: Fixed

Version: >=1.3.1

Fixed in: <=1.3.2

https://github.com/WolfDen133/WFT/issues/16

Status: Fixed

Version: >=1.3.2

Fixed In: <=1.3.3

Features

  • Refresh timer
  • Tags for various things
  • Lots of useful commands
  • Form or command line options
  • Help subcommand for new people
  • Powerful fast and efficient code
  • Extensive customizable

Example

Example

Commands

Master command is ft|wft.master

SubcommandPermissionDescriptionAliases
wftwft.command.useThe master commandft
add~Add a new ftspawn, summon, new, make, create, c, a
remove~Remove a existing ftbreak, delete, bye, d, r,
edit~Edit an existing fte, change
tp~Teleport to an ftteleportto, tpto, goto, teleport
tphere~Teleport a ft to youteleporthere, movehere, bringhere, tph, move
list~See a list of the current ftssee, all
help~So you can get some in-game helpstuck, h, ?
reload~Re-read and reload all texts-

Tags

TagDescription
\#New Section
\nNew line
&Use for color codes (same as §)
{NAME}Players real name
{REAL_NAME}Players real name
{DISPLAY_NAME}Players display name (often nick plugins use display name)
{PING}Players Current Ping
{MAX_PLAYERS}Maximum players that can be on the server
{ONLINE_PLAYERS}Currently online player count
{X}Players X Position
{Y}Players Y Position
{Z}Players Z Position
{REAL_TPS}Current server tps
{TPS}Average server tps
{REAL_LOAD}Current server load
{LOAD}Average server load
{LEVEL_NAME}Players current level name
{LEVEL_FOLDER}Players current level folder name
{LEVEL_PLAYERS}Players current level player count
{CONNECTION_IP}The IP address that the player connected from
{SERVER_IP}The servers IP address
{TIME}Current server time (Customisable in config)
{DATE}Current server date (Customisable in config)

Create your own

See how to create your own here

Languages

  • Czech (cz)
  • English (en)
  • German (de)
  • Russian (ru)
  • Slovak (sk)
  • Spanish (sp)
  • Ukrainian (ua)
  • Turkish (tr)
  • Indonesian (id)

But feel free to add your own!

NEW API

Notes:

  • Docs are presented: $varableName // [varableType] explanation

Example:

Import the classes

Creating the text

// Creation and registration
$position = new Position($x, $y, $z, $world);

WFT::getInstance()->getTextManager()->registerText(
    $identifier,    // [STRING] Unique identifier that is used in the api to manipulate the text in future
    $text,          // [STRING] In raw, the text that you want for the text's content
    $position,      // [OBJECT: POSITION] Where the text is placed in the server
    ($spawnToAll)   // [BOOL] (optional) Whether the text is spawned to the server on creation
    ($saveText)     // [BOOL] (optional) Whether WFT creates a config file for the text and reloads it when the server is restarted (set to false if you are going to be registering texts on enable)
);  // Returns the created text

// Spawning (unnecessary if $spawnToAll is true)
// (identifier is the one used to register the ft)
WFT::getInstance()->getTextManager()->getActions()->spawnTo($player, $identifier);
// or
WFT::getInstance()->getTextManager()->getActions()->spawnTo($identifier);

Getting and changing the text's content

// Getting the ft
$floatingText = WFT::getInstance()->getTextManager()->getTextById($identifier);

// Changing the text
$floatingText->setText($text);

// Pushing the update
WFT::getInstance()->getTextManager()->getActions()->respawnTo($player, $floatingText);
// or 
WFT::getInstance()->getTextManager()->getActions()->respawnToAll($floatingText);

Removing the text

// Remove the text
WFT::getInstance()->getTextManager()->removeText($identifier);

That's it, the rest is handled by the plugin

Credit

  • WolfDen133 (Main Programmer) [ฬ๏ɭŦ๔єภ133;#6969]
  • McMelonTV (Translations - Slovak, Czech) [McMelon#9999]
  • TheFixDev (Translation - German) [𝓗𝓪𝓫𝓓𝓲𝓬𝓱𝓢𝓸𝓖𝓮𝓻𝓷#6158]
  • kostamax27 (Suggestion & Translation - Russian, Ukrainian) [kostamax27#0160]
  • Sergittos (Translation - Spanish) [Sergittos#0001]
  • DragonfireHD (Translation - Turkish)
  • keenanyafiqy (Translation - Indonesian)

Details

Version: 1.5.3

Downloads: 418

Updated: 6/1/2024

Supported API versions: 5.4.3 to 5.27.1

Categories: Admin Tools, API plugins, Miscellaneous, Fun, Informational, General

License: GPL-3.0

Producers

Collaborator