ALiVE.OS · ALiVE 3 Development
The in-mission menu where players adjust view distance, tags and persistence settings, opened with the ALiVE key.
In development · ALiVE 3
ALiVE 3 is in active development. This briefing describes work in progress, and the behaviour it covers is subject to change as testing continues. Check the changelog at the foot of the page for what has moved recently.
Overview
Player Options is a background module a mission maker drops into the editor with no syncing or positioning needed. It adds the Player Options entry to the ALiVE in-game menu that players open with their ALiVE key, and it wires up the settings that menu controls: view distance limits, player persistence (save/load of loadout, ammo, health, position, scores, by player or by slot), the crew info panel, and player name tags above nearby soldiers on your side. Most of the actual toggles in this module's config (persistence save rules, tag colours and distances, crew info panel side) are set once by the mission maker at mission-build time; what a player sees during a mission is the resulting menu, described below.
How it works
Player Options' Persist By decides who a save belongs to: each player, whichever slot they take, or each slot, whoever takes it.
Capabilities
Opening the ALiVE menu and choosing Player Options, then View Settings, gives access to a view distance slider and a terrain detail slider, letting a player change their personal view distance and terrain detail within the minimum and maximum range the mission maker configured.
The menu has separate Enable and Disable entries for on-screen tags that show teammates' names above their heads. They only appear when Player Tags isn't set to None. Colours, distance, rank and group display are set by the mission maker; the player only gets the on/off switch, and can also hide the tags or shorten their distance in Addon Options (see below).
When the mission maker has enabled player persistence with manual save and reset, the menu shows options to save your current loadout, health and position on demand, or reset your character. Both entries only appear if the mission maker has switched them on.
If the Player Logistics system is running in the mission and switched on, the menu offers a quick way to turn its scroll-wheel actions (load, carry, tow, lift) on or off for your own player.
A menu entry lets a player re-request the current set of ALiVE markers locally, useful if map markers fail to appear after a reconnect.
Under ALiVE in the Addon Options page (Game section), a player can set a starting view distance, hide the player tags or show them at a shorter distance than the mission's, and move the vehicle crew list to the left, to the right or off. None of these lets a player go past a limit the mission maker set; a mission that turns the crew list off keeps it off.
How to use it
Settings
Player Options is one module that sets up four player features at once: the view distance menu, player persistence (saving gear, health, position and score between reconnects, and across server restarts if you also save to a database), the Crew Info vehicle panel, and player name tags. Everything you set here is passed straight through to those features, so this is the only place you need to configure them. It needs the ALiVE Required module placed, and players reach the view distance menu, the tag switch and the reset and manual save options through the ALiVE menu under Player Options.
Presets that use this module: Persistent campaign: a war that carries on where you saved. Place one in the editor to see it set up.
Anyone above 3000 m is pulled down to it when the mission starts, and the View Distance menu won't let players go past either limit.
Players lose the menu options to roll back or save on demand, and can't reconnect in a different role to get a fresh kit.
Player data is written to the database every 10 minutes, and again when an admin uses Server Save and Exit from the ALiVE pause menu, as long as the ALiVE Data module is also placed and set to Local.
Players get the crew panel on the right of the screen and no name tags floating over anyone.
Modern with On View Only puts a tag on the one unit under your crosshair, and 30 m gives a little more range than the usual 20. Players still switch tags on from the ALiVE menu under Player Options.
A slot's kit, position and health stay with the slot, so the next player to take the pilot slot gets the pilot's gear. Give every playable unit a Variable Name in Eden, because an unnamed slot is saved by player.
Choices: Yes / No
Writes extra diagnostic lines to the log files. Crew Info and Player Tags report their settings when they start, and persistence logs a line when a connecting player has no saved record. Nothing changes in game.
AffectsThis is the only debug switch that reaches Crew Info and Player Tags. The View Distance menu ignores it.
The lowest view distance, in metres, a player can pick on the View Distance slider in the player menu. It only limits the slider: a player whose game is already set lower keeps that lower distance until they move the slider.
AffectsOnly affects the View Distance menu in the player menu. A blank box is treated as 500.
The highest view distance, in metres, a player can have. When the mission starts, anyone above it is pulled down to it, and it's also the top of the View Distance slider. It never raises anyone's view distance.
AffectsA blank box uses 15000 m rather than the 20000 shown in the editor.
TrySet it to 3000 on an infantry mission so busy servers stay smooth.
The lowest terrain detail level players can use, on a scale of 1 (coarsest) to 5 (finest). It's a level, not a distance, so type a whole number from 1 to 5.
AffectsTogether with Max Terrain Grid it sets the detail applied at mission start and the range of the terrain slider in the View Distance menu.
The highest terrain detail level players can use, from 1 to 5. At mission start ALiVE sets detail level 2 in multiplayer or 3 in single player, kept within your min and max; if the two are equal, that level is forced.
AffectsAlso sets the top of the terrain slider in the View Distance menu.
TrySet both Min and Max Terrain Grid to 3 to lock everyone to the same terrain detail.
Choices: Yes / No
Turns player persistence on or off. With No, nothing about players is saved or restored, and the reset and manual save menu options aren't added.
AffectsEvery other setting in this section only matters when this is Yes.
Choices: Player / Slot
Chooses what a player's saved kit, position and health follow. Player keeps each player's own, whichever slot he takes. Slot keeps them with the slot instead, so whoever takes that slot next gets its kit, position, vehicle and health, while name, face, rank and scores stay with the player. Switching a running campaign from Player to Slot carries each player's own save over, once, to the first slot they take that has no save yet.
AffectsWith Slot, the class check from Allow Different Class Rejoin does not apply. Slots are told apart by their Eden Variable Name, so name the playable units; a slot with no name is saved by player. Switching between the two leaves the other mode's saves untouched.
TrySet it to Slot for a unit whose players change roles from week to week, so a pilot's slot keeps the pilot's kit and the next man in it doesn't arrive in the wrong gear.
Choices: Yes / No
Lets players reset themselves to the state they had 20 seconds after joining, or to their last manual save, from the player menu.
AffectsAn admin can switch this on or off during the mission from the admin menu, which overrides what you set here.
Choices: Yes / No
Adds a Manual Save option to the player menu so players can save their current state whenever they like.
AffectsA manual save is also the point players return to when they use the reset option. An admin can switch manual saves on or off during the mission from the admin menu, which overrides what you set here.
Choices: Yes / No
With No, a player who rejoins in a different role from the one they were saved as sees a message and the mission ends for them. Their earlier save is kept intact.
AffectsAn admin can switch this on or off during the mission from the admin menu, which overrides what you set here.
TrySet it to Yes if players are expected to swap roles between sessions.
Choices: Yes / No
Controls whether a reconnecting player gets their saved gear back. With No, ALiVE stops watching what they pick up and drop, and gear isn't put back on reconnect or reset. A snapshot of their gear from shortly after they joined, or from a manual save, is still written into their record but never applied.
AffectsGear a player picks up or drops only reaches the server straight away while the ALiVE Data module is placed. Without it, their gear is still read every five minutes, shortly after joining and whenever they save by hand.
Choices: Yes / No
With Yes, saved magazines keep the rounds the player actually had left. With No, every saved magazine comes back full.
AffectsOnly matters when Store Loadout is Yes. A module created by script defaults to Yes, as the editor does.
Choices: Yes / No
Saves each player's injuries and restores them when they reconnect. With ACE loaded that includes ACE's medical state (wounds, bandages, fractures, blood, pain), which ACE applies a few seconds after the player spawns.
Choices: Yes / No
Saves where each player was and puts them back there when they reconnect.
TrySet it to No if you want everyone to start back at their slot's position on reconnect but keep their gear.
Choices: Yes / No
Saves each player's score for the current mission and restores it when they reconnect.
Choices: Yes / No
Writes player data to the ALiVE external database so it survives a server restart. With No, player state only lasts while the server keeps running.
AffectsNeeds the ALiVE Data module placed and enabled; without it this setting does nothing.
See it inPersistent campaign: a war that carries on where you saved (true)
How often, in seconds, player data is also written to the database during the mission. Each write first refreshes the players' saved state, gear included. 0 or blank turns the timer off, leaving Server Save and Exit from the ALiVE pause menu to write it. A player disconnecting only updates the copy held in server memory.
AffectsOnly works with Save to Database on and the Data module placed with Database Source set to Local. It's checked every 10 seconds, so the interval rounds up to the next multiple of 10: 45 writes every 50 seconds, and anything up to 10 writes every 10.
Try600 writes everyone to the database every 10 minutes when ALiVE Data is on Local.
Choices: None / Right / Left
Shows a panel listing who's crewing the vehicle you're in, docked on the right or left of the screen. None turns it off.
AffectsA module created by script without this set shows the panel on the right, not off.
TryRight if you've switched Player Tags In Vehicle off and still want players to see their crew.
Choices: None / Modern / Default
Picks the name tag style, or None to turn tags off. Tags start hidden for everyone: each player switches them on from the ALiVE menu under Player Options, Enable Player Tags. Modern draws a rank icon and name over nearby soldiers. Default is the older text style with coloured name and group text, and it also lists the crew of nearby vehicles.
AffectsModern only uses On View Only, Restrict To Friendly Units and Player Tag Distance. Every other tag setting below is read only by the Default style.
Choices: No / Yes
With Yes, a tag only shows on the unit you're looking straight at, instead of on everyone in range.
AffectsWorks with both tag styles.
Choices: No / Yes
Adds the unit's rank to its tag. It makes no difference with the Modern style, which always shows a rank icon.
AffectsRead only by the Default style.
Choices: No / Yes
Adds the unit's group name to its tag. It makes no difference with the Modern style, which never shows groups.
AffectsRead only by the Default style.
Choices: No / Yes
With Yes, you still see tags on the people in your own vehicle while you're inside it.
AffectsRead only by the Default style. Modern needs a clear line of sight to a soldier, so people inside closed vehicles don't get tags whatever this is set to.
Choices: Yes / No
With Yes, only units on your own side get tags. With No, every side is tagged, and the Modern style colours tags by side.
AffectsOnly the Modern style reads it. The Default style always limits tags to your own side whatever you set here.
The kinds of object that get a tag, written as a list of class names in the same format as the default.
AffectsRead only by the Default style. Modern only ever tags people, never vehicles.
Try['CAManBase'] to tag people only.
How close, in metres, a unit has to be before its tag appears.
AffectsWorks with both tag styles.
Try10 for close-quarters missions where tags shouldn't give away positions.
How far from the centre of your screen a unit can be and still get a tag. Lower values mean you have to look more directly at them.
AffectsRead only by the Default style.
How high, in metres, the tag sits above the unit.
AffectsRead only by the Default style.
The colour of a unit's name on its tag, as a hex colour code, unless that unit leads its group, in which case the GL Colour is used instead.
AffectsRead only by the Default style.
The colour of group names for units outside your group, as a hex colour code.
AffectsRead only by the Default style.
The colour of any group leader's name, yours or another group's, as a hex colour code.
AffectsRead only by the Default style.
The colour of the group name on the tags of members of your own group, as a hex colour code. The name itself still uses Name Colour or GL Colour.
AffectsRead only by the Default style.
Recent work
Status
The Player Options entry in the ALiVE menu reliably opens and exposes the toggles and actions described above, gated correctly by whatever the mission maker has enabled.
The error that could abort the whole ALiVE menu partway through building it has been fixed.
Several entries in this menu are still written in the older code-block style, and so are menus elsewhere in the mod. That no longer matters. Every ALiVE menu, including this one, passes its entries through a shared step that converts a code-block action into the form the menu system needs before the menu is shown. The kind of error that once let one badly formed entry break the rest of the menu is closed everywhere, and no further module-by-module rewrite is needed.
Testing
Place the Player Options module in the editor (no sync or positioning required) alongside the ALiVE Requires module. In a test mission, press the ALiVE menu key and open Player Options. Confirm the menu opens without errors, the view distance control works, player tags can be toggled on and off, and (if persistence and logistics are enabled in the mission) the save, reset and logistics toggles appear and function as expected. With persistence on, set Persist By to Slot, name two playable units in Eden, and check a different player taking a slot gets its kit.
Spotted a problem? Please report it on the ALiVE issue tracker on GitHub, with the map, rough location and what the units were doing so it can be reproduced.
Changelog