Vai al contenuto
Simone Marino Parliamo della tua esigenza
In uso

Death Freeroam: una piattaforma multiplayer in produzione dal 2020

Una piattaforma multiplayer che sviluppo e gestisco dal 2020. Database, store online, integrazioni, sicurezza e circa 4.500 utenti attivi ogni giorno.

Ruolo
Fondatore e lead developer
Tipo
Piattaforma multiplayer FiveM con sito, store e integrazioni
Attivo dal
2020
Stato
In uso

Visita deathfreeroam.it

Home page del sito ufficiale di Death Freeroam, con lo store, i pacchetti in evidenza e l'accesso a Discord
Il sito ufficiale che ho sviluppato in React, collegato allo store Tebex e a Discord.

Perché è rilevante per un'azienda

Death Freeroam nasce come server di gioco, ma oggi è un sistema software completo in produzione: client e server, database relazionali, sito web, store con pagamenti, automazioni, strumenti di amministrazione, sicurezza e un team da coordinare. Lo sviluppo e lo gestisco ogni giorno dal 2020.

È il progetto in cui ho imparato a far funzionare un software nel tempo, con utenti collegati, aggiornamenti continui e problemi da risolvere senza fermare tutto.

Il mio ruolo

Come fondatore e lead developer seguo direttamente:

  • progettazione e sviluppo delle funzionalità, lato client e lato server;
  • struttura del database, tabelle, relazioni e query SQL;
  • sito ufficiale in React e store collegato tramite le API di Tebex;
  • integrazioni con Discord: bot, webhook, ticket di supporto, ruoli e notifiche;
  • autenticazione, permessi e sicurezza applicativa, con log e tracciamento delle operazioni amministrative;
  • amministrazione del server, backup, monitoraggio e analisi dei log;
  • ottimizzazione delle prestazioni con molti utenti collegati contemporaneamente;
  • coordinamento tecnico dello staff.

Cosa ho costruito

Gestione utenti e dati persistenti. Identificativi permanenti, statistiche, inventari, gruppi, permessi, ricompense e configurazioni salvate nel database e sincronizzate con l'interfaccia. Alcune funzioni lavorano sui dati anche quando l'utente non è collegato.

Marketplace interno. Offerte, vendite, acquisti e disponibilità degli elementi, con un'interfaccia integrata nella piattaforma e le operazioni gestite lato server.

Gestione di gruppi e attività. Membri, ruoli, benefici, inviti e statistiche, con dati persistenti e interfaccia sincronizzata.

Sistemi di match. Code, assegnazione dei giocatori e stato delle sessioni, con parti del flusso automatizzate tramite Discord.

Sito e store. Sito responsive in React con presentazione dei prodotti, collegamento ai pacchetti e flussi tra sito, store e community.

Supporto e automazioni. Bot personalizzati, webhook, ticket e controlli automatici che collegano piattaforma, database e community in un unico flusso operativo.

Come lavoro su un sistema in produzione

Ogni modifica viene provata prima del rilascio e verificata di nuovo dopo: flussi utente, comunicazione tra client e server, letture e scritture sul database, integrazioni. Quando un problema emerge con gli utenti collegati, il lavoro è isolare in fretta il componente responsabile, dai processi che consumano troppa memoria alle query lente.

È lo stesso approccio che porto nei gestionali aziendali: il software deve funzionare ogni giorno, non solo il giorno della consegna.

Codice sorgente

Il codice di Death Freeroam non è pubblico: contiene componenti proprietari e configurazioni usate in produzione. Il progetto è presentato attraverso descrizioni, architettura e numeri.

Il progetto in numeri

membri nella community Discord
oltre 200.000
giocatori registrati nelle statistiche
oltre 520.000
utenti attivi ogni giorno
circa 4.500
sessioni di gioco all'anno
circa 2,9 milioni
persone nello staff attivo
circa 40
persone passate dallo staff dal 2020
circa 500

Dati delle statistiche della community Discord e del database di produzione del progetto.

Come sono collegate le parti

Una vista semplificata dei flussi principali: ogni elemento comunica con gli altri e deve restare stabile con migliaia di utenti collegati.

Architettura semplificata di Death Freeroam Il giocatore usa il client FiveM, che comunica con le logiche client e server in Lua. Le logiche leggono e scrivono sul database MySQL e MariaDB e comunicano con API REST e servizi esterni, collegati a Discord e a Tebex. Il sito web in React è collegato a Tebex e alle API. Giocatore Client FiveM Logiche client e server in Lua Discord API REST e servizi esterni Tebex Sito web React MySQL / MariaDB bot, webhook, ticket store e pagamenti utenti, permessi, dati

Tecnologie e strumenti

  • Lua
  • JavaScript
  • React
  • HTML e CSS
  • SQL
  • MySQL
  • MariaDB
  • API REST
  • Tebex API
  • Bot e webhook Discord
  • Server dedicato Windows

Altri progetti

  • Vista: La preventivazione delle lavanderie Sottocoperta, prima gestita su Excel, trasformata in una piattaforma con catalogo, pianta 2D e 3D, richieste online e offerte.
  • Rapportini: Gli interventi tecnici digitalizzati, con clienti, sedi, tecnici, ore e materiali, firma del cliente, PDF e invio email in un archivio unico.
  • Franchising District: Un gioco multiplayer su Roblox, in sviluppo, in cui si gestisce ed espande un negozio in franchising, a partire da una lavanderia.

Vai alla soluzione Siti e portali aziendali