Le fichier pk3
Le fichier pk3 est un fichier compressé contenant l'ensemble des éléments constituant votre map. Il est facile à créer mais doit respecter certaines règles.
Creer le fichier pk3
Le principe: il faut recréer l'arborescence du fichier pk3, en y plaçant les fichiers nécéssaires, puis compresser le tout. Pour cela, créez un dossier ut4_votremap (par exemple). Dans ce dossier, créer 6 dossiers nommés maps, models, levelshots, textures, scripts et sound.
- Le dossier maps doit contenir obligatoirement le fichier votremap.bsp, qui résulte de la compilation de votre map. Il peut également contenir d'autres fichiers, commes les .srf ou .map.
- Le dossier models doit contenir les fichiers des models que vous avez utilisé dans votre map (.md3, textures, licence…). Vous pouvez les classer dans des sous dossiers (Comme ~/models/Mapobjects/model1/)
- Le dossier Levelshots doit contenir l'image qui sera affichée lors du chargement de la map, qui doit avoir un nom du type mamap.jpg ou mamap.tga
- Le dossier textures contient les textures nécéssaires à la map, classées dans des dossiers (Utilisez par exemple le dossier /textures/mamap pour y mettre toutes les textures de votre map)
- Le dossier sound contient les sons inclus dans la map, qui sont classé dans des dossiers.
Une fois les fichiers bien classés, il suffit de compresser le tout en un fichier .zip, et de modifier l'extention en .pk3. Si vous faites une map pour UrbanTerror 4 ou 4.1, il est conseillé de faire commencer le nom de votre fichier pk3 par “ut4_”.
Shéma du contenu du fichier pk3:
- maps
- mamap.bsp
- mamap.prt
- mamap.srf
- models
- mapobjects
- objet1
- objet1.md3
- textures1.jpg
- …
- objet2
- objet1.md3
- textures1.jpg
- …
- …
- levelshots
- mamap.jpg
- scripts
- textures.shaderlist
- mamap.arena
- textures
- mestextures
- texture1.jpg
- texture2.tga
- …
- sound
- mes_sons
- monson1.wav
- …
- * mamap.txt
- * licence.txt
- * …
Fonctionnement du fichier .pk3
Le fichier .pk3 permet aux joueurs d'installer facilement une map: il leur suffit pour cela de placer le fichier .pk3 dans le dossier q3ut41). Le moteur du jeu (et donc de GtkRadiant) considère les fichiers qui sont dans votre .pk3, comme si ils étaient directement placés dans le dossier q3ut4. Par exemple, imaginons le fichier mamap.bsp qui se trouve dans le dossier maps du fichier .pk3 : pour le moteur, c'est comme si le fichier était placé à /q3ut4/maps/mamap.bsp.
Cela peut être pratique, par exemple pour que Radiant trouve une texture, on peut la mettre dans /q3ut4/textures/mondossier/, sans avoir besoin de créer un .pk3 avec la texture. Et inversement, on poura utiliser une texture qui sera dans un fichier .pk3 sans avoir besoin de l'extraire pour la placer dans le bon dossier.
Cela peut aussi être un inconvénient. Par exemple si quelqu'un a mis un shader dans un .pk3, appliqué à une texture qui existe déja dans le jeu et a un shader différent. En voulant utiliser ce shader dans sa map, le shader modifié risque d'être utilisé. On peut ainsi, après une heure de compilation, s'apercevoir que le ciel de la map ne diffuse pas de lumière, et avoir une map toute noire…
Packaging
Vous devez disposer d'un outil d'archivage, sous windows, 7zip est un excellent logiciel libre, sous linux l'utilitaire zip ou une interface graphique convient.
Sélectionnez tous les dossier précédemment décris, et zippez les, renommer l'archive en changeant l'extension .zip en .pk3.
Sous windows, l'extension .zip est reconnu, donc il ne l'affiche pas ce qui empèche sa modification, pour y remédier, allez dans Outils, Option des dossiers, dans la fenêtre, cliquez sur l'onglet Affichage, dans le cadre décochez ”Masquer les extensions dont le type est connu” puis appliquer.


