• Introduction (Home)
  • What's New?!
  • MapMaking Q&A:
  • Beginning Issues
  • Intermediate Issues
  • Advanced Issues
  • Mega-TF Issues
  • More Information:
  • Errors & Solutions
  • Author Advice
  • Files Archive
  • Real Audio Show:
  • Blueprints Mint
  • Internal Links:
  • Blueprints News
  • DyerMaker's Maps
  • Blueprints Guestbook
  • External Links:
  • The Forge
  • QuakeLab
  • TF Console
  • Ented Home
  • Mega-TF MapMaking Issues


     Read Ambush's MegaEnts.Txt file for further information.


    What is Mega-TF?
    Mega-TF is a modified version of Team Fortress Quake. Included in many of the changes made, there is also added map code support to please MapMakers such as myself. Since these wonderful additions are in Mega, I feel it necessary to share this information so that other MapMakers may have the option of customizing their maps for Mega, as well. You may learn more about Mega-TF here.

    Q: Are Mega-TF and classic TF Maps interchangeable?
    Classic maps work on Mega-TF servers, but not always the other way around. TF servers will run MegaTF maps, however the Mega additions will not work, unless they were originally TF's changes and Mega is compliant with them.

    The code for Mega-TF started as Team Fortress's version 2.5. Some map code changes happened in TF version 2.6, subtle changes in the coding occurred in 2.65, but none occured in 2.7 (and, as far as I know, 2.8+) Those changes are listed here.
    These do not work in any other mod based on TF version 2.5 code. Support for some of the changes in Mega are specified where necessary:

    Changes in Map Code in TF v2.6:

    • Goal_Result
      • NOTICE: New bit, 32, for Info Goals. This bit forces any players affected by the goal to respawn without dying. Now supported in Mega2K as of 06.07.00. N.B. Adding goal_result bitfields such as 2 and 32 would affect only the Activating Player and send him back to Respawn: "Goal_Result" "34"
      • New bit, 4096, for Item Goals. This is what allows players to use the "dropitems" command.
    • Goal_Activation
      • NOTICE: New bit, 2048, for Info Goals and Item Goals which force the goal / item to drop to the ground when it first spawned is now supported in Mega2K as of 06.09.00.
      • NOTICE: New bit, 8192, for Item Goals. This bit makes the Item Goal solid; which means it blocks bullets, grenades, even players who don't pass the Item Goal's criteria. Now supported in Mega2K as of 06.09.00.
    • NOTICE: Goal_min and goal_max variables are now supported by Mega-TF as of 07.07.98: Goal's surface area can be changed with goal_min and goal_max variables. This way you could use the goal itself to block an entire doorway or hallway to ensure a player would not miss activating the goal by slipping past it because of its (small) default size.
    • NOTICE: These strings are now supported by Mega-TF as of 07.07.98: More entity strings have been compressed because of Quake's limitations:
      • "h_i_g" for "has_item_from_group"
      • "r_i_g" for "remove_item_group"
      • "a_s" for "ammo_shells"
      • "a_n" for "ammo_nails"
      • "a_r" for "ammo_rockets"
      • "a_c" for "ammo_cells"
      • "rv_s_h" for "remove_spawngroup"
      • "rs_s_h" for "restore_spawngroup"
      • "rv_gr" for "remove_group_no"
      • "rs_gr" for "restore_group_no"
      • "rv_g" for "remove_goal_no"
      • "rs_g" for "restore_goal_no"
    • New variable for entities called "ex_skill_min" and "ex_skill_max" which will set what skill level in which the entity exists. As an example: An entity with "ex_skill_min" "-1" "ex_skill_max" "2" Would only exist at skill 0, 1, or 2. Easy, Normal, Hard, but not Nightmare, I'm guessing. Never heard of a Nightmare TF level :}

    Changes in Map Code in TF v2.65:
    (Thanks so much, Robin! I know you're busy! -DM)

    • Flaginfo now allows you to specify only some of the flaginfo strings.
    • GoalItem return messages appearing when Goal's force returns. Will fix "flag has returned" when capturing a flag.
    • GoalItem Drop initial origin changed.
    • Criteria for Spawnpoints working correctly now.
    • Activating Goals remove their model correctly again.
    • All abbreviations working correctly now.
    • Grenade removal goals remove primed grenades as well.


    To the question, "Will this stuff ever be corrected?" Well, I'd sure like them to. I've asked Ambush about it. If / when the changes have been implemented it will be posted on my What's New?! page.

    List of Custom Mega Ambients

    Use these as "classname" "ambient_ambientname" (such as "ambient_meadow").

    Custom Mega Effects

      EFFECT_SNOW: Snowfall. Place one or more in open areas outside up high. Note: This creates a high number of entities so do not use in levels with many entities. Also noteworthy: EFFECT_SNOW produces a set amount of snowflakes - thereby if you add set its size smaller, more snowflakes will be notably present than if you covered a wider area (spawnflag setting).
      {
      "classname" "effect_snow"
      "origin" "470 -1200 700"
      "spawnflags" "64"
      }
      Spawnflags of 64 is the range the snow will cover... ie: 64x64.

      EFFECT_RAIN: Rainfall. Same as snow, but faster falling. Place one or more in open areas outside up high. Note: This creates a high number of entities so do not use in levels with many entities. Also noteworthy: EFFECT_RAIN produces a set amount of raindrops - thereby if you add set its size smaller, more raindrops will be notably present than if you covered a wider area (spawnflag setting).
      {
      "classname" "effect_rain"
      "origin" "470 -1200 700"
      "spawnflags" "64"
      }
      Spawnflags of 64 is the range the rain will cover... ie: 64x64.

      TRAP_SPIKESHOOTER: Standard laser or nail shooting trap except when used with Spawnflags of 4 it shoots rockets. It also takes an angle value so you can aim it better. Targetname allows this entity to be activated by another goal. The best example of this entity in use is in Frontline: it is what fires rockets when the tank is activated on the red's side. {
      "classname" "trap_spikeshooter"
      "origin" "-969 -1734 -281"
      "targetname" "shoot"
      "spawnflags" "4"
      "angle" "19"
      }

      EFFECT_LIGHTNING: Random flashes of lightning accompanied by the sound of thunder. Place one or more in open areas outside up high and maybe near walls so the lightning will reflect off surfaces. Examples of this are in Unholy Kingdoms and Haloween.
      {
      "classname" "effect_lightning"
      "origin" "470 -1200 700"
      "spawnflags" "512"
      }
      Spawnflags of 512 (or 100, or 256, etc) is the range the lightning will cover... ie: 512x512.

      *** NOTE *** You can get an entity like this in your map and not have to edit the mapfile to change the range. Use any entity at all - like a light. Change the word 'light' to 'effect_lightning' and with SmartEdit off, add Key 'spawnflags' and Value '100' or whatever you want your range to be.

      EFFECT_BURNER: A pulsing set of mild explosions and flames with randomization for burns.
      {
      "classname" "effect_burner"
      "origin" "214 1035 -260"
      }

      EFFECT_AIRBURST: Explosions in the air (or ground) at randomized locations on a horizontal plane within 300 Quake units in any and all directions.
      {
      "classname" "effect_airburst"
      "origin" "470 -1200 700"
      }

      EFFECT_STROBE: A quick flashing strobe light like airport runways have lined up on the sides. Flashes every 2 + 'height' seconds. The example below would actually flash every 5 seconds.
      {
      "classname" "effect_strobe"
      "origin" "470 -1200 700"
      "height" "3"
      }

      EFFECT_ROCKFALL: A trigger entity which plays the sound of loose rocks falling. If a 'height' is specified, a water splash will follow. Height of 120 is a one-second delay. The rockfalls in FrontLine are set at 400. Leave 'height' null for no splash sound.
      {
      "classname" "effect_rockfall"
      "origin" "470 -1200 700"
      "height" "120"
      }

    Mega Monsters:
    NOTE: Monsters are currently disabled (Sept. 25 2000).
    Ambush has reinstated many of the entities that were taken out of Team Fortress Internet play.

    • Turrets can be added to your map by first using the monster_dog entity. Place this underneath a solid surface; it will attach itself automatically. In Worldcraft, click on your monster_dog entity and hit ALT+ENTER. turn "smartedit" OFF and replace the word dog with monster. Add Key team_no and Value 1 (blue team) or 2 (red team). On the Flags tab, click the box UNDER "Ambush" for the turret to retract into the ceiling. Click the box BETWEEN "Ambush" and "Not in Easy" for the turret to fire rockets. The box UNDER that one makes it fire Lasers. Add bitfields together when needed.

      Spawnflags:
      2 = Retracts into ceiling
      16 = Fires Rockets
      32 = Fires Lasers
      34 = Retracts & Fire Lasers
      I'm unsure of any other settings at this time.



    • Bubbles can be placed anywhere, but look better in or nearby water. They produce an ambient sound of bubbling wherever you place an air bubble entity in your map.
    • Dogs are not only used by police but also by many branches of the Armed Forces, so the re-addition of dogs in Mega-TF is realistic. You can add dogs to your maps by placing one in from the entity list in your editor. Dogs, unlike the other creatures in Mega-TF, can be made team-loyal the same way a door is made to open only for a specific team. Give the dog a "team_no" and fill the field with the integer to which team he belongs, such as "team_no" "2" for a red-team-loyal dog. Leaving this setting (team_no) out will make the dog aggressive to all players.
    • Fish are also another element added to Mega-TF. Are Army men in the bush always going to come across a stream, pond, or swamp that doesn't have living things in it? I doubt it. Unlike dogs, you cannot make the fish team-loyal. It's very hard to train fish, you see. :}
    • Zombies are a not-so-realistic addition to Mega-TF, but upon my request, they were added into Mega-TF so that I could use them as decorative entities in my map, Unholy Kingdoms. With the Zombie's spawnflag set to crucified ("spawnflags" "1"), you can have a very nice wall decoration in the skankiest of dungeons. They wiggle around and make a hauntingly pleasant moaning sound.
    • Ducks will be able to be placed in a map. They are affected by touch and health. When a grenade goes off near a duck or when one is 'ran into' it quacks noisily and flies away. After some time, the duck will return, and quack quietly every so often.
    • Otis was one of the last things Ambush was working on adding. More info will be posted here as soon as it's available.

    Mega Doors:
    Tired of those same-ol' same-ol' door sounds that we were bored of after playing a single month of Quake? Now you have three more sounds from which you may choose, by giving your doors an armorclass value:

    • "armorclass" "1" - Creaky Door
    • "armorclass" "2" - Heavy Metal Door
    • "armorclass" "3" - Electric Door

    Mega BSP Additions:

    • "func_glass" Tie to a brush for a solid glass pane.
        "health" If greater than 0 the glass is breakable by damage.
        "target" Can be moveable like a train.
        "noise" Start motion sound if moveable.
        "noise1" End of motion sound if moveable.
    • "func_bobbingwater" Tie to a brush with a water texture.
        "speed" "3" How fast the water bobs.

      Mega MapMaking Q&A

      Can we make "soccer" maps with the kickable heads?
      No, but Ambush has added code that allows us to use the round globe (light) sprite as a ball like in Sandball. These new goals are not TF goals - they're actually Ambush goals. :} Here are the goals you need and what they are used for:

      {
      "classname" "ball"
      "origin" "0 0 80"
      }
      //puts the ball in the map
      {
      "classname" "ballstart"
      "origin" "0 0 80"
      }
      //this is where the ball respawns to after someone scored and when map starts
      {
      "classname" "sandball_goal"
      "origin" "-816 0 -102"
      "team_no" "1"
      "frags" "5"
      }
      //blue team's scoring goal
      {
      "classname" "sandball_goal"
      "origin" "816 0 -102"
      "team_no" "2"
      "frags" "5"
      }
      //red team's scoring goal