RunUO Community

This is a sample guest message. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

MutateEntry - F my life.

Alcsaar

Sorceror
I've been banging my head against this issue for a couple of hours now. By default, a player has to have minimum 20.0 fishing to fish up SoS loot. This was verified through testing.

I want to change it so that players can fish up sos loot with 0 skill.

And then I facepalmed when I saw the fucked up system fishing uses to determine what you fish up.

Code:
new MutateEntry(  0.0, 200.0,  -200.0, false, new Type[1]{ null } )

I am assuming this is the line of code used to determine if you fish up SoS loot.

If its NOT, then I've been wasting my time for hours.

I searched and found a thread regarding the mutate entry tables, and they provide you with some information regarding the formula

http://www.runuo.com/community/threads/need-help-understanding-mutateentry.93073/

Here is the formula:

Code:
double chance = (skillValue - entry.m_MinSkill) / (entry.m_MaxSkill - entry.m_MinSkill);

Now I have tried altering the numbers in the mutate entry every which way, but nothing has seemed to effect fishing up SoS loot. I've punched so many numbers into this equation trying to figure it out that I feel like school has started back up already.

And then I realized that the guy who's post I had been reading messed up some of his math.

He says that double chance = (100 - 80) / (200 - 80);

equals .1 or 10% chance. But when I tested it, it came out to .166~ or 16.6% chance. So now I'm doubting everything I've been reading from him.

So please, can some one just help me out here and tell me what needs to be done to lower the minimum skill required to fish up the loot from an SoS?
 

Alcsaar

Sorceror
Edit* Turns out in order to fish up sos loot you have to first SUCCESFULLY pass a fishing check. After some extensive testing it took me about 50 casts to fish 3 times succesfully with 10.0 skill in fishing. This causes a bigger problem because it means it does a successful check before it does a sos loot check. Means I would have to MAJORLY BOOST succesfull fishing chances for people with 0 fishing skill in order to get sos loot.

ZZZ
 

_Epila_

Sorceror
You may be searching for this one, don't you ?
new MutateEntry( 100.0, 80.0, 4080.0, true, typeof( MessageInABottle ) )
MutateEntry( double reqSkill, double minSkill, double maxSkill, bool deepWater, params Type[] types )

I never got this...reqskill,minskill,maxskill...just min/max should dictate when the player is able to get it or not.
It is the same as saying "you can get a MIB when you reach 80 fishing and stop gaining skill when you reach 4080, but you need 100 to get it"
 

Alcsaar

Sorceror
What?

I don't think the line you linked determines fishing up the SoS's loot, that just determines the chance to fish up an SoS. Am i right?
 

_Epila_

Sorceror
It does both. RunUO harvesting system does use a generic method to determine what will be harvested
I've never read the whole harvesting system but I think it work this way:
Once the fishing is defined, it also does define the mutating entries; when the player trigger the fishing harvesting system, it will pick at random a fishing entry and will also pick a random mutating entry which have the chances and what will be fished if there is success

new MutateEntry( 100.0, 80.0, 4080.0, true, typeof( MessageInABottle ) )

it says: You need at least 100 fishing skill to be allowed to fish a MIB. Chances will be calculated using a minimum skill (80) and maximum skill (4080) so if you have 105 fishing your chances will be 0.00625 or 0.625% to catch a MIB
The entry defines: The minimum skill to be able to fish a MIB, the chances (min/max skill) and what will be fished up if success (MessageInABottle)

If you want to your players be able to fish a MIB at 0 skill, just overwrite the required skill and the chances

new MutateEntry( 0.0, 0.0, 4080.0, true, typeof( MessageInABottle ) )
//This is the required skill necessary to fish the MIB from 0 to SkillMaxValue(100?). If the skill is equal or higher than it, the player will be able to fish it
//If you leave 0.0, your players will have a ZERO chance to fish up a MIB; they will need at least 0.1 to fish it (if this value is higher than the blue one, the required skill will be somewhat "overriden"
//To allow (and increase the chances at 0 skill) just set it as a negative number; the lower number the higher will be the chance at 0 skill
//The maximum skill. at this point your chances will be always >1 or 100% and it become too easy to gain skill, so no skill gain past this value
//true = will be found only in deep water
//typeof( MessageInABottle ) = the SoS bottle item class
 

Alcsaar

Sorceror
It does both. RunUO harvesting system does use a generic method to determine what will be harvested
I've never read the whole harvesting system but I think it work this way:
Once the fishing is defined, it also does define the mutating entries; when the player trigger the fishing harvesting system, it will pick at random a fishing entry and will also pick a random mutating entry which have the chances and what will be fished if there is success

new MutateEntry( 100.0, 80.0, 4080.0, true, typeof( MessageInABottle ) )

it says: You need at least 100 fishing skill to be allowed to fish a MIB. Chances will be calculated using a minimum skill (80) and maximum skill (4080) so if you have 105 fishing your chances will be 0.00625 or 0.625% to catch a MIB
The entry defines: The minimum skill to be able to fish a MIB, the chances (min/max skill) and what will be fished up if success (MessageInABottle)

If you want to your players be able to fish a MIB at 0 skill, just overwrite the required skill and the chances

new MutateEntry( 0.0, 0.0, 4080.0, true, typeof( MessageInABottle ) )
//This is the required skill necessary to fish the MIB from 0 to SkillMaxValue(100?). If the skill is equal or higher than it, the player will be able to fish it
//If you leave 0.0, your players will have a ZERO chance to fish up a MIB; they will need at least 0.1 to fish it (if this value is higher than the blue one, the required skill will be somewhat "overriden"
//To allow (and increase the chances at 0 skill) just set it as a negative number; the lower number the higher will be the chance at 0 skill
//The maximum skill. at this point your chances will be always >1 or 100% and it become too easy to gain skill, so no skill gain past this value
//true = will be found only in deep water
//typeof( MessageInABottle ) = the SoS bottle item class

Thank you mate.

However you guys are misunderstanding. I don't want a person with 0 fishing to get a MIB. I want a person with 0 fishing to be able to fish up the LOOT from a message in a bottle in their backpack.

HOWEVER after some testing we discovered that a player must first succesfully fish before they can get a chance to fish up the SoS loot. And a player with 0 skill had a VERY low chance to succesfully fish. We adjusted that and now a player with 0 fishing has ~50% chance to succesfully fish, so its very possible for them to fish up sos loot in a reasonable amount of time.
 

_Epila_

Sorceror
Just change MessageInABottle to whatever you want
MIBs turns into a map that turns into a chest when digged in the right spot

You might need to create a custom container since (AFAIK) the loot is variable dependent
 
Top