Benvenuti nell'angolo ONScripter di chaoskaiser72!

... E perché potrebbe essere che questi piccoli romanzi videoludici limitati - scritti da piccole mani limitate e che girano su piccoli sistemi limitati - siano l'ultima e la migliore realtà virtuale che abbiamo ...
-Narcissu

ONScripter è un'implementazione libera ed a codice sorgente aperto (open source) di NScripter (un motore utilizzato dai romanzi videoludici) rilasciata sotto la Licenza Pubblica Generica GNU versione 2 usando SDL. Permette a molti romanzi videoludici popolari di girare su una pletora di piattaforme come Linux, BSD, Mac, OS/2 e anche su un certo numero di console; ma, soprattutto, può essere facilmente modificato dalla comunità.


Pagina originale in inglese
Pagina in francese


/!\ Sulla traduzione /!\

Questa traduzione non è stata effettuata da una persona di lingua natale italiana ma da un amatore francofono.
Tuttavia, è stata corretta da tre persone italofone con maggiore esperienza.
Questa traduzione si rivolge a più persone e usa il pronome personale «voi».
Si prega di scrivere all'amministratore del sito per segnalare eventuali errori.


Questa traduzione è rilasciata sotto la licenza Creative Commons Zero (CC0)

CC0
To the extent possible under law, Anonymous has waived all copyright and related or neighboring rights
to Traduzione in italiano della pagina web dell'«angolo ONScripter di chaoskaiser72».

Il testo originale appartiene al suo autore!


Indice


ONScripter-EN

... E così, ecco ONScripter-EN: una versione derivata («fork» in inglese, il termine «biforcazione» sarà anche usato qui di seguito) progettata per supportare meglio gli script inglesi, che hanno caratteri codificati a un byte (ottetto in italiano). Sebbene l'ONScripter originale sia ancora mantenuto, questa versione non supporta completamente l'inglese, DirectSound su Windows, il rilevamento della maschera alfa PNG, il ridimensionamento della finestra e molte implementazioni DLL di effetti - tutte queste cose che sono state aggiunte a ONScripter-EN molto tempo fa. ONScripter-EN è stato originariamente biforcato da ONScripter dall'insani, poi passato a Haeleth, ed è infine passato nelle mani di Uncle Mion di Sonozaki Futago-tachi. È stato abbandonato nel 2011 e il sito di Mion è stato chiuso alla fine del 2018, e come risultato che molte risorse sono diventate difficili da trovare. Perciò, ho fornito nella sezione Archivi pubblici e specchi relativi a ONScripter le ultime versioni stabili, il codice sorgente, l'attrezzatura/gli strumenti per (O)NScripter e la documentazione per qualsiasi necessità di sviluppo.

Principi di base relativi all'esecuzione

Nota: Dovreste disporre dell'ultima versione d'ONScripter-EN prima di tentare di eseguire un gioco, specialmente su un sistema operativo recente. Vedere la sezione Aggiornare.

ONScripter-EN non si avvierà senza un documento chiamato «default.ttf» contenente il carattere nella cartella del gioco accanto all'esecutore. Poiché il motore visualizza solo testo ad ampiezza fissa e alcuni giochi come Umineko e Tsukihime usano glifi giapponesi o personalizzati nelle loro traduzioni in inglese, il carattere Sazanami Gothic è diventato la norma - la maggior parte dei giochi che girano su ONScripter-EN lo usano. Se state scrivendo il vostro romanzo e avete bisogno di usare un carattere proporzionale, consultate la sezione PONScripter o la sezione ONSlaught.

L'originale NScripter aveva una barra di menu che permetteva di regolare tutte le impostazioni; non è mai stata impiantata in ONScripter per motivi di compatibilità, per cui si usano delle scorciatoie per accedere alle stesse funzioni. Per averne un'anteprima di queste, consultate il documento (per ora disponibile solo in inglese) «leggimi» («readme» dunque).

Si prega di consultare l'elenco delle impostazioni conosciute per il documento di configurazione ons.cfg.

Ridimensionamento ad alta risoluzione

Oltre a premere il tasto F per lo schermo intero, potete, su versioni ragionevolmente recenti ridimensionare automaticamente i vostri giochi ONScripter-EN a praticamente qualsiasi risoluzione, incluso, ma senza limiti, alla risoluzione 1080p. Il testo viene ridimensionato magnificamente, e quidi rende la lettura in modalità a finestra molto più comoda. Per ridimensionare automaticamente una finestra, create un documento di testo chiamato «ons.cfg» nella vostra cartella di gioco. Poi, aggiungete semplicemente la linea...

scale

oppure

window-width=[larghezza desiderata in pixel]

Il parametro «scale» adatta automaticamente la finestra alla massima dimensione verticale del vostro schermo, mentre «window-width» vi permette di impostare qualsiasi valore vogliate. Da notare che aumentare le dimensioni della finestra ridurrà l'impatto delle ombre del testo, diminuirà la frequenza dei fotogrammi dove sono in uso effetti complessi, e potrebbe produrre alcune bachi grafici. Se non funziona, vedere la sezione Aggiornare.
Nota: Questa impostazione non funziona con le copie non corrette di Kagetsu Tohya a causa di un baco nel suo script - ho fatto una patch («toppa» in italiano) per esso, che include l'ultima versione d'ONS-EN (al momento della scrittura), che può essere trovata qui. Si prega di vedere il documento (per ora disponibile solo in inglese) «leggimi2.txt» («readme2.txt» dunque) per istruzioni e altri dettagli - si può trovare nell'archivio scaricabile via il collegamento qui sopra.

Aggiornare

È virtualmente necessario aggiornare tutti i vostri giochi ONScripter all'ultima versione d'ONScripter-EN. Ciò impedisce i blocchi sulle recenti versioni di Windows, aggiunge importanti caratteristiche che non erano presenti precedentemente, rende possibile l'uso delle impostazioni con il documento «ons.cfg», e vi permette di tenere tutti i vostri dati di salvataggio in una cartella specifica. Prima di scaricare l'ultimo eseguibile nella vostra cartella di gioco, create un documento di testo chiamato «game.id», contenente SOLO il nome del gioco: questo determina il nome della cartella in cui saranno memorizzati i vostri dati di salvataggio (se trascurate questo punto, i dati di salvataggio saranno memorizzati in una cartella con un nome casuale). Infine, scaricate l'ultima versione d'ONScripter-EN per Windows (con il binario SDL.dll), Linux (x64), o Mac OS X, e scompattate il tutto nella vostra cartella di gioco.
Nota: Quando aggiornate Umineko no Naku Koro ni, dovete aggiungere l'impostazione «detect-png-nscmask» a ons.cfg affinché le immagini in inglese o in italiano vengano visualizzate correttamente.

Con queste recenti versioni d'ONScripter-EN, se non viene specificato nulla sulla posizione dei dati di salvataggio nello script, i dati di salvataggio di ogni gioco sono conservati in una propria cartella all'interno della cartella nascosta C:\ProgramData [supponendo che C: sia il dispositivo di memorizzazione o la partizione principale] o ~/. Cosicché i giochi possano essere conservati in qualsiasi cartella, comprese quelle che non sono accessibili in scrittura.

La versione per Windows con il binario SDL.dll è raccomandata soprattutto perché supporta DirectSound, che elimina il ritardo degli effetti sonori.

A causa dei cambiamenti in Mac OSX, le versioni esistenti di ONScripter-EN per Mac presentano ormai molti bachi. Probabilmente dovrete compilare e provare questa biforcazione leggermente aggiornata d'ONS-EN per Mac che potrebbe risolvere i problemi che potreste incontrare.

Elenco delle impostazioni conosciute per il documento di configurazione ons.cfg
english
japanese
scale
window-width=[valore in pixel]
root=[percorso alternativo alle risorse del gioco]
save=[percorso alternativo per memorizzare i dati di salvataggio]
automode-time=[valore in millisecondi]
skip-past-newline
ignore-textgosub-newline
no-movie-upscale
no-layers
detect-png-nscmask
allow-color-type-only
set-tag-page-origin-to-1
answer-dialog-with-yes-ok
strict
debug
waveout-audio (per Windows per favorire waveout piuttosto che DirectSound)
match-audiodevice-to-bgm
nomatch-audiodevice-to-bgm
audiodriver [dev] (fate ricerche su «SDL_AUDIODRIVER»)
audiobuffer [dimensione in «KB» [chiliottetti]; 1,2,4,8,16 ammessi]
no-cpu-gpx
use-app-icons
current-user-appdata

Tutti questi elementi citati qua sopra possono anche passare come parametri in un'interfaccia a riga di comando, per esempio:

onscripter-en --scale

Chiariamo il ruolo di alcuni dei parametri comunemente usati; «english» (inglese) o «japanese» (giapponese) sono usati nei casi in cui si debba forzare una modalità di lingua, «detect-png-nscmask» (rilevare [la] maschera NScripter [dei] png) rileva se le immagini nel formato PNG usano maschere alfa NScripter (necessario per Umineko), «strict» (rigoroso) è usato per trattare gli avvisi di script più come errori, e «debug» (debacare, rimuovere i bachi) causerà l'apertura dei documenti di uscita e di errore del motore all'uscita del gioco (o al blocco). Il documento di configurazione «ons.cfg» è supportato solo a partire dalla versione 2009-09-30. Si prega di vedere la sezione Aggiornare.

ONScripter-EN su altre piattaforme

Purtroppo è raro che ONScripter-EN sia portato su piattaforme meno conosciute, poiché ONScripter è più attraente per il fatto che sia ancora mantenuto. Chiunque tenti in futuro di fare una conversione dovrebbe sapere che una regressione in SDL_ttf fa sì che l'ultima versione non funzioni con ONScripter-EN, il che significa che è necessario modificare SDL_ttf o usare una versione precedente per farlo funzionare.

ONScripter-EN è stato portato su OpenBSD con dipendenze aggiornate e si spera che un giorno venga inserito nella collezione delle conversioni (consultate la voce di wikipedia in inglese «ports collection»).
Penso che una conversione su IBM OS/2 e una conversione su PlayStation Vita soddisferebbero pienamente le rispettive comunità di persone di passatempo. Se sei uno sviluppatore esperto su una delle due piattaforme, qualsiasi sforzo sarebbe molto apprezzato. Ecco una conversione molto vecchia d'ONScripter su OS/2 quelli a cui interessa.

PONScripter

PONScripter sta per «Proportional ONScripter» (Proporzionale ONS.). È essenzialmente una biforcazione d'ONScripter che supporta Unicode, i caratteri proporzionali e molte altre lingue sono supportati, ed è generalmente più flessibile e moderno. Tuttavia, è stato biforcato in un punto precedente dello sviluppo d'ONScripter ed è stato abbandonato subito dopo, quindi anche nelle ultime diramazioni mantenute è comuunque altamente instabile. Usa molte più risorse, ha molti più bachi e problemi di comportamento, e non è completamente retrocompatibile con NScripter o ONScripter. Il supporto per documenti con nomi giapponesi viene abbandonato e sono necessarie nuove routine e sintassi, quindi convertire un gioco NScripter su di esso è uno sforzo significativamente più impegnativo. PONScripter ha una modalità «legacy» che esegue giochi NScripter e ONScripter-EN come sono stati scritti, ma la maggior parte dei suoi problemi sono ancora presenti. Ancora più importante, PONScripter non supporta alcuni effetti personalizzati che NScripter e ONScripter fanno, il che risulta nella versione MangaGamer di Umineko e in tutte le versioni di Umineko Saku che mancano completamente degli effetti di pioggia animati. Molti titoli NScripter facevano uso di DLL esterne che sono state poi incorporate in ONScripter-EN per mezzo dell'emulazione, quindi questo rappresenta un enorme svantaggio per PONScripter. La diramazione principale d'ONScripter ora supporta sia i caratteri proporzionali che unicode, quindi PONScripter può essere quasi considerato obsoleto, eccetto per il fatto che PONScripter ha ancora il miglior supporto per le lingue occidentali.

I documenti di configurazione sono sotto la forma di un documento chiamato «pns.cfg», sebbene le impostazioni «window-width» e «scale» non siano supportate. La documentazione è piuttosto scarsa, ma l'ultima è ospitata qui.

PONScripter è usato oggi nelle localizzazioni di Steam dei giochi NScripter, quindi il codice è stato biforcato da SekaiProject per tenerlo attivamente mantenuto e aggiungere il supporto di SDL2. Potete trovarlo qui su Github. La Witch Hunt ha fatto la propria biforcazione di questa biforcazione, e la sta usando per la sua traduzione di Ciconia no Naku Koro Ni. Le molte versioni di PONS e i diversi cambiamenti tra di esse possono causare problemi significativi quando si cerca di far girare i giochi sull'ultima versione. Il deposito del PONScripter della Witch Hunt può essere trovato qui.

Anche se PONScripter rimane altamente favorito per le traduzioni commerciali, semplicemente per il fatto che è ancora mantenuto per la comunità occidentale, la sua instabilità può causare problemi. Se siete traduttori e la vostra lingua ha caratteri speciali come diacritici, potrebbe essere meglio usare ONScripter-EN e modificare un carattere per assegnare caratteri speciali a tutti i caratteri supportati e non usati. Molte traduzioni l'hanno fatto, come la traduzione inglese di Mirror Moon di Tsukihime che assegna il carattere «…» a «|». Questo metodo vi risparmia una quantità incredibile di mal di testa legati al motore, ma al costo di produrre uno script leggermente più complicato da modificare.

ONScripter-RU

ONScripter-RU è ancora un'altra biforcazione, ma probabilmente che non fa per voi. Se volete fare una traduzione in russo di qualcosa, considerate di usare PONScripter o ONSlaught. L'unico utilizzo principale d'ONScripter-RU è il «Umineko PS3 project», e non funziona con chissa cosa d'altro. Come dichiarato nella sua pagina Github, ONScripter-RU fa uso dei propri hack, quindi non aspettatevi una compatibilità incrociata tra questo e gli altri interpreti/biforcazioni.

ONSlaught

Come si addice al suo unico nome, ONSlaught non era affatto una biforcazione, ma piuttosto un tentativo di programmare un interprete *NScripter da zero. Il suo sviluppatore era infastidito dalla (precedente) mancanza di supporto per Unicode d'ONScripter, e dal fatto che il supporto per le lingue diverse dal giapponese fosse frammentata in una serie di biforcazioni. ONSlaught supporta Unicode, può riprodurre il grassetto/corsivo, ed è in grado di eseguire giochi molto semplici come Tsukihime e OMGWTFOTL, ma alcune caratteristiche fondamentali come i folletti di testo non funzionano. È molto più rigoroso e coerente nella sua gestione della sintassi e degli errori, quindi per usarlo dovrete probabilmente fare alcune modifiche al vostro script. Si sa che è stato usato nella traduzione spagnola e nella traduzione russa di Tsukihime. ONSlaught è stato abbandonato nel 2011, anche se lo sviluppatore era pontenzialmente disposto a risolvere i suoi problemi più gravi.

ONScripter Plus

ONScripter Plus è un'applicazione Android che permetti di eseguire i giochi ONScripter e ONScripter-EN più o meno come dovrebbero essere eseguiti. Di tutte le incarnazioni di ONScripter su Android, questa è quella da scegliere. Ha alcuni bachi e può avere alcuni problemi con i dati di salvataggio, ma è un ottimo modo per leggere romanzi se il PC è stato lasciato a casa. Inoltre per appoggiare lo sviluppatore potreste considerare di comprare la versione senza pubblicità.

Da notare che, anche se utilizza un sistema piuttosto stravagante, questo interprete è l'unico che può vantare il supporto degli script codificati in UTF-7 e UTF-8, rendendolo una valida alternativa agli interpreti di lingua non inglese e non giapponese non disponibili su Android come ONSlaught o PONScripter. Come ciliegina sulla torta, sono supportati anche i caratteri proporzionali per una lettura ottimale.

Compilazioni d'ONScripter per Windows

Dato che la diramazione principale d'ONScripter include istruzioni di compilazione per Windows ma nessuna compilazione vera e propria, mi sono preso la responsabilità di fare le mie proprie compilazioni per Windows a 64 bit per vostra comodità. Avevo intenzione di aggiornarle ad ogni nuova versione, ma ho avuto un problema con l'abilitazione e la forzatura dell'impostazione 1BYTE_CHAR al momento della compilazione, quindi le lascerò qui per ora. Da notare che ONScripter manca di diverse caratteristiche importanti che sono state incluse in -EN molti anni prima, quindi probabilmente non sarà adatto ai vostri bisogni di script in inglese, a meno che il gioco che state cercando di eseguire sia stato fatto di recente.
Volevo davvero fare una versione a 32 bit, dato che x64 è stravagante in questo caso, ma Ogapee non ha fornito alcun modo per farlo su Windows.

ONScripter - Versione: onscripter-20191022

Compilazioni:

Windows, 64-bit, versione invariata (1.96 «MB» [megaottetti])
Windows, 64-bit, con l'impostazione ENABLE_1BYTE_CHAR (1.96 «MB» [megaottetti])

Archivi pubblici e specchi relativi a ONScripter

Ho caricato gli stessi archivi d'ONScripter-EN e degli strumenti per ONScripter che si trovavano nella pagina «Releases» del sito di Uncle Mion, ora archiviata sulla Wayback Machine. Questi archivi sono assolutamente invariati rispetto a quelli presenti nel sito e sono solo per la vostra comodità. Tutti i programmi in questa sezione sono rilasciati sotto la licenza GNU GPL. Da notare che la versione per Mac è ormai abbastanza vecchia e avrà dei bachi - se usate un Mac moderno, provate questa versione aggiornata.

ONScripter-EN - Versione: onscripter-en-20110628

Compilazioni:

Windows, 32 bit, con SDL.dll per supportare DirectSound (zip, 939 «KB» [chiliottetti])
Windows, 32 bit (zip, 887 «KB» [chiliottetti])
Mac OS X, versione universale (dmg, 1.94 «MB» [megaottetti])
Linux i386, 32 bit, compilato su Ubuntu (tar.bz2, 919 «KB» [chiliottetti])
Linux x86_64, 64 bit, compilato su Ubuntu (tar.bz2, 1.02 «MB» [megaottetti])

Codice sorgente e dipendenze

Codice sorgente (tar.bz2, 956 «KB» [chiliottetti])
Codice sorgente e le dipendenze (tar.bz2, 5.60 «MB» [megaottetti])
Attrezzatura/strumenti per ONScripter:

Versione attuale (2010-09-15)

Windows, 32 bit (zip, 1.24 «MB» [megaottetti])
Mac OS X, versione universale (dmg, 1.25 «MB» [megaottetti])
Linux i386, 32 bit, compilato su Ubuntu (tar.bz2, 665 «KB» [chiliottetti])
Linux x86_64, 64 bit, compilato su Ubuntu (tar.bz2, 828 «KB» [chiliottetti])

Risorse generali

Ho caricato uno specchio dell'ultima versione della documentazione di *NScripter in inglese per vostra comodità eccoli qui: Pagina XML strutturata qui; Pagina HTML qui.

Per accedere a ciò che rimane della pagina ufficiale d'ONScripter-EN/PONScripter, visitate l'angolo ONScripter di Uncle Mion sulla Wayback Machine.

La pagina relativa a NScripter di un precedente manutentore d'ONScripter-EN, l'insani, è ancora in linea. Il sito di Haeleth è purtroppo indisponibile dalla primavera del 2020. Le compilazioni e il codice sorgente su queste pagine sono molto obsolete, ma potreste ancora trovarle utile - in particolare, l'insani ospita l'attrezzatura di sviluppo di NScripter e gli strumenti di estrazione, che non sono più necessari per noi ma sono ancora utili. Consultate anche la pagina principale di insani.org per molti giochi NScripter gratuiti tradotti in inglese - consultate la sezione Aggiornare prima di eseguire qualsiasi gioco ottenuto da qui.

Se sapete leggere il giapponese, la documentazione fatta da Senzogawa intitolata «NScripter Scripting Factory» è ancora attiva, e contiene informazioni relativamente recenti sull'IPA (spesso scritto con l'abbreviazione inglese «API») di NScripter, come una documentazione su nslua.

Giochi

Alcune succinte menzioni di giochi popolari tradotti in inglese che girano su ONScripter-EN; lista completa (per ora disponibile solo in inglese) qui.

Una lista altrettanto non esaustiva di giochi che usano PONScripter:

Troverete che molti siti di traduttori fanno riferimento a collegamenti di negozi su internet o di scaricamento che non esistono più. Purtroppo molti di questi giochi non sono più disponibili da tempo, quindi anche se comprate delle copie di seconda mano, gli sviluppatori non otterranno più nulla. Pertanto, potreste dover trovare i dati da scaricare su Rutracker o dei siti simili. Se scegliete questa strada, per favore cercate di appoggiare gli sviluppatori originali in qualsiasi modo possibile.

In chiusura

Se siete programmatori C++ con un notevole interesse per i romanzi videoludici, ONScripter-EN ha bisogno di un aggiornamento. Alcune istruzioni sono state aggiunte dal suo rilascio finale nel 2011; la più importante è l'istruzione ;$ che permette di impostare risoluzioni di schermo panoramico personalizzate. Questa istruzione da sola permetterebbe a ONScripter-EN di eseguire molti più giochi e aprirebbe più possibilità per nuovi progetti fatti con questo motore. È imperativo ripulire il codice sorgente e usare un nuovo sistema per compilare il programma. Se pensate di essere in grado di provare a farlo, contattatemi.
Nota della traduzione: l'autore indica che ha poca voglia di «lavorare con i mediterranei».

Curiosità