From Data Realms Wiki
Shields are an AddToGroup for HeldDevices which equips them to the background arm (off-hand) of an AHuman. It is also possible to mount a HeldDevice (like the Riot Shield) to the Turret of an ACrab Actor, though ACrabs can't cycle inventory, meaning it would only ever have that shield. Good if you're feeling extra defensive.
Currently there is only one shield in the game. However, the category has proven useful for modders.
- Tech: Free Trade
- Gold Value: 15
- Mass: 8
- Description: "This metal shield provides excellent additional frontal protection to the user and it can stop numerous hits before breaking up."
Able to stand up to a barrage about as well as a "heavy infantry" classed Actor, the Riot Shield leaves a bit of exposure. It is best to stay low to the ground when hiding behind the shield.
Although currently only used by Cortex Command for the TradeStar Riot Shield, "AddToGroup = Shields" has been used by the mod community to create “off-handed” HDFirearms the background arm can operate, something normally only the foreground arm can do.
Here is a basic example of the correct coding for an "off-handed" weapon.
AddDevice = HDFirearm PresetName = <<Weapon Name Here>> AddToGroup = Shields <<...and all the rest of the required data...>>
In short, it's a valid AddDevice declaration added to the Shields group; and despite being a HDFirearm, it isn't added to the Weapons group or Tools group.
In managing multiple versions (on-hand and off-hand, variant models) of the same gun, there are complications to using CopyOf to avoid having multiple independent copies to update as you modify things you want to be the same in all the weapons. CopyOf declarations can only be successfully off-handed if the Device they copy was successfully off-handed. It's something like keeping a royal bloodline.
Altogether, there are two main rules, each with consequence for any AddDevice that is a CopyOf.
- Must have "AddToGroup = Shields"
- Cannot be a CopyOf any AddDevice which didn't have "AddToGroup = Shields"
- Must not have "AddToGroup = Weapons" or "AddToGroup = Tools"
- Cannot be a CopyOf any AddDevice which did have "AddToGroup = Weapons" or "AddToGroup = Tools"
An off-handed HDFirearm will fire when used with any other HDFirearm which is defined with "OneHanded = 1" or even a TDExplosive defined likewise. It will also fire when the Device in the foreground arm is dropped, though in general an off-hand weapon will equip to the foreground arm when no other OneHanded Device is in the Actor's inventory.
A TDExplosive can also be offhanded. However, an offhanded TDExplosive will not be thrown even when the foreground arm is using another TDExplosive and both are defined with “OneHanded = 1”. But it will not appear in the Buy menu in-game, only in the Build menu. The Shields section seems to accept only HeldDevices, not ThrownDevices.
However, a OneHanded TDExplosive can be thrown normally when paired with an offhanded HDFirearm (or a normal Shield), which will fire while the throw is being "charged up" by holding your fire button.
Finally, a HeldDevice can be “on-handed” with an off-hand HDFirearm (or TDExplosive, though it will be inoperable) by making a Shield be OneHanded and getting it equipped to the foreground arm. The result is a confused southpaw riot cop lacking the SharpLength aiming the HDFirearm provides and the foreground arm holding the shield closer than usual providing less cover for the gun. It’s certainly creative.
Cycling off-hand Devices into the on-hand can be done by putting an AHuman into a crawl first, temporarily emptying the background hand into the normal inventory for the on-hand.