Come codificare un'economia virtuale unilaterale

2

Sto tentando di creare un gioco online con una mini-economia. La sfida è che l'unica persona che vende qualsiasi cosa sarà il sito stesso, e quindi la curva di domanda e offerta non si applica (in quanto non costa nulla al sito Web per produrre gli articoli venduti).

I prodotti venduti avranno diversi fattori che contribuiscono al suo valore. Ognuno di questi fattori può essere rappresentato da un numero, ma è difficile sapere se il prodotto X è migliore del prodotto Y se X ha un migliore A e Y ha un B migliore. Il valore monetario di ciascun fattore (e quindi, ogni prodotto) è difficile da calcolare per me, motivo per cui vorrei che un'economia lo facesse per me.

Alcuni prodotti sono prodotti di fascia alta e dovrebbero essere inaccessibili ai giocatori che non hanno i soldi.

Ci saranno diversi tipi di prodotti sul mercato, ciascuno con scopi completamente diversi nel gioco.

Suppongo che ci sarà un numero maggiore di giocatori di livello inferiore.

Ho tre idee su come svilupparlo:

  1. Genera un prezzo iniziale per ciascun prodotto. Ogni volta che una persona compra un prodotto A , il prezzo di A sale di un importo fisso, X , e il prezzo di ogni altro prodotto scende di X/(# of products) .
  2. Genera un prezzo iniziale per ciascun prodotto. Ogni volta che una persona acquista un prodotto A , il prezzo aumenta di X . Ogni minuto, il prezzo di A scende di Y .
  3. Produce ogni prodotto a una velocità fissa, con quantità inferiori di prodotti di fascia alta. Al momento della produzione, aggiungi il prodotto a un'asta, in cui ogni giocatore può fare un'offerta per l'importo che pagherà. L'offerta iniziale verrà generata.

Credo che il metodo n. 1 e n. 2 sopravvaluti i prodotti di fascia bassa e sottovaluti i prodotti di fascia alta, quindi # 3 è il mio preferito. # 3 ha anche solo 1 valore da generare per me, mentre # 1 e # 2 hanno multipli. Tuttavia, il # 3 potrebbe avere problemi se l'offerta iniziale è troppo alta per i prodotti o produce prodotti a un tasso inferiore a quello che dovrebbe, causando una penuria.

La vendita all'asta dei prodotti è il modo migliore per determinare il prezzo del prodotto? C'è un modo migliore per farlo?

    
posta Nathan Merrill 20.12.2014 - 11:34
fonte

3 risposte

3

Le economie virtuali possono essere molto difficili da ottenere. Fortunatamente, non avendo giocatori che vendono oggetti che hanno messo a punto / saccheggiati, hai semplificato il problema in qualche modo: puoi controllare l'offerta, che ti permetterà di prevenire la massiccia deflazione dei valori degli articoli che possono verificarsi quando sono prodotti in volumi più elevati di quelli che sono stati consumati.

Un paio di altri problemi a cui prestare attenzione:

  1. I giocatori possono trasferire oggetti tra loro? In tal caso, ciò ridurrà sostanzialmente la domanda di articoli di basso livello, poiché i giocatori scambiano gli oggetti di cui non hanno più bisogno.

  2. (supponendo che tu stia parlando della vendita di oggetti per la valuta del gioco, non di denaro reale) cosa impedisce ai giocatori di alto livello di accumulare enormi quantità di denaro, il che potrebbe causare un'inflazione galoppante?

Supponendo che tu abbia buone risposte a queste (decadimento degli oggetti, in cui la qualità degli oggetti è ridotta con l'uso, è una possibile risposta a entrambi i problemi, ma a molti giocatori non piace), le aste sono una buona scommessa. Puoi generare le offerte iniziali come percentuale dei prezzi di vendita recenti per articoli simili, che dovrebbero risolvere il problema. E poi tieni d'occhio i prodotti che spesso non vendono o che attirano sempre un sacco di offerte, in quanto potrebbero essere avvertiti che hai sbagliato il tasso di rifornimento.

Ecco alcuni articoli obbligatori sulle economie di gioco online:

link link link

    
risposta data 20.12.2014 - 18:58
fonte
2

Senza sapere molto sul gioco previsto; Assegnerei a ciascun attributo un fattore di ponderazione tale che il prezzo sia la somma di ciascun "attributo * fattore di ponderazione".

Ad esempio, diciamo (per le armi) si hanno i 4 attributi di durata, danno di sezione, danno di bash e velocità. Potresti decidere di assegnare pesi come questo:

  • 3 monete per punto di durata
  • 10 monete per danno al punto di fetta
  • 8 monete per punto di danno di bash
  • 5 monete per punto di velocità

Ora immagina che ci sia una spada con 120 durata che infligge 20 danni da fetta per colpo, e può colpire 1 volta al secondo. Il suo prezzo sarebbe 120 * 3 + 20 * 10 + 5 * 1 = 565 monete. Il prezzo di una mazza con 160 durata e 19 danni di base che possono colpire 0,8 volte al secondo sarebbe 3 * 160 + 19 * 8 + 5 * 0,8 = 636 monete.

Il bello di un sistema come questo è che puoi mettere a punto i pesi (ed effettuare interi gruppi di oggetti contemporaneamente); e che è facile generare dinamicamente elementi casuali che hanno un prezzo appropriato.

Nota: una delle cose che non mi piace di molti giochi è che c'è un set specifico di attrezzature per ottenere il miglior risultato; e puoi scoprire tutte le statistiche per tutti i pezzi di equipaggiamento su un sito web. Per esempio. un tipico giocatore "min / max" potrebbe decidi la loro attrezzatura (dalla lista degli oggetti sul sito web di un fan) poi macina una ricerca o un dungeon specifici fino a quando non ottengono quel pezzo di equipaggiamento. L'equipaggiamento generato casualmente / dinamicamente risolve quello (costringe i giocatori a giocare continuamente sperando che ottengano una goccia fortunata).

    
risposta data 20.12.2014 - 18:27
fonte
1

La mancanza non è un problema. L'economia funziona esattamente perché c'è carenza. Senza penuria, non puoi avere un'economia. Se c'è carenza di un oggetto molto desiderato perché il suo tasso di produzione è troppo basso, la gente farà un'offerta, aumentando il prezzo, rendendo l'elemento altamente desiderabile inaccessibile ai giocatori meno abbienti. A quel punto, puoi aumentare o ridurre la velocità di produzione per aumentare i tuoi profitti / entrate; a un certo punto, il prezzo diminuirà al punto che l'aumento del tasso di produzione non aumenterà ulteriormente i profitti / le entrate. Congratulazioni, hai raggiunto l'equilibrio del mercato. Questo è il prezzo giusto che le persone sono disposte a pagare per quell'oggetto. Tieni presente che, poiché non hai effettivamente costi di produzione, il profitto è lo stesso delle entrate.

Facoltativamente, puoi modellare il costo di produzione per modellare il mercato nel modo desiderato. I tuoi negozi possono avere una capacità produttiva totale condivisa tra tutti gli articoli in modo che l'aumento della velocità di produzione di un articolo riduca il tasso di produzione di tutti gli altri articoli. Un articolo di livello superiore dovrebbe avere un costo di produzione più elevato e il costo di produzione di un singolo tipo di oggetto dovrebbe aumentare con l'aumentare della velocità di produzione di quel tipo di oggetto. Se le persone continuano a puntare su un prezzo di articoli altamente desiderabile, ciò aumenterebbe il proprio tasso di produzione fino al punto in cui l'aumento del tasso di produzione di quell'articolo non riduce ulteriormente il "profitto" totale del negozio. L'obiettivo dell'algoritmo che controlla la velocità di produzione dovrebbe essere quello di massimizzare il profitto data una certa capacità di produzione.

Questi sarebbero i tuoi controlli sul mercato:

  1. Capacità di produzione totale (controlla il prezzo globale dell'articolo)
  2. Moltiplicatori di produzione di ogni articolo (controlla il prezzo di quel tipo di oggetto)

Le formule di capacità di mercato sarebbero qualcosa di simile a:

Constraint: 
SUM[(Production Rate of I * Production Multiplier of I) for I in (All Items)] <= Total capacity
Sales Rate of I < Production Rate of I

E tu devi risolvere:

Goal: Maximize(Sum[(Sales Rate of I * Selling Price of I) for I in (All Items)] by varying Production Rate

Dato che sempre più persone puntano su un oggetto altamente desiderabile, il prezzo di quell'oggetto aumenterà, rendendolo inaccessibile per la maggior parte delle persone e la maggior parte si accontenterebbe degli articoli più convenienti. I negozi, nella sua ricerca di massimizzare il profitto, faranno più degli articoli convenienti per soddisfare le loro richieste.

Impostando l'obiettivo dei negozi come massimizzare il profitto, il mercato agisce anche come un afflusso di denaro dinamico. Se ci sono molti giocatori ricchi, il prezzo degli articoli più desiderati sarebbe guidato in modo molto più lungo, in effetti le offerte aumentano il tasso di caduta del denaro e l'inflazione autoregolante.

    
risposta data 21.12.2014 - 06:47
fonte

Leggi altre domande sui tag