diff --git a/README.md b/README.md
index 54f8b475..973bbc93 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# GRAD Civilians
-
+
Spawn ambient civilians on the map.
@@ -39,7 +39,7 @@ Civilians on separate islands can run into pathing problems. Avoid by creating e
## Detailed documentation
-should be found for the distinct modules:
+All modules have their own READMEs that describe features, settings & APIs:
* [activities](addons/activities/README.md)
* [cars](addons/cars/README.md)
@@ -58,53 +58,6 @@ should be found for the distinct modules:
* [voyage](addons/voyage/README.md)
* [zeus](addons/zeus/README.md)
-## Config
-
-Settings can be found as CBA Addon settings.
-
-![settings](docs/grad_civs-cba_settings.png)
-
-Attribute | Default Value | Explanation
--------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------
-animalTransportChance | 0.4 | Probability that a suitable vehicle will carry some animals as cargo.
-automaticVehicleGroupSize| 1 | Allow vehicles to be filled according to capacity, ignoring *initialGroupSize* (0,1).
-backpackProbability | 0.5 | Probability that a civilian will wear a backpack
-backpacks | [] | All classnames of backpacks that civilians may wear.
-civClasses | ["C_Man_1"] | Unit classes to use for spawning civilians
-clothes | [] | All classnames of clothes that civilians may wear.
-debugFps | 0 | Toggles fps monitoring mode (0/1).
-enabled | false | if grad_civs is enabled (false,true)
-faces | [] | All classnames of faces that civilians may have.
-goggles | [] | All classnames of goggles that civilians may wear.
-headgear | [] | All classnames of headgear that civilians may wear.
-initialGroupSize | 3 | Initial group size for civilians, between 1..N . Value may be any valid parameter to the `random` command.
-maxCivsInVehicles | 10 | Maximum number of civs in vehicles.
-maxCivsOnFoot | 30 | Maximum number of civs on foot.
-maxCivsResidents | 20 | Maximum number of civs that are residents, mostly doing their thing at home.
-minCivUpdateTime | 2 | Spawn new civilians only if their beheviour states get updated at least every N seconds. NOTE: each frame only one civ gets updated. Example: With 40fps and minCivUpdateTime=2, not more than 80 civs will be alive at any given time. This setting is meant to prevent civs from becoming too unresponsive.
-minFps | 40 | Spawn new civilians only if fps are at or above N . *NOTE*: the fps are taken from the machine that spawns the civs, which may be a HC.
-panicCooldown | [15,120,240] | Time it takes until a civilian relaxes after panicking (trivariate: [lowest, median, highest])
-spawnDistancesInVehicles | [1500,6000] | Minimum and maximum distance to players that civilians in vehicles can spawn in.
-spawnDistancesOnFoot | [1000,4500] | Minimum and maximum distance to players that civilians on foot can spawn in.
-spawnDistancesResidents | [500, 1000] | Minimum and maximum distance to players that civilians living in houses spawn in.
-vehicles | ["C_Van_01_fuel_F", "C_Hatchback_01_F", "C_Offroad_02_unarmed_F", "C_Truck_02_fuel_F", "C_Truck_02_covered_F", "C_Offroad_01_F", "C_SUV_01_F", "C_Van_01_transport_F", "C_Van_01_box_F"] | All classnames of vehicles that civilians may drive.
-
-## API
-
-see the various module READMEs
-
-### EVENTS
-
-#### global
-
-common events:
-
- ["grad_civs_civKilled", { params ["_deathPos", "_killer", "_civilian"]; }] call CBA_fnc_addEventHandler;
-
-
- ["grad_civs_vehicleTheft", { params ["_vehicle", "_thief"]; }] call CBA_fnc_addEventHandler;
-
-
## Development
* we're using the CBA state machine implementation, see `addons/*/functions/fn_sm_*/`
@@ -118,4 +71,4 @@ This is the current structure:
![activities state machine](docs/states.png)
-see `addons/*/fnc_sm*.sqf` for all the places where state machines are defined/added to.
\ No newline at end of file
+see `addons/*/fnc_sm*.sqf` for all the places where state machines are defined/added to.
diff --git a/addons/activities/README.md b/addons/activities/README.md
index c37fd290..43ba7cf7 100644
--- a/addons/activities/README.md
+++ b/addons/activities/README.md
@@ -4,6 +4,13 @@
Manages basic life states. Emotions, special activities,
+## Settings
+
+
+Attribute | Default Value | Explanation
+-------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------
+panicCooldown | [15,120,240] | Time it takes until a civilian relaxes after panicking (trivariate: [lowest, median, highest])
+
## API
### grad_civs_activities_fnc_doCustomActivity
diff --git a/addons/cars/README.md b/addons/cars/README.md
index ca4ef7c0..c1dad33c 100644
--- a/addons/cars/README.md
+++ b/addons/cars/README.md
@@ -4,13 +4,26 @@ Basic handling of civs driving cars.
As a user, see transit and voyage modules to actually get civs driving on the streets.
+## Config settings
+
+Attribute | Default Value | Explanation
+-------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------
+animalTransportChance | 0.4 | Probability that a suitable vehicle will carry some animals as cargo.
+automaticVehicleGroupSize| 1 | Allow vehicles to be filled according to capacity, ignoring *initialGroupSize* (0,1).
+vehicles | ["C_Van_01_fuel_F", "C_Hatchback_01_F", "C_Offroad_02_unarmed_F", "C_Truck_02_fuel_F", "C_Truck_02_covered_F", "C_Offroad_01_F", "C_SUV_01_F", "C_Van_01_transport_F", "C_Van_01_box_F"] | All classnames of vehicles that civilians may drive.
+
## API
### grad_civs_cars_fnc_setVehicles
+
Sets all vehicles that civilians may drive. Overwrites value from CBA settings. Execute globally
-#### Syntax
-`[vehicles] call grad_civs_cars_fnc_setVehicles`
+#### Example
+
+```sqf
+private _vehicles = ["C_Van_01_Fuel_F"];
+[_vehicles] call grad_civs_cars_fnc_setVehicles
+```
Parameter | Explanation
----------|-------------------------------------------------------------
diff --git a/addons/cars/functions/fnc_initConfig.sqf b/addons/cars/functions/fnc_initConfig.sqf
index 006af536..ceccf59b 100644
--- a/addons/cars/functions/fnc_initConfig.sqf
+++ b/addons/cars/functions/fnc_initConfig.sqf
@@ -7,7 +7,7 @@ private _settingsGroup = ["GRAD Civs", "7) cars - basic settings for civilian dr
[
QGVAR(animalTransportChance),
"SLIDER",
- "Suitable vehicles that will have animals as cargo",
+ "Ratio of suitable vehicles that will have animals as cargo",
_settingsGroup,
[0, 1, 0.4, 0, true],
true,
diff --git a/addons/diagnostics/README.md b/addons/diagnostics/README.md
index 4ef69450..c2423b4e 100644
--- a/addons/diagnostics/README.md
+++ b/addons/diagnostics/README.md
@@ -1,3 +1,14 @@
# grad\_civs\_diagnostics
-Debugging GUI stuff
\ No newline at end of file
+Debugging GUI stuff
+
+## Settings
+
+
+Attribute | Default Value | Explanation
+-------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------
+showFps | false | Show server & HC fps
+showOnMap | false | Show civs on map
+showInfoLine | false | Show detailed info line on civilian
+showPinkArrows | false | Create 3D arrows over civ heads
+showMisc | false | Miscellaneous stuff
diff --git a/addons/gta/README.md b/addons/gta/README.md
index a44623fb..6e269929 100644
--- a/addons/gta/README.md
+++ b/addons/gta/README.md
@@ -28,3 +28,11 @@ Serves to create events around civilian-owned vehicles getting stolen by players
* THEN LATER no event will have been triggered
* AND the player switches seats with the driver
* THEN ONCE a global event will be triggered: `"grad_civs_vehicleTheft", [_vehicle, player]`
+
+## API
+
+### Events
+
+```sqf
+["grad_civs_vehicleTheft", { params ["_vehicle", "_thief"]; }] call CBA_fnc_addEventHandler;
+```
diff --git a/addons/lifecycle/README.md b/addons/lifecycle/README.md
index 54baffa9..59213842 100644
--- a/addons/lifecycle/README.md
+++ b/addons/lifecycle/README.md
@@ -2,6 +2,18 @@
Controls all spawning & despawning of civilians, as well as incapacitation & death.
+## Settings
+
+Attribute | Default Value | Explanation
+-------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------
+civClasses | ["C_Man_1"] | Unit classes to use for spawning civilians
+cleanupCorpses | true | If `corpseManagerMode` should be supported by adding dead units using `addToRemainsCollector`.
+minCivOwnerFps | 30 | Spawn new civilians only on machines that have at least `N` fps.
+minCivUpdateTime | 2 | Spawn new civilians only if their beheviour states get updated at least every N seconds. NOTE: each frame only one civ gets updated. Example: With 40fps and minCivUpdateTime=2, not more than 80 civs will be alive at any given time. This setting is meant to prevent civs from becoming too unresponsive.
+minServerFps | 40 | Spawn new civilians only if server fps are at or above `N`.
+smMultiplicator | 1 | Speed multiplicator for state machines on HC. Will reduce both civ update times and fps on the respective HC.
+spawnOnlyWithPlayers | true | Spawn civilians only if players are connected.
+
## API
### Events
@@ -12,3 +24,13 @@ Controls all spawning & despawning of civilians, as well as incapacitation & dea
If civilians come under the control of grad-civs or are removed from grad-civs control, respectively.
Argument is an *array of* civilians (i.e. units)
+
+```sqf
+["grad_civs_lifecycle_civ_added", { systemChat format ["new civs: %1", _this]}] call CBA_fnc_addEventHandler;
+```
+
+#### `grad_civs_civKilled`
+
+```sqf
+["grad_civs_civKilled", { params ["_deathPos", "_killer", "_civilian"]; }] call CBA_fnc_addEventHandler;
+```
diff --git a/addons/loadout/README.md b/addons/loadout/README.md
index 89b2d424..938ff719 100644
--- a/addons/loadout/README.md
+++ b/addons/loadout/README.md
@@ -2,6 +2,18 @@
Determine clothing etc for civilians
+## Settings
+
+
+Attribute | Default Value | Explanation
+-------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------
+backpackProbability | 0.5 | Probability that a civilian will wear a backpack
+backpacks | [] | All classnames of backpacks that civilians may wear.
+clothes | [] | All classnames of clothes that civilians may wear.
+faces | [] | All classnames of faces that civilians may have.
+goggles | [] | All classnames of goggles that civilians may wear.
+headgear | [] | All classnames of headgear that civilians may wear.
+
## API
diff --git a/addons/main/README.md b/addons/main/README.md
new file mode 100644
index 00000000..7d78c2c0
--- /dev/null
+++ b/addons/main/README.md
@@ -0,0 +1,9 @@
+# grad\_civs\_main
+
+Contains the main switch & meta information.
+
+## Settings
+
+Attribute | Default Value | Explanation
+-------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------
+enabled | false | if grad_civs is enabled (false,true)
diff --git a/addons/patrol/README.md b/addons/patrol/README.md
index a1640b1c..4cead010 100644
--- a/addons/patrol/README.md
+++ b/addons/patrol/README.md
@@ -1,3 +1,12 @@
# grad\_civs\_patrol
Civilians who patrol the neighborhood, alone or in groups.
+
+## Settings
+
+Attribute | Default Value | Explanation
+-------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------
+initialGroupSize | 3 | Initial group size for civilians, between 1..N . Value may be any valid parameter to the `random` command.
+maxCivsOnFoot | 30 | Maximum number of civs on foot.
+spawnDistancesOnFoot | [1000,4500] | Minimum and maximum distance to players that civilians on foot can spawn in.
+
diff --git a/addons/residents/README.md b/addons/residents/README.md
index 636162ac..afd6e805 100644
--- a/addons/residents/README.md
+++ b/addons/residents/README.md
@@ -1,3 +1,13 @@
# grad\_civs\_residents
-Civilians who live in their homes and leave them only for a short chat with the neighbors.
\ No newline at end of file
+Civilians who live in their homes and leave them only for a short chat with the neighbors.
+
+## Settings
+
+Attribute | Default Value | Explanation
+-------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------
+chatTime | 20 | How long civilian chats can last, in seconds
+maxCivsResidents | 20 | Maximum number of civs that are residents, mostly doing their thing at home.
+meetNeighborCooldown | 150 | Time between visiting neighbors
+spawnDistancesResidents | [500, 1000] | Minimum and maximum distance to players that civilians living in houses spawn in.
+
diff --git a/addons/voyage/README.md b/addons/voyage/README.md
index 3e0dad7e..53e5138b 100644
--- a/addons/voyage/README.md
+++ b/addons/voyage/README.md
@@ -1,3 +1,11 @@
# grad\_civs\_voyage
-Voyagers are civilians who randomly drive around in cars.
\ No newline at end of file
+Voyagers are civilians who randomly drive around in cars.
+
+## Settings
+
+Attribute | Default Value | Explanation
+-------------------------|---------------|------------------------------------------------------------------------------------------------------------------------------------------------
+maxCivsInVehicles | 10 | Maximum number of civs in vehicles.
+maxTravelRadius | - | Max travel radius around spawn; defaults to a bit more than max spawnDistance
+spawnDistancesInVehicles | [1500,6000] | Minimum and maximum distance to players that civilians in vehicles can spawn in.