[英]Looking for a suitable data structure for manipulating player stats in a game
我打算將玩家統計信息存儲在游戲的數據庫中,並且需要找到合適的數據結構以在代碼中對其進行測試。 該結構需要在php中正常工作,但我對出於學習目的的任何想法都感興趣。
在偽代碼的第一個迭代中,我正在想象用於數據結構的多維數組,但認為它們不夠好。 還有哪些其他結構可用?隨着找到每個統計信息所需的統計信息和鍵的數量越來越大,程序如何有效地訪問它們?
偽代碼:所有內容的比例均為1到10
$player_base_skill_level
{
[driving] = 4
[running] = 6
}
$handicaps
{
[driving][monster_trucks] = -5
[running][long_distance] = -3
}
//User wants to drive a monster truck
$action[base_action] = 'driving'
$action[sub1_action] = 'monster_trucks'
function chance_of_success($action)
{
$degree_of_difficulty = 8;
$player_actual_skill_level = $player_base_skill_level[$base_action] + $handicaps[$base_action][$sub1_action];
if($player_actual_skill_level > $degree_of_difficulty = 8)
return 'success';
else
return 'failure';
}
隨着事情變得越來越復雜,陣列鍵將失去控制。 例如:[driving] [monster_trucks] [large_wheels]或[driving] [monster_trucks] [small_wheels],因此必須有更好的數據結構方法。
謝謝
可能值得一件事的是生成玩家統計信息對象。 該對象可以是“統計對象”的集合。 障礙,技巧等。如果您采用這種方式,則可以封裝所有工作。 例如,每個對象可以具有自己的機會方法,您可以調用該方法而不必擔心該對象的細節。
我不確定您使用的是哪個版本的php,但有關類/對象的手冊在這里
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.