# Valve Hammer Editor

Valve Hammer Editor, anciennement connu sous le nom Worldcraft, est un logiciel destiné à la conception de niveaux (ou level design) développé par Valve Software pour les besoins des jeux de la série Half-Life et de la série des Left 4 Dead, ainsi qu'à ses nombreux mods, dont Team Fortress 2, Counter-Strike: Source et Day of Defeat: Source. Valve Hammer Editor 4 ne compile que pour le moteur Source, intégrant certaines technologies plus récentes que le moteur d'Half-Life, GoldSrc. Cependant, celui-ci présente d'autres avantages comparé au moteur Source.
Relativement facile à prendre en main, il présente également l'avantage de pouvoir compiler les niveaux (maps) sans avoir à faire appel à d'autres logiciels créés spécialement pour (mais est moins efficace qu'eux). Il permet cependant de manipuler une grande variété d'outils, entre autres le Cliping Tool, pour couper les blocs, le Displacement Tool (successeur de l'outil de Worldcraft pour créer du relief, bien plus efficace avec un meilleur rendu).
Valve Hammer Editor 4 (pour Half-Life 2 et ses mods) est uniquement disponible sur la plateforme de Steam.
Valve Hammer Editor 3.5 (pour Half-life 1 et ses mods) est en libre accès sur internet.

## Informations utiles (pour Hammer 4)

Afin de pouvoir utiliser Hammer, il est très important de savoir certaines choses.
Premièrement, il faut savoir que Hammer n'est pas capable de gérer des meshs de forme concave. Il faut donc utiliser des blocs convexes sous peine de se voir gratifier d'une erreur : « Invalid block » ou d'un changement de forme du bloc qui n'est généralement pas très agréable à l'œil.
Deuxièmement, Source ne prend pas en charge le calcul en temps réel. On doit alors lui indiquer tout ce qu'il peut calculer à l'avance lors de la compilation de la map (le moment où vous exportez votre map vers le jeu). Premier point : l'eau. Il faut impérativement lui parenter (lui assigner) une entité « env_cubemap » qui dira au moteur de calculer cela à l'avance. Avantage : vous pouvez faire un océan complet sans à coup. Sans l'entité, même une toute petite flaque ralentira une puissante machine. Inconvénients : il n'y aura pas votre reflet, ni celui des joueurs en général.
Dernièrement, il est déconseillé de mettre trop d'objets dans l'eau (le calcul de la force d'Archimède demande énormément de ressources), ou de NPC (eux aussi demandant beaucoup de calculs pour leurs animations et leur IA). Il faut généralement éviter d'utiliser des modèles physiques, surtout si vous mappez pour du multijoueur. Cela a pour effet un ralentissement du serveur, qui doit transmettre l'information aux autres joueurs.
Lors de la compilation, il y a une chose qu'il ne faut pas avoir : les leaks. Ce sont en fait des trous, qui donnent sur l'extérieur de la map. La chute d'un joueur ou d'un modèle physique entraînera une profondeur infinie à calculer. Ce qu'il faut donc éviter. Hammer vous le fera d'ailleurs remarquer, car la compilation plantera systématiquement.

## Fonctionnement

Le mappeur crée des blocs, qui servent de base au monde. Il peut ensuite insérer des fonctions spéciales, grâce aux entités. La lumière, la pluie, le brouillard, les effets de terrain, mais aussi les models sont des entités. Ensuite, grâce aux textures, il peut donner la couleur et un style à sa création. Les textures sont des images qui peuvent se placer sur les faces des blocs, afin de les rendre physiques et d'activer les collisions avec le joueur.