Général
 
Exclusif
 
 
Tutoriaux
 
 
Soutien

 
 
Fight Spam! Click Here!

 
 
Tutorial
 

  << retour
Ce tutorial est utilisable pour:
- UT
Niveau facile
 

Les bases de la création/compilation d'un projet, Partie 1: le GameType

 

Introduction


    Comme le titre l'indique si bien, l'objectif de ce tutorial est d'apprendre à créer un projet, puis à le compiler pour pouvoir y jouer dans Unreal Tournament. La base indispensable, bien que très simple.

    Nous allons pour ce faire fabriquer un nouveau GameType. Le GameType est un type de jeu qui est proposé dans la fenêtre StartPracticeSession [Démarrer séance d'entraînement]. C'est à dire tel que Deathmatch, Assault, Domination [MatchAMortUT, Assaut, Domination]... Ici, nous allons créer un DeathMatch mais qui permettra uniquement d'ouvrir des maps avec le préfixe UND- (au lieu de DM-, exemple : UND-NomDeLaMap.unr).

    Pourquoi "UND" ? Regardez le nom du site sur lequel se trouve ce tutorial, après maintes réflexions et à force d'extrapolations vous comprendrez mieux ;-) Sinon, passez quand même à la suite...

 

I) Créer le projet


    Première étape : il faut créer le dossier au nom de votre projet dans le répertoire d'UT ( exemple : C:\UnrealTournament\UND ). Il faut ensuite créer à l'intérieur de ce dernier un autre dossier, nommé classes. Au final, ça donne : C:\UnrealTournament\UND\classes

    Le dossier classes peut (uniquement) contenir la partie qui nous intéresse, la programmation. Mais il faut savoir qu'un projet peut aussi contenir des textures (dossier textures), des models (dossier models), des sons (dossier sounds). En l'occurrence, nous nous restreindrons à du scripting (programmation), il est donc inutile de créer d'autres dossiers que classes.

 

II) Créer une classe : MonGameType


    Si vous souhaitez en savoir plus sur les classes, reportez vous au tutorial La structure du UnrealScript. Sinon, sachez juste que chaque classe équivaut à un fichier possédant l'extension .uc se trouvant dans votre dossier Packages (voir tutorial Avant de commencer) . Notre but ici est d'en créer une nouvelle : C:\UnrealTournament\UND\classes\MonGameType.uc.

    Astuce : si vous ne savez pas comment créer directement un fichier ayant l'extension .uc, alors copiez/collez en un au hasard de votre dossier Packages vers le dossier classes de votre projet (par conséquent dans C:\UnrealTournament\UND\classes). Renommez-le ensuite MonGameType, puis effacez tout ce qui se trouve à l'intérieur. 

    Il reste à écrire le code du GameType, ouvrez MonGameType.uc avec un éditeur de texte (le bloc-notes fait parfaitement l'affaire) puis recopiez ceci : 

Class MonGameType expands DeathMatchPlus;

defaultproperties
{
    MapPrefix="UND"
    GameName="Unreal-Design.net GameType"
    BeaconName="UND"
}


Et c'est tout !! Vous avez écrit tout le code de votre GameType. Vous n'avez plus qu'à enregistrer. 

EXPLICATIONS : 

Class MonGameType expands DeathMatchPlus; 

// C'est plutôt simple : cette ligne, obligatoire au début de chaque classe,
// se présente dans tous les cas comme suit : 
// "Class NomDeLaClasse expands NomDeLaClasseDontDeriveLaPremière ;" 
// 
// Dans notre cas, cela veut tout simplement dire : je déclare la classe
// MonGameType qui dérive de la classe DeathMatchPlus. Notre GameType
// sera donc juste en dessous de DeathMatchPlus dans la hiérarchie des
// classes (voir tutorial La structure du UnrealScript )
// Le ; signifie que la ligne est terminée. Le compilateur passe à la suite...


defaultproperties 

// Toute les classes contiennent une partie defaultproperties. Elle est toujours 
// ouverte par : 
// "defaultproperties 
// { "
// et fermée par " } "
// Elle contient les valeurs par défaut des différentes variables

    MapPrefix="UND" 
// Notre GameType n'ouvrira que les maps ayant le préfixe UND- 
    GameName="Unreal-Design.net GameType" 
// Il s'agit du nom du GameType que vous verrez dans la fenêtre 
// StartPracticeSession [Démarrer séance d'entraînement]. 

    BeaconName="UND" 
// L'abréviation du GameType... pas vraiment utile dans la pratique 
}

 

III) La compilation


    Le code écrit ci-dessus n'est pas directement utilisable par le jeu. Il faut le compiler, c'est à dire le rendre compréhensible pour le moteur d' Unreal... 

1ère étape : 

    Avant de compiler, il faut dire au compilateur (ucc.exe)... hmmm... ce qu'il doit compiler ! Pour ce faire, ouvrez le fichier UnrealTournament.ini dans le répertoire UnrealTournament/System et recherchez la ligne : EditPackages=UTBrowser. Cette ligne signifie : le compilateur doit compiler le package nommé UTBrowser. En regardant les lignes au dessus, vous pouvez voir tous les package qui sont sensés être compilés.

Écrivez en dessous de cette ligne : EditPackages=UND. A la prochaine compilation, notre mod UND sera maintenant pris en compte.

2ème étape : 

Je connais deux manières de compiler : 

    - La première est de cliquer sur le bouton Démarrer (dans Windows) puis sur Exécuter et enfin d'écrire C:\UnrealTournament\System\ucc make, en remplaçant C:\UnrealTournament par l'emplacement d'UT.

    - La seconde est d'ouvrir un fichier avec l'extension .u (au hasard) avec la commande MSDos. Fermez la fenêtre qui s'affiche et normalement vous n'aurez plus qu'à cliquer sur un fichier .u puis à taper ucc make pour compiler. Si cette méthode ne marche pas, reportez-vous à la première. 

Quoi qu'il en soit, une fenêtre MSDos devrait s'ouvrir et se mettre à compiler chaque 'package'. Voici ce qui devrait s'afficher : 

D:\UnrealTournament\System>ucc make
--------------------Core--------------------
--------------------Engine--------------------
--------------------Editor--------------------
--------------------UWindow--------------------
--------------------Fire--------------------
--------------------IpDrv--------------------
--------------------UWeb--------------------
--------------------UBrowser--------------------
--------------------UnrealShare--------------------
--------------------UnrealI--------------------
--------------------UMenu--------------------
--------------------IpServer--------------------
--------------------Botpack--------------------
--------------------UTServerAdmin--------------------
--------------------UTMenu--------------------
--------------------UTBrowser--------------------
--------------------UND--------------------
Analyzing...
Parsing MonGameType
Compiling MonGameType
Success - 0 error(s), 0 warnings


Regardez maintenant à l'intérieur de votre dossier UnrealTournament\System : un fichier UND.u est apparu !! Votre code est maintenant compilé :-))

EXPLICATIONS : 

UCC MAKE appelle la commande MAKE du programme ucc.exe, présent dans le répertoire UnrealTournament/System. Ce programme est le compilateur : il charge toutes les lignes commençant par EditPackage= dans UnrealTournament.ini. Pour chacune d'elle, il regarde s'il existe un fichier avec l'extension .u nommé comme ce qui est écrit à la suite de EditPackage=

- si c'est le cas, il ne fait que charger ce fichier .u. C'est ce qui s'est passé avec "Core", "Engine", "Editor"...

- sinon, il compile le projet du même nom : c'est ce qui s'est passé pour notre "UND". Tout ce qui se trouve dans le dossier du projet (code, textures, sons...) est transformé en binaire, puis enregistré dans un fichier .u. Ici, seul UND/MonGameType.uc a été compilé.

 

IV) Le fichier .int


Notre GameType est prêt, mais le jeu ne peut pas le deviner : il faut le déclarer. C'est pourquoi nous allons écrire un fichier UND.int (toujours dans UnrealTournament/System)
Astuce : Si vous ne savez pas comment écrire l'extension .int, recopiez juste un autre fichier .int, effacez ce qui se trouve à l'intérieur et renommez-le "UND". 

Ouvrez ce fichier avec votre éditeur de texte, puis écrivez :

[Public]

Object=(Name=UND.MonGameType,Class=Class, MetaClass=Botpack.TournamentGameInfo)


EXPLICATIONS : 

Au démarrage, UT lit tous les fichiers avec l'extension .int présents dans le répertoire UnrealTournament\System. C'est donc grâce à l'un de ces fichiers que nous pouvons lui faire charger notre GameType

Cela se présente en général comme suit :

[Public]

Object=(Name=Projet.ClasseDuGameType,Class=Class, MetaClass=ClasseDontEstDérivéeLObjetADéclarer)


En l'occurrence, la ClasseDontEstDérivéeLObjetADéclarer est Botpack.TournamentGameInfo : c'est la classe dont dérive tous les GameTypes qui s'affichent dans StartPracticeSession [Démarrer séance d'entraînement].

A noter que les fichiers .int peuvent aussi servir à déclarer des mutators (voir tutorial suivant), des nouveaux persos, des skins, des armes... etc

 

V) La nouvelle map


Vous êtes libre de faire une nouvelle map si vous le souhaitez. Seule contrainte : elle doit commencer par le préfixe UND-

Sinon, renommez DM-Fractal (ou une autre map) en UND-Fractal.

 

VI) Le plus dur


    Maintenant, j'aimerais retenir toute votre attention. Cette partie n'est pas à la portée de tout le monde. Même les plus aguerris devront retenir leur concentration et réunir toute leur intelligence. Je recommande (fortement) une séance de Yoga avant d'affronter cette épreuve. Lancez UnrealTournament.exe. Une fois le jeu chargé, vous devrez cliquer avec la souris sur StartPracticeSession [Démarrer séance d'entraînement], ensuite il s'agira de sélectionner dans la barre de défilement GameType [Types de parties] la partie nommée Unreal-Design.net GameType. Et tenez vous bien, ce n'est pas fini, il faut encore réussir à viser le bouton Start... et à cliquer dessus !!!

Ouf ! 

Conclusion


    Normalement, vous devriez déjà y voir plus clair. Même sans encore connaître le Unreal Script, vous savez maintenant comment utiliser et compiler des sources.

    La création d'un GameType est à la base de la majorité des mods. A partir de celui-ci, il est possible de pratiquement tout changer : les maps, les armes, le HUD, certains menus...

Tutorial par KeaZ


[Options]
Imprimez ce tutorial - Ajouter une note

<< Retour a la liste

[Notes des utilisateurs]
Aucune note pour le moment. Pour ajouter une note, cliquez ici

 

 

La tour de Babel
 
En Résumé
 
Sondage
 
5 derniers tests
 
Hébergés
 

http://cokx.free.fr
Unreal-Impulse
Le magajine des zeux videos !


UnrealArena


UnrealArena

 

Google
Design byBlacK
©2004 Unreal-Design.com - Tous droits réservés
Tous les tutoriaux, commentaires, maps, articles et les diverses créations personnelles sont propriétaires de leur auteur respectif.
Il est strictement interdit de les modifier, copier et/ou marchander.
Page généree en 0.03s