User Tools

Site Tools


nfextra_modules

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
nfextra_modules [2025/01/06 01:34] – [Item based respawn position] tiwaznfextra_modules [2025/01/06 13:49] (current) tiwaz
Line 1: Line 1:
-====== General information ======+====== General information about modules in NFEXTRA ======
  
-Not all details will be explicitly mentioned here. 
 Some general rules that apply for most if not all modules: Some general rules that apply for most if not all modules:
   * you can trigger them via trigger   * you can trigger them via trigger
   * the modules effect stop when it is deleted   * the modules effect stop when it is deleted
-  * in most cases where a module expects a single synced object, you can also sync multiple in which case it randomly selects between all options+  * in most cases where a module expects a single synced object, you can also sync multiple in which case it randomly selects between all options or applies the effect to all
   * when syncing groups of units it does not matter if you sync the leader, the group, or each unit from a group or anything in between. It is smart enough to figure it out and adds the whole group and avoids adding units twice   * when syncing groups of units it does not matter if you sync the leader, the group, or each unit from a group or anything in between. It is smart enough to figure it out and adds the whole group and avoids adding units twice
   * most modules effects follow the module if you move it   * most modules effects follow the module if you move it
  
  
- 
-====== Artillery ====== 
- 
-===== Artillery Barrage ===== 
-{{ :creeping_barrage.png?500 |}} 
- 
-This module will create a constant artillery barrage until the module is deleted. The barrage will follow the module if its moved. 
- 
-{{ :artillery_module.png?500 |}} 
- 
-Attributes: 
-  * Ordnance = CfgAmmo class for the projectiles being fired by this artillery barrage 
-  * Mimimum delay = Minimum delay in seconds between shots 
-  * Maximum delay = Maximum delay in seconds between shots 
-  * Duration = How long should the barrage last in seconds. -1 for infinite. Deleting the module can stop the barrage early 
-  * Projectile downward velocity = Downward velocity of the projectiles 
-  * Projectile spawn height = Spawn height of the projectiles 
-  * Sound = Sound played before projectile impact. Leave empty for none. 
-  * Safety radius = Prevents spawning of artillery projectiles within x meters of players. This does not account for players moving into an already falling projectile. 
-====== Buildables ====== 
- 
-{{ :build_inventory.png?600 |}} 
- 
-Buildables are items with build functionality attached to them. Configure which inventory item can build which objects to allow players to build defences for example. 
- 
-===== Add Buildable Item ===== 
- 
-This module sets up an inventory item from which objects can be built. Needs to be synced to one or more Add Buildable Object modules. Use the buildable inventory item by double left clicking it in your inventory. 
- 
-{{ :buildabe_item_module.png?600 |}} 
- 
-Attributes: 
-  * Item: class name = Classname of the item that will have the option to build this buildable 
-  * Item: Display name = Display name for the buildable item. Leave empty to retain the original item name. 
-  * Item: Icon = Path to .paa for Icon of the buildable. Leave empty to retain the original item icon. 
-  * Consume item on use = If checked, the item will be consumed when the buildable is placed 
-  * Condition Place = Condition that needs to return true to allow the buildable to be placed. Runs while buildable is held 
-  * Condition Place Hint = Hint shown to the player when the buildable can't be placed due to condition place 
-  * On build = Code that runs when the buildable object was placed. This runs on the client that placed the object 
- 
-===== Add Buildable Object ===== 
-This module sets up an object that can be built using the Add Buildable Item module. Needs to be synced to one or more Add Buildable Item modules. 
- 
-{{ :buildable_object_module.png?600 |}} 
- 
-Attributes: 
-  * Context Menu: Name = Name that will be displayed as the context menu option 
-  * Context Menu: Tooltip = Tooltip that will be displayed when hover over the context menu option 
-  * Context Menu: Icon = Tooltip that will be displayed in the context menu option 
-  * Context Menu: Condition Show = Condition that needs to return true to show the context menu option 
-  * Context Menu: Condition Enable = Condition that needs to return true to enable the context menu option 
-  * Context Menu: On Select = Code that runs when the context menu option is selected 
-  * Context Menu: Color Red = Sets amount of red in the color of the context menu option 
-  * Context Menu: Color Green = Sets amount of green in the color of the context menu option 
-  * Context Menu: Color Blue = Sets amount of blue in the color of the context menu option 
-  * Context Menu: Color Alpha = Sets amount of alpha (transparency) in the color of the context menu option 
- 
-===== Controls ====== 
- 
-Controls for buildables can be changed in the regular Arma keybind menus. 
- 
-{{ :build_controls_dropdown.png?600 |}} 
-{{ :build_controls.png?600 |}} 
- 
-===== Syncs ====== 
- 
-{{ :buildable_syncs.png?600 |}} 
- 
-====== Common ====== 
-===== Explodado ===== 
-Causes explosion at module location or synced objects location 
- 
-{{ :explodado.png?600 |}} 
- 
-Attributes: 
-  * Ordnance = CfgAmmo class used for explosions. For example "M_Zephyr" or "Bo_GBU12_LGB" 
-  * Amount = Amount of explosions 
-  * Min time = Minimum time in seconds between explosions 
-  * Max time = Maximum time in seconds between explosions 
-  * Radius = Max radius from origin position in which explosions can occur 
-  * Explode when killed = Synced objects will cause explosion when they are killed 
- 
-===== Force Push ===== 
-This module applies a constant pushing force to anything in its area, in the direction of the module, that fulfills the condition. 
- 
-{{ :module_forcepush.png?600 |}} 
- 
-Attributes: 
-  * Force Amount = Amount of force applied to objects in the modules area 
-  * Vertical Force = Amount of vertical force. Positive number pushes objects upwards, negative downwards 
-  * Type = What kind of force will be applied 
-  * Set direction = Sets the objects direction to the push direction 
-  * Set vector up = Sets the up vector of the vehicle. To for example prevent vehicles from rolling 
-  * Duration = How long should this force be applied. -1 means until the module is deleted. 
-  * Interval = Interval in which the force is applied 
-  * Condition = Condition run on objects within the area. Must return true for the force to be applied to the object. _this returns the object 
-===== Move To ===== 
-This module incrementally moves synced objects to a random position within the module area. To move the objects the command setPos is used. This means almost any type of object, even other modules can be moved this way. A common use case for this module is moving the artillery barrage module over time to achieve a creeping barrage. 
- 
-{{ :moveto_module.png?600 |}} 
- 
-Attributes: 
-  * Speed = Speed with which the synced objects move 
-  * Set direction = Sets the objects direction to the move direction 
-  * Interval = Interval in seconds for how often the object is moved 
-===== Object Init ===== 
-Sync objects to this module, any object of that type created during the mission will have init code run on it. 
- 
-{{ :objectinit_module.png?600 |}} 
- 
-Attributes: 
-  * Object Init = The code that runs on init, '_this' to get the object. Code runs on server. 
-  * Retroactive? = Apply on existing units that have already been initialized 
- 
-===== Teleporter ===== 
-Objects synced to this module will have a hold action to teleport the player to a synced location module. 
- 
-{{ :teleporter_ingame.png?600 |}} 
-{{ :teleporter_module.png?600 |}} 
- 
-Attributes: 
-  * Speed = How long the transition takes 
-  * Sound = CfgSound class for sound played during transition 
- 
-This module requires the following syncs: 
-  * One or more Teleporter Locations 
-    * These act as the teleporting destinations 
-  * One or more objects synced 
-    * These objects will have the teleportation action added to them 
-{{ :teleporter_syncs.png?600 |}} 
- 
- 
-===== Teleporter Location ===== 
-This module represents a location. If this module has an area the position of this location will be random within the area. 
- 
-{{ :teleporter_location_module.png?600 |}} 
- 
-Attributes: 
-  * Name = Location name 
-  * Text = Text shown during transition 
-  * Find safe position = Whether or not a safe position should be searched for. Will lead to less precise positioning, however it prevents spawning inside of objects. 
- 
- 
-====== Generic Items ====== 
-===== Rename Inventory Item ===== 
-{{ :generic_item_rename.png?600 |}} 
-This module allows renaming an item and/or changing its icon. Uses the CBA item renaming framework. Thanks CBA! 
- 
-{{ :item_rename_module_generic.png?600 |}} 
- 
-Attributes: 
-  * Class name = Classname of the item that will be renamed. 
-  * Display name = Display name of the item. Leave empty to retain the original item name. 
-  * Icon = Path to .paa for Icon of the item. Leave empty to retain the original item icon. 
- 
- 
-====== Loadout ====== 
-===== Box ===== 
-This module represents a box and associated settings. Does nothing on its own, is used by other modules. Sync one or more objects with container storage to this module. 
- 
-{{ :box_module.png?600 |}} 
- 
-Attributes: 
-  * Name = Name for the box. Uses classname as default if empty 
-  * Use player ID as randomization seed = When using randomization this makes the module use the player ID as seed so that players can't reroll for different results. 
-  * Init = Runs on client where the action was used and a box is created. 
- 
-===== Box Spawner ===== 
-{{ :box_spawner_actions.png?600 |}} 
-Sync a box module and an object to this module. The object will then have actions on it to create boxes which are set by using synced to the box module. 
- 
-{{ :boxspawner_module.png?600 |}} 
- 
-{{ :boxspawner_syncs.png?600 |}} 
-===== Loadout ===== 
-Similar to the box module, this module represents a loadout and associacted attributes. Does nothing on its own and is used by other modules. 
- 
-{{ :loadout_module.png?600 |}} 
- 
-Attributes: 
-  * Name = Name of the loadout. Used for example as action name in loadout selector 
-  * Use player ID as randomization seed = When using randomization this makes the module use the player ID as seed so that players can't reroll for different results. 
-  * Init = Runs on client (where unit is local) for each unit the loadout is applied to. "_this" refers to the unit 
- 
-One or more units can be synced to this module to save their loadouts on this module. Synced units are then deleted. 
-===== Loadout Selection ===== 
-{{ :loadout_selector_actions.png?600 |}} 
- 
-Sync a loadout modules and objects to this module. The objects will then have actions for players to switch loadouts. 
- 
-{{ :loadout_selection_module.png?600 |}} 
- 
-{{ :loadout_selector_module.png?600 |}} 
-===== Overwrite Loadouts ===== 
-This module can spread loadouts from synced loadout modules to all units created of the same type as units sycned to this module. Synced units are then deleted. 
- 
- 
-====== Logistics ====== 
-===== Factory ===== 
-Synced objects act as a factory building that produces items passively over time. As long as there are enough materials in storage. 
- 
-Attributes: 
-  * Time = Time in seconds for how long a production cycle lasts 
-  * Downtime = Delay in seconds for how soon a production cycle can start after the previous one was finished 
-  * Cost = The cost for one production cycle 
-  * Created items = Items created by this factory in one production cycle 
-  * Condition = Condition evaluated on server that needs to return true for a production cycle to be able to start 
-  * On production cycle start = Code that runs on server when factory starts a production cycle. 
-  * On production cycle end = Code that runs on server when factory ends a production cycle. 
- 
- 
-===== Manufacturing ===== 
-{{ :manufacturing_ui.png?600 |}} 
-Logistics building for manufacturing 
-{{ :manufacturing_module.png?600 |}} 
-Attributes: 
-  * Side = Side which can access this recipe 
-  * Usage condition = Condition that runs on client that needs to return true to allow the client to access to this manufacturing facility. 
-  * On manufacture start = Code that runs when the recipe starts to be manufactured. _this to get the manufacturing object. 
-  * On manufacture end = Code that runs when the recipe was manufactured. _this to get the manufacturing object. 
- 
-{{ :manufacturing_syncs.png?600 |}} 
-===== Manufacturinq Recipe ===== 
-Sets a recipe for manufacturing. Optional: Syncing objects to this will have those objects created once the recipe is crafted. 
- 
-{{ :recipe_module_0.png?600 |}} 
-{{ :recipe_module_1.png?600 |}} 
- 
-Attributes: 
-  * Name = Displayname for the recipe 
-  * Category = Items with the same category are grouped together in the UI 
-  * Icon = Path to icon shown for the item in the manufacturing UI 
-  * Time = Time in seconds it takes to manufacture 
-  * Side = Side which can access this recipe 
-  * Create all synced = If enabled all groups and objects synced will be created when recipe is manufactured. Otherwise it selects one random group or object. 
-  * Cost = The item costs for this recipe 
-  * Produce = Items created by this recipe 
-  * Unlock hint = Text shown in the manufacturing UI that explains how to unlock the item. 
-  * Unlock condition = Condition, evaluated on client. Needs to return true to allow access to the recipe. 
-  * On creation = Code that runs on server when the recipe has been produced 
-====== Populator ====== 
-The purpose of the "populator" modules is to quickly populate the map with groups. Attacking, defending, patrolling, or constantly spawn/respawning enemies are possible right now. 
- 
-All Populator modules (besides the group ones) have the following attributes: 
-  * Side = For which side to spawn groups. Requires a group module for that side to be present in the mission 
-  * Sentries = Number of Sentry groups 
-  * Fireteams = Number of Fireteams 
-  * Squads = Number of Squads 
-  * Can reinforce? = Units from this task can reinforce others around them (can make them abandon task for a while). Requires lambs otherwise does nothing 
-  * Radios? = Units from this task have radios. Increases reinforcement response range and information sharing. Requires lambs otherwise does nothing 
-  * Dynamic simulation enabled? = Disables simulation of units until something activates them (like a player going near). Activation ranges and so on have to be configured in 3den, the defaults are very low. 
- 
-===== Groups Fireteam,Sentry,Squad  ===== 
-Defines units for a given side. Can be used by other modules to do dynamic spawning of units 
- 
-{{ :group_module.png?600 |}} 
- 
-Attributes: 
-  * Side = For which side to define the group 
-===== Attack ===== 
-Once condition is true, spawns units and creates task waypoints for them. Uses CBA attack if lambs isn't loaded. 
- 
-{{ :attack_module.png?600 |}} 
-Attributes: 
-  * Spawn condition = Condition run on server that must be true for the module to spawn attackers. '_this' refers to the Module 
-  * Spawn safety distance = How far away from nearest player should the attacking enemies spawn 
-  * Direction From = Sets the starting direction enemies can spawn from. 0 = north, 90 = east, 180 = south, 270 = west 
-  * Direction To = Sets end direction enemies can spawn from. Setting From = 0 and To = 180 would mean enemies can attack from 0 to 180 degrees (north-south) 
-  * Can rush? = AI that knows where players are and aggressively pushes them and even move into buildings. Requires lambs otherwise does nothing 
-  * Can CQB? = AI that searches buildings methodically (only use if there are buildings in the area). Requires lambs otherwise does nothing 
-  * Can Assault? = AI Rushes heedlessly to position. Requires lambs otherwise does nothing 
- 
-===== Defend ===== 
-Creates units and puts them in defend behaviour. Some of the units will garisson nearby statics, some take positions in buildings others just loiter in the area. Uses CBA defend task if lambs isn't loaded 
- 
-{{ :defend_module.png?600 |}} 
- 
- 
-===== Insertion Point ===== 
-A point to insert new units into the battlefield. Think of it as a spawn & respawn point. Amount of groups set in the module are the max amount active at the same time spawned by this module. If all behaviours are deactivated or lambs not loaded it defaults to CBA search. 
- 
-{{ :insertion_module.png?600 |}} 
- 
-Attributes: 
-  * Can hunt? = Patrol style behaviour that gradually centers in on players within range 
-  * Can rush? = AI that knows where players are and aggressively pushes them 
-  * Can creep? = AI attempts to move close to players using cover and engage in close range 
-  * Range = Range of tracking 
-  * Module as center? = If disabled AI will track targets within range of their own position, otherwise only within range of module. 
-  * Spawn timer = Interval in minutes for when to attempt spawning units 
-  * Spawn condition = Condition run on server that must be true for the module to spawn a group. '_this' refers to the Module 
-  * Stop timer = Interval in seconds for checking stop condition 
-  * Stop condition = Condition run on server, if true this module stops spawning units. Deleting the module during the mission also stops it. '_this' refers to the Module 
-===== Patrol ===== 
-Patrols get created in random points in module area and then patrol with 'range' of module. Uses CBA patrol if lambs isn't loaded. 
-{{ :patrol_module.png?600 |}} 
- 
-Attributes: 
-  * Range = Range of tracking 
- 
-====== Random Placement ====== 
-===== Random Placement Composition ===== 
-Sync this module to a ""Random Placement Main"" module and one or more objects that should be moved together. Position and rotations are relative to this composition module 
-===== Random Placement Main ===== 
-This module is supposed to be linked with a "Random Placement Position" Module and one or multiple objects/placement composition modules. It will select a random placement position and move the synced object there. It will do so for each synced object, but won't spawn something on a position twice. If there are more objects than placement positions, some will not be moved. 
- 
-Attributes: 
-  * Priority = Sets the priority of this placement module. Lower priority modules run first. Might be important if your placement conditions depend on other randomly placed objects. 
-  * Init Server = Runs on server when an object is moved. "_this" refers to the moved object. 
-  * Init Global = Runs global when an object is moved. "_this" refers to the moved object 
- 
-module description: This module is supposed to be linked with a "Random Placement Position" Module and one or multiple objects/placement composition modules. It will select a random placement position and move the synced object there. It will do so for each synced object, but won't spawn something on a position twice. If there are more objects than placement positions, some will not be moved. 
-===== Random Placement Position ===== 
-This module is supposed to be linked with a ""Random Placement Main"" Module. If the condition returns true, the position of the module is a possible placement position for an object. 
- 
-Attributes: 
-  * Condition = This position is only considered if the condition returns true. Evaluated on server only! 
- 
-====== Respawn ====== 
-===== Dynamic Player Spawn ===== 
-Random spawn position for players. All players of the selected side will be affected. Possible positions are defined with "Dynamic player spawn location". 
-{{ :dynamic_player_spawn_module.png?600 |}} 
- 
-Attributes: 
-  * Side = Players on the selected side will be affected by the module 
-  * Respawn = Random: Respawn random every time, Initial: respawn on the initial spawn position, Default: Default Arma respawn, for example Respawn markers placed by mission maker 
- 
-{{ :dynamic_player_spawn_syncs.png?600 |}} 
-===== Dynamic player spawn location ===== 
-This module is supposed to be synced with a ""Dynamic Player Spawn"" Module. This module defines a possible respawn position. 
-===== Item based respawn position ===== 
-This module works similar to the Respawn Position Module. It however needs to be synced to a container. If that container contains respawn items, players can respawn on it. If not they can't. Each respawn on the position one respawn item is consumed. 
- 
-Attributes: 
-  * Name = Name shown in respawn menu 
-  * Side = Side that can use the respawn position 
-  * ShowNotification = Whether or not to show a notification when the respawn position is created 
- 
- 
-===== Resapwn INDEP ===== 
-===== Respawn ===== 
-===== Respawn CIV ===== 
-===== Respawn EAST ===== 
-===== Respawn WEST ===== 
- 
-====== Traffic ====== 
-===== Traffic Route ===== 
-===== Traffic Route Location ===== 
- 
-====== Vehicle Service ====== 
-===== Service Point ===== 
- 
-====== Waves ====== 
-===== Waves Spawn Location ===== 
-===== Waves Spawn Set ===== 
-===== Waves Start ===== 
-===== waves Threshold ===== 
  
nfextra_modules.1736127253.txt.gz · Last modified: by tiwaz