Levelsystem - Problem mit Errechnung der nötigen Erfahrung

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo Leute,
    ich bin derzeit dabei ein Levelsystem basierend auf Erfahrungspunkten zu erstellen.
    Ich möchte nun ,dass man pro Level immer mehr Erfahrung benötigt.


    Als kleines Beispiel:


    Level 1 -> Level 2 = 500 Erfahrung (Alte Erfahrung(0) + 500)
    Level 2 -> Level 3 = 1500 Erfahrung (Alte Erfahrung(500) + 1000)
    Level 3 -> Level 4 = 3000 Erfahrung (Alte Erfahrung(1500) + 1500)


    und nicht
    Level 1 -> Level 2 = 500 Erfahrung
    Level 2 -> Level 3 = 1000 Erfahrung
    ...


    Es soll also nicht einfach proportional steigen ,da die Erfahrung nicht resettet wird und der Spieler sonst ja bei jedem Level wieder gleich viel EXP bis zum nächsten Level bräuchte.
    Nun steh ich aber gerade auf dem Schlauch und komm nicht auf die passende Formel um das nicht für jedes einzelne Level definieren zu müssen.
    Hat jemand eine Idee wie ich das umsetzen kann?
    Wenn ja ich bin für jede Hilfe sehr dankbar :)

  • So soll es ja gerade nicht sein^^
    Aber mir ist in dem Moment wo ich es abgesendet habe eingefallen wie es funktioniert.


    Falls jemand die Formel brauch:


    (Level - 1)*500 + Level* 500


    Wie kann ich den Thread als erledigt markieren?


    /edit Ne funktioniert doch nicht so ...

  • Einfach in Klammern [THEMA CLOSED] schreiben oder einfach [Ist Geklärt] schreiben

  • Ich verstehe nicht was du suchst. :D



    stock GetLevelEXP(level)
    {
    new exp = (500*level)
    return exp;
    }


    stock GetNeededEXPForPlayer(playerid)
    {
    new needed = (GetLevelEXP(PlayerInfo[playerid][pLevel]-1)-PlayerInfo[playerid][EXP])
    return needed;
    }


    LevelEXp-MeineXP = Needed XP?

  • Wenn du willst dass deine Werte nicht linear sondern exponentiell steigen brauchst du schon ein gewisses "System"


    Man kann sagen Level 1 braucht 500 Level 2 1500 (und ab Level 3 oder höher wo dann das System greift) die exp die ich vom Level vorher gebraucht habe * 2 (das heißt ich brauchte für Level 2 1500, also brauch ich jetzt 3000) beim nächsten braucht er 6k, dann 12k, usw.


    Mit einer Formel wirst du aber ein 1k,3k,5k,12k,24.24k 2System" oder was auch immer du da umsetzen wolltest nicht hinbekommen.

  • Ich hab jetzt erstmal einfach von Level 1-100 die nötige Erfahrung definiert.
    Funktioniert auch alles so wie ich möchte.
    Die zahlen da oben waren nur Beispiele.
    Es ging mir nur darum ,dass er ja sonst immer die selbe Anzahl an Erfahrung bräuchte um wieder ein Level aufzusteigen und
    ich wollte das man z.B. von Level 3 zu 4 länger braucht als 2 zu 3.


    Hab jetzt auf jeden Fall eine Lösung gefunden auch wenn ich mit der nicht 100%ig zufrieden bin.
    Danke trotzdem für die Hilfe an alle :)