Hi !

Common workaround for this issue, in your BaseCreature.cs :

Code:
        // ARTEGORDONMOD - start
        // allow equipped blessed items to drop into corpses  
        public override DeathMoveResult GetParentMoveResultFor(Item item)
        {
            if (item.LootType == LootType.Blessed)
                return DeathMoveResult.MoveToCorpse;
            
            return item.OnParentDeath(this);
        }
        // ARTEGORDONMOD
        // allow blessed items to drop into corpses
        public override DeathMoveResult GetInventoryMoveResultFor(Item item)
        {
            if (item.LootType == LootType.Blessed)
                return DeathMoveResult.MoveToCorpse;
            
            return item.OnInventoryDeath(this);
        }     
        // ARTEGORDONMOD - end

I left the original credits going to ARTEGORDON :)

Also, that's assuming you're using XML Spawners.
 
ty for your help
I just want it for players not mobiles. I dont want blessed stuff moving around in players pack on death. Say if my runebooks were on the top right of my pack and when i Died they went to the bottom right side of my pack.instead of staying put where they are. It is somewhere in playermobile on death region
 
Regnaks solution would cause all blessed items to stay on the corpse, which would not do what you want to do.

The most likely issue you are having, is the RuneBooks are inside a container that is not blessed, so upon death it also stays on the corpse. Since the Runebooks inside it don't stay on the corpse, they stay with you, they have to go into your root backpack because the container they used to be in, no longer exists.
 
I'm talking about all blessed items not moving in the starting backpack in paperdoll on death. so maybe it's different, I know some shards
have it how I want.
I am using Runuo 2.0
expansion.none
C++:
        private static void PlaceItemIn( int x, int y, Item item, Mobile from )
        {
            from.AddToBackpack(item);
            item.Location = new Point3D( x, y, 0 );
        }
this would go in playermobile.cs
 
In the core script Mobile.cs, there's a line:
Code:
public virtual bool RetainPackLocsOnDeath { get { return Core.AOS; } }

You aren't running any expansions so this would be false in your case. Changing that line to
Code:
public virtual bool RetainPackLocsOnDeath { get { return true; } }
(and re-compiling the exe) should keep things from being jumbled around on death.

I believe this line is present in the RunUO days. Keep a copy of your current runuo.exe in case I'm wrong but I believe this edit will do what you're looking for.
 
Back