Back in 2017, surva network operated its own game server network including a creative plots world where players could build stuff on their plots. In this post, we're explaining our journey of upgrading the data to a usable format, publish it and provide a server experience for players to explore the world and find their plot again.
Position checks and calculation with vectors can sometimes a bit complicated, so we've created an article describing the most common checks and how to solve them. There are different types of checks, e.g. if you want to check if a player is in an area created by two positions or next to a specific position.
This blog post is about how to detect a players language and send individually translated plugin messages in a PocketMine-MP plugin. We'll also add code to load and use language files and set a fallback default language.
A common tool you frequently need when programming with the PocketMine-MP API are tasks. Using tasks, you're able to repeat running code e. g. each 30 seconds, or to run delayed code for e. g. after 10 seconds.
A frequently asked question in PocketMine-MP plugin development is how the get the attacker of a died player using PlayerDeathEvent. First, we need to listen on the PlayerDeathEvent, which provides us with the killed player.