Oppure

Loading
07/05/15 14:49
Thejuster
Salve ragazzi.
Da come avete potuto anticipare dai miei precedenti post sono alle prese tra server e client
per il mio progetto.

Ho un'altro dubbio riguardo ad una cosa cosa che credo molti si porgono quando arrivano a questo punto.

Come disse piero in un topic "La programmazione è come un impronta digitale. Ognuno programma a suo modo"

Voi magari non sò forse in passato avete fatto un qualcosa di simile staticamente.
del tipo chess online o qualche tipo di poker, dove il server viene interpellato solo quando server.

Ma se si parla di un gioco del tipo Action Rpg? come la mettiamo?

Il server quanto verrà stressato?

1° Domanda

Io ho usato questo metodo non sò se e sbagliato ma chiedo appunto un consiglio da voi.

Ho inserito nel ciclo Update del rendering di una scena l'invio continuo di messaggi al server
del tipo:

sock.Write("player:" + x + ":" + y);

Quindi ogni passo che il personaggio muove viene inviato al server.


2° Domanda
Come fareste voi a mostrare a tutti gli altri client connessi la posizione di ogni personaggio?

Come database uso MySQL.

Credete sia meglio eseguire continuamente query per aggiornare le posizioni sul database?
o gestire le posizioni direttamente dal server tramite strutture e liste?



mire.forumfree.it/ - Mire Engine
C# UI Designer
07/05/15 17:18
HeDo
In questa risposta trovi delle informazioni preziose

gamedev.stackexchange.com/questions/249/…
aaa
08/05/15 12:20
Thejuster
Grazie mille hedo ora mi è un po più chiaro il quadro della situazione.
La strada che stavo percorrendo dunque al 90% era corretta.

Mi saliva il dubbio perché il flusso di dati in entrata ed uscita è molto alto.
e non sapevo fin quando un server poteva reggere o non.

D'altronde, visto e considerato tutto questo macello solo per termini di prestazione
chiedo a te hedo.

Credi che avere 3 server anziché 1 sia meglio in termini di prestazioni?

nel senso

Server1: Legge account, Accetta le richieste di login ( Invia al server 2 l'account loggato )
Server2: Legge e Memorizza tramite query sul DB valori come, posizione, info, oggetti ecc. ecc.
Server3: Aggiorna costantemente le posizioni e le chat degli utenti nelle varie mappe.

Il tutto volevo farlo tramite la comunicazione di processi utilizzando il protocollo ICP ( Inter Process Communication )

Così che i server comunicano tra di loro scambiandosi informazioni, variabili e dati
in modo che ogni server svolga il suo compito senza stressare enormemente un singolo server.
che porta ovviamente lag.

( Questa è un idea )
mire.forumfree.it/ - Mire Engine
C# UI Designer