Plugin for Bukkit / Spigot Minecraft servers. New entity: Drone. Can be controlled by player through in-game commands or through a web interface. The web interface allows for user created Javascript to control the drone.
Drone does not allow to be moved into liquid by commands.
But it seems like it is possible to push a drone into lava (liquid). And since the drone will not move into liquid , it is basically stuck if there is liquid on all sides.
I experienced this when drone was digging a 1x1 hole straight down and I was standing on top of drone while jumping/flying at the same time as the drone encountered lava below.
Simple solution: If in liquid, float up one block at a time. If up is blocked (by solid block) then die.
In requesthandleraction: Keep a dictionary of drones, and time of last action request.
Return 420 (Enhance your calm) if time since last request<configured value (default .5 seconds?)