Summary
# DLG Encounters
Enemy AI encounters, a map index and missions, all defined in JSON by the server owner.
Description
# DLG Encounters
Enemy AI encounters, a map index and missions, all defined in JSON by the server owner.
Encounters puts enemies at map locations and near players, and runs missions with vanilla tasks.
Every encounter and every mission is a *type*: a JSON file with the same baseline settings and
optional spawns, objectives and actions. Change the shipped types or add your own, no scripting
needed. Built on DLG Core.
## Features
- **Encounters:** enemy zones, encampments with compositions, patrols, ambushes and squads. A random
encounter picks one of them.
- **Missions:** 16 shipped templates, among them clear, destroy, eliminate, defend, recon, free the
HVT, rescue a pilot or informant, sabotage, secure, hunt, intel, checkpoint, supply cache, outpost
and last stand. A random mission picks one of them.
- **Objectives:** kill all, kill a target, destroy, hold, reach, rescue a hostage, extract.
- **Pre and post actions:** delays, random choices, spawns, attack waves, rewards, money, executions,
exfiltration, despawns, follow-up missions, task text changes, event mode.
- **Vanilla tasks:** every mission gets a task. Missions with several objectives get child tasks that
move with their target and show progress.
- **Map index:** the server finds the named locations of any terrain (cities, towns, villages, bases,
airports, ports, hills) and tracks where players are.
- **Enemies at locations** by rules per location type. Locations with a player spawn point are left
alone.
- **Dynamic content:** encounters appear near players in the open, missions start at locations away
from players.
- **Encounter Directors:** sectors that set the enemy faction, difficulty and content for everything
inside. One director alone covers the whole map.
- **Rewards:** reward items, and money in DLG Shop accounts for every player group near the mission
when it completes, split between the members there.
- **Game Master:** place Encounter Zone, Random Encounter, Encampment, Patrol, Mission and Encounter
Director. Pick the type and change every setting in the attributes. Start, stop and reset missions
and sectors. Everything placed or changed is saved.
- **Performance:** enemies spawn only when players come near and go dormant when they leave. There is
a cap on encounter AI.
- **Any faction:** vanilla or modded, through the faction's group catalog.
## Required on server and clients
The mod must be loaded on the server and by every player.
## Dependencies
- DLG Core
Optional: DLG Shop, for money rewards. Without it, missions pay reward items only.
## Configuration
Everything is set in JSON files in the server profile:
```
$profile:DLG/<namespace>/Encounters/
Encounters.json server settings, location rules, dynamic encounters, directors
Types/<id>.json encounter and mission types
Forces.json groups, compositions and targets per faction
Areas.json encounter profiles and standalone encounters
Missions.json missions, task faction, reward items
CustomLocations.json your own locations, and detected ones to ignore
Locations.json the map index (written on every start, read only)
```
The files are created with defaults on the first start. Missing keys are added on later starts, your
values are kept. The full reference is in the mod's README.
## Setup
1. The scenario's game mode needs the DLG Core component (e.g. the DLG Core game mode prefab).
2. Tasks need the vanilla task system in the world.
3. Optional: add the DLG Encounters component to the game mode for scenario defaults, and place the
encounter, mission and director prefabs.
## Other DLG mods
- **DLG Core:** persistence and the base of every DLG mod (required).
- **DLG Shop:** traders and player accounts. Pays the money rewards.
- **DLG Loot Spawner:** map-wide loot.
- **DLG Game Master Additions:** Map Entity Hider and Safe Zone.
- **DLG Vehicle Lock:** owned vehicles, keys and locks.
## Known limitations
- Location enemies are rolled again on every restart. Mission progress doesn't persist over
restarts.
- Freed hostages follow only a player who is in a group.
License
CUSTOM LICENSE – RESTRICTED SERVER USE
Version 1.0 – [Date]
1. OWNERSHIP
This mod, including all code, assets, configurations and documentation
(the "Content"), is created and owned by BoomstickBarry/ the DLG Team (the "Author").
All rights not expressly granted in this license are reserved.
2. PERMITTED USE
Without further permission, you may:
a) download the Content through the Arma Reforger Workshop;
b) use it in single-player, offline or local Workbench sessions for
personal, non-commercial purposes;
c) host it on the following authorized servers only:
[DLG Survival PvPvE - Nizla Island].
3. SERVER RESTRICTION
You may not load, host, run or otherwise deploy the Content, in whole or
in part, on any multiplayer server other than those listed in Section 2(c)
without prior written permission from the Author. This applies to public,
private, password-protected, unlisted, test and event servers, and to
server-side-only use.
4. REQUESTING PERMISSION
Requests must be sent to [Discord/email]. Permission is valid only if
given in writing by the Author, applies only to the servers named in it,
and cannot be transferred or sublicensed.
5. NO REDISTRIBUTION
You may not reupload, mirror, repack, merge into another mod, or otherwise
redistribute the Content on any platform.
6. NO DERIVATIVES
You may not modify, adapt, decompile, extract assets or code from, or
create works based on the Content without written permission. Creating a
separate mod that lists the Content as a dependency is allowed only for
use on authorized servers.
7. NO COMMERCIAL USE
You may not sell the Content or use it in any context involving direct or
indirect financial gain, including servers with paid access, paid perks
or donation-based advantages.
7a. NO USE OUTSIDE BOHEMIA INTERACTIVE PRODUCTS
The Content may only be used within Arma Reforger and other Bohemia
Interactive products. It may not be transferred to, used in, or adapted
for any other game, engine or platform.
8. TECHNICAL MEASURES
The Content may include checks that limit its functionality to authorized
servers. Circumventing, disabling or removing these checks is prohibited.
9. TERMINATION AND REVOCATION
Any breach of this license automatically ends your rights under it. The
Author may revoke any granted permission at any time. After termination
or revocation, you must stop using the Content on any server immediately.
10. NO WARRANTY
The Content is provided "as is", without warranty of any kind. The Author
is not liable for any damage, data loss or server issues arising from its
use.
11. THIRD-PARTY CONTENT
Any third-party material included in the Content remains subject to its
own license, and nothing here overrides those terms.
12. CHANGES
The Author may update this license. The version shown on the Workshop
page is the one that applies.
13. SEVERABILITY
If any part of this license is found unenforceable, the rest remains in
effect.