MODIFICATION DU MENU PRINCIPAL

 

 

Ce tutorial permettra de modifier le menu principal de Unreal Tournament 2003 et le personnaliser. Logiciel utilisé pour le codage est WrotGreal.

 

 

Tous d'abord créer un dossier "Interface" dans le dossier Unreal Tournamant 2003 en ajoutant a nouveau un dossier "classes" comme ceci: "UT2003/Interface/Classes/"

 

Allez dans les fichier sources du jeu  "ut2003-2225-source" dans "XInterface/Classes" et copiez le fichier "UT2MainMenu.uc" dans le dossier "UT2003/Interface/Classes/".

Maintenant allez modifier le fichier "UT2003.ini" (faites une copie de sauvegarde de ce fichier)dans le dossier "UT2003/System/" et rajouter dans:

 

[Engine.GameEngine]

..

ServerPackages=Vehicles
ServerPackages=TeamSymbols_UT2003
ServerPackages=Interface
                   <== ligne a rajouter

 

Ensuite

 

[Editor.EditorEngine]

..

EditPackages=SkaarjPack_rc
EditPackages=OGGPlayer
EditPackages=Interface
                       <== ligne a rajouter

 

Après

 

[UnrealEd.UnrealEdEngine]

..

EditPackages=SkaarjPack_rc
EditPackages=OGGPlayer
EditPackages=Interface                       
<== ligne a rajouter

 

Finalement

 

[Engine.GameEngine]

..

MainMenuClass=XInterface.UT2MainMenu  <== remplacer par "MainMenuClass=Interface.UT2MainMenu"

 

Cela permettra au compilateur de prendre en compte votre dossier "Interface".

Voila la préparation est fini.

 

Analyse du fichier

UT2MainMenu.uc

 

Le fichier est présenter dans l'ordre du code mais certain passage ne seront pas expliquer tout simplement qu'ils n'ont aucun utilité pour ce que l'on veut faire, bien qu'il est une importance quand même mais qui ne nous concerne pas pour l'instant.

 

Fonctions des boutons:

 

Cette partie du code permettre de renvoyer les pages auquel appartienne les boutons

 

function bool ButtonClick(GUIComponent Sender)
{
if ( Sender==Controls[2] )
Controller.OpenMenu("xinterface.UT2SinglePlayerMain");
if ( Sender==Controls[3] )
Controller.OpenMenu("xinterface.ServerBrowser");
if ( Sender==Controls[4] )
Controller.OpenMenu("xinterface.UT2MultiplayerHostPage");
if ( Sender==Controls[5] )
Controller.OpenMenu("xinterface.UT2InstantActionPage");
if ( Sender==Controls[6] )
Controller.OpenMenu("xinterface.UT2SettingsPage");
if (Sender==Controls[7] )
Controller.OpenMenu("xinterface.UT2QuitPage");

 

Exemple:

 

if ( Sender==Controls[6] )
Controller.OpenMenu("xinterface.UT2SettingsPage")

 

Le bouton numéroté 6 ouvre la page des options.

 

Images:

 

Je répéterai sans doute la même a certain moment mais je préfère redire que oublier :)

 

Le logo du menu (attention n'inclue pas le petit logo "U" qui est une autre texture indépendante)

 

 

defaultproperties

..

Begin Object Class=GUIImage Name=ImgUT2Logo           //Nom de l'image
Image=material'InterfaceContent.Logos.Logo'               
//Adresse complète de l'emplacement de la texture dans les fichier UTX
ImageStyle=ISTY_Scaled                                         
//Définition si il y a de l'alpha dans la texture
ImageRenderStyle=MSTY_Alpha                     
ImageColor=(R=255,G=255,B=255,A=255)                    
//couleur de l'image & opacité (R=Red, G=Green, B=Bleu, A=Alpha)
WinWidth=0.800000                                                
//Taille de l'image en largeur
WinHeight=0.500000                                                
//Taille de l'image en longueur
WinLeft=0.100000                                                   
//Permet de déplacer de gauche à droite
WinTop=-0.033854                                                  
//Permet de monter ou le descendre
End Object
Controls(0)=GUIImage'ImgUT2Logo'                            
//Numéro du bouton et nom de l'image

 

 

Begin Object Class=GUIImage Name=ImgUT2Shader              //Nom de l'image
Image=material'InterfaceContent.Logos.fbSymbolShader'      
//Adresse complète de l'emplacement de la texture dans les fichier UTX
ImageStyle=ISTY_Scaled
WinWidth=0.198242                                                       
//Taille de l'image en largeur
WinHeight=0.132813                                                      
//Taille de l'image en longueur
WinLeft=0.399414                                                         
//Permet de déplacer de gauche à droite
WinTop=0.223958                                                         
//Permet de monter ou le descendre
// bVisible=false                                                            
//Autorise/Interdit les effets graphique sur la texture
End Object
Controls(1)=GUIImage'ImgUT2Shader'                               
//Numéro du bouton et nom de l'image

 

 

Bouton menu:

 

 

defaultproperties

..

Begin Object Class=GUIButton Name=SinglePlayerButton  //Nom du bouton
StyleName="TextButton"                                            
//Le type de bouton
Caption="SINGLE PLAYER"                                          
//Ce qui sera affiché à l'écran
Hint="Play through the Tournament"                            
//Commentaire sur le bouton
OnClick=ButtonClick                                                  
//Style de validation de la commande
WinWidth=0.500000                                                  
//Épaisseur de l'arborescence en longueur
WinHeight=0.075000                                                 
//Épaisseur de l'arborescence en hauteur
WinLeft=0.250000                                                    
//Permet de déplacer de gauche à droite
WinTop=0.438802                                                    
//Permet de monter ou le descendre
bFocusOnWatch=true                                               
//Autorise/Interdit effets de transition de l'arborescence
End Object
Controls(2)=GUIButton'SinglePlayerButton'                    
//Numéro du bouton et nom du bouton

 

 

defaultproperties

..

Begin Object Class=GUIButton Name=MultiplayerButton                     //Nom du bouton
StyleName="TextButton"                                                            
//Le type de bouton
Caption="PLAY ON-LINE/LAN"                                                      
//Ce qui sera affiché à l'écran
Hint="Play with Human Opponents Over the Lan or the Internet"       
//Commentaire sur le bouton
OnClick=ButtonClick                                                                  
//Style de validation de la commande
WinWidth=0.500000
WinHeight=0.075000
WinLeft=0.250000                                                                     
//Permet de déplacer de gauche à droite
WinTop=0.506251                                                                     
//Permet de monter ou le descendre
bFocusOnWatch=true                                                                
//Autorise/Interdit effets de transition de l'arborescence
End Object
Controls(3)=GUIButton'MultiplayerButton'                                       
//Numéro du bouton et nom du bouton

 

 

defaultproperties

..

Begin Object Class=GUIButton Name=HostButton                           //Nom du bouton
StyleName="TextButton"                                                          
//Le type de bouton
Caption="HOST MULTIPLAYER GAME"                                          
//Ce qui sera affiché à l'écran
Hint="Start a server an invite others to join your game"                 
//Commentaire sur le bouton
OnClick=ButtonClick                                                                
//Style de validation de la commande
WinWidth=0.500000
WinHeight=0.075000
WinLeft=0.250000                                                                   
//Permet de déplacer de gauche à droite
WinTop=0.577866                                                                   
//Permet de monter ou le descendre
bFocusOnWatch=true                                                              
//Autorise/Interdit effets de transition de l'arborescence
End Object
Controls(4)=GUIButton'HostButton'                                             
//Numéro du bouton et nom du bouton

 

 

defaultproperties

..

Begin Object Class=GUIButton Name=InstantActionButton                 //Nom du bouton
StyleName="TextButton"                                                            
//Le type de bouton
Caption="INSTANT ACTION"                                                        
//Ce qui sera affiché à l'écran
Hint="Play a Practice Match"                                                       
//Commentaire sur le bouton
OnClick=ButtonClick                                                                   
//Style de validation de la commande
WinWidth=0.500000
WinHeight=0.075000
WinLeft=0.250000                                                                     
//Permet de déplacer de gauche à droite
WinTop=0.658334                                                                     
//Permet de monter ou le descendre
bFocusOnWatch=true                                                                
//Autorise/Interdit effets de transition de l'arborescence
End Object
Controls(5)=GUIButton'InstantActionButton'                                   
//Numéro du bouton et nom du bouton

 

 

defaultproperties

..

Begin Object Class=GUIButton Name=SettingsButton                        //Nom du bouton
StyleName="TextButton"                                                            
//Le type de bouton
Caption="SETTINGS"                                                                 
//Ce qui sera affiché à l'écran
Hint="Change Your Controls and Settings"                                     
//Commentaire sur le bouton
OnClick=ButtonClick                                                                  
//Style de validation de la commande
WinWidth=0.500000
WinHeight=0.075000
WinLeft=0.250000                                                                     
//Permet de déplacer de gauche à droite
WinTop=0.733595                                                                     
//Permet de monter ou le descendre
bFocusOnWatch=true                                                                
//Autorise/Interdit effets de transition de l'arborescence
End Object
Controls(6)=GUIButton'SettingsButton'                                         
//Numéro du bouton et nom du bouton

 

 

defaultproperties

..

Begin Object Class=GUIButton Name=QuitButton            //Nom du bouton
Caption="QUIT"                                                       
//Ce qui sera affiché à l'écran
Hint="Exit Unreal Tournament 2003"                            
//Commentaire sur le bouton
OnClick=ButtonClick                                                 
//Style de validation de la commande
StyleName="SquareMenuButton"                                
//Le type de bouton
WinWidth=0.205078                                                 
WinHeight=0.042773
WinLeft=0.391602                                                   
//Permet de déplacer de gauche à droite
WinTop=0.905725                                                   
//Permet de monter ou le descendre
bFocusOnWatch=true                                              
//Autorise/Interdit effets de transition de l'arborescence
End Object
Controls(7)=GUIButton'QuitButton'                              
//Numéro du bouton et nom du bouton

 

Fond d'écran:

 

 

defaultproperties

..

Background=Material'InterfaceContent.Backgrounds.bg10'  //Adresse complète de l'emplacement de la texture dans les fichier UTX
WinWidth=1.0                                                           
//Taille de l'image (de 0.0 à 1.0) par rapport à la taille de l'image
WinHeight=1.0                                                          
//Taille de l'image (de 0.0 à 1.0) par rapport à la taille de l'image
WinTop=0.0
WinLeft=0.0
OnCanClose=CanClose
OnKeyEvent=MyKeyEvent
AllowClose=False
bAllowedAsLast=true
bDisconnectOnOpen=true

 

Voila l'analyse du fichier est fini.

 

Modification

 

Nous pouvons passez a la partie pratique.

 

Nous allons en fait bougez le menu de telle façon qu'il soit en escalier et changer le fond d'écran. Nous ne toucherons pas au logo et au petit 'u' car se sont les même procédé pour le déplacement et le changement de texture.

 

 

Voici le plan pour les déplacements

 

 

Attention le programme déplace les menus a partir de ce point la!

 

 

et non pas a partie de celui ci!

 

 

Ouvrez a nouveau le fichier "UT2MainMenu.uc"

et chercher le paragraphe sur le premier bouton "Single Player"

                                        
Caption="SINGLE PLAYER"                                          
..                                                
WinLeft=0.250000  
=> changer par  WinLeft=0.050000  ce qui permettra de le faire avancer vers la gauche.                                        

 

"Play on-line/Lan"

 

Caption="PLAY ON-LINE/LAN"

..

WinLeft=0.250000  => changer par  WinLeft=0.100000

 

"Host Multiplayer Game"

 

Caption="HOST MULTIPLAYER GAME"

..

WinLeft=0.250000  => changer par  WinLeft=0.200000

 

"Instant Action"

 

Caption="INSTANT ACTION"

...

WinLeft=0.250000 => changer par WinLeft=0.150000

 

"Settings"

 

Caption="SETTINGS"

..

WinLeft=0.250000 => changer par WinLeft=0.140000

 

Une fois fini enregistrer et compilé avec Wotgreal.

 

 

Maintenant nous allons nous occupé du fond d'écran

 

Choisissez le fond d'écran que vous voulez et il doit être en puissance-de-2(2, 4, 8, 16, 32, 64, 128, 256, 512, 1024,...). Ceux d'UT2003 sont en 1024*1024. Mais sa pourrait très bien être 1024*512.

 

Allez ouvrir "UnrealEd" ensuite ouvrez "Texture Browser" et remplissez comme ceci:

 

 

et faites "New".

Ensuite faites "file" et "Import", allez recherchez votre fond. Il doit apparaître comme ceci:

 

 

Enregister le package en laissant deja le nom proposé.

 

Le nom la texture est "00".

 

Maintenant repartez dans votre fichier "UT2MainMenu.uc" et allez au paragraphe concernant le fond d'écran.

 

Background=Material'InterfaceContent.Backgrounds.bg10' => changer par Background=Material'Modification.Fond.10'

 

Enregistrer et compilez.

 

Vous devez vous retrouver avec ceci:

 

 

Voila j'espère que ce tutorial vous apprendra a créer de belle présentation.

 

Par le WebMaster