Dismiss Notice
This Section is READ ONLY - All Posts Are Archived

Dump the crafting RNG system, its awful.

Discussion in 'Release 30 Feedback Forum' started by Oba Evesor, May 31, 2016.

Thread Status:
Not open for further replies.
  1. Noric

    Noric Avatar

    Messages:
    1,328
    Likes Received:
    1,822
    Trophy Points:
    113
    So it doesn't look like Unity shares what their implementation relies on.

    This is one of the responses i saw on the gamedev stackexchange talking about the subject:
    "
    UnityEngine.Random has a few ease of use advantages:

    • Static/globally accessible — you don't need to create an instance for each object or system that needs randomness. Most or all of your scripts can share this resource.

    • Convenience methods — you can use Random.Range(), Random.insideUnitSphere, Random.rotationUniform, Random.ColorHSV() to get nicely-distributed random values of various useful types without needing to roll your own math.
    (I have not found any confirmation about whether UnityEngine.Random provides any cross-platform consistency guarantees different from the Mono implementation of System.Random - they might or might not be the same under the hood)

    You can of course build your own class that uses System.Random (or another library, or your own PRNG) to do this, but the nice part is you don't need to — Unity's implementation is meant to give you a good baseline for random behaviour out of the box.

    That said, there are cases where you'll want to use other sources of randomness:

    • If you're using multiple threads, each thread should have its own source of pseudorandomness to avoid contention (UnityEngine.Random is only accessible on the main thread)

    • If you need a deterministic pseudorandom sequence (eg. for a seeded level generator) you'll probably want that system to have its own source of pseudorandomness that no other script can access, so that differences in order of execution don't cause it to skip numbers and break the determinism you were counting on. For more info, there's a great post on the Unity blog about seeded random numbers.

    • if you need cryptographically strong randomness for security, gambling, or generating unique IDs, you should use specialized libraries for this purpose. Neither UnityEngine.Random nor System.Random provide sufficient quality guarantees.
    "
     
    Daxxe Diggler, Spoon, Lace and 2 others like this.
  2. Quenton

    Quenton Avatar

    Messages:
    605
    Likes Received:
    979
    Trophy Points:
    105
    Gender:
    Male
    Location:
    Old Britannia
    I feel like this is the first thing we've all (or most of us have) checked before feeling the itch to make a complaint about it. Failing 6 times once is one thing, but failing 6 times every time or every second time you do it - you know something's not right.

    Especially when you have a 90-95% chance - you don't even have to fail 6 times regularly; failing just once or twice regularly seems absurd.
     
    Roycestein Kaelstrom and Noric like this.
  3. Lifedragn

    Lifedragn Avatar

    Messages:
    670
    Likes Received:
    1,165
    Trophy Points:
    93
    I think that comes down to your definition of regularly and lack of insight into what all other players are experiencing and not just the minority that are posting here. If you are failing 5 out of 10 at 90% but someone else is failing 1 out of 50, then the system is holding up properly. If you fail 5 out of 10 on five different days of the week but someone else fails 1 out of 50 on five different days, then the system is still holding up properly. Probability tends to reflect itself over very large sets, but nothing assures that it will because probability for each individual data point is not affected by past data points.

    Probability also offers no assumptions of fairness. That is one of the reasons Black Desert Online does fail-stacks. A mechanic where each failure to upgrade an item increments a bonus to your chance of success for the next item. When you do succeed, the bonus is consumed and reset to 0. Of course, that game is a lot more grindy and also encourages players to exploit such systems if they can figure out how to do so.

    If the devs claim the randomness is working properly, they've probably generated far larger data sets than players could and found the stats to fall within a margin of error. I think a streak analysis should also be done as that could be easily missed with simple tests. But I believe the devs when they claim they've reviewed it and it is working as designed.
     
    Quenton and Lace like this.
  4. Bluefire

    Bluefire Avatar

    Messages:
    558
    Likes Received:
    1,018
    Trophy Points:
    63
    My problem with the system is regular failures after level 65. That makes no sense. Should be extraordinarily rare to fail once proficient. Should fail 1 out of 1000 times once a master. 5%-10% failure rate for a master is absurd. Critical failure (loss of components) doesn't need to be a function of crafting at higher levels - failure (didn't assemble - loss of fuel only) should be rare, success should be common, critical success should be bordering rare but leaning towards common.

    If you invest time and energy into something you should get better at it. We don't need a resource and energy sink just to push people away from crafting and to ensure either extreme prices or crafters selling at a loss.
     
    Lifedragn and Snikorts like this.
  5. Lifedragn

    Lifedragn Avatar

    Messages:
    670
    Likes Received:
    1,165
    Trophy Points:
    93
    I tend to agree. My points were about the current system functioning as intended or not. But given the option to reduce failure even more than what the ui offers I would choose that route. A grandmaster isn't going to be wasting many materials, simply due to the time and effort taken to become a grandmaster.
     
    Bluefire likes this.
  6. Lace

    Lace Avatar

    Messages:
    1,567
    Likes Received:
    5,160
    Trophy Points:
    113
    Gender:
    Female
    Location:
    Florida
    I know in many games it is all about the seed and learning how to reset you seed can avoid 10 out of 10 failures (at least in my experience in other games)

    For those that go seed huh? There is no true random number generator. They all work off a 'seed value' which directs the set of semi random number generated .. if you get a bad seed and are looking for a roll of 1-5 out of 100 the predicted set of values from that rng for that seed is set, it may 'never' yield a roll of 1-5. But if you reset your seed, your rolls change. (kinda like how you would switch dice when playing D&D .. the weight is different, the hand you use to roll is different, the force you apply to the spin is different etc .. that is one simple way to explain seed sorta but not directly accurate)

    Some seeds are 'ticks' related to the user machine, ticks are part of the clock system where in one second with a clock running at 66 megahertz there are like 66 million ticks per second.

    Using the clock tick is a typical way to seed the RNG. The point at which the RNG is seeded is how you can 'change' your luck by reseeding.

    So lets say you have 92% chance to succeed and you fail 5 times, you may want to re-seed your RNG. Most developers never tell you what it is that triggers the re-seeding. In my experience it is either a relaunch of the game or a login logout or character swap.

    The failure rate at which you attempt to re-seed is somewhat perception based, but typically use either a system restart or a game relaunch in other games I have played. I usually spend many hours trying to identify the seed point lol. Which means I could be on crack and just 'think' I have found it, but eventually I find identify a pattern I employ for the duration of my playing of that game.

    Hope that helps some folks, lord knows I have given this speech in many games and folks try my systems and it works for them (once I have spent the time finding what I think is the re-seed conditions) and they seem please.

    I have not worked on it for this game because percentages are too influx right now. Hit me up in 6 months LOL.
     
  7. Lace

    Lace Avatar

    Messages:
    1,567
    Likes Received:
    5,160
    Trophy Points:
    113
    Gender:
    Female
    Location:
    Florida
    I believe this is directly show in your success rate when you are about to craft the item on the bench. It takes into consideration your level, your tools and the station quality itself.
     
    Roycestein Kaelstrom likes this.
  8. Lace

    Lace Avatar

    Messages:
    1,567
    Likes Received:
    5,160
    Trophy Points:
    113
    Gender:
    Female
    Location:
    Florida
    I had been playing around with the idea of something similar for masterwork and enchanting. A failure eats the item, a success removes 10 durability (less you take the 5 durability one)

    I would like to see more RNG for more varied gear by saying the durability loss is also proportional to your experience/success rate, like you enchant +2 int and instead of just a flat 10 point durability loss you get a weighted random amount of durability loss.

    Say enchant chance is 68% okay one gamble with a 10 durability, but wouldn't it be cool on success, that you get a second roll for the amount of durability loss on the item. 10 durability loss would be biggest pool say 90% for 10 durability points lost, only 5 durability loss would occur at a roll of 90-95, 3 would be like 96 to 99 and 1 durability loss would be for the 100 perfect roll. Or something to that effect I just made up these percentages. Your weight for these ranges would again be determined by level, tools and station etc.

    I know enchanting and masterwork are in a fledgling state and maybe this is in the works already.
     
    Last edited: Jun 8, 2016
    Roycestein Kaelstrom likes this.
  9. Noric

    Noric Avatar

    Messages:
    1,328
    Likes Received:
    1,822
    Trophy Points:
    113
    @Lace

    Depending on the pseudorandom algorithm, resetting a seed should not have any major impact. If a seed represents the starting point on a uniform random(previously defined) bitstring, then you should still have the same chance to get a random result after 5 failures or a fresh seed(there are a number of different potential algorthms that would present similarly even though vastly different).

    The issue lies more in situations in which there is a specific way to choose that seed (creating predictable results) or a situation where the external source of a seed starts to repeat itself(as previously discussed by Lifedragon).

    You could have seeds defined from a higher quality source of random bits (dev/random is a half decent one) or just rely on algorithms that provide "cryptographically secure" implementations of pseudorandom generators to ensure a higher fidelity of how "random" the number is.
     
    Last edited: Jun 8, 2016
    Roycestein Kaelstrom and Lace like this.
  10. Lace

    Lace Avatar

    Messages:
    1,567
    Likes Received:
    5,160
    Trophy Points:
    113
    Gender:
    Female
    Location:
    Florida
    I agree on this, we are getting like 2 gold scraps right now from failing to enchant/masterwork an item made of bronze or wood or whatever, I suspect this itemization will happen, but the crafting is not fully done as with most of the scraps there is no recipe to remake them into an ingot.
     
    Last edited: Jun 8, 2016
    Ancev, Roycestein Kaelstrom and Noric like this.
  11. Lace

    Lace Avatar

    Messages:
    1,567
    Likes Received:
    5,160
    Trophy Points:
    113
    Gender:
    Female
    Location:
    Florida
    I hear ya I was just trying to explain seed to folks that aren't programmers or know what the term means, as I have in the past for many.

    I believe the game would be using the same seed/rng mechanics throughout and I even did a video on the COTO meticulous showing I think it is working fine. If the game is using the same seed/rng mechanism IMHO I don't think the RNG is broken which was what the OP and others 'feel'.

    With that said, I would like to see more variety on durability loss as I documented, and heck even on failures .. like you could fail the enchanting, not lose the item then get a weighted durability loss for the attempt. My concern here would be for folks to equip poor tools and stations use cheap things and 'powerlevel' their enchanting/masterwork expertise, but that may not be a bad thing considering how steep the slope becomes after a certain point.
     
    Last edited: Jun 8, 2016
    Roycestein Kaelstrom and Noric like this.
  12. Noric

    Noric Avatar

    Messages:
    1,328
    Likes Received:
    1,822
    Trophy Points:
    113
    Honestly, I'm not concerned about people attempting to powerlevel production skills atm. So much of it is entirely reliant on just maintaining a producer xp pool that using different tools makes an insignificant impact.

    Could you link the aforementioned video?
     
    Roycestein Kaelstrom likes this.
  13. Lace

    Lace Avatar

    Messages:
    1,567
    Likes Received:
    5,160
    Trophy Points:
    113
    Gender:
    Female
    Location:
    Florida
    I am a goofball when doing videos heh be nice. (wink)

     
    Roycestein Kaelstrom likes this.
  14. Sacryde

    Sacryde Avatar

    Messages:
    3
    Likes Received:
    1
    Trophy Points:
    3
    100% chance on harvesting - and Fail. Was not the first time it happens. Looks like same random in crafting.
     
    agra likes this.
  15. Chatele

    Chatele Avatar

    Messages:
    1,525
    Likes Received:
    3,069
    Trophy Points:
    113
    Gender:
    Female
    Location:
    USA
    I think when we fail at crafting you just fail at making it, and you get all the materials back except for the fuel, that you have to rebuy ...
     
    Bluefire likes this.
  16. Alley Oop

    Alley Oop Bug Hunter Bug Moderator

    Messages:
    15,720
    Likes Received:
    19,492
    Trophy Points:
    153
    that's not true for masterworking or enchanting. you lose the item and the gold/silver ingots.
     
    Bluefire likes this.
  17. Chatele

    Chatele Avatar

    Messages:
    1,525
    Likes Received:
    3,069
    Trophy Points:
    113
    Gender:
    Female
    Location:
    USA
    When I said I think, I was saying I think how it should be, or wish it would be.... LOOSING the item and the gold/silver ingots should not be, we should only loose the fuels etc that's it. But it is not. That's what I hate about this crafting system.... I don't like it at all.
     
    Miracle Dragon and Bluefire like this.
  18. Miracle Dragon

    Miracle Dragon Legend of the Hearth

    Messages:
    2,957
    Likes Received:
    6,313
    Trophy Points:
    165
    Gender:
    Male
    Location:
    Currently: Zhongxian, Chongqing, China
    With the RNG feeling so 'punitive'.. i think it would be more fair if it were also used for durability loss. You shouldn't lose durability every time you use something.. you should just have a 'chance' of losing durability every time you use something. So now the RNG is working in your favor! (if this is already happening, I apologize. I haven't been in game in a very long time).
     
    Bluefire likes this.
  19. Noric

    Noric Avatar

    Messages:
    1,328
    Likes Received:
    1,822
    Trophy Points:
    113
    That's a rounding issue.
     
    Miracle Dragon and KuBaTRiZeS like this.
  20. Lao Tzu

    Lao Tzu Avatar

    Messages:
    76
    Likes Received:
    304
    Trophy Points:
    8
    I just wanted to report on enchanting / masterworking cotton armor. I didn't keep exact records, but here's what I remember.

    Last night, I made about 130 epic cotton chest armor, getting exceptional items on roughly 35 items (slightly higher than the 23% exceptional chance with prosperity tools). I had a similar experience to Noric making boots, where I consistently had around 20% exceptional items until near the end, when I got 6 out of 8 exceptional items (including 4 in a row).

    My Tailoring Proficiency, Tailoring Masterwork, and Alchemist Enchanting are all at level 100. With those stats, I had a 95% for the first enchant, 82% for the second, and 45% for the third. Combined together, I would have a 35% chance of a triple enchant on the Alchemy table, and another 35% chance of a triple Masterwork on the Tailoring table. Together, I should have a 12.3% chance of producing a triple enchanted, triple masterworked item, or slightly less than 1 in 8. Out of the 35 exceptional epic cloth armors, my expected value would be around 4 triple enchanted, triple masterworked items.

    Fortunately, I did not encounter the string of failures that Oba experienced. I had 1 or 2 failures out of 35 at the 95% level. Excluding the items where I got a minor enchant on the first or second attempt, I ended up with about 6 items which I attempted for the third masterwork, of which two survived. So not quite what I had hoped for, but certainly within acceptable ranges of probability.

    My main problem is with random nature of the enchants. It's extremely difficult to get the exact stats boost that you'd like. Even after enchanted 35+ items, I only ended up with one item at the +13 level and one item at the +12 level. The minor enchantments seem like a small consolation prize to not have your item destroyed. They might be useful if you want to concentrate boost in a single stat, but not if you want a more balanced boost.

    I've heard rumors that the chances of getting a particular stats boost in the enchantment / masterwork process depend on what area of the map you are in. Is this true? Or like the crafting bonuses given for more densely population PoTs, has this yet to be implemented? I've also heard that crafting chances would eventually depend on the alignment of the moons, but I haven't heard if this has been put in game yet or not.

    Just for some perspective, it took me a couple days to gather all the gold and silver ore and to process the 5000+ raw cotton for this experiment. For getting two of the best cloth armor in the game, this seems like a reasonable amount of grinding (in my opinion). I just wish we had a bit more control over the stats boost we end up with.

    - Lao Tzu
     
    Wintermute of CoF likes this.
Thread Status:
Not open for further replies.