
Hypersomnia è uno sparatutto multiplayer open source disponibile dal 2017 che cerca di distinguersi grazie a un mix di elementi presi da generi differenti. Da una parte richiama la componente tattica dei classici FPS competitivi, dall’altra propone combattimenti estremamente dinamici ispirati agli shooter dall’alto, il tutto accompagnato da una grafica in pixel art che richiama i giochi di ruolo della vecchia scuola.
Attualmente il progetto mette a disposizione 24 armi da fuoco, 10 mappe create dalla comunità e due modalità di gioco principali: Bomb Defusal e Gun Game. L’obiettivo degli sviluppatori è costruire uno sparatutto completamente aperto ai contributi della comunità, capace di evolversi senza particolari limiti grazie al codice sorgente accessibile.
Uno degli aspetti più interessanti è la presenza di un editor di mappe integrato direttamente nel gioco. Gli utenti possono creare nuovi scenari, testarli immediatamente insieme ai propri amici e modificarli in tempo reale, anche quando si trovano dietro un router domestico, rendendo molto più semplice lo sviluppo di contenuti personalizzati.
Networking deterministico e supporto multipiattaforma
Il vero punto di forza di Hypersomnia è rappresentato dalla sua architettura tecnica. Il gioco utilizza un sistema di networking completamente deterministico che permette ai client di simulare localmente l’intero mondo di gioco, trasmettendo attraverso la rete solamente gli input dei giocatori invece dello stato completo della partita.
Questo approccio, normalmente impiegato negli strategici in tempo reale, è stato adattato a un titolo basato sulla fisica, una sfida particolarmente complessa a causa dell’utilizzo intensivo dei numeri in virgola mobile. Per garantire risultati identici su Windows, Linux, macOS e persino sistemi ARM, gli sviluppatori hanno adottato compilatori e librerie matematiche specifiche, oltre a numerose ottimizzazioni dedicate.
Il risultato è una sincronizzazione estremamente efficiente: anche con migliaia di oggetti dinamici come casse, proiettili o bossoli presenti sulla mappa, il traffico di rete rimane molto contenuto perché vengono inviati solamente i comandi impartiti dai giocatori. Tutti gli altri elementi vengono ricostruiti localmente in maniera identica da ogni client.
Anche la previsione della latenza segue un approccio particolare. Invece di limitarsi a interpolare le immagini, il motore simula in anticipo l’intero stato del gioco per offrire una previsione molto più accurata dei movimenti futuri.
Editor integrato, IA e infrastruttura completamente aperta
Hypersomnia non si limita al gameplay competitivo. L’intero ambiente di sviluppo è pensato per facilitare la creazione di contenuti personalizzati e di server indipendenti.
L’eseguibile include infatti il gioco, il server dedicato, il server principale utilizzato per mantenere l’elenco delle partite disponibili e l’editor delle mappe. Chiunque può quindi creare una propria infrastruttura completa, realizzare modifiche profonde al gioco oppure costruire una comunità completamente indipendente.
Il motore include inoltre sistemi di intelligenza artificiale per pesci e insetti che si muovono in gruppo attraverso algoritmi di flocking. Queste creature reagiscono agli spari e alle esplosioni e rimangono perfettamente sincronizzate tra tutti i giocatori senza generare traffico aggiuntivo sulla rete.
Dal punto di vista interno, il progetto utilizza un sistema avanzato di gestione della memoria basato su pool lineari che garantiscono allocazione e rilascio in tempo costante, mantenendo un comportamento completamente deterministico. Questa soluzione permette anche di implementare funzioni di annullamento e ripristino perfettamente affidabili nell’editor, preservando sempre gli identificatori degli oggetti creati.

Tra le altre funzionalità figurano il supporto ai client web e desktop sulla stessa infrastruttura di gioco, l’autenticazione tramite Discord, la condivisione del ranking con la versione Steam, l’hosting dei server direttamente dal menu principale con inoltro automatico delle porte e un sistema di aggiornamento integrato che scarica e installa automaticamente le nuove versioni del gioco.
Hypersomnia su Linux
Hypersomnia è disponibile per Linux attraverso AppImage, soluzione che ci consente di poter giocare senza alcuna installazione. Abbiamo testato Hypersomnia su Arch Linux con ambiente desktop GNOME 50.2.