FPS Classes & Armory
Adds classes, a weapon workshop with validated attachments and perks, grenades, fire modes and a persistent career to the shared first-person match; web only.
FPS Classes & Armory (fps.armory) #
What it is for #
Adds classes, a weapon workshop with validated attachments and perks, grenades, fire modes and a persistent career to the shared first-person match; web only.
It needs fps.deathmatch, game.engine; installing it brings them in.
Turn it on #
Install the kit in a project, then change a setting (the values shown are its defaults):
gripforge_gamekit_install { project_id: "gkp_…", id: "fps.armory" }
gripforge_gamekit_configure { project_id: "gkp_…", id: "fps.armory",
config: { "mode": "team_deathmatch", "slide": true } }
First example #
<!-- test: kits/fps_armory/tests/fps_armory.rs::the_default_profile_has_three_classes_and_an_empty_career --> This is the body of the passing test the_default_profile_has_three_classes_and_an_empty_career; the helper functions it calls are defined at the top of the same test file.
#[test]
fn the_default_profile_has_three_classes_and_an_empty_career() {
let mut s = armory(json!({}));
let p = profile(&mut s);
assert_eq!(p["version"], 1);
let ids: Vec<&str> = p["classes"]
.as_array()
.unwrap()
.iter()
.map(|c| c["id"].as_str().unwrap())
.collect();
assert_eq!(ids, ["assault", "breacher", "recon"]);
assert_eq!(p["selected"], "assault");
assert_eq!(p["career"]["xp"], 0);
assert_eq!(p["career"]["kills"], 0);
assert_eq!(p["career"]["weaponXp"], json!({}));
// The first class is the one the player plays.
assert_eq!(chosen(&mut s)["id"], "assault");
}
Settings and defaults #
Descriptions come from the kit manifest and stay in English.
| Setting | Type | Default | Range or values | Meaning |
|---|---|---|---|---|
mode | string | "team_deathmatch" | team_deathmatch, domination, bomb | |
slide | boolean | true | ||
vault | boolean | true | ||
penetration | boolean | true | ||
killcam | boolean | true | ||
progression | boolean | true | ||
maxAttachments | integer | 5 | 0–7 | |
helpSeconds | number | 18 | 0–120 | |
catalog | object | — | Optional replacement FpsArmoryCatalog. |
Services, events, variables #
- Service
fps.armory: Validated classes, attachment statistics, career and class selection on respawn. - Events listened to:
fps.kill,fps.match_end,fps.loadout_selected,fps.*
Hooks and modding #
- Moddable settings:
mode,slide,vault,penetration,killcam,progression,maxAttachments,helpSeconds,catalog
Engines #
Declared targets: web, rust. gripforge kit api fps.armory lists the exact settings and services of your version.
Versions #
Kit version 1.2.0.