Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Silkroad Online > SRO Private Server > SRO PServer Questions & Answers
You last visited: Today at 00:26

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Question about the item drop calculation method

Discussion on Question about the item drop calculation method within the SRO PServer Questions & Answers forum part of the SRO Private Server category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Apr 2019
Posts: 298
Received Thanks: 80
Question Question about the item drop calculation method

I have read many articles but I don't understand if the SelectRatio of _RefDropItemGroup and the DropRatio of _RefMonster_AssignedItemRndDrop have anything to do with each other?
And how to set the correct rate for Server.cfg?

Specifically, you see I have set = 1 for SR_GameServer (picture 1)
[IMG=expandable: 1] [/IMG]

And the scale I set here is 0.0003245 for table _RefDropItemGroup (picture 2)
[IMG=expandable: 1] [/IMG]

And the same thing happens in the _RefMonster_AssignedItemRndDrop table (picture 3)
[IMG=expandable: 1] [/IMG]

And when I went into the Game to test it and just a few minutes I saw it drop (picture 4)


I have tried many formulas such as 1:1000 but it doesn't work.

For example 1:15000 = 6.666667E-05. Do you think it costs 15,000 to get 1 item? And is that ratio correct?
I tried 12 hours of fam and got over 30 different items

So what are SeleteRatio and DropRatio? Are they related to each other?

If you want to set the drop as you like, how do you do it?
Sorry my English is bad.
Thank you very much !!
srothanglong is offline  
Old 01/06/2025, 14:17   #2
 
elite*gold: 0
Join Date: Jul 2020
Posts: 234
Received Thanks: 230
I can try to give you some input, but I cannot explain JM's calculation.

_RefDropItemGroup : SeleteRatio
This should be a % value inside a give dropgroup (=D15_B). If you add only one item into the group, it will always choose the same item. Normally you need to add multiple items to your dropgroup and from the given set of items it will roll out one item using the SeleteRatio.

Example:
Item1: SeleteRatio = 0.25
Item2: SeleteRatio = 0.5
Item3: SeleteRatio = 0.125
Item4: SeleteRatio = 0.125

If roll for %drop of droupgroup on given object is true, then roll2 for SeleteRatio within the given dropgroup. With 25% prohability Item1 will be selected and dropped (DropAmount and DropAmount Max = 1).

If roll for %drop of droupgroup on given object is true, then roll2 for SeleteRatio within the given dropgroup. With 25% prohability Item1 will be selected and dropped. Additionally with 50% prohability Item2 will be choosen and dropped too (DropAmount and DropAmount Max = 2).

And so on.



Regarding DropRatio question:
This one is more complicated, because JM choose several settings to modify %drop on monsters (server setting, database setting, buffs/items, amount of drop stacks per mob type...). To get the real values, you can only run a long term test multiple times (/zoe2).

If you set a prohability of 1/15000, there is no guarantee, that you drop exactly one item within 15000 kills. The drop will vary according to a normal distribution, unless you choose to modify something. Everytime you kill a monster, the GS will roll out a dice. With 1/15000, you can roll 1 to 14999 and drop nothing. Only if you roll 15000, you will receive a drop.

I created a simulation within Excel, to test your setup.

With 1/15000 and 30k kills, you can get 4 drops with ~4% prohability.
With 1/15000 and 30k kills, you can get 2 drops with 25% prohability.
With 1/15000 and 30k kills, you can get 0 drops with 15% prohability.


With 1/1500 and 30k kills, you can get 30 drops with ~2% prohability.
With 1/1500 and 30k kills, you can get 18 drops with ~29% prohability.
With 1/1500 and 30k kills, you can get 14 drops with ~20% prohability.


With 1/1000 and 30k kills, you can get 45 drops with ~2% prohability.
With 1/1000 and 30k kills, you can get 31 drops with ~28% prohability.
With 1/1000 and 30k kills, you can get 22 drops with ~16% prohability.


With 1/1000 and 60k kills, you can get 74 drops with ~4% prohability.
With 1/1000 and 60k kills, you can get 59 drops with 25% prohability.
With 1/1000 and 60k kills, you can get 49 drops with ~12% prohability.

Maybe you should keep your current setting of DropRatio and do some more testing:
(Please turn off random drops for your monster and use a lv char = mob lv without any bonus.)

1: 10x use /zoe2 with at least 30k mobs and collect all item drops of your dropgroup
Afterwards you can calculate the mean amount of drops for your given DropRatio. You can compare the result to the DropRatio and try to match it. E.g. if the drop of items is 10 times higher, set the DropRatio to 1/10 of the value and test again.
Like that you should be able to calculate a factor f of: Item dropped = DropRatio x f

2: Continue with testing by using the same factor and change other parameters (server.cfg x10, using different char lv, type of mob and so on).

I've attached the simulator, if you want to test it. Adjust the yellow cells to whatever you need. I've put a limit of 1k sims and 10m sims * kills, but you change it in the code.
Attached Files
File Type: zip DropSim.zip (128.1 KB, 9 views)
File Type: txt macro.txt (1.9 KB, 9 views)
OKeks is offline  
Thanks
3 Users
Reply


Similar Threads Similar Threads
0x704C item type calculation - vSro
04/22/2018 - SRO PServer Guides & Releases - 2 Replies
Hello ppl, Not sure if this gonna help sm1 or not but it might be useful for you at some point. This the 0x704C item type calculation for item usage. First of all, i will write down the packet structure. Opcode: 0x704C byte slot ushort itemType
x y angle calculation [question]
11/16/2008 - General Coding - 2 Replies
Hey guys, I'd like to ask something about a calculation which I was thinking of. I got 2 points, 1 point is the point where I am and the other point is the point to which I want to move. But first I have to look towards this point ( face angle ). It is about a game, called warhammer. I heared, that there is a possibility to calculate the angle. Let's say the point is (which I was reading out CE): x1 = 27802.375;



All times are GMT +1. The time now is 00:26.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.