Obecnie pracuję nad bardzo małą grą MMO planowaną do obsługi około stu graczy na serwer, ale mamy problem z naszym ekonomicznym modelem.
Z różnych powodów zdecydowaliśmy się na system z ustaloną kwotą waluty; co oznacza, że istnieje tylko pewna ilość „złota”, które mogą kiedykolwiek istnieć w grze w tym samym czasie. W tej wczesnej wersji testowej (9 graczy) kwota ta wynosi 9000 sztuk złota, ale planujemy mieć około 1 miliona sztuk złota na serwer (100 graczy).
Krótki przykład działania tego systemu:
W pewnym momencie tak może wyglądać ilość złota w grze.
| Max Gold | Bank | Shopkeeper | Player A | Player B | | 100 | 90 | 0 | 5 | 5 |
Gracz A sprzedaje łupy o wartości 2 złotych. Sprzedawca ma 0 sztuk złota, więc „pożycza” 2 szt. Złota z banku (tylko NPC mogą).
- Gracz A sprzedaje 3 złote łupy graczowi B. Gracz B płaci z portfela.
Gracz A kupuje miecz za 5 sztuk złota od Sprzedawcy. Gracz A płaci ze swojego portfela. Teraz mamy:
| Max Gold | Bank | Shopkeeper | Player A | Player B | | 100 | 88 | 5 | 5 | 2 |
Powtórz powyższy krok loot-and-sell kilka razy i możesz skończyć tutaj:
| Max Gold | Bank | Shopkeeper | Player A | Player B | | 100 | 0 | 27 | 59 | 14 |
Gracz A próbuje sprzedać 30-elementowy przedmiot sklepikarzowi, ale nie może, ponieważ sprzedawca ma tylko 27 sztuk złota i nie może pożyczyć od (teraz pustego) banku. Gracz A musi obniżyć cenę sprzedaży, w zamian wymienić towary lub poczekać, aż sklepikarz zdobędzie pieniądze w inny sposób.
Ten system działa dobrze - w przeważającej części. Ostatnio jeden z naszych testerów zrobił coś, co całkowicie zepsuło nasz system; sprzedawali, handlowali i targowali się o posiadanie około 60% całkowitej kwoty waluty dostępnej w grze, a następnie odmówili ich użycia (stając się ekwiwalentem RPG Scrooge McDuck ). To spowodowało duży problem, ponieważ nagle około 5500 złota z naszej 9000 było bezużyteczne .
Oczywiście w wydaniu gry jeden gracz posiadający 60% wszystkich pieniędzy jest mało prawdopodobny, ale 60 graczy posiadających 1% wszystkich pieniędzy może wywołać ten sam efekt. Zastanawialiśmy się nad usunięciem starych postaci i zwróceniem ich pieniędzy do „banku”, ale zdecydowaliśmy się tego nie robić, ponieważ jeśli gracz wróci i jego postać zostanie usunięta, wyobrażam sobie, że byłby bardzo smutny (szczególnie gdyby był super bogaty!).
Tak więc do samego pytania; jak możemy tego uniknąć i jak ograniczyć szkody spowodowane przez to?