[GDRCD 5.5] Nuova release - Changelog e proposte
30/05/2020 08:24:05 e modificato da staff shadowland il 30/05/2020 08:27:56
Un lavorone! complimenti :D
Un grosso problema che ho riscontrato in GDRCD è nella cancellazione degli account, una volta che questo viene eliminato, se un utente si riscrive con un pg con il medesimo nome di uno creato in passato, ripesca tutti gli oggetti e credo anche il denaro, appartenuto a quel personaggio.
Altro problema si trova nella gestione degli oggetti a consumo in chat, non ricordo in quale versione, l'oggetto spariva al primo utilizzo anche se aveva più cariche. Poi c'è stato qui sul forum il rilascio di una soluzione che correggeva parzialmente questa cosa, tuttavia l'oggetto veniva sì rimosso correttamente ma restava nell'inventario e scalava di numero fino al valore negativo, la soluzione era gettar via l'oggetto manualmente. Se non ricordo male in tal senso c'era proprio un problema a livello di aggiornamento chat ma non vorrei dire una cavolata che non ci metto mano da un bel po'.
Implementazioni possibili
Queste sono solo idee, magari sono complesse da realizzare per cui prendile con le pinze XD
- Se si potesse implementare un sistema per quelle land che usano il lancio incantesimi in chat, sarebbe un gran passo avanti, roba tipo il reset di certi parametri ogni tot tempo o roba del genere.
- Ho visto che molte land usano anche il sistema di riposo, consumo risorse ogni tot tempo e roba del genere, forse a qualcuno potrebbe tornare utile.
- Per le Land che come la mia si basano sui livelli del pg o comunque sul raggiungimento di questi tramite lvl up, sarebbe pratico implementare qualcosa dal genere evitando di dover risolvere tutto manualmente per ogni singolo utente. O almeno un piccolo avviso che ti dice di aver superato il livello.
- Limite oggetti indossabili di un certo tipo, a suo tempo ho provato ad implementare una cosa del genere ed ho chiesto anche qui nel forum ma non ne sono mai venuta a capo purtroppo.
- Oggetti che possono essere equipaggiati o meno in base a determinati parametri. Ad esempio se ho forza 10 non posso indossare qualcosa che richiede forza 15
Per il momento non mi vengono in mente altri errori da correggere o possibili implementazioni da fare, comunque grazie mille per il tuo impegno e disponibilità =)
30/05/2020 08:51:12
Credo che, a livello strutturale e di funzionalità, la versione liscia di GDRCD ( a prescindere dalla versione ) debba essere quanto più semplice e generica possibile, in modo da dare facilmente spazio a modifiche e moduli importati dalla community.
Molte delle idee che sto leggendo sono effettivamente molto interessanti, ma le vedo più adatte ad essere pacchetti addon che vere e proprie "opzioni" presenti nella versione standard.
Forse il consiglio che mi sento di dare è quello di strutturare i sorgenti e i vari moduli in modo da rendere quanto più facile possibile la realizzazione di pacchetti, anche in caso di giochi molto modificati.
30/05/2020 10:35:01
staff shadowland ha scritto:
Un grosso problema che ho riscontrato in GDRCD è nella cancellazione degli account, una volta che questo viene eliminato, se un utente si riscrive con un pg con il medesimo nome di uno creato in passato, ripesca tutti gli oggetti e credo anche il denaro, appartenuto a quel personaggio.
Questo ha tutta l'aria di essere un problema strutturale del database... forse converrebbe introdurre un ID numerico nella tabella dei personaggi e usare quello come chiave primaria (poi è ovvio che non farai iscrivere Tizio se c'è già un PG che si chiama Tizio, ma almeno se si iscrive un nuovo Tizio avrà un ID numerico diverso dal Tizio vecchio che è stato cancellato l'anno prima).
A proposito di gestione degli account, butto lì un'idea palesemente rubata a IGI che potrebbe essere interessante da includere nel pacchetto base: separare l'account del giocatore dall'account del PG. Quando mi iscrivo, mi iscrivo solo come giocatore (email e password e basta), e posso avere un unico account, ma a quell'account possono essere associati un qualsiasi numero di PG (a seconda se la land concede doppi PG o no). In questo modo si può distinguere facilmente tra cose associate al giocatore (tipo una carica di master) e cose associate al personaggio (tipo l'appartenenza a una gilda/fazione/quello-che-è).
Non ho idea di quanta roba andrebbe riscritta per gestire i profili in questo modo, però.
30/05/2020 10:43:37
quello è un problema di alcune versioni del gdrcd che hanno un bug nelle query della pulizia personaggi
https://github.com/GDRCD/GDRCD/issues/115 ↗
Ho segnalato e indicato la correzione da novembre 2016
30/05/2020 11:39:19
dyrr ha scritto: quello è un problema di alcune versioni del gdrcd che hanno un bug nelle query della pulizia personaggi
https://github.com/GDRCD/GDRCD/issues/115 ↗
Ho segnalato e indicato la correzione da novembre 2016
Personalmente effettuo la cancellazione direttamente da DB non da gestione manutenzione, gli darò uno sguardo =)
30/05/2020 11:56:37
Se li cancelli a mano e ti succede quello che hai detto, il motivo può essere solo che cancellandolki a mano cancelli solo la tabella principale del pg e non quelle secondarie che hanno come chiave di riferimento il nome del pg.
Procedura corretta nel gdrcd per eliminare un accont è prima oscurarlo con cancella acocunt, che lo rende solo invisibile e poi eliminare tutti gli account cancellati da gestione manutenzione.
30/05/2020 13:09:55
breaker ha scritto:
Le mie conoscenze non mi permettono di farlo in quanto tra tutti i titoli da citati conosco solo D&D3.5 quindi penso sia meglio sperare che qualche land dove sono stati implementati gli altri sistemi abbiano la volontà di condividere la loro soluzione.
Sì, scusa, forse ci siamo spiegati male. Non volevamo accollarti questo lavoro ingrato tutto da solo, volevamo piuttosto proporci per una collaborazione insieme ai gestori che utilizzano questi sistemi, come appunto quod. 😉
Ci rendiamo comunque conto che forse è un lavoro che esula dalla logica di una nuova release di "aggiornamento". In caso, ne riparleremo in futuro con chi è interessato! 😃
30/05/2020 14:16:41
Pacchetti troppo specifici come lancio incantesimi, level up etc direi che in un open-source non dovrebbero starci.
Basta contattare un programmatore e si risolve.
Passo alle mie proposte.
1 - Chiave primaria ID sui personaggi anziché sul nome
2 - Controllo dei doppi utenti vero e proprio -ho visto da qualche parte una risoluzione ma non ricordo chiaramente dove-
3 - Chat ajax
4 - Un lavoro di design, ma è ora di togliere tutte quelle tabelle e passare ai layout fluidi, display grid etc.
5 - correggere il bug di sicurezza che consente agli admin (moderator) l'utilizzo delle pagine riservate ai gestori (superuser). Gestione permessi, mappe, luoghi etc ha difatti come condizione iniziale un dannato
if ($_SESSION['permessi']<MODERATOR)
che in realtà dovrebbe essereif($_SESSION['permessi']<=MODERATOR)
30/05/2020 18:29:01
O wow, che bella notizia.
Ho un paio di richieste:
- chat off
- possibilità di bloccare i nuovi arrivati in una chat accoglienza
- possibilità di implementare mostrine (abbigliamento anche a seconda del grado) x le chat
Possibilità di renderle il tutto un pochino più mobile friendly
Di php non ne so molto quindi non so come aiutarvi ad implementare quindi sono richieste che potrebbero essere utili a molti.
31/05/2020 00:38:41
kheperet ha scritto:Se non ricordo male il forum vecchia versione ordinava i messaggi per data post padre e non in base alle nuove risposte: hai implementato anche quello?
E' una cosa che sto per fare nel gioco su cui lavoro, quindi se l'hai già fatto aspetto di vedere come lo hai fatto tu :)
Implementato, ho creato un nuovo campo "data_ultimo_messaggio" nella tabella messaggioaraldo, questo valore viene aggiornato ad ogni risposta e viene preso come riferimento quando si carica l'elenco dei thread.
jan90 ha scritto:1. La possibilità di avere i messaggi raggruppati per mittente (molti nel forum hanno fatto richieste di aiuto in merito nel tempo, senza mai ricevere risposta);
3.La possibilità di usare Font Awesome o simili (ci ho provato con tanto ardore ma su Windows/Chrome svaniscono ad ogni refresh);
5 (?) Un'altra sottigliezza che ho colto negli ultimi tempi, sia da player che da gestori, è la necessità di un'interfaccia di chat più pulita e più funzionale, quelle pagine di codice però non sono troppo semplici da maneggiare. Sarebbe possibile mettere i dadi in un popup o una modale di default?
1. Ho controllato il codice e farlo vorrebbe dire stravolgere il sistema. Penso sia piu' sensato scrivere un nuovo sistema di messaggistica tipo whatsapp piuttosto che modificare quello attuale. E poi lasciar scegliere al gestore quale usare.
3. Ci ho ragionato su, ma ho pensato che in chat siano poco pertinenti quindi sarebbe da implementare nei privati e nel forum?
5. Sono richieste molto generiche che lasciano molto spazio all'interpretazione. Cosa intendi con pulita?
dyrr ha scritto:Credo che basterebbe come partenza, fare in modo che il ref_header sia un po' meno un macello (si lo so che non è colpa tua e che era così in origine) e che sia strutturato meglio per quanto riguarda specie la part ein inserimento
Penso di lavorarci su per renderlo piu' leggibile.
staff shadowland ha scritto:Un grosso problema che ho riscontrato in GDRCD è nella cancellazione degli account, una volta che questo viene eliminato, se un utente si riscrive con un pg con il medesimo nome di uno creato in passato, ripesca tutti gli oggetti e credo anche il denaro, appartenuto a quel personaggio.
Altro problema si trova nella gestione degli oggetti a consumo in chat, non ricordo in quale versione, l'oggetto spariva al primo utilizzo anche se aveva più cariche. Poi c'è stato qui sul forum il rilascio di una soluzione che correggeva parzialmente questa cosa, tuttavia l'oggetto veniva sì rimosso correttamente ma restava nell'inventario e scalava di numero fino al valore negativo, la soluzione era gettar via l'oggetto manualmente. Se non ricordo male in tal senso c'era proprio un problema a livello di aggiornamento chat ma non vorrei dire una cavolata che non ci metto mano da un bel po'.
Implementazioni possibili
Queste sono solo idee, magari sono complesse da realizzare per cui prendile con le pinze XD
- Se si potesse implementare un sistema per quelle land che usano il lancio incantesimi in chat, sarebbe un gran passo avanti, roba tipo il reset di certi parametri ogni tot tempo o roba del genere.
- Ho visto che molte land usano anche il sistema di riposo, consumo risorse ogni tot tempo e roba del genere, forse a qualcuno potrebbe tornare utile.
- Per le Land che come la mia si basano sui livelli del pg o comunque sul raggiungimento di questi tramite lvl up, sarebbe pratico implementare qualcosa dal genere evitando di dover risolvere tutto manualmente per ogni singolo utente. O almeno un piccolo avviso che ti dice di aver superato il livello.
- Limite oggetti indossabili di un certo tipo, a suo tempo ho provato ad implementare una cosa del genere ed ho chiesto anche qui nel forum ma non ne sono mai venuta a capo purtroppo.
- Oggetti che possono essere equipaggiati o meno in base a determinati parametri. Ad esempio se ho forza 10 non posso indossare qualcosa che richiede forza 15
Per come e' strutturato GDRCD devi fare la manutenzione pg cancelli prima che si iscriva un nuovo giocatore questo perché la richiesta dalla pagina utente e' tipo un "cestino" quindi la nasconde solamente. Nel caso volessi risolvere la cosa potresti prendere le query di gestione_manutenzione e farle eseguire quando uno fa richiesta di cancellazione.
Lanciare incantesimi e' troppo generico, una land potrebbe aver bisogno di incantesimi come fossero oggetti, un'altra incantesimi livellabili, un'altra che si sbloccano ad albero, un'altra con l'esperienza, una assegnata dallo staff, una legata ad una caratteristica, un'altra che li vorrebbe usare come tecniche ninja e quindi farle funzionare non si sa come, ma funzionano. Insomma sono cose che secondo me vanno fatte fuori dal codice comune a tutte le land.
Per l'avanzamento di livello dipende da come assegni l'esperienza, non e' un grosso lavoro quindi se vuoi mi contatti in privato e te lo faccio.
quod ha scritto:Questo ha tutta l'aria di essere un problema strutturale del database... forse converrebbe introdurre un ID numerico nella tabella dei personaggi e usare quello come chiave primaria (poi è ovvio che non farai iscrivere Tizio se c'è già un PG che si chiama Tizio, ma almeno se si iscrive un nuovo Tizio avrà un ID numerico diverso dal Tizio vecchio che è stato cancellato l'anno prima).
A proposito di gestione degli account, butto lì un'idea palesemente rubata a IGI che potrebbe essere interessante da includere nel pacchetto base: separare l'account del giocatore dall'account del PG. Quando mi iscrivo, mi iscrivo solo come giocatore (email e password e basta), e posso avere un unico account, ma a quell'account possono essere associati un qualsiasi numero di PG (a seconda se la land concede doppi PG o no). In questo modo si può distinguere facilmente tra cose associate al giocatore (tipo una carica di master) e cose associate al personaggio (tipo l'appartenenza a una gilda/fazione/quello-che-è).
Non ho idea di quanta roba andrebbe riscritta per gestire i profili in questo modo, però.
Mettere un campo ID e metterlo come PK cambia la struttura del codice che al momento si basa tutto su $_SESSION['login']. Sicuramente diventa piu' solido, ma e' un lavoro che non vale la pena secondo me considerando che c'è chi lavora già ad una versione 7. Quindi il mio intento e' solo quello di correggere i problemi e migliorare il migliorabile con modifiche che possono fare la maggior parte dei gestori.
Per quanto riguarda la distinzione account-personaggio ha vantaggi e svantaggi, considera alcune land dove i gestori vorrebbero poter entrare con un pg normale e non avere il privilegio di master? Dovrebbero crearsi un nuovo account?
Dalla versione 5.5 gli unici dati che vengono salvati sul DB sono email ed IP, penso di aprire a breve un sondaggio per capire a chi realmente interessano questi dati altrimenti si criptano ed ai fini del GDPR non si tiene piu' nessun dato sensibile.
[bslicendice ha scritto:][/b]Sì, scusa, forse ci siamo spiegati male. Non volevamo accollarti questo lavoro ingrato tutto da solo, volevamo piuttosto proporci per una collaborazione insieme ai gestori che utilizzano questi sistemi, come appunto quod. 😉
Ci rendiamo comunque conto che forse è un lavoro che esula dalla logica di una nuova release di "aggiornamento". In caso, ne riparleremo in futuro con chi è interessato! 😃
Scrivimi in privato e vediamo come organizzare la cosa, chiunque fosse interessato a contribuire mi scriva che creiamo un team sulla cosa.
playergdr ha scritto:Passo alle mie proposte.
1 - Chiave primaria ID sui personaggi anziché sul nome
2 - Controllo dei doppi utenti vero e proprio -ho visto da qualche parte una risoluzione ma non ricordo chiaramente dove-
3 - Chat ajax
4 - Un lavoro di design, ma è ora di togliere tutte quelle tabelle e passare ai layout fluidi, display grid etc.
5 - correggere il bug di sicurezza che consente agli admin (moderator) l'utilizzo delle pagine riservate ai gestori (superuser). Gestione permessi, mappe, luoghi etc ha difatti come condizione iniziale un dannato
1. Già risposto.
2. Se riesci a linkare qualcosa ci do un occhio.
3. Se dovessi riscrivere la chat la farei con qualche tecnologia real-time, farla in ajax vuol dire semplicemente scrivere una cosa che e' già vecchia. Ormai si fa tutto in tempo reale e senza refresh. Quindi la prossima volta che sviluppo una land la faro' in questo modo
4. Design basterebbe che 1-2-3-4-5 land che usano GDRCD rendano disponibile il loro codice, tolgono le immagini della loro land e ci piazzano immagini generiche e vedresti almeno 5-6 temi da cui partire. Non ti sei mai chiesto perché da quando esiste GDRCD esiste la variabile THEMES ma nessuno ha mai condiviso un tema e ci ritroviamo ancora con BASIC ed ADVANCED...
5. Non so se quello sia un bug, penso che il creatore di quelle pagine avesse pensato che un admin se viene nominato admin e' perché può fare tutto tranne cancellare il gestore. Almeno io la vedo cosi' devi delegare e circondarti di persone fidate altrimenti non nominarle admin se poi non possono prendersi le responsabilita'
animanera13 ha scritto:O wow, che bella notizia.
Ho un paio di richieste:
- chat off
- possibilità di bloccare i nuovi arrivati in una chat accoglienza
- possibilità di implementare mostrine (abbigliamento anche a seconda del grado) x le chat
Possibilità di renderle il tutto un pochino più mobile friendly
chat off? Cos'e'? La chat tipo FB nell'angolino? Se e' quella molti gestori mi hanno detto che implementarla vuol dire pugnalare ancora di piu' il PbC perché l'avevo proposta per togliere i sussurri dalla chat.
Questo lo puoi fare facilmente, quando si crea un pg lo imposti su un permesso o uno stato particolare e poi in fase di login lo indirizzi in quella chat. Lo fanno alcune land con la "prigione'
le icone in chat mi pare ci siano gia'
Discussione seguita da
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Sea of Conquest ↗
Foundation Galactic Frontier ↗
CRSED: F.O.A.D. ↗
Tibia ↗
Hero Wars ↗
World of Warship ↗
New Orleans ↗
Enlisted ↗