Summary
# LHDF Server Tools
LHDF Server Tools holds the features a server owner sets up for their community: the join banner, chat messages and commands, view and world rules, and Game Master access.
Description
# LHDF Server Tools
LHDF Server Tools holds the features a server owner sets up for their community: the join banner, chat messages and commands, view and world rules, and Game Master access. It is part of the Lost Hope Dynamic Framework (LHDF) and builds on LHDF Core.
All features are set in one JSON file on the server. Rules that change how the game looks or plays (view rules, building damage, group map markers) can also be changed live by a Game Master in the "LHDF" attribute tab, section LHDF Server Tools. The banner text stays on the server; a client downloads it only when it does not have the current text yet.
## Features
- Join banner: a window with header image, rich text (up to 32,000 characters), a title and an optional link button (for example to your Discord). It opens on join (always, only when the text changed, or never), from "Server info" in the pause menu, and with `#info` in the chat.
- Join loading screen: the scenario's loading screen stays up until the player's character is in and the area around it is loaded, for at most a set time.
- Repeated chat messages (every 1 to 1440 minutes) and daily scheduled ones at a set time (UTC or server local time).
- Commands in chat and over RCON: `#message <text>` (chat line for everyone, with a prefix) and `#save` (vanilla save point now) for admins, `#info` (opens the banner) for everyone.
- View rules: third person on foot, third person in vehicles, Armavision (editor photo mode) for players without Game Master or admin rights.
- World rules: building damage on or off, vanilla group (squad leader) map markers on or off, the second weapon slot taking rifles and other long guns.
- Corpse times: how long player and AI bodies stay, or leave it to the server's garbage rules.
- Game Master access: edit mode on join for players listed by identity id, for players named in the start parameter `-lhdfGameMasters "<id>,<id>"`, and optionally for listed server admins. Game Master votes are only offered when the game mode lets players vote one in.
- Logging out while unconscious counts as death; the next join starts fresh.
- Starter loadouts: with the automatic spawn, a new player or a player who died gets one of the listed loadouts at random.
- A ready game mode prefab (`Prefabs/MP/LHDF_GameMode_Persistent.et`) and systems config (`Configs/Systems/LHDF_PersistentSystems.conf`) for persistent scenarios: disconnect saves player and character, no Game Master by vote.
## Required on server and clients
The banner, loading screen, view rules and Game Master attributes run on the clients, so the mod must be loaded on the server and on every client.
## Dependencies
- Arma Reforger
- LHDF Core
## Configuration
Settings live in `$profile:LHDF/<namespace>/Server.json`. On every start the server writes every key with its default to `_defaults/Server.md` and `_defaults/Server.json` in the same folder; copy the keys you want to change into `Server.json`.
Main keys:
- `banner.enabled` (default true), `banner.title` ("Server Message"), `banner.lines` (one entry per line, rich text; no lines means no banner), `banner.image` (this mod's banner picture; a texture resource, `mission` for the scenario's loading screen, or empty), `banner.linkLabel` ("Discord"), `banner.link` (empty: no button), `banner.showOnJoin` (`always`, `onChange` or `never`).
- `repeatedMessages`: `[{ "message": "...", "intervalMinutes": 30 }]`. `scheduledMessages`: `[{ "message": "...", "hour": 20, "minute": 0 }]`. `scheduledUtc` (default true). `adminPrefix` (default "[Admin] ").
- `thirdPersonOnFoot` (default false), `thirdPersonInVehicle` (true), `allowArmaVision` (false), `buildingDamage` (false), `groupMapMarkers` (true), `nameTags` (true): all live-editable.
- `anyWeaponInSecondSlot` (default false).
- `playerCorpseSeconds` (default 1800), `aiCorpseSeconds` (default 600); 0 leaves it to the server's garbage rules.
- `gameMasters`: `{ "<identity id>": "note" }`; the server log prints each joining player's identity id. `adminsAreGameMasters` (default true).
- `unconsciousLogoutIsDeath` (default true).
- `starterLoadouts`: loadout names of the scenario's loadout manager, e.g. `["Kit_A", "Kit_B"]`; empty (default) leaves it to the spawn logic.
- `loadingScreen` (default true), `loadingScreenMaxSeconds` (default 60, 10 to 600).
Admins for `#message` and `#save` are logged-in or listed server admins, or players named in LHDF Core's start parameter `-lhdfAdmins`.
## Known limitations
- Another mod that registers the same chat commands (for example Server Admin Tools) conflicts with this one; do not run them together.
- The loading screen does not cover a deploy menu without a character, and a Game Master in the editor skips it.
- With building damage off, buildings that are already damaged stay as they are.
Beta: feedback welcome on the Lost Hope Survival Discord: https://discord.gg/uDzYTTdsM6License
CUSTOM LICENSE – RESTRICTED SERVER USE
Version 1.0 – 2026-10-01
1. OWNERSHIP
This mod, including all code, assets, configurations and documentation
(the "Content"), is created and owned by BoomstickBarry / the LHDF 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:
[Lost Hope Survival - 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 through the Lost Hope Survival Discord:
https://discord.gg/uDzYTTdsM6. 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.