ScummVM logo Main website - Forums - BuildBot - Doxygen - Planet
Contact us - Buy Supported Games: GOG.com
Log in curved edge

About/itAbout/it

Languages Lingua: English  • Deutsch • français • italiano

Breve descrizione

ScummVM è un programma che permette di eseguire alcune "punto a e quindi fare clic su" videogioco di avventura che sono classici, a condizione che già hanno un file di dati. La parte intelligente di questo: ScummVM appena sostituisce gli eseguibili spediti con i giochi, che consente di svolgere il loro sistemi per i quali non furono mai progettati!

Per maggiori informazioni circa i creatori, si può leggere la Storia di ScummVM o le Biografie Degli Sviluppatori.

Una descrizione più approfondita

Il funzionamento interno di videogioco di avventura

Quasi tutti i giochi avventura condividono alcune caratteristiche comuni. La maggior parte quelli di base sono le risorse utilizzate, che sono nel file di dati del videogioco:

  • Grafica
    • Attore (La sprites nel videogioco)
    • Le immagini di Sfondo
    • Font
    • Le Animazioni di Videogiochi
    • Oggetto
    • Videoclip
  • Audio
    • Musica Sintetizzata (per esempio: MIDI)
    • Effetto Sonoro
    • Voce

A parte delle risorse stesse, quasi tutti i videogioco hanno il loro proprio linguaggio di scripting. Questo semplifica le cose in tutto il processo di sviluppo, come è quindi facile per assegnare compiti specifici di persone. I programmatori con il codice stesso, videogioco designer si occupano di scrivere script utilizzando il linguaggio interprete capisce che il videogioco, designer di grafica con la parte videogioco, compositori di musica con l'audio e così via. Sebbene gli elementi di base di ogni videogioco sono standard, ogni video gioco implementa in maniera molto diversa. L'aspetto più importante di videogiochi di avventura è il loro modo di lavorare "dietro le quinte", che comprende il tipo di logica e come tale è attuata in ogni videogioco, il tipo di interazione che l'utente (ad es. alcuni giochi permettono di usare i verbi su oggetti come "Uso primo oggetto con oggetto secondo", mentre altri giochi solo consentire all'utente di fare clic sugli oggetti). Le risorse non sono utili a tutti, senza la logica del videogioco, che è la parte più difficile da attuare in un videogioco. In realtà, ci sono molti spettatori delle risorse che possono essere utilizzate per visualizzare le risorse di un gran numero di videogiochi, ma non trattare con la logica dietro tali risorse a tutti. Una breve introduzione a opere come logica in ogni videogioco è spiegato nella prossima parte.

Il linguaggio di scripting di un videogioco

Come detto prima, ogni videogioco utilizza un proprio linguaggio di scripting, che di solito è contenuta nel file di dati del videogioco. Questo è di solito ad alto livello, e il videogioco stesso interprete (il videogioco del file eseguibile) è responsabile dell'analisi dei comandi script script e la logica del videogioco facendo tutto il lavoro effettivo. Facciamo un esempio di un ipotetico motore script, dove il videogioco sarebbe a carico una scena e gestire un caso in cui l'utente potrebbe raccogliere oggetto "A".

 inizioScena(1)
 caricare_attori()
 mettere_attori(attori_numero, X, Y)
 ...
 posto_oggetto(oggetto_numero, X, Y)
 ...
 se (azione_raccogliere) {
   se (oggetto_per_ottenere() == oggetto_A) {
     attori_camminare(X,Y)
     attori_dalla_scena(numero_di_azioni)
     posto_oggetto_in_inventario(oggetto_A)
     remove_oggetto_from_scene(oggetto_A)
   }
 }
   
 mentre (scena_non_finita) {
   maneggiare_azioni_de_attori()
 }
 termineScena()


Questo è solo un esempio di come un motore che eseguire l'azione, ma ogni motore tende a eseguire questi script in modo diverso (ad esempio, alcuni motori hanno script per ogni oggetto, gli altri possono avere un generale lo script per fare tutto etc).

Un videogioco lo script può contenere elementi di base del videogioco della logica (ad esempio se, altrimenti, vai a etc) e si può richiamare direttamente le funzioni dell'eseguibile stesso, che sono chiamati script opcodes.

ScummVM: Come si inseriscono in questo?

ScummVM è un progetto in cui vi è un tentativo di riscrivere il file eseguibile originale di video gioco, basato sul codice sorgente del videogioco originale o utilizzando tecniche di reverse engineering del codice che vedi il file eseguibile del videogioco e riscrivere in C++. Questo significa che la ScummVM eseguibile può essere utilizzato per sostituire il videogioco originale, ma, naturalmente, la selvaggina, i file di dati (grafica, audio, gioco gli script etc) sono necessarie per svolgere il videogioco stesso. SScummVM NON sarà di un emulatore di uno specifico sistema operativo, come, per esempio, DOSBox è per DOS. ScummVM è in realtà una riscrittura completa del motore, per ogni gioco, che ha molti vantaggi:

  • Il gioco può essere eseguito su molte piattaforme diverse, grazie alla piattaforma portatile il backend di ScummVM
  • Videogioco grafica può essere migliorata con l'uso di vari filtri grafici (tra cui il super2xsai, supereagle, advmame2x3x, advmame, hq, hq2x3x e più)
  • Alcuni bug che esistevano nel gioco originale eseguibile (o script) possono essere corretti
  • È possibile ri-codificare il videogioco i file audio in formati più diffusi, come MP3, OGG o FLAC in modo che il gioco prende molto meno spazio
  • Videogioco LucasArts hanno un migliore sistema di menu e di un migliore sistema per salvare i vostri giochi
  • La maggior parte dei videogiochi motori permettono al giocatore di salvare molte volte superiore a quello dei videogioco originale
  • In alcuni giochi, ScummVM offre funzionalità aggiunta che non esiste nel gioco originale. Per esempio, offre funzionalità del mouse per i giochi Sierra AGI, che non ha supporto per il mouse
  • You can listen to a game MT-32 music score (if present) without a real MT-32, through a sophisticated system that emulates the device

ScummVM ha bisogno di molta meno CPU e risorse di sistema rispetto a un emulatore. Videogiochi operano in direttamente e non attraverso un programma di emulazione (che possono avere una diversa gestione della CPU e memoria, eccetera) ...anche molti di più. L'approccio che è preso per la realizzazione di un gioco sotto ScummVM ha alcuni svantaggi:

  • il motore di ogni gioco in ScummVM è stato riscritto da zero, alcuni bug che non erano presenti con il gioco originale interprete potrebbe esistere in ScummVM. A tale scopo, c'è un bug tracker in ScummVM, dove gli utenti relazione tali risultanze al ScummVM team, che di solito sono fissati.

...E forse più.

Videogiochi supportati

Per vedere quali giochi sono supportati in ScummVM, potete controllare la nostra pagina compatibilità. I motori di videogioco che è attualmente incluso in Scummvm può essere trovato nel nostro i motori di videogioco nella pagina, e lo status di ogni gioco possono essere trovate nella sua pagina individuale.

Che cosa sono i sistemi con ScummVM su di loro?

Vedi la nostra pagina su platforms.

Ottenere i videogioco di eseguire

Che cosa ho bisogno di ottenere un videogioco di svolgere?

Avete bisogno di un file di dati del gioco originale(s) you wish to get a svolgere e una copia di ScummVM per il vostro sistema operativo, che può essere trovato nelle nostre pagine downloads

Che cosa sono le "stabile" e "non stabili" le versioni di ScummVM?

La versione stabile di ScummVM è stata verificata per i bug, e la gente ha completato quasi tutti i giochi che ScummVM supporta l'utilizzo.

La versione di unstable ScummVM comprende funzionalità migliorata, tuttavia quando i bug esistenti sono fissi o nuove funzionalità vengono aggiunte, altri bug o crash possono apparire, che non erano presenti nella versione stabile. Tuttavia, abbiamo naturalmente ancora cercare di fare la versione instabile quanto più stabile possibile.

Ulteriore lettura

Che era una breve introduzione di ScummVM, speriamo che abbiamo risposto alla maggior parte delle vostre domande. Si può fare riferimento alle pagine di questo wiki per ulteriori informazioni, il nostro FAQ e la nostra pagina documentazione, in particolare il lima "README".

 

curved edge   curved edge