# Oolite

Oolite è un videogioco di simulazione spaziale 3D gratuito e open source, remake di Elite. È, come suggerisce il nome, Object Oriented [E]lite, scritto in Objective-C. Oltre le numerose somiglianze con la sua origine, l'esperienza di gioco viene completata dal contesto ambientato nel manuale originale di Elite e dalla novella di accompagnamento, The Dark Wheel. Oolite è rilasciato con licenza GPL-2.0 o versioni successive per il codice sorgente, mentre le risorse (immagini, musica, texture, modelli) sono rilasciate con doppia licenza GPL-2.0 o versioni successive e CC-BY-NC-SA-3.0.

## Storia

Giles Williams ha iniziato a lavorare su Oolite per Mac OS X nel 2003. Nel luglio 2004, Oolite v1.0 è stato rilasciato, però è rimasto successivamente in fase di sviluppo attivo per molto tempo.
A settembre 2005, Mac Oolite aveva raggiunto la versione 1.52 ed è stato rilasciato un port su Linux, seguendo da allora e da vicino gli sviluppi su Mac OS X.
Nel marzo 2006 è stato rilasciato il port Windows GNUstep. Sono disponibili anche port per SGI IRIX e FreeBSD su architetture Intel. La maggior parte dei port include la stessa funzionalità ad eccezione della versione per Mac OS X che include il supporto aggiuntivo delle funzionalità native di Mac OS X (come l'integrazione con iTunes, il supporto Spotlight e Growl).
Nell'ottobre 2006, dopo aver rilasciato la versione stabile 1.65, Williams ha annunciato che avrebbe smesso di sviluppare Oolite dopo aver implementato le funzionalità aggiornate dello shader OpenGL. Tuttavia, il progetto si è bloccato.
Il 27 febbraio 2007, il progetto è stato rilasciato sotto licenza GPL-2.0 o successiva. Jens Ayton è stato nominato manutentore e, dopo un certo ritardo, lo sviluppo è stato affidato alla comunità. Successivamente c'è stata una serie di rilasci di prova, con in particolare l'aggiunta di funzionalità di JavaScript per scrivere missioni e supporto per gli shader.
Il 16 dicembre 2011 è stata rilasciata una nuova versione stabile, la v1.76, per sostituire la v1.65 del 2006.
Il 27 maggio 2012 è stata rilasciata una nuova versione stabile, v1.76.1. Questo è un aggiornamento per la correzione di bug di Oolite 1.76. Non aggiunge nuove funzionalità.
Il 16 agosto 2012 è stata rilasciata una versione di distribuzione di prova v1.76.1. Lo scopo del rilascio è valutare la configurazione di distribuzione di Oolite, che è il modo in cui dovrebbero essere realizzati i prossimi rilasci stabili.
L'8 gennaio 2013, è stata rilasciata una nuova versione di distribuzione di prova, v1.77. Questa versione include nuove funzionalità e miglioramenti rispetto alle versioni precedenti.
Il 1 ottobre 2013 è stata rilasciata una nuova versione di distribuzione di prova, v1.77.1. Questo è un aggiornamento per la correzione di bug di Oolite 1.77. Non aggiunge nuove funzionalità.
Il 30 giugno 2014 è stata rilasciata una nuova versione stabile, v1.80, per sostituire la v1.76.1 del 2012. Aggiunge molte nuove funzionalità, tra cui un'IA notevolmente migliorata, un set di bordo aggiornato e un sistema di gestione dei pacchetti di espansione.
Il 27 maggio 2015 è stata rilasciata una nuova versione stabile, la v1.82. L'IA e il sistema di gestione dell'Expansion Pack sono stati ulteriormente migliorati e il combattimento è stato rielaborato per rendere il gioco iniziale un po' più semplice per i principianti, pur consentendo molte sfide nella parte successiva del gioco. La grafica e le interfacce sono state aggiornate, con il miglioramento principale rappresentato dalla mappa della galassia completamente ingrandibile e scorrevole, che sostituisce le carte separate a corto e lungo raggio. Sono stati apportati miglioramenti al supporto multi-monitor, alla grafica delle esplosioni e alle trame dei pianeti e un'impostazione del "campo visivo" introdotta nelle Opzioni di gioco. È stato introdotto uno Scenario Support System, che essenzialmente consente alle persone di riscrivere le galassie, le navi, l'equipaggiamento e le regole per creare il proprio nuovo gioco spaziale utilizzando il motore Oolite.
Il 21 luglio 2016 è stata rilasciata la versione 1.84. Le aggiunte principali sono: telecamera esterna mobile, laser multipli ora disponibili per tutte le navi, miglioramenti all'interfaccia della Mappa Galattica, miglioramenti alla grafica generale e all'interfaccia utente.
Il 25 ottobre 2017 è stata rilasciata la versione 1.86. La nuova versione è dotata di un nuovo algoritmo di generazione del terreno per sezioni di terreno dall'aspetto più realistico, aggiunge strati di nuvole e regola l'illuminazione ambientale per un risultato complessivamente più esteticamente gradevole. La risoluzione massima che il gioco può supportare è stata aumentata al livello 8K UHD. Altre aggiunte sono il supporto per elevati DPI su Windows, la possibilità di caricare pacchetti di espansione tramite HTTPS, la possibilità di utilizzare la rotellina del mouse per il controllo della velocità durante il pilotaggio di navi utilizzando un mouse (Windows/Linux) e uno scenario Easy Start per i comandanti che lottano per preparare la loro Cobra MkIII su Lave.
Il 28 ottobre 2018 è stata rilasciata la versione 1.88. Presenta una grafica e un sistema di illuminazione notevolmente rinnovati. Sono state implementate moderne tecniche di illuminazione, applicando modelli fisicamente accurati e di risparmio energetico per riflessioni speculari su navi e pianeti. Le entità degli effetti visivi ora possono utilizzare la trasparenza mentre anche le atmosfere del pianeta hanno ricevuto un restyling accattivante. Questa fusione di tecniche ed effetti di rendering basati sulla fisica produce spettacolari effetti visivi di Oolite che non sono mai stati così belli. Il nuovo sistema di illuminazione funziona anche a favore del sistema dei materiali di Oolite, consentendo la creazione e l'utilizzo di materiali prima non possibili.
Il 30 agosto 2020 è stata rilasciata la versione 1.90. È dotato di un ambiente grafico molto migliorato, con particolare attenzione ai pianeti. L'aspetto dell'atmosfera sui pianeti è ora configurabile e i pianeti personalizzati ora supportano le mappe normali, lucide e di illuminazione. Ulteriori miglioramenti grafici includono la mappatura del tono filmico, il modello di luce diffusa Oren-Nayar, una maggiore radianza della sorgente luminosa per una migliore visibilità degli oggetti nello spazio e altro ancora. Inoltre, alle armi ora sono assegnati suoni individuali, mentre gli script hanno ancora più proprietà disponibili per l'accesso. Questa versione è quella attualmente consigliata dal team di sviluppo di Oolite.

## Gioco
### Nozioni di base

Come Elite, Oolite è un simulatore di combattimento e scambio spaziale in prima persona, a tempo indeterminato, per giocatore singolo. Il giocatore è il pilota di una navicella spaziale, in grado di effettuare viaggi interstellari verso altri sistemi planetari vicini utilizzando i wormhole generati dai motori della nave. Ogni sistema contiene un solo pianeta abitato, con una stazione spaziale orbitante; i giocatori scelgono il sistema di destinazione con il nome del suo pianeta. Sebbene i giocatori possano creare wormhole in uscita quasi ovunque all'interno di un sistema, supponendo che i loro motori abbiano abbastanza carburante per generarli, le navi entrano sempre in un nuovo sistema a una distanza considerevole dal pianeta bersaglio. Il giocatore deve quindi pilotare la propria nave dal punto di ingresso, attraverso lo spazio "normale", fino alla stazione. Durante questa fase del viaggio il giocatore può incontrare altre navi e possono verificarsi combattimenti. I principali armamenti delle astronavi Oolite sono i laser e i missili. La maggior parte dei combattimenti sono aerei, inoltre le navi mostrano caratteristiche di volo non newtoniane, essendo immuni dagli effetti sia dell'inerzia che della gravità.

### HUD

Il giocatore comanda la propria nave con le informazioni fornite dalla visuale di gioco e dall'HUD sovraimpresso. Esso contiene numerose informazioni utili allo scopo:

#### A sinistra

* Livello degli scudi principali FWD (anteriore) e AFT (posteriore), danneggiati i quali inizia a ridursi l'energia della nave
* Livello del carburante (FUEL), necessario solo per gli iniettori e per compiere viaggi interstellari
* Temperatura in cabina (CT),
* Temperatura del laser (LT), superata una certa soglia (la barra diventa rossa) bisogna attenderne il raffreddamento
* Altitudine (ALT),
* Slot indicanti le armi montate esternamente alla nave (missili o Q-bomb),

#### In centro

* Scanner IFF: utilizzato per rilevare ciò che circonda la nave, per esempio cargo e asteroidi nonché navi, per le quali ne viene mostrato lo status.
* Indicatore S: presente solo se la nave si trova nella zona protetta nei pressi di una stazione planetaria.
* Spia dello status attuale, dove verde sta a significare nessun problema, giallo presenza di navi nello scanner oppure la nave è mass-locked (cioè si trova nei pressi di un astro di grande massa), rosso presenza di navi ostili nello scanner oppure la nave è pesantemente danneggiata. Solo se la spia è verde il giocatore può attivare la guida Jump Drive.
* Data stellare
* Indicatore di assetto (bussola spaziale): indica la posizione relativa di un oggetto selezionato rispetto alla nave.
* Icona dello stato dell'equipaggiamento Fuel Scoop: presente solo se la nave ne è equipaggiata. Questo indicatore mostra quando tale dispositivo è in funzione e quando la stiva di carico è piena.

#### A destra

* Velocità della nave,
* Attuale rollio (roll) e beccheggio (pitch) della nave; l'imbardata (yaw) non è mostrata a schermo però si può effettuare,
* Livello di energia della nave.

### Traguardi e obiettivi

Non ci sono traguardi prefissati o obiettivi nel gioco. Il denaro e la "valutazione Elite" sono le uniche forme integrate di "punteggio" in Oolite.
I giocatori possono guadagnare denaro acquistando beni in un sistema stellare e trasportandoli in un altro per venderli con profitto. I soldi possono essere guadagnati anche distruggendo navi pirata e raccogliendo taglie. I giocatori possono diventare essi stessi pirati, attaccando mercantili e altre navi. Sebbene non venga assegnata alcuna taglia per la distruzione di navi non pirata, quando una nave viene distrutta, parte del suo carico può sopravvivere all'esplosione. Se la nave del giocatore è dotata di uno scoop, questo carico può essere recuperato per la rivendita successiva. È anche possibile, con l'attrezzatura giusta, estrarre minerali e altri materiali dagli asteroidi. I giocatori possono anche scegliere di trasportare passeggeri paganti o carichi speciali verso destinazioni specifiche. Il denaro guadagnato o acquisito in altro modo può essere speso in carburante per i motori del wormhole (noti come "Witchdrives"), manutenzione della nave o nuove attrezzature. Il giocatore può anche cercare di scambiare la sua nave con altri modelli con caratteristiche e capacità diverse.
Ogni nave che il giocatore distrugge, di qualsiasi tipo o classe, aggiunge alla "classificazione Elite" del giocatore una classifica basata sul numero di uccisioni effettuate. Questa valutazione inizia con il livello "harmless (innocuo)" con nessuna uccisione, quindi "mostly harmless (per lo più innocuo)" e culmina con il livello "deadly (mortale)" infine "elite".

### Missioni e modifiche

C'è un piccolo numero di missioni integrate nel gioco, ereditate da Elite, in cui al giocatore vengono assegnati compiti specifici da svolgere, come distruggere un prototipo di caccia militare rubato. Tuttavia, non è necessario completare o iniziare nessuna di queste missioni per giocare.
Numerose modifiche per Oolite hanno ampliato il gameplay aggiungendo nuove missioni, equipaggiamento, navi, stazioni spaziali, luoghi di scambio e opportunità di carriera a tempo indeterminato come corriere o sicario. Altri offrono grafica migliorata, effetti visivi e audio o migliorano in altro modo l'atmosfera. Queste modifiche sono solitamente chiamate OXP (Oolite eXpansion Pack). Attualmente, ci sono più di 500 OXP disponibili per Oolite.

## Modding

Poiché la struttura del gioco è pensata per essere "aperta-incapsulata", gli oggetti e gli eventi che si svolgono in Oolite sono facilmente modificabili senza bisogno di competenze di programmazione. Sono necessari solo pochi semplici strumenti per creare un OXP. Queste aggiunte al gioco, create autonomamente o scaricate, sono collocate liberamente nella cartella AddOns del gioco, consentendo al giocatore di modellare la trama e la popolazione dell'universo di gioco. Nelle versioni recenti, il gioco è dotato di un gestore di estensioni integrato che consente al giocatore di sfogliare, installare, aggiornare o rimuovere le estensioni semplicemente scorrendo l'elenco delle estensioni disponibili. Ciò semplifica notevolmente il processo di installazione delle estensioni e il loro aggiornamento.
Nel corso primi due anni di Oolite, la comunità Oolite è stata ispirata da opportunità di scrivere mods coerenti del gioco, conseguentemente è presente un numero abbastanza grande di OXPs. Spesso i fandom di The Dark Wheel e 80's Elite sono di evidente influenza, sebbene siano stati condivisi anche elementi di space opera alternative. Un pacchetto può semplicemente offrire più navi o stazioni o contenere missioni interattive con script. Poiché l'aggiunta di corpi planetari, minigiochi, HUD, armi e suoni è tra le diverse possibilità, il testing dei potenziali limiti dell'OXP è ancora in una fase iniziale.
Di seguito sono riportati alcuni esempi di OXP:
* Cobra Mc. IV OXP e pianeti aggiuntivi SR OXP
* Cobra Mc. IV OXP
* HUD pericoloso (variante arancione) OXP e Povray Planets OXP
* Caratteristiche del sistema: Anelli OXP
* Pacchetto texture di gsagostinho: Adder OXP e Fuel Satellites OXP
* Pacchetto texture di gsagostinho: Asp OXP
* Povray Planets OXP e Texture Pack di gsagostinho: Cobra Mk. III OXP
* HUD pericoloso (variante arancione) OXP e stazioni per pianeti extra OXP

## Critica

Oolite ha ricevuto quattro stelle e il Macworld Editors' Choice Award nel 2007: " Oolite (Object Oriented Elite) è avvincente e avvincente oggi come Elite nel 1984... Il programma principale è completamente estensibile con nuove navi, missioni e pianeti e l'universo che esplori in Oolite è completamente aperto. Questo gioco è un tuffo nel passato che è stato ricostruito per durare. Prendilo ora."
Il 24 luglio 2009, TechRadar.com ha elencato Oolite come uno dei 10 migliori giochi per PC gratuiti a cui dovresti giocare oggi: " Oolite prende lo stesso identico gameplay brillantemente compulsivo [come Elite] e lo rende più fluido, più veloce e più bello - gratuitamente. Se il gioco di base non è abbastanza entusiasmante, sono disponibili anche pacchetti di espansione."
Freewaregenius.com ha recensito Oolite nell'ottobre 2009, definendolo "un brillante remake di Elite ... Se stai morendo di fame per un buon simulatore spaziale, Oolite ti soddisferà. Con un sistema commerciale più gratificante rispetto ai suoi contemporanei, combattimenti frenetici e una buona dose di fascino retrò, vale la pena dare un'occhiata."
NAG Online ha recensito Oolite nel settembre 2010, assegnandogli un punteggio di 85%: "Un vero classico reincarnato e reinventato: un gioco imperdibile per i fan delle simulazioni spaziali".