Mechanics of Tokuno Artifact Drops

Locked
User avatar
Agony
Legendary Scribe
Reactions:
Posts: 244
Joined: Wed Dec 01, 2010 1:10 am

Mechanics of Tokuno Artifact Drops

Post by Agony »

Ok, I've asked around and gotten just about every idea in the book as feedback for this question, so I thought I would ask here.
What are the mechanics involved with the Tokuno artifact drop system? Aside from luck being a major modifier in the equation, does anyone know the base formula that determines the drops?
...Dimiir Borgu
Cornbread
Legendary Scribe
Reactions:
Posts: 236
Joined: Sun Dec 26, 2010 9:25 pm

Re: Mechanics of Tokuno Artifact Drops

Post by Cornbread »

You stated it. More luck more artifacts. With 7200 or so luck expect to fill your backpack very quickly.
Legendaries
Elder Scribe
Reactions:
Posts: 119
Joined: Fri Jul 13, 2012 2:38 pm

Re: Mechanics of Tokuno Artifact Drops

Post by Legendaries »

I think they were asking along the lines of what the actual formula was...
User avatar
Agony
Legendary Scribe
Reactions:
Posts: 244
Joined: Wed Dec 01, 2010 1:10 am

Re: Mechanics of Tokuno Artifact Drops

Post by Agony »

Yeah, luck is definitely one determining factor. But just like dex is to healing speed, it's a rate modifier. I'm curious as to what the actual base algorithm is for the drop system.
...Dimiir Borgu
User avatar
Tacityl
Master Scribe
Reactions:
Posts: 63
Joined: Thu Oct 18, 2012 11:31 pm
Location: Sonoma, CA

Re: Mechanics of Tokuno Artifact Drops

Post by Tacityl »

In the base Run UO code, there is this little gem:

Code: Select all

		public static bool TCheckArtifactChance( Mobile m, BaseCreature bc )
		{
			if ( !Core.AOS )
				return false;

			double fame = (double)bc.Fame;

			if ( fame > 32000 )
				fame = 32000;

			double chance = 1 / ( Math.Max( 10, 100 * ( 0.83 - Math.Round( Math.Log( Math.Round( fame / 6000, 3 ) + 0.001, 10 ), 3 ) ) ) * ( 100 - Math.Sqrt( m.Luck ) ) / 100.0 );

			return chance > Utility.RandomDouble();
		}
EDIT: After removing the floating point preservation, applying some algebraic reduction, and simplifying some C# functions, I get:

1 / MAX( 10, (100 - sqrt(LUCK)) * (4.608 - log10(FAME)) )

where LUCK is the player's luck and FAME is the mob's fame. The MAX in the denominator ensures that your chance to get a drop can never get better than 1 in 10, regardless of your luck or the mob's fame.

Of course, Excelsior could have changed all of this. But reading code is fun :)
Last edited by Tacityl on Thu Mar 07, 2013 8:59 pm, edited 1 time in total.
"I am made from the dust of the stars, and the oceans flow in my veins ..." ~Sir Neil
User avatar
Agony
Legendary Scribe
Reactions:
Posts: 244
Joined: Wed Dec 01, 2010 1:10 am

Re: Mechanics of Tokuno Artifact Drops

Post by Agony »

Oh wow.. thanks! :)
...Dimiir Borgu
Locked