Here is what I am doing: creating a large dungeon with mltiple boss encounters requiring a group of people to complete. I have most of the boss encounters done so far, just needs testing and a little fine tuning. I had this thought that perhaps one could alter the difficulty of the dungeon by giving a better loot table should fewer people kill the boss. I do not know if this is possible, but I believe it to be, and curious if anyone has seen it done, done it, or perhaps have been looking to attempt the same thing?

Basic example: Boss A is killed by a group of 8 players, the boss checks combatants maybe? and finds more than 5 players and rewards them with a loot table. The same boss, is killed with 5 players in another group, the boss does the check before it dies, finds only 5 players, then rewards them with an improved loot table based on the fact that the group only had 5 members.

I have not begun to really explore this option yet as I'm still finishing up boss encounters (making them do exactly what I want can be complicated lol).
 
Back on OSI, when a group would battle a Peerless boss and kill it, loot would appear for each individual (based on the damage done I think), then after X amount of time, ALL the loot was available for everyone. I'd say look into that first.
 
If you want to check based on looting rights, can use the code here from the BaseChampion.cs file. With a little modification and passing of BaseCreature that died into some function, shouldn't be to hard to do what your trying to do.

Code:
        public override void OnDeath(Container c)
        {
            if (this.Map == Map.Felucca)
            {
                //TODO: Confirm SE change or AoS one too?
                List<DamageStore> rights = BaseCreature.GetLootingRights(this.DamageEntries, this.HitsMax);
                List<Mobile> toGive = new List<Mobile>();

                for (int i = rights.Count - 1; i >= 0; --i)
                {
                    DamageStore ds = rights[i];

                    if (ds.m_HasRight)
                        toGive.Add(ds.m_Mobile);
                }

                if (toGive.Count > 0)
                    toGive[Utility.Random(toGive.Count)].AddToBackpack(new ChampionSkull(this.SkullType));
                else
                    c.DropItem(new ChampionSkull(this.SkullType));
            }

            base.OnDeath(c);
        }
 
Use OnSpawn Function for enhance basecreatures.
Also you need to duplicate maps in MapDefinition.cs to make different difficulty for dungeons.
I made it like this, so all of the dungeons has 2 or 4 difficulty each.
 
Back