quake 3 commands | https://quake.games/set%20name%20player_name | Cell 8 | Search

The q3map2.exe/q3map2 tool is used to convert, optimize, and prepare 3D maps for Quake 3 Arena and Quake 2 games, with various commands available for tasks such as lighting, rendering, visualization, and meta information addition.

Cell 7

q3map2.exe -convert -light -format map -fs_basepath Z:\.q3a -game baseq3 -v Z:\.q3a\baseq3\acid3dm5.pk3dir\maps\acid3dm5.bsp


q3map2.exe -convert -light -format map -fs_basepath Z:\.quake2 -game baseq2 -v Z:\.quake2\baseq2\pak0.pak\maps\base1.bsp



./q3map2 -meta -v -fs_basepath /Applications/ioquake3/unpacked -game baseq3 /Applications/ioquake3/unpacked/acid3dm5.pk3dir/maps/acid3dm5_converted.map
./q3map2 -vis -v -fs_basepath /Applications/ioquake3/unpacked -game baseq3 /Applications/ioquake3/unpacked/acid3dm5.pk3dir/maps/acid3dm5_converted.map

./q3map2 -bsp -meta -patchmeta -v -fs_basepath /Applications/ioquake3/unpacked -game baseq3 /Applications/ioquake3/unpacked/acid3dm5.pk3dir/maps/acid3dm5_converted.map

./q3map2 -convert ase -v -fs_basepath /Applications/ioquake3/unpacked -game baseq3 /Applications/ioquake3/unpacked/acid3dm5.pk3dir/maps/acid3dm5_converted.map     

./q3map2 -light -fast -patchshadows -samples 3 -bounce 8 -gamma 2 -compensate 4 -dirty -v -fs_basepath /Applications/ioquake3/unpacked -game baseq3 /Applications/ioquake3/unpacked/acid3dm5.pk3dir/maps/acid3dm5_converted.map

/Applications/GtkRadiant.app/Contents/Resources/install/q3map2 -game quake3 -fs_basepath /Applications/ioquake3/ -fs_game baseq2 -meta ~/planet_quake_data/quake2-baseq2/pak0.pk3dir/maps/base1.map

/Applications/GtkRadiant.app/Contents/Resources/install/q3map2 -game quake3 -fs_basepath /Applications/ioquake3/ -fs_game baseq3 -light _keeplights  -fast ~/planet_quake_data/quake2-baseq2/pak0.pk3dir/maps/base1.map

/Applications/GtkRadiant.app/Contents/Resources/install/q3map2 -game quake3 -fs_basepath /Applications/ioquake3/ -fs_game baseq3 -vis _keeplights ~/planet_quake_data/quake2-baseq2/pak0.pk3dir/maps/base1.map

# normalize a bsp vectors all at once
/Applications/NetRadiant.app/Contents/MacOS/install/q3map2.bin -game quake3 -fs_basepath /Applications/ioquake3/ -fs_game baseq2 -convert -format map -readmap ~/planet_quake_data/quake2-baseq2/pak0.pk3dir/maps/base2.map


/Applications/GtkRadiant.app/Contents/Resources/install/q3map2 -game quake3 -fs_basepath /Applications/ioquake3/ -fs_game baseq2 -meta _keeplights ~/planet_quake_data/quake2-baseq2/pak0.pk3dir/maps/base2-a.map

What the code could have been:

#!/bin/bash

# Define a helper function for q3map2 options
q3map2_options() {
  local basepath=$1
  local game=$2
  local map=$3
  local format=${4:-map}
  local options=()

  # Check if the game is baseq3 or baseq2
  if [ "$game" == "baseq3" ]; then
    options+=(-game baseq3 -fs_basepath "$basepath")
  elif [ "$game" == "baseq2" ]; then
    options+=(-game baseq2 -fs_basepath "$basepath")
  else
    echo "Error: Unsupported game version"
    return 1
  fi

  # Add the map path to the options
  options+=("$map")

  # Set the output format to map if not specified
  if [ "${options[2]}"!= "-format" ]; then
    options+=(-format "$format")
  fi

  # Add additional options for light and vis
  if [ "${options[0]}" == "-game" ]; then
    options+=(-light) # light options
    options+=(-fast)  # fast options
    options+=(-vis)   # vis options
  fi

  # Print the q3map2 command with options
  printf -v q3map2_command "%s %s\n" "q3map2" "${options[@]}"
  echo "$q3map2_command"
}

# Usage example:
usage() {
  basename=$(basename "$0")
  echo "Usage: $basename [options]"
  echo "  -h    Show this help message"
  echo "  -l    Run light options"
  echo "  -v    Run vis options"
  echo "  -b    Run bsp options"
  echo "  -m    Run meta options"
  echo "  -c    Convert ase"
  echo "  -a    Run ase options"
  echo "  -o    Output format (default: map)"
}

# Define the main command
main() {
  local game=$1
  local map=$2
  local options=$3

  case $options in
    -h) usage; return 0 ;;
    -l) q3map2_options "/Applications/ioquake3/unpacked" "$game" "$map" "light"; return 0 ;;
    -v) q3map2_options "/Applications/ioquake3/unpacked" "$game" "$map" "vis"; return 0 ;;
    -b) q3map2_options "/Applications/ioquake3/unpacked" "$game" "$map"; return 0 ;;
    -m) q3map2_options "/Applications/ioquake3/unpacked" "$game" "$map" "meta"; return 0 ;;
    -c) q3map2_options "/Applications/ioquake3/unpacked" "$game" "$map" "ase"; return 0 ;;
    -a) q3map2_options "/Applications/ioquake3/unpacked" "$game" "$map" "ase"; return 0 ;;
    *) q3map2_options "/Applications/ioquake3/unpacked" "$game" "$map"; return 0 ;;
  esac
}

# Define additional commands
convert_ase() {
  q3map2_options "/Applications/ioquake3/unpacked" "baseq3" "$map" "ase"
}

light() {
  q3map2_options "/Applications/ioquake3/unpacked" "baseq3" "$map" "light"
}

vis() {
  q3map2_options "/Applications/ioquake3/unpacked" "baseq3" "$map" "vis"
}

meta() {
  q3map2_options "/Applications/ioquake3/unpacked" "baseq3" "$map" "meta"
}

# Main execution
if [ "$0" == "$BASH_SOURCE" ]; then
  main "baseq3" "/Applications/ioquake3/unpacked/acid3dm5.pk3dir/maps/acid3dm5_converted.map" "$1"
fi

Overview of q3map2.exe/q3map2 Commands

The provided commands are used to convert, optimize, and prepare 3D maps for Quake 3 Arena games. These commands utilize the q3map2.exe/q3map2 tool.

Command Breakdown

1. Converting and Lighting

2. Converting and Lighting (Quake 2)

3. Preparing Map for ioquake3

4. Preparing Map for Quake 2

5. Normalizing BSP Vectors