-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PROJECT] Drop System & Updates #486
Comments
I think as apart of this effort, it would be a good idea to make a drop simulator so we don't need to spawn in a ton of items filling inventory to test things and we can visualize it in a better way to make making adjustments much easier in the future. Threw together this simple graph Basically just able to put in all the inputs and have a table of everything to view. Is a scrollable table like this possible? |
A scrollable table is easily possible, though I'm not exactly sure what this image is conveying. Would it be like, the top %'s and #'s are filled out, click the Go Button, and it'll list the drops by: As for the basic idea, this would streamline the really messy drop system we currently have a lot. The amount of files or things that do or do not happen if done in specific ways is untenable and should be absolutely changed. A few questions:
|
I was thinking it would be a number for unique as well, so it would show the number of uniques that dropped. We could forgo that and just list the actual unique item that was dropped instead. Then the normal/magic/rare columns would just be blank for unique items. But otherwise your spot on, it would just list the number of Iron Bulwarks that were dropped in the calc and then the number would indicate how many of each rarity dropped.
For the red zone, it would only be effected by the map or area they are in. Not by players, not at this time anyway. I have no plans for adding that type of manipulation through itemization or other means. For the purple zone it would combine the player that killed the mob and the map modifiers as well. Not each player that is in the zone.
So there are a few things I wanna spit out that are in my head around this.
I don't see an easy way to have map modifiers manipulate the amount of type x to drop without something like this. There are ways but the normalization seems the easiest.
What do you mean over 100%? It gets normalized before calculated so in the end it's not over 100%, it's just being manipulated by sources. I also don't think we need the entire vision completed for the initial playtest, but this is VERY important aspect in ARPGs and we gotta make sure to get it right. |
Summary
The drop and item acquisition system is THE MOST important system of any ARPG and I'm hoping to simplify yet make it expandable to the best of my ability without going to deep too quick.
Here is a rough draft of my ideas for the drop system.
Drop Type (Red Section)
The drop type is split into each of our "Categories" of items within the game. Right now that is Currency, Maps, and Gear.
As a starting point we can do something like 5% Map, 80% Gear, 15% Currency
This means that when the game decides to drop a PoT related item, it drops them with those percentages.
However these percentages can be manipulated by certain "events" or "areas" that you are in. For example Maps will could have an affix on them that is something like "50% Increased Chance of Map Drops"
These won't exclusively be manipulated by affix on maps, but there may be certain areas of maps themselves that have modifiers to the items dropped in them. Such as the EoW domain might drop more currency or something. Building in a way where it takes these areas into account will be important.
Determining Type / Tier (Green Section)
As apart of this new drop system we will need to have a weighting system to each of the gear types. This is where staticData.DropChance comes into place. Right now just about everything is set to 1f so everything drops about the same rate. However this will be adjusted so higher tier things drop less frequently, or some uniques are much more rare.
This system will have no ways of manipulating the set weighting systems at this time. I doubt we'll add anything that the player can do to sway these weights but we'll leave it possible as it is now for future implementation.
Determining Rarity (Pink Section)
Now that we have determined WHAT is going to drop, we need to choose the rarity. This is determining if the item will drop normal, magic, or rare. I think SpawnItemFromList is doing something like this from ApplyRarityModifier however it's only being applied from the command and I don't think there is any sources of "Rarity of Items" modifiers that we will want to introduce at some point. It's probably something we can revisit later when we get deeper but wanted to get this concept in writing so we have something to fall back on.
Conclusions
In reality the only portion we are needing now is the red section, which is determining what to drop. Right now it's just throw everything into a giant pool and pick something at random. We need to be a bit more precise in what is dropping otherwise as more items get added, map and currency drops become arbitrarily more rare
Reasonings
Needing to bring the drop system up to par with the mod
The text was updated successfully, but these errors were encountered: