Skip to content
/ alpine Public

A mid-sized mixed indoor/outdoor Halo CE map

Notifications You must be signed in to change notification settings

csauve/alpine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Alpine

This repo contains the sources for Alpine, a Halo Custom Edition map:

Screenshot of the level in-game

This secluded mountain valley bears the burden of secrets both ancient and recent.

Alpine is inspired by Valhalla, Relic, The Silent Cartographer (b30), Longest, Hang 'Em High, Mudslide, and Portent. A custom sky_alpine skybox and wildflower scenery are also included in this repo.

Building the map

The Halo Editing Kit (HEK) is required to build this map. The map relies on the following tag sets, applied in this order:

  1. HEK base tags: Already included in the HEK, but repair if needed.
  2. Fresh MP/SP tagset (Refined Project): A more complete tag set extracted from stock maps.
  3. Jesse's high resolution HUD: A higher quality player HUD by Jesse, found under enhancements.

In each case, copy the tags into the HEK's tags directory to build the dependency tag set. Alpine's own tags also need to be copied into the HEK's tag set. Run the included Python script to synchronize tags from this project:

python hek-sync.py <hek-root>

This script will copy Alpine tags between the local project and the HEK based on file existence and last modified date, so it can be used during map development too. With the tag set now complete under the HEK, use Tool to build the map:

# creates maps/alpine.map
tool.exe build-cache-file levels\alpine\alpine

Asset creation

Source assets can be found under the data directory.

Texture sources are .kra files for the free 2D software Krita. They are exported to flattened .tif files and then compiled to .bitmap tags using Tool.

The map's level geometry is authored in Blender and exported using General_101's Blender JMS toolkit. It can be found in data/levels/alpine/models/alpine.blend. It contains the following objects:

  • frame: Only children of this reference frame are exported to the JMS file
    • bsp: Main level geometry
    • portals: Geometry which divides the map into clusters for rendering, sound, and weather purposes
    • weather: Fog planes and weather polyhedra

Before exporting, ensure all mesh modifiers have the "Realtime" setting enabled (so they take effect during export) and that any changes are saved. The scene must be exported at JMS unit scale. To compile the BSP:

tool structure levels\alpine alpine

Final lightmaps were run with quality 1 and stop value 0.54. The parameters 0 and 0.8 are suitable for debug lightmaps.

# run overnight
tool lightmaps levels\alpine\alpine alpine 1 0.54

Alternatively, use the included compile_bsp.sh (assumes Wine on Linux) to automatically export the mesh and regenerate lightmaps:

export WINEPREFIX=<path to wine prefix for Halo and the HEK>
export HALO_HOME=<path to Halo installation within the prefix>
./compile_bsp.sh

Thanks

  • Refined project for the extracted SP tags
  • Jesse for the high resolution HUD
  • General_101 for the Blender JMS exporter
  • MosesOfEgypt for portaling advice
  • Anthony, Mack_Of_Trades69, Shelly, jcap, Tnnaas, Zeph, Futzy, InnerGoat for map testing

License

This map and its sources are shared under CC BY-NC 4.0. Feel free to remix or redistribute for any purpose as long as there's attribution and your derivatives are non-commercial.