Code Monkey home page Code Monkey logo

grom-restricted-arsenals's Introduction

Grom Restricted Arsenals (Alpha)

A useful Arma 3 mod that allows mission-makers to initialize an infinite amount of whitelisted arsenals, both ACE and vanilla, and restricted by player role and other attributes.

View on Steam Workshop

Modules

To use a module, simply drop the module anywhere in your mission's map in 3den editor and double-click on it to configure. Modules can be found under the "Systems" category in 3den editor.


[1] Base Arsenal

A basic, whitelisted arsenal that everyone can access. This module can also be restricted to a specific side, ie: BLUFOR. You can make make as many as needed, ie: one for each "side" (or team in a pvp gamemode etc).

[2] Restricted Arsenal

A whitelisted arsenal in which only certain players with a specific role can access, ie: Machinegunner@anything as well as a specific side, ie: BLUFOR.


Utilities

[1] Force Vanilla Arsenal

Dropping this module into your mission will automatically convert all restricted arsenals into an Arma 3 virtual arsenal (vanilla arsenal). Amount has no effect, 1 is enough.


Module attributes & settings

  • Side: The side that can access this arsenal. Select "ANY" to allow all sides to access the arsenal.

  • Owner: The object/classname of objects that own/s this whitelisted arsenal. This can be the object's classname or a variable name. If the object is destroyed, the arsenal will be destroyed as well. Keep in mind that you may encounter issues if you try to combine an arsenal that is owned by a classname with an arsenal that is owned by a variable name. Otherwise, you can use the same variable name/classname for multiple arsenals which will combine them into one arsenal specific to the player's side/role. It is recommended that you use a variable name if you only want one specific object to own the arsenal. Otherwise, if you want multiple objects of the same type to host an arsenal, use a classname.

  • Role (Restricted arsenal only): The role that can access this arsenal. For non-CBA configured role descriptions, you can enter something like Alpha or Alpha 1 or Alpha 1-1 into the role field. For CBA configured roles, let's say your targeted role is Rifleman@Diablo 1, you can enter Rifleman into the role field and any player with the role Rifleman@ANYTHING will be able to access the arsenal. Essentially, anything after the @ symbol is ignored, in terms of CBA usage.

  • Items: The items that will be available in the arsenal. This can be an array of classnames in any of the formats below:

["Item1", "Item2", "Item3"]

"Item1", "Item2", "Item3"

Item1, Item2, Item3

Per update 0.1.3, you can now pass in a file path or even multiple files paths. This enables better organization of arsenal items and allows mission scripters to chain multiple arsenal files together. Single file syntax is as follows:

file://path\to\file1.sqf

Multiple file syntax is as follows:

file://path\to\file1.sqf//path\to\file2.sqf//path\to\file3.sqf

Since we're parsing the file AS CODE, AND NOT A STRING, your file format should look like this:

[
    "Item1",
    "Item2",
    "Item3"
]

This is because we're using SQF's compile syntax to parse the file as code, and not using my proprietary parser to parse the file contents as a string.


Arsenal Formatter (3den editor plugin)

Using the formatting tool, you can easily create your arsenals and export them in a format that can be pasted directly into the Items attribute field in 3den.

  • To open the formatting tool, simply open the 3den editor and navigate to the Tools tab then click Arsenal Formatter.

  • Keep in mind that the formatting tool is still in development and may improve in the future.

  • IMPORT option is not available in multiplayer scenarios as Bohemia Int. has disabled accessing the clipboard in multiplayer.

  • The formatting tool can also be opened in-game by locally calling [] call GRRA_fnc_formatter;.


FAQ

  • Q: Will multiple arsenals be combined if they apply to the same player?

  • A: Yes. If you have multiple arsenals that apply to the same player, they will be combined into one arsenal, with the exception of arsenals that are owned by a classname and arsenals that are owned by a variable name will not merge properly.

  • Q: How do I add a weapon to the arsenal?

  • A: You can add a weapon to the arsenal by simply adding the weapon's classname to the Items attribute. For example, if you wanted to add the arifle_MX_Black_F weapon to the arsenal, you would add arifle_MX_Black_F to your list of items like so: Item1, Item2, arifle_MX_Black_F.

  • Q: Will the mod automatically add compatible ammo to the arsenal?

  • A: Not yet, but this is a feature that will be added in the future.

  • Q: Does the mod need to be installed on the server as well?

  • A: No, the mod only needs to be installed on the client but the key must be present in the server's keys directory.


Todos

  • Combine player's arsenals where both classname and variable name are used.

  • Add button to open formatter in pause menu.

  • Add a feature that makes it easier to find compatible ammo for a specific weapon (similar to ace's single mag icon option).

grom-restricted-arsenals's People

Contributors

a3r0id avatar gumbekk avatar

Stargazers

 avatar  avatar

Forkers

chadgroom gumbekk

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.