MaNGOS

Versione del 11 mar 2013 alle 13:21 di Addbot (discussione | contributi) (migrazione automatica di 4 collegamenti interwiki a Wikidata, d:q2277058)

MaNGOS (Massively Network Game Object Server) è un progetto open source scritto in C++ facendo uso della programmazione orientata agli oggetti, volto a creare un applicativo server per MMORPG. Il progetto è sotto licenza GPL, e il codice sorgente delle nuove versioni viene costantemente rilasciato nel servizio git di GitHub. Attualmente il progetto supporta il protocollo di rete del mmorpg World of Warcraft. MaNGOS non è considerato un emulatore server di uno specifico mmorpg, bensì è un progetto educativo per la programmazione ad oggetti in C++, a cui tutti gli utenti possono apportare il proprio contributo, aumentando così il patrimonio cognitivo di tutta la community di utenti/sviluppatori.

MaNGOS
software
GenereServer MMORPG (non in lista)
SviluppatoreMaNGOS Team
Ultima versione0.16 (1 luglio 2010)
Sistema operativoMultipiattaforma
LinguaggioC++
LicenzaGPL
(licenza libera)
Sito webgetmangos.com

Ulteriori informazioni

Tramite il repository ufficiale è possibile scaricare il pacchetto di sorgenti del programma, in modo che chiunque possa creare i binaries per il proprio sistema operativo tramite un apposito compilatore C++. Sul sito ufficiale del progetto esiste una sezione apposita in cui gli utenti possono inserire le proprie compilazioni, rendendole disponibili agli altri utenti.

Funzionamento

Il programma principale si occupa fondamentalmente di gestire le connessioni dai client, estrapolare i dati dal database e gestire il mondo del mmorpg in questione. Il database su cui si appoggia il progetto MaNGOS è di tipo MySQL o PostgreSQL. La struttura del database è sviluppata dallo stesso team del progetto; per quanto riguarda i contenuti, esistono diversi team di sviluppo che, nel tempo, rilasciano versioni sempre più aggiornate di database per MaNGOS ed i MMORPG da esso supportati.

UDB

Il UDB (o Unified Database) è un progetto open source nato per fornire una base dati al progetto MaNGOS. La struttura del database (di tipo MySQL) rimane comunque quella creata dal team di sviluppo di Mangos. Il UDB è un progetto nato dalla fusione di due team di sviluppo, nel mese di settembre 2007: il SilverDatabase e il MoDB.

I dati riguardano tutto ciò che si può trovare all'interno del mmorpg per cui è predisposto MaNGOS. I dati presenti nel database riguardano quindi fondamentalmente i PnG, gli item e le quest che devono essere presenti nel gioco.

Il progetto è costantemente aggiornato grazie alle segnalazioni create dagli utenti stessi, i quali, notando determinate mancanze in fase di test, possono segnalare queste ultime al team (o agli altri utenti), oppure provvedere a sviluppare i dati mancanti. Successivamente questi dati (o patch) potranno essere sottoposti all'attenzione degli sviluppatori, i quali decideranno se includerli all'interno della prossima release ufficiale. Le patch vengono sviluppate in linguaggio SQL.

ScriptDev2 & ACID

ScriptDev2 e ACID sono dei progetti open source il cui scopo è fornire un'intelligenza artificiale ai ad ogni aspetto del gioco. Mentre ACID è scritto in SQL, quindi aggiunge dei contenuti al database, quando si è davanti a qualcosa di troppo complesso si ricorre a ScriptDev2 che è scritto in C++.

Patch

Affiancati allo sviluppo principale del programma, esistono diversi progetti di estensione portati avanti da utenti volontari. Queste estensioni (o patch) possono correggere gli aspetti più disparati del codice nativo del programma. Solitamente, col passare del tempo, se queste patch risultano stabili e affidabili, vengono integrate nel codice nativo di mangos. Ad esempio, con il rilascio della Milestone "Eye of the Storm", è stata integrata la patch "Vmaps" o "LineOfSight", che permette al programma di gestire correttamente gli ambienti tridimensionali estratti dal client di gioco.

Solo le patch in stile "blizzlike" vengono integrate nel codice ufficiale, altre patch come il gruppo tra giocatori di fazione opposte (ally e orda) non vengono integrate nel codice ufficiale del MaNGOS poiché non sono nello stile blizzlike, ma vengono comunque rese disponibili nel forum per chi volesse usufruirne.

MaNGOS Zero

MaNGOS Zero è un progetto basato sul codice di MaNGOS (più esattamente si tratta di un downgrade della branch 0.12 di MaNGOS) che mira a realizzare un applicativo game-server compatibile con l'originale client di World of Warcraft classico (versione 1.12.X) , privo pertanto di alcuna espansione. Il progetto viene considerato "friendly" da MaNGOS: il progetto non è quindi ufficiale poiché il codice di quest'ultimo non è incluso nella branch ufficiale di MaNGOS, ma è considerato "amichevole" poiché alcuni sviluppatori del MaNGOS (tra cui VladimirMangos) contribuiscono con lo sviluppo di MaNGOS Zero.

Il relativo progetto che si occupa di fornire contenuti per il database di MaNGOS Zero è ZPDB (ZeroProject Database), i relativi script sono forniti dal progetto scriptdev0 (downgrade di scriptdev2) mentre per quanto riguarda ACID viene periodicamente rilasciata ufficialmente (assieme alla normale versione di ACID) anche una versione per MaNGOS Zero.

Roadmap

Collegamenti esterni

Il portale Warcraft non esiste