SEED - Usage

From The DarkMod Wiki
Revision as of 20:24, 20 January 2011 by Tels (talk | contribs) (LODE Usage moved to SEED Usage: SEED is the new LODE)
Jump to navigationJump to search

Introduction

Note: It is recommended that you read the pages about LOD and LODE first.

The LODE System (available in TDM from v1.03 on) enables you to overcome the built-in entity limit, as well as randomly generate entities. But since the system is new and it might still be unclear on how and when to use it, this page provides a few real-map scenarios with examples:

Usage cases

Random Loot Generator

Place a small LODE in your map, plus three loot entities. Target these from the LODE and set the following spawnargs (enter them in DR without the quotes!) on the LODE:

 "max_entities" "1"
 "remove"       "1"

This means all the loot entities will be of the same probability, but only one of them will ever be generated. Also, the "remove 1" means the LODE will remove itself after spawning the other entity.

Note: Players expect that the loot in a map is stable, e.g. when they play it again, they get the same amount of loot from the same places. While you can break this expectation f.i. by randomly spawning a loot piece in different places, having different loot pieces in the 'same' place might confuse people. To avoid this, make the loot amount on all the entities targeted by this lode the same, but choose different entities (like a bottle of wine, a statue and a plate).

Random Decorator

Just like in the loot case, place your LODE, target the entities, and set their lode_score spawnargs to the wanted distribution, then either set density or max_entities on the LODE. Useful for:

  • putting in random crates, barrels and junk into basements
  • decorating a field with flowers
  • putting in glasses and bottles on a shelf

etc.

You'll find some pre-made entities for spawning random food, junk or other things under Darkmod/Randoms inside the DarkRadiant menu "Create entity" accessible with Click the right mouse button.

Note: When building such things by yourself, it it more efficient to use the following spawnargs on the LODE to avoid having to place entities first:

"remove"         "1"           // remove the LODE after spawning the entities
"max_entities"   "4"
"spawn_class"    "atdm:moveable_food_apple"
"spawn_count"    "3"
"spawn_skin"     "tdm_fruit_brownish"
"spawn_class_1"  "atdm:moveable_food_pear"
"spawn_count_1"  "2"

This would spawn at most 3 apples and at most 2 pears, but overall not more than 4 entities. Remember to make the LODE space big enough so that all to-be spawned entities will fit!

See here for more details.

Do not confuse spawn_class with spawnclass, this will make the LODE stop working!

Overcome the entity limit

Suppose you have already placed manually a few hundred or even thousand entities in your map, and start to run into the entity limit. Or, if you have hundreds of entities under the LOD system, their thinking uses up time.

In this scenario you can use the LODE system as an entity manager. Just tell it to not take it's targets as entity templates to create new entities, but instead as the class of already existing entities it should watch. All the entities inside the LODE area of the given class will then be added under control of the LODE, so they just keep their positions, rotation and skin, but they get potentially hidden and removed/respawned when nec. Best of both worlds.

Create a copy of one of your existing entities, target it from your LODE and put the following spawnarg this entity:

 "lode_watch_brethren" "1"

Generate Huge Scenes

Section not done yet

TODO

  • Screenshots
  • example maps
  • more clear instructions

See also