{"id":201836,"date":"2025-11-11T08:00:00","date_gmt":"2025-11-11T07:00:00","guid":{"rendered":"https:\/\/fivemx.com\/?p=201836"},"modified":"2026-08-20T22:16:54","modified_gmt":"2026-08-20T20:16:54","slug":"az-scripts-xp-und-levelsystem-fur-qbcore","status":"publish","type":"post","link":"https:\/\/rpcrate.com\/de\/az-scripts-xp-and-level-system-for-qbcore\/","title":{"rendered":"AZ Scripts XP- und Level-System f\u00fcr FiveM"},"content":{"rendered":"<p>AZ XP System 1.0.1 enth\u00e4lt QBCore- und ESX-Codepfade, dauerhafte XP sowie kreisf\u00f6rmige oder rechteckige Anzeigen. Das Framework wird ausdr\u00fccklich \u00fcber Config.Framework gew\u00e4hlt, nicht automatisch erkannt. Das Manifest verlangt weiterhin qb-core und kommentiert es_extended aus; nur die Konfiguration zu \u00e4ndern bereitet ESX daher nicht vollst\u00e4ndig vor.<\/p>\n<h2>Framework, Manifest und Datenbank abstimmen<\/h2>\n<p>Behalte den Ordner azs-xpsystem mit fxmanifest.lua, client, server und html. Starte oxmysql und das ausgew\u00e4hlte Framework zuerst. Passe f\u00fcr ESX die Manifest-Abh\u00e4ngigkeit an Config.Framework an, bevor du ensure azs-xpsystem verwendest. player_xp wird f\u00fcr QBCore mit citizenid und f\u00fcr ESX mit identifier erstellt. Sichere vorhandene XP-Daten; CREATE TABLE IF NOT EXISTS migriert keine Tabelle des anderen Frameworks.<\/p>\n<p>Die tats\u00e4chlichen Standardwerte in config.lua sind BaseXPPerLevel=1000, XPMultiplier=1.15, MaxLevel=100 und UIStyle=rectangular. Das README-Beispiel zeigt andere Werte. F5 ist die Standardtaste f\u00fcr \/togglexp; ShowTime=4000 steuert die vor\u00fcbergehende Anzeige. Balanciere anhand der installierten Konfiguration.<\/p>\n<h2>Fortschritt serverseitig bestimmen<\/h2>\n<p>Server-Exports hei\u00dfen AddXP, AddLevel und GetPlayerXPData. Auch Client-Exports k\u00f6nnen Vergaben anfordern; au\u00dferdem ist ein unbeschr\u00e4nkter Testbefehl \/addxp enthalten. Die Netzwerk-Handler akzeptieren Client-Mengen ohne Berechtigung oder Zahlengrenzen. Entferne oder beschr\u00e4nke den Testpfad und vergib Fortschritt aus vertrauensw\u00fcrdiger Serverlogik mit gepr\u00fcften Mengen.<\/p>\n<p>AddLevel \u00e4ndert den Level und setzt current_xp zur\u00fcck, aktualisiert aber total_xp nicht. Sp\u00e4teres Laden berechnet widerspr\u00fcchliche Leveldaten anhand von total_xp neu und kann die direkte Level\u00e4nderung zur\u00fccknehmen. Halte diese Werte konsistent und teste die Vergabe mit anschlie\u00dfendem \u00d6ffnen der Anzeige und erneutem Verbinden.<\/p>\n<p>Datenbankspeicherungen sind asynchron ohne gepr\u00fcfte Abschlussmeldung; UI-Anfragen laden erneut aus der Datenbank. Teste Speicherfehler und \u00fcberlappende Vergaben, statt eine Benachrichtigung als Persistenzbeleg zu behandeln. Bei MaxLevel kann AddXP weiter current_xp ansammeln; lege das gew\u00fcnschte Grenzverhalten fest und pr\u00fcfe beide Anzeigen.<\/p>\n<p>Am 11. September 2026 anhand der Revision 9d53320f9199ba84199f78c81beaa63e23997335 gepr\u00fcft. Lua, Konfiguration, Manifest, beide SQL-Beispiele und NUI-HTML\/JavaScript wurden gelesen. Es wurden keine XP, Level\u00e4nderungen, Spieloberfl\u00e4chen oder Datenbankmigrationen ausgef\u00fchrt.<\/p>\n<p><a href=\"https:\/\/github.com\/RAzZ14\/azs-xpsystem\/tree\/9d53320f9199ba84199f78c81beaa63e23997335\">AZ XP System in der gepr\u00fcften Revision lesen<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>AZ XP System 1.0.1 f\u00fcr QBCore oder ESX konfigurieren, SQL und Manifest abstimmen sowie ungesch\u00fctzte XP-Vergabe und Levelspeicherung pr\u00fcfen.<\/p>","protected":false},"author":62604,"featured_media":201833,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2297],"tags":[2858,3001,2928,2929,2946,2945,2859,2933],"class_list":["post-201836","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-free","tag-esx","tag-fivem-script","tag-free","tag-map","tag-other","tag-ped","tag-qbcore","tag-standalone"],"_links":{"self":[{"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/posts\/201836","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/users\/62604"}],"replies":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/comments?post=201836"}],"version-history":[{"count":2,"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/posts\/201836\/revisions"}],"predecessor-version":[{"id":214339,"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/posts\/201836\/revisions\/214339"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/media\/201833"}],"wp:attachment":[{"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/media?parent=201836"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/categories?post=201836"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rpcrate.com\/de\/wp-json\/wp\/v2\/tags?post=201836"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}