FAQ Erreurs de Compilation

"Couldn't open valve/nomdufichier.wad"
  • Soit il y a trop de fichiers de textures (les « .wad ») dans le panneau des textures dans le panneau des options de Valve Hammer 3.4 ou les versions précédentes (Worldcraft 3.3, 2.0) et il faut donc supprimer plusieurs fichiers wads (ceux que vous voulez).
  • Soit vous utilisez des wads d'un mod, les wads de Counter-Strike par exemple, pour mappeur pour d'autre mods, Team-Fortress par exemple ou aussi Half-Life tout court. Dans ce cas il faut soit supprimer les wads de Counter-Strike (en ce qui concerne cet exemple) du panneau des textures de Valve Hammer, soit copier les textures du mod concerné (Counter-Strike dans cet exemple) dans le répertoire des textures du mod pour lequel vous mappez. Il vous faudra ensuite fournir les wads concernés (ici ceux de Counter-Strike) avec votre map quand vous la distribuerez sur internet.
"Token to large x"(Un chiffre à la place de "x")

Il y a là aussi beaucoup trop de wads dans le panneau des textures de Valve Hammer. Il faut donc en supprimer (dans Valve Hammer, pas dans l'explorateur de Windows, bien sûr).

"Map Not found on server"

Il y a plusieurs solutions :

- Soit le nom de votre map est incorrect :N'utilisez pas de majuscules, d'espace autre que « _ » (touche 8)pour nommer votre map.

- Soit vous n'avez pas inscrit le bon répertoire du mod avec lequel vous voulez lancer votre map (dans le panneau d'options de Valve Hammer), soit c'est votre map qui n'est pas dans ce même répertoire.

- Soit vous n'avez pas inscrit (si vous ne mappez pas pour Half-Life mais pour un mod de Half-Life) la commande « -dev -console -game nomdumod » quand vous faites « Run Map » (touche F9 dans Valve Hammer Editor (VHE)).A la place de « nomdumod » vous marquez « cstrike » si vous mappez pour CS.

"Leaf portals saw into leaf"

D'abord,pour information, les leafs sont des zones calculées par,je crois,le vis (hlvis pour les zhlt).

Cette erreur est provoquée parce qu'il y a trop de portals dans le même leaf, donc ces portals se coupent entre eux ,par exemple.Les portals sont souvent créés par les brushs (mot anglais qui veut dire solides) ou aussi par la texture sky et peut-être la texure null.Quand l'erreur apparait dans la compile, les coordonnées des portals incriminés apparaissent. Ils se trouvent souvent à l'intersection de plusieurs brushs (solides).Si vous voulez utiliser ces coordonnées pour chercher l'erreur, ces coordonnées se trouvent en bas à droite dans VHE (Valve Hammer Editor, je ne parlerai plus que de cette nouvelle version, même si c'est la même chose dans WC 3.3 (pour les coordonnées par exemple)).

Il y a beaucoup de solutions que je ne connais pas, mais je connais celles-ci:

- Supprimez les brushs (ça veut dire « solides ») incriminés. Vous pourrez toujours les refaires après en vous y prenant d'une autre façon.

- Mettez les brushs incriminés en func_wall. Faites très attention à ce que vous faites: les solides en func_wall laissent passer la lumière mais on voit aussi les polygones derrière ces brushs en func_wall. En effet,quand le bsp (je crois que c'est le bsp)se trouve en face d'un func_wall lors de la compile, il ne le contourne pas mais passe à travers.Pour être plus clair, si vous faites une salle fermée, et que derrière l'un des murs de cette salle il y a tout le reste de votre map que l'on peut entièrement, si les murs de la salle sont « normaux », vous ne verrez que les polygones de la salle, mais si vous mettez le mur en func_wall derrière lequel il y a toute la carte, quand vous testerez votre map et que vous regarderez le mur en func_wall votre machine calculera les polygones de « toute » votre map, même si vous ne voyez pas visuellement le reste de votre map qui se trouve derrière le mur en func_wall.

- Avec le vertex tool de VHE, déplacez un des cotés ou une arête de votre brush incriminé de 1 pixel. Ca règle des fois le problème.

- S'il y a des brushs dans le coin,surtout sur le brush incriminé, la texture sky qui est appliquée, enlevez cette texture parce qu'elle créé des portals. Je fais une map où, au tout début, je mettais sur toutes les faces des solides non visibles dans le jeu la texure sky.A la fin j'avais pas mal d'erreurs de ce type, après avoir enlever la texure sky je n'avais plus aucune erreur.La texture null (disponible sur le site de valve, dans la partie coding, dans le custom builder 1.4. Il existe aussi le custom builder 1.5 que je n'est toujours pas trouvé.) a pratiquement la même utilité que la texture sky mais a aussi le défaut de créer des portals, à ce qu'on m'a dit sur halflifedesign.

"=== LEAK in hull 0 ==="

Le message d'erreur est accompagné des coordonées d'une lumière. Cette lumière (« light ») est la lumière la plus proche du leak.

- Vous pouvez créer des lumières pour essayer de vous rapprocher le plus possible de l'endroit où se trouve le leak.

- Il y a un programme en anglais qui permet de détecter les leaks.Il faut exporter le .map, je crois, vers ce programme et ensuite éxécuter ce programme.Je ne l'ai pas encore essayer (impossibilité de mapper pour l'instant), mais vous pouvez le télécharger sur:http://saida.lava.nu/do_download.php?fajl=filer/lm01b.zip

- Si vous ne connaissez pas GTKRadiant, qui s'appelle aussi Q3Radiant, c'est un éditeur de cartes encore meilleur que Worldcraft. Il permet de mapper pour Quake 3, Wolfeinstein et d'autre jeux mais pas encore pour Half-Life mais ca va bientôt être le cas. En effet, une des grandes forces de GTKRadiant est de pouvoir intégrer des plugs-in, ce qui permet à n'importe qui s'y connaissant en programmation de créer des plugs-in leur permettant, par exemple, d'aller directement à tous les solides ayant 13 faces, ou à toutes les échelles,...Un programmeur est actuellement en train de dévelloper un plug-in permettant de mapper pour Half-Life, il est bientôt fini (c'est ce qu'on m'a dit sur halflifedesign.net), et le rapport avec les Leaks est qu'un de ces plugs-in permet de détecter tous les leaks de la map facilement.Les plugs-in de GTKRadiant (disponibles un peu partout sur internet) permettent à peu près de faire n'importe quoi.

"Too Many Light styles on a face"

Uupprimer plusieurs lumières devrait arranger les choses.

"MAX MAP MIPTEX"

Réduire le nombre de type de textures utilisées ou mettre (quand on compile avec les zhlt) « -texdata 8192 » pour que cette limite soit repoussée à 8 Mo.

"Fatal entity brush...."

Faites en sorte que ca n'arrive pas, en ne mettant qu'un type de textures de matériaux sur chaque brush.

"Plane with no normal"

Pour retrouver le ou les brushs incriminés, dans VHE (Valve Hammer Editor, ou ds Worldcraft si vous voulez) allez cliquez sur « Edition » en haut de l'écran (je crois que c'est « Edition » ms j'en suis pas sur) puis cliquez sur « Tie to Entity » (je suis cette fois sur de cette commande).

Un petit panneau apparait dans lequel vous mettrez dans la barre « Entity » le numéro correspondant « Entity » dans l'erreur,« 0 » pour cet exemple:« Entity 0, Brush 23, Side 4: plane with no normal ».

Dans la barre « Brush » vous mettez le numéro du brush cité dans l'erreur, « 23 » dans l'exemple plus haut.Appuyez ensuite sur « OK » (ou un truc comme ca).Un brush (solide) est selectionné après avoir appuyez sur ok, c'est le brush incriminé, défectueux.Supprimez-le.

"outside world"

Rendez-vous à l'entité ou le brush incriminé par l'erreur (« hlcsg: Fatal: Entity 0, Brush 123: outside world(+/-4096): (-2116,-9794,-10018)-(1839,9850,10018) » par exemple)en faisant « Tie to entity » (en haut de l'écran, dans, je crois, « Edition ») puis supprimez le brush ou l'entité incriminée, ou déplacez l'entité.

"MAX_PATCHES"

- Ou vous agrandissez la taille des textures, mais ces textures deviennent de plus en plus moches au fur et à mesures qu'on les agrandit.

- Ou vous ne mappez pas dans une salle immense ( bcp de patches sont dues au fait que l'on map dans une salle immense). Il y a d'autre moyen de mapper.

- Ou vous réduisez la taille de votre map.

- Ou, si vous avez les zhlt, vous ajoutez quand vous compilez, « -sparse » dans le panneau de compilation (là où vous inscrivez aussi « -dev -console » dans Worldcraft et Valve Hammer).Cela aura pour effet d'augmenter la limite maximum du nb de patches à environ 90000.Avec cette commande,donc, l'erreur n'apparaitra plus que si vous avez plus de 90000 patches dans votre map.

"Bad surface extents"

Vous avez fait un tout petit solide, vous avez appliquez sur la texture d'une des faces de ce solide « Fit » pour adapter la surface de la texture à celle de la face sur laquelle la texture est appliquée.Valve Hammer Editor ne peut plus à partir d'une certaine taille à réduire une texture pour l'adapter à une face.

ReadSurfs (line 99416): 32189 > g_numplanes ou max_map_planes

Avant toute chose, essayez une ou deux recompilations, ça peut arriver aléatoirement.Si le problème persiste, il est probable que vous ayez créé un brush possédant plus de 32 faces (le maximum admissible).Si ce n'est pas le cas, cela signifie que vous avez dépassé le nombre de plans admissibles pour créer une map: Vous avez des brushes trop complexes, ou vous en avez trop.

- si c'est un bloc qui possède trop de faces, recréez le en plusieurs éléments simples.

- si vous avez trop d'objets, retravaillez la map en enlevant des détails inutiles.

Warning: ChopWinding : rejected(n) due to too many points

La méthode conseillée est celle du « Big Block », ou recherche par dichotomie, qui consiste à isoler une aire particulière de la map (en recouvrant l'autre avec un immense brush, par exemple) jusqu'à trouver celle qui pose problème.

Ce programme va etre arrété car il a effectué une opération non conforme.

Mettez à jour vos drivers et/ou réinstallez votre système.

"Error: Exceeded MAX_LEAF_FACES Description: This error is almost always caused by an invalid brush, by having huge rooms, or scaling a texture down to extremely small values (between -1 and 1) Howto Fix: Find the invalid brush. Any imported prefab

Cette erreur est en général due à une mauvaise manipulation de vertex, à une entité trop complexe (un cylindre découpé, etc), ou comme le suggère la description de l'erreur, à une pièce trop grande ou à des textures appliquées à des échelles trop petites.

Retrouver et corriger/supprimer le brush incriminé.

"missing [ in texturedef"

Si la texture est en cause, corrigez son nom. Si la map provient d'une vieille version de VHE/WC, ouvrez le fichier .map et supprimez la ligne "mapversion" "220".