Update 12/5/2018:
Sorry it has been a little while since I posted or made an update post.
One thing I have been working on lately was the Death system. This includes Gravestones, the death mechanics and the get ready to respawn interface.
Grave stones weren't a very hard concept to make, the hard part was recreating them accurately, since they have changed heavily in Rs3 and don't exist in oldschool. I had to use the wayback machine for the Runecape wiki and search through youtube videos to find even the least important information like game messages.
Gravestones work 100% accurately.
When you die and drop items, a Gravestone spawns right away in the spot you died in.
Each gravestone has a base time the starts ticking down the moment you die.
If you aren't carrying any items or don't have anything to drop because it is all protected, a grave stone will not spawn.
Reading a gravestone properly displays the name of the player who died with the inscription based on the grave type. It also tells you how long the grave has left before it vanishes. Reading your own gravestone sends the game message "Isn't there something a bit odd about reading your own gravestone?" If the grave's timer is <= 1 minute or the player who died picked up all of their items, it will say "The inscription is too unclear to read and not open the interface.
The gravestone will crumble with 1 minute left then break into pieces with 30 seconds left, then finally vanish. When the grave vanishes the items become public for 1 minute and then disappear.
If a player has 70 prayer, they can bless a gravestone provided it hasn't been blessed already. A player cannot bless their own gravestone. This will cause the grave timer to refresh to 1 hour, as well as the grave items.
When a gravestone has one minute or less left, it is possible for players to repair it, provided they aren't the person who died, they have level 2 or above prayer, and the grave hasn't been blessed. This refreshes the timer to 5 minutes, as well as the grave items.
A player can demolish their own grave. If the gravestone has not been blessed, the items become public for one minute upon demolition. If the grave was blessed, the items remain hidden to only the owner for the time left. Other players cannot demolish another player's grave.
Grave Stones do not appear in the Wilderness, Minigames/Instances or the Corp Beast lair.
Two things I was missing for the gravestones was the animation for when it vanishes and the hint icon showing up when the player is in the same plane, not just the same region.
The next thing I had to do was the death mechanic system/choosing the items you keep on death.
This interface gave me some trouble but luckily I found some information on it in the Cs2 script dump and a 742 source called rage-scape.
When you die it determines the amount of items you protect, items that are always kept (this is determined through a client script in the item's definitions), and items that are always lost on death.
Once it determines this, it calculates the items to protect based on the highest value(s) depending on how many you are able to protect.
I made sure it works correctly for stackable items, too. If you have 5 Dragon Arrows and they are most valuable, it will protect 3 dragon arrows and display it correctly.
In the interface, you are able to switch which items you want to protect. This interface always appears even if you don't have any items to protect or only have items <= the amount you can protect.
When protecting a stackable item it properly will protect one. If it is already protected it will display another etc.
You can also choose the respawn point in this interface.
Once you have selected the items to protect, they are added to the ground and the time remaining on your grave is displayed.
One issue I was having is that I cannot get the server to recognize dragging items off the protected items selection/ vice versa. It doesn't appear to be the switch interface packet and nothing prints saying the packet is missing:
[Only registered and activated users can see links. ]






