Saya sedang mengembangkan permainan pertempuran teks sederhana dan memiliki beberapa masalah menghitung berapa banyak XP yang harus diperoleh setelah pertempuran, ada beberapa faktor yang ingin saya pertimbangkan:
1) Pemain tentu saja harus mendapatkan XP yang baik jika mereka mengalahkan seseorang dengan level yang sama
2) Pemain harus mendapatkan XP yang hebat jika mereka mengalahkan seseorang dari level yang lebih tinggi
3) Pemain harus mendapatkan XP yang buruk jika mereka mengalahkan seseorang dari level yang lebih rendah
4) Hal di atas harus skala dengan baik, yaitu jika pemain A adalah level 10 dan bertarung dengan Pemain B yang level 9 atau 11 perbedaannya tidak besar (mereka tentu saja akan mendapatkan lebih banyak XP untuk mengalahkan karakter level 11 tetapi kami tidak akan melakukannya. berharap ini menjadi besar), tetapi jika dia bertarung pada level 5 atau 15 perbedaan ini harus besar.
Hanya mengalami kesulitan dalam menghitung sesuatu yang bekerja dengan baik di semua skenario, saat ini tabel XP saya terlihat seperti di bawah ini:
Current Level XP Needed Increase from Last Level
1 30 0
2 65 35
3 106 41
4 154 48
5 210 56
...
10 672 123
Di PHP kode saya terlihat seperti di bawah ini untuk menghitung XP Needed:
$offset = 30;
$multiplier = 1.17;
$base = $prevXp * $multiplier;
$xp = $base + $offset;
Saya sudah mencoba beberapa hal yang berbeda tetapi saya belum terkesan dengan salah satu dari mereka, saya ingin bekerja dengan menghitung perbedaan di XP dan kemudian menggunakan beberapa jenis pengganda tetapi saya belum terkesan dengan hasilnya.
Setiap bantuan / masukan akan dihargai.