Seite 1 von 1

Wie programmiert man eine diskrete Seltenheit?

Verfasst: 02.12.2025, 13:31
von Finnian87
Hallo Team!

Ich bin gerade dabei, das Design meines Beutesystems fertigzustellen, und suche nach einer Lösung, um die subtile Seltenheit bestimmter Gegenstände zu verwalten.
Meine Idee ist es, Gegenstände zu erstellen, die auf den ersten Blick sehr gewöhnlich erscheinen (sie haben einen Standardnennwert), deren wahre Seltenheit jedoch in einem ganz bestimmten internen Attribut liegt (ihrem „Prägejahr” oder ihrer „Werkstatt”). Ich möchte, dass nur erfahrene Spieler diese limitierte Serie sofort als die begehrteste erkennen können.

Hat jemand von euch schon einmal ein bedingtes Glückssystem programmiert, bei dem eine extrem niedrige Drop-Rate für eine Variante eines gewöhnlichen Gegenstands gilt?

Re: Wie programmiert man eine diskrete Seltenheit?

Verfasst: 02.12.2025, 14:08
von xTr1m
Ich kenne mich deterministischem Zufall aus.
Ohne geneauere Details zu deinem Projekt zu kennnen, kann ich zu bedingtem Glück folgendes sagen:
Zunächst sollte man mit einer einzigen RNG Instanz arbeiten, welche man mit einem Seed initialisieren kann. Dadurch hat man schon mal Determinismus.
Wenns um Drops aus einer Loot-Table geht, würde ich erstmals ermitteln wieviele Items enthalten sind, und dann für jedes Item mit dem RNG ein Index würfeln lassen. Damit weiß man schon, welche Items aus der Loot-Table gedroppt wurden.
Jetzt kann es pro Item eine gewisse Chance c geben, dass das Item anders ist. Sobald so ein Item-Index vom RNG gewürfelt wurde, lässt man den RNG nochmal würfeln, aber diesmal soll er eine reelle Zahl p zw. 0 und 1 erstellen. Da reicht es wenn man mit einem einfachen if prüft, ob p<=c ist, und modifiziert daraufhin das Item, bevor es mit dem Würfeln der anderen Indices weiter geht.