Mods / Player Corpse

Category: #Utility
Author: DArkHekRoMaNT
Side: Both
Created: Feb 17th 2021 at 10:56 AM
Last modified: Jun 28th at 11:28 AM
Downloads: 15244
Follow Unfollow 84

The reimagined grave system.

After the death of the player, the player's corpse will spawn in its place (at the moment it is a regular humanoud skeleton). You can go to it and collect things (by holding RMB), by default only its owner or a player in a creative can collect a corpse. Not despawning.

In addition, a waypoint will be created at the place of death. By default, it will try to resolve conflicts with known mods, for example supports StreamDC.

Since the game is an unpredictable thing, this mod also adds the ability to restore items lost at the last death using the /returnthings command. By default, the last 10 deaths are stored for each player.

You can also configure some things in the config:

  • CanFired - the corpse will be destroyed if it burns for more than 15 seconds (default: false)
  • HasHealth - a corpse has 100 hp and can be broken by other players (default: false)
  • CreateCorpse - whether corpses will be created at all (default: true)
  • SaveInventoryTypes - what types of inventory will be saved
  • NeedPrivilegeForReturnThings - what privileges are needed to return things (default: gamemode)
  • MaxDeathContentSavedPerPlayer - the number of recent deaths that are saved per player (default: 10)
  • CreateWaypoint - whether to create a waypoint at all upon death (default: auto; automated turn it off if there is another well-known mod adding waypoints)
  • And also various settings for waypoints

 

 


For bug reports or suggestions, I recommend using the Issues on GitHub (issue tracker link). This makes tracking much easier

You can support me on Patreon

Version For Game version Downloads Release date Changelog Download
v1.3.3 112 Jun 28th at 11:28 AM Show PlayerCorpse_v1.17.0-pre.1_v1.3.3.zip
v1.3.2 477 Jun 23rd at 12:29 PM Show PlayerCorpse_v1.17.0-pre.1_v1.3.2.zip
v1.3.1 5848 Feb 18th at 1:13 AM Show PlayerCorpse_v1.16.3_v1.3.1.zip
v1.3.0 2416 Dec 14th 2021 at 3:47 PM Show PlayerCorpse_v1.16.0-pre.8_v1.3.0.zip
v1.2.0 402 Dec 14th 2021 at 3:47 PM Show PlayerCorpse_v1.15.10_v1.2.0.zip
v1.1.9 983 Oct 22nd 2021 at 4:41 AM Show PlayerCorpse_v1.15.7_v1.1.9.zip
v1.1.8 223 Oct 20th 2021 at 9:37 AM Show PlayerCorpse_v1.15.7_v1.1.8.zip
v1.1.7 231 Oct 18th 2021 at 5:56 AM Show PlayerCorpse_v1.15.7_v1.1.7.zip
v1.1.6 171 Oct 17th 2021 at 3:40 PM Show PlayerCorpse_v1.15.7_v1.1.6.zip
v1.1.5 687 Sep 10th 2021 at 1:02 AM Show PlayerCorpse_v1.15.1_v1.1.5.zip
v1.1.4 742 Aug 14th 2021 at 11:21 PM Show PlayerCorpse_v1.15.1_v1.1.4.zip
v1.1.1 317 Jul 20th 2021 at 6:52 AM Show PlayerCorpse_v1.15.1_v1.1.1.zip
v1.1.0 319 Jul 17th 2021 at 9:20 AM Show PlayerCorpse_v1.15.0_v1.1.0.zip
v1.0.2 1482 Feb 28th 2021 at 7:27 PM Show PlayerCorpse_v1.14.7_v1.0.2.zip
v1.0.1 305 Feb 20th 2021 at 3:13 PM Show PlayerCorpse_v1.14.7_v1.0.1.zip
v1.0.0 248 Feb 17th 2021 at 10:57 AM Show PlayerCorpse_v1.14.0_v1.0.0.zip

16 Comments (oldest first | newest first)

DArkHekRoMaNT, Jun 23rd at 12:30 PM

v1.3.2 is also compatible with VS 1.17.0-pre.1

YourCreator, Jun 1st at 5:00 PM

pls add timer config to corpse. Clean corpse after chosen time

 

 

WickedSchnitzel, May 17th at 8:02 PM

Suggestion: Add an option to let the corpse emit particles so that people can find them more easily in high grass, at night etc.

bringitonwimps, May 16th at 5:06 AM

a suggestion for something ive wanted for a while, could you make a config option to put the corpse randomly within a chosen block distance... so like say 500 blocks.  this way when you respawn the idea is someone, a previous person died, cause your a new dif person in the world and you or campanions may come across the loot of a previously unfortunate soul.   ive wanted it for a more hardcore "punishment" for death but something that wont remove the items from the game, just make em a lucky find on some random future day.  idk if anyone else would like this idea.  but i think it would be like a little treasure hunt mechanic as well.  youd have an idea of the vacinity based on setting but not know EXACTLY where the stuff was.

Cendar, Apr 10th at 1:07 AM

Hi!

I updated my french translation for Player Corpse 1.3.1

Link to the fr.json file:
mega.nz/file/05BxSJhL#ME907w1A12BDLmZ0-uKtmqBEFsTejqsdo3CmN2ZmgVc

ArchieBoop, Apr 4th at 8:55 PM

Could we perhaps have an option to decrease the time it takes to retrieve items from a corpse? The time it takes to do so is probably a little too much when your corpse is down inside a cave and you're being swarmed by locusts or drifters.

 

Also, something I noticed is that the backpacks will not always be added to your character in the same order. It would be nice to do so if possible but it's nothing serious.

DArkHekRoMaNT, Mar 31st at 11:34 PM

Try deleting the folder %appdata%/VintagestoryData/ModsByServer spaceslug

spaceslug, Feb 28th at 7:22 PM

DArkHekRoMaNT

He now gets this exception.

Game Version: v1.16.4 (Stable)
Loaded Mods: game@1.16.4, playercorpse@1.3.1, prospectorinfo@3.1.0, stepup@1.2.0, creative@1.16.4, survival@1.16.4
28/02/2022 20.18.31: Critical error occurred
System.Exception: Don't know how to instantiate item of class 'ItemCorpseCompass' did you forget to register a mapping?
at Vintagestory.Common.ClassRegistry.CreateItem(String itemClass)
at Vintagestory.Common.ItemTypeNet.ReadItemTypePacket(_V5KVIg6AZCt8Xw4s8zyEyfYSGfh packet, IWorldAccessor world, ClassRegistry registry)
at Vintagestory.Client.NoObf.GeneralPacketHandler.HandleServerAssetsStep1()
at Vintagestory.Client.NoObf.ClientMain.ExecuteMainThreadTasks(Single deltaTime)
at _eaiE9OWXDVmX2r6n7JaWPscBEkO._LvzIyYpsQCoC78JubjSO0HCjtTg(Single )
at _lAuHsYOBOAjBMdATFXwLUtH7N00._JvY4M2412YZu1OS3Ull8wgZBu1j(Single )
at _lAuHsYOBOAjBMdATFXwLUtH7N00._KmBeEx15nyyLrVqNDW6geSArpNr(Single )
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(Object sender, FrameEventArgs e)
at System.EventHandler`1.Invoke(Object sender, TEventArgs e)
at OpenTK.GameWindow.RaiseRenderFrame(Double elapsed, Double& timestamp) in C:\Users\Nexrem\Desktop\transfer\opentk\src\OpenTK\GameWindow.cs:line 479
at OpenTK.GameWindow.DispatchRenderFrame() in C:\Users\Nexrem\Desktop\transfer\opentk\src\OpenTK\GameWindow.cs:line 454
at OpenTK.GameWindow.Run(Double updates_per_second, Double frames_per_second) in C:\Users\Nexrem\Desktop\transfer\opentk\src\OpenTK\GameWindow.cs:line 375
at _TRhArnJABwZoV9Vt7Ld2l65Xzgg._mhlr8s7wtMvxaJGpVy2Ag90jUBK(_3HJA5NvAIx31LXjscc3HGjXaR6q , String[] )
at _q0zAVOrWbMX04rMA9G3HIFVuGjA._mhlr8s7wtMvxaJGpVy2Ag90jUBK(ThreadStart )

 

DArkHekRoMaNT, Feb 18th at 1:16 AM

Should be fixed in v1.3.1 spaceslug

spaceslug, Feb 5th at 7:34 PM

I have a friend that gets exceptions when connecting to my server after dying and later loging back on.

Game Version: v1.16.3 (Stable)
Loaded Mods: game@1.16.3, playercorpse@1.3.0, prospectorinfo@3.1.0, stepup@1.2.0, creative@1.16.3, survival@1.16.3
05/02/2022 14.31.59: Critical error occurred
System.MissingMethodException: Method not found: '!!0 Vintagestory.API.Common.IModLoader.GetModSystem()'.
at PlayerCorpse.EntityPlayerCorpse.Initialize(EntityProperties properties, ICoreAPI api, Int64 InChunkIndex3d)
at Vintagestory.Client.NoObf.ClientSystemEntities.entityFromPacket(_PfIpUpnyNzoeAvZNfeMyhnhKDaA entitypacket, ClientMain game)
at Vintagestory.Client.NoObf.ClientSystemEntities.createOrUpdateEntityFromPacket(_PfIpUpnyNzoeAvZNfeMyhnhKDaA entitypacket, ClientMain game, Boolean addToLoadQueue)
at Vintagestory.Client.NoObf.ClientSystemEntities.HandleEntityLoadedPacket(_Dp1aKZ8iZypdvDG8MmoQfv915eG serverpacket)
at Vintagestory.Client.NoObf.ClientMain.ExecuteMainThreadTasks(Single deltaTime)
at _TcPKe0ld0EAbHR8YsMG1OLy9q8O._G7ImpIHUCfpaZwTmd8In2KuoHYA(Single )
at _SbWHHe8Ad6lBV8IRbvWFqut7ren._mSnyaJUIQhBb8A1j3UUn7uh5BBO(Single )
at _SbWHHe8Ad6lBV8IRbvWFqut7ren._b365Cpnna1p8GSaDyyO3EH2VfOD(Single )
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(Object sender, FrameEventArgs e)
at System.EventHandler`1.Invoke(Object sender, TEventArgs e)
at OpenTK.GameWindow.RaiseRenderFrame(Double elapsed, Double& timestamp) in C:\Users\Nexrem\Desktop\transfer\opentk\src\OpenTK\GameWindow.cs:line 479
at OpenTK.GameWindow.DispatchRenderFrame() in C:\Users\Nexrem\Desktop\transfer\opentk\src\OpenTK\GameWindow.cs:line 454
at OpenTK.GameWindow.Run(Double updates_per_second, Double frames_per_second) in C:\Users\Nexrem\Desktop\transfer\opentk\src\OpenTK\GameWindow.cs:line 375
at _muFH2BhSjNKo8GSc2o33Nm6Ckup._SwLkq72vc0vcc3OnHXTAS19pm9p(_tVmXPdKJ3JBDWFc8tBtvgftcfhl , String[] )
at _XL1Xa21FKJVFetNmIumId5p6UDU._SwLkq72vc0vcc3OnHXTAS19pm9p(ThreadStart )
-------------------------------

Are there perhaps a way to purge all player corpse data?
The items my friend had are not importaint, I just want him to be able to join my server again.

 

Cendar, Jan 19th at 4:36 AM

Hi! I made a french translation for your mod, feel free to add it if you want. 😊

fr.json - PlayerCorpse 1.3.0

Robson, Oct 18th 2021 at 5:16 PM

Suggestion: This mod would be very cool if it had the ability to cost.

for example if you die with a temportal gear on you, it removes the temporal gear but creates the grave.

If you dont have a temporal gear, the mod wont activate and you drop your items like normal.

 

Great mod though, keep it up

DArkHekRoMaNT, Aug 12th 2021 at 2:38 AM

1.1.2 may cause crash, 1.1.1 or 1.1.4+ is recommended

Xorberax, Aug 7th 2021 at 12:53 AM

I had an issue where nobody on my server could recover their corpse. They would hold the RMB on the corpse and nothing would happen. Upon restarting the server, I'd crash with the following stack trace -- I had to unload the mod, start the server, stop the server, load the mod, start the server, recover my items with the return things command, unload the mod in order to recover my stuff:

Running on 64 bit Windows with 64 GB RAM Version: v1.15.3 (Stable)2021-08-05 8:23:20 PM: Critical error occurred System.NullReferenceException: Object reference not set to an instance of an object. at Vintagestory.Server.ServerMain.EntityPosFromSpawnPos(PlayerSpawnPos playerSpawn) at PlayerCorpse.EntityPlayerCorpse.OnEntityLoaded() at Vintagestory.Server.ServerMain.LoadEntity(Entity entity, Int64 fromChunkIndex3d) at Vintagestory.Server.ServerSystemSupplyChunks.<>c__DisplayClass15_0.b__0() at Vintagestory.Server.ServerMain.ProcessMainThreadTasks() at Vintagestory.Server.ServerMain.ProcessMain() at Vintagestory.Server.ServerMain.Stop(String reason) at _Km7YT9SY1sKIj5UBhEpQfHc3XzB._HhrVFdJkFhMrwQkFcwlyS1F1C6h() at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart()

DArkHekRoMaNT, Aug 1st 2021 at 12:32 PM

@Vallen, are you using VSMovementMod? Please update it if you are using it. I immediately testing my mod in multiplayer, it should work.

Vallen, Jul 24th 2021 at 12:27 AM

Just tried version 1.1.1 on a server with the default values and the player did not generate a corpse but dropped their stuff like usual. :(

delete edit