PDA

Visualizza versione completa : Codice sorgente



SheepSlayer
25-03-2004, 22.23.42
Nuovo dubbietto da neofita: come mai in giro ho trovato dei file contenti i sorgenti per unreal ? da quanto ho capito basta spaccattare i file di unreal che per magia saltano fuori i sorgenti .. sbaglio qualcosa ?
qualcuno mi sà chiarire le idee ??

Mischa
25-03-2004, 22.34.09
Sì, basta esportare da editor per avere le classi (edit: nel senso che non sbagli affatto). Però così facendo spesso crasha, e inoltre con il 2k3 fino ad una certa patch faceva casino con alcune subclasses, quindi rischiavi di trovare roba incompleta. Infine epic ha sempre rilasciato il sorgente dopo un po', quindi a volte più comodo prenderlo da siti che non stare ad aprire tutto.

SheepSlayer
26-03-2004, 11.31.22
Grazie mille, mi hai tolto un bel dubbio.
Bè per ora il codice di ut2004 non c'è in giro, vero ??
Se tutto và bene in un paio di giorni mi arriva il pacco con l'edizione speciale, non sò se riuscirò a resistere l'uscita del codice per iniziare a smanettare !!

Mischa
26-03-2004, 14.48.10
Ehm, ti avevo linkato il sorgente (http://unreal.student.utwente.nl/uncodex-ut2004/) in altro topic quasi una settimana fa. Se vuoi iniziare a far qualcosa niente te lo impedisce, il gioco ti servirà per compilare e veder se funge.

SheepSlayer
26-03-2004, 15.14.10
.. ops, hem grazie, ma mi sfugge una cosa ..
ma sì può scaricare il tutto o no ? mi mostra tutto il codice sorgente, ma per modificarlo come faccio ?, non ho trovato come salvarmi la roba !
.. direi che sono alquanto confuso ..

Mischa
26-03-2004, 15.31.17
UnCodeX ha la particolarità appunto di darti la struttura, in modo che tu possa trovare tutto con meno click che quando spacchetti normalmente (cosa che ti crea cartelle con nome del package, all'interno nome delle classi, e all'interno le sub). Naturalmente, così facendo, se non hai una minima idea di dove cercare qualcosa impazzisci per trovare che so, lo script di instagib (sarà sotto mutator? no, allora dove, xgame, o xweapons? etc.). Con UnCodeX, questo lo risolvi più semplicemente, ti basta seguire i link e ci arrivi. Se da lì poi vuoi ottenere le classi pure e semplici per lavorarci, quel che ti tocca fare è copiare il codice e incollarlo in notepad, ad esempio, e modifichi quel che ti pare. In pratica puoi già fare tutto. Poi una volta che hai il gioco compili i file che hai preparato e verifichi se funzionano.

*edit* In realtà già adesso puoi preparare tutti i file, però i file con estensione .uc (unreal class) son semplici file di testo, quindi ti basta cambiargli estensione e morta lì, mentre i file con estensione .u (package delle varie classi .uc) sono risultato della compilazione, quindi anche se utilizzassi ora un programma che ti consenta di compilarli, fino a quando non hai il gioco non puoi verificarne la validità. Per il resto, reply successivo.

SheepSlayer
26-03-2004, 16.19.31
ok, grazie ancora per i chiarimenti, più o meno era come credevo ...

Mischa
27-03-2004, 02.50.18
Sintesi di quel che si trova in giro e negli script dall'UnCodeX, non mi ritengo minimamente responsabile se ci fossero errori. E' da prendersi come semplice traccia.

Per lavorare sui file, prima cosa che si deve fare ovviamente è avere il sorgente. Due modi: o da editor, o da siti. Tolto UnCodeX o uso di altri programmi, attualmente, il sorgente del 2k4 non è disponibile, quindi unica è passare da editor (anche perchè, per quanto UnCodeX sia affidabile, potrebbero comunque esserci errori: l'idea è di avere un riferimento).

Passando da editor (almeno, fino al 2k3 era così, controllare se è cambiato qualcosa): UnrealEd Main Menu -> View -> Show Script Editor, poi File -> Export all scripts. Come dice il wiki 9 volte su 10 a meno che non sia stato risolto un bug crasherà, però riaprendo la cartella di UT si dovrebbero avere i packages. Dovrebbe dare tutto senza errori, sembra che con il 2k4 non ci sian problemi con subclasses, ma fino a conferma ufficiale tutto è possibile. Le cartelle si troveranno in quella di UT, ma non si dovrà mai (ripeto: mai) modificare queste classi, se ne creano di nuove, ma non si sovrascrivono né compilano mai queste, pena casino della madonna.

All'interno dei packages si trovano le classes relative. Si possono creare nuove classi partendo da queste o da zero. E' possibile usare un text editor qualsiasi, o programmi dedicati - qui (http://wiki.beyondunreal.com/wiki/Setting_Up_UnrealScript) lista dei programmi, di utilities, etc. I dati principali di una classe si ottengono risalendo scala gerarchica - per dire, lo shock rifle è un'arma, dunque sarà in XWeapons, ma estende classe Weapon: quindi guardando in Weapon si scopre tutto quanto si può far fare o non fare ad un'arma, mentre guardando in ShockRifle si ottiene solo quel che può fare lo shock, idem per il resto (ShockAmmo estende Ammunition, ShockBeamFire estende InstantFire, ShockProjectile estende Projectile, ShockProjFire estende ProjectileFire, etc.).

Ora, una volta che si è creata una classe, il file va salvato con estensione .uc. Una volta che son state create tutte le classi che servono, è necessario creare una cartella denominata Classes che contenga tutte le nuove classi, mettere la cartella Classes all'interno di una cartella denominata NomeDelMut (dove NomeDelMut sta per il nome del mut, doh, mentre Classes, citato in precedenza, resta Classes e basta), e mettere questa cartella nella directory principale di UT. A questo punto creare un file .int che specifichi cosa fa il mut, e dove son le classi di riferimento. Questo file va aggiunto in cartella System di UT, qui (http://wiki.beyondunreal.com/wiki/INT_File) si trovano i dati sulla creazione di un file .int.

Quando anche l'.int è fatto, aprire l'.ini in System di UT e aggiungere al fondo della lista EditPackages=... una riga con il nome del mut (EditPackages=NomeDelMut). Guardare qui (http://wiki.beyondunreal.com/wiki/Compiling_With_UCC) per dettagli. Chiudere e salvare modifiche, andare al command promptup (dos), entrare in cartella UT/System, dare comando: ucc make - scorre la lista dei packages, vengono compilati quelli senza estensione .u, quindi quel che è stato aggiunto. Se non ci sono errori viene creato il file NomeDelMut.u, in System. Se ci fossero errori, dovrebbe segnalarli.

Non resta che avviare UT e vedere se funziona. Sembra - dico, sembra che con il 2k4:

a. non sia necessario creare file .int, ma si debba dare comando:
ucc dumpint NomeDelMut.u sempre da dos dopo aver compilato, il che creerebbe automaticamente un file .int in System;

b. si debba poi dare comando: ucc exportcache NomeDelMut.u, che creerebbe una entry in CacheRecords.ucl, contenente info sul file.

Sia il punto a che b derivano da linee in classe Weapon del 2k4, quindi potrebbero riferirsi solo a weapon muts invece che a mut in genere - onestamente non ne ho idea, l'ho notato per caso.

Se per un qualsiasi motivo si volessero effettuare modifiche, esiste ormai un file NomeDelMut.u compilato: quindi se si cambiasse qualcosa nelle Classes etc., è necessario cancellare il file NomeDelMut.u da System, e ripetere la compilazione secondo procedimento già descritto, in modo che riporti i cambiamenti. Chiaramente se si cambiasse nome del mut sarebbe obbligatorio rifare anche il file .int e se si cambiasse denominazione a una classe si dovrebbero aggiornare di conseguenza tutti i riferimenti a quella classe nelle altre.

Problemi noti (posto che non ci siano errori negli script): il tutto è case sensitive, quindi occhio a maiuscole, minuscole, punti, errori di battitura e simili. Mancata creazione di file .int (qui bisogna sempre verificare 'sto discorso dell'ucc dumpint per vedere esattamente come funziona). Creazione di file con estensione .uc che in realtà restano file .uc.txt, causa windows bastardo. Dimenticare di cambiare i riferimenti a una classe da un file. Interrompere la compilazione pensando che sia andato in palla il sistema: quando compila a volte ci mette secoli, altre è rapido. Non ha importanza, presto o tardi finisce. Chiudere prima crea casino, a volte grave. Questo potrebbe capitare anche usando programmi dedicati. La regola è: non spegnere, lasciarlo andare, anche se sembra morto. Altro, varie ed eventuali.

TrustNoOne
27-03-2004, 03.40.18
ah, per la cronaca, ovviamente quelli NON sono i sorgenti del gioco :) sono soltanto gli script modificabili ed estendibili per creare mutators/gametypes.

Mischa
27-03-2004, 04.44.57
Yeh, precisazione giusta e dovuta. Tutto quel che è hardcoded, resta hardcoded. Per l'engine, vincere il make something unreal o scucire mezzo milione di dollari e poi se ne riparla.

SheepSlayer
27-03-2004, 13.22.45
:climbmir: :brr: :eek2: :cry2: :mecry: :.: grazie mille .. mo me lo stampo e spero di capirci, entro martedì dovrebbe arrivarmi ut2k4 !!

SheepSlayer
09-04-2004, 11.13.47
.. ok, ut2k4 mi è arrivato da un po', ho iniziato a fare le prime prove di codifica.
ho anche scaricato dei sorgenti, ma ora non mi ricordo più da dove !!
Per fare modifiche semplici comunque ci vuole un attimo ! =) ora mi sto preparando per fare un mutator, magari se viene bene potrei provare a partecipare al Make Something Unreal :D

_MIX_
15-04-2004, 21.00.59
Scusate l'OT

SheepSlayer dove l'hai comprato UT2004 (la ver. speciale in DVD con tutti i contenuti extra ). . . che dato nei negozzi nella mia zona nn ce l'hanno dovrò ripiegare a comprarlo ON-LINE tramite un mio amico ke ha carta di credito ^_^. . .

Riscusate L'OT e se qlkuno oltre a SheepSlayer vorrà rispondermi linkandomi il sito ne sarò immensamente grato ^_^

Ciaus ^_^!

SheepSlayer
16-04-2004, 11.57.07
http://www.multiplayer.it :D

_MIX_
17-04-2004, 22.22.03
si Multiplayer.it avevo guardato ma. . . . . se non ho visto male c'è solo la versione "normale" quella con i CD. . .
io volevo la version DVD con i contenuti extra ;_;
. . . .

darkstar
19-04-2004, 09.17.49
mediaworld :dentone:

Però ti costa prezzo italiano.

Comunque per la cronaca, visto che la versione DL è andata a ruba (e ti credo costa 10 euro in più su 50) in america è uscita una nuova versione con i due DVD ma senza le cuffiette, che dovrebbe presto uscire anche in europa... ovviamente aspetta la versione europea se no il DVD americano senza lettore multizona lo puoi usare come sotto bicchiere :) :p

_MIX_
20-04-2004, 01.20.37
ma kome ?_?
inizio ad odiare i commessi di mediaworld . . . .t giuro che mi hanno detto che potevano avere solo la versione CD. . .
domani ci torno e faccio una strage se nn mi danno il MIO gioko :D
Tnx tante vi faccio risapere



PS: una scusa a SheepSlayer se ho fatto prendere una piega diversa a questo topic. . . ;_; sorry ancora

SheepSlayer
20-04-2004, 08.59.50
Ora lo raddrizzo io questo topic ...
Cliccando su questo link (http://unreal.epicgames.com/files/scripts3186.zip) scaricate la versione 3186 del codice sorgente di ut 2004, buon coding !! :dentone:

darkstar
20-04-2004, 09.30.28
Qui al mediaworld della Romanina (Roma) hanno tutte e tre le versioni :P

Sdraiapecore guarda che il rpimo aprile è passato da una ventina di giorni... :dentone:

SheepSlayer
20-04-2004, 09.33.40
Originally posted by darkstar

Sdraiapecore guarda che il rpimo aprile è passato da una ventina di giorni... :dentone:

???????

SheepSlayer
21-04-2004, 15.10.16
.. guarda che non è uno scherzo, prova a downloadare se non mi credi !!!

darkstar
21-04-2004, 16.06.45
D'ho!
Mi sembravano troppo pochi 3 mega :p


:rolleyes: :dentone:

SheepSlayer
23-04-2004, 11.55.38
Ecco qua un'ottimo riferimento per i codici sorgenti:

wiki (http://wiki.beyondunreal.com/wiki/UnrealScript_Source)

DaNg3R
25-04-2004, 21.10.21
io ho unrealengine 2, ma come cacchio funziona :(


Allora, io ho ut2004 ok? cosa mi serve x creare mutatori o altre cosa fighe? (ho letto qualche reply nella prima pagina!) Spiegate mi plz. praticamente con l'engine si potrebbe addirittura creare un nuovo gioko? come se fa????'

minifloppy
25-04-2004, 22.07.02
allora: l'unreal engine funziona come una piattoforma di sviluppo. esso ha infatti il proprio linguaggio di scripting (unrealscript) che gestisce praticamente ogni aspetto del gioco. tramite l'unrealscript te crei il tuo gioco. anche ut2004 è scritto in unrealscript.

per cominciare a creare qualcosa con l'unrealengine devi impararti l'unrealscript per quel che riguarda il codice; unrealed, modellazione 3d, texturing per la grafica