Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account

Handling a complex weapons section

Normal 0 21 false false false NO-BOK X-NONE X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Vanlig tabell"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:8.0pt; mso-para-margin-left:0cm; line-height:107%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri",sans-serif; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi; mso-fareast-language:EN-US;} My Traveller: The New Era sheet is getting close to something I want to share with the community, but there is one major issue that I’d like to address before publishing it. The weapons section is still unwieldly and not easily adapted to macros etc. The problem is that the many different categories of weapons have different kinds of stats. I currently have a repeating section for each of the categories with different stats and using .css grid for headers. The problem is that this gives me a list of no less than 9 repeating sections. If I had made the sections based on the different skills – which could be useful for macros/roll buttons – I’d have 18 different repeating sections. I would also love to have a way to make the player select the “current” weapon, both for quick reference (if the values from the current weapon is displayed prominently) and because some values of the weapon interact directly with character attributes. Specifically “Bulk” is subtracted from Agility to give an initiative tie-break value and the recoil values interact with the Strength of the attacker. To sum it up – what is the best way to organize a weapons section with either 9 or 18 different weapon categories and how can the player select one of the weapons from all these categories to make it current? I use the GiGs &amp; Finderski “action button tabs” for the sheet, and have considered using another set of button tabs for the weapons section. However, I don’t understand how I’d make another set of tabs within a tab: <a href="https://wiki.roll20.net/CSS_Wizardry#Tabs" rel="nofollow">https://wiki.roll20.net/CSS_Wizardry#Tabs</a> I have also played around with another GiGs trick, Filtering Repeation sections according to criteria within the repeating items itself, <a href="https://wiki.roll20.net/CSS_Wizardry#Filter_Repeating_section_displays_according_to_criteria_within_the_repeating_items_itself" rel="nofollow">https://wiki.roll20.net/CSS_Wizardry#Filter_Repeating_section_displays_according_to_criteria_within_the_repeating_items_itself</a> . But I’m not sure if this is possible to combine with my need for different headers for the different weapons. The current version of the sheet code can be found here: <a href="https://github.com/mariusbax/Traveller-The-New-Era-roll20-sheet" rel="nofollow">https://github.com/mariusbax/Traveller-The-New-Era-roll20-sheet</a> If anyone want to try the current sheet I have a testing campaign here: <a href="https://app.roll20.net/join/7692055/Cj4nmA" rel="nofollow">https://app.roll20.net/join/7692055/Cj4nmA</a> &nbsp; And finally – when I started using Roll20 four years ago I quickly thought about making a sheet for Traveller: TNE. I then realized I had to make it in HTML (let alone CSS) and abandoned all hope. Over the next few years, the Roll20 community has made it possible for me to make something I’m actually quite pleased with. So a big thanks to everyone who as responded to my posts over the years. (Also I'm on GMT+1 if I seem slow to respond)
1591652128
Finderski
Pro
Sheet Author
Compendium Curator
One of the things the Savage Worlds Tabbed sheet does is give a configuration section for each weapon. This allows one to choose which skill to use with the weapon, etc. So you could do something similar to that so you don't need 18 different sections. As for the current weapon...quick question, why is that field important? What I'm getting at is if all the weapons are listed and I need to swap out a weapon, why not just allow me to click a button next to that weapon? To answer the question, though, you could add a checkbox next to each weapon to indicate whether that weapon is active or not. You'd then need to use a sheet worker to make sure that field was mutually exclusive across ALL weapons in ALL sections, and then you could use that same sheet worker (or a different one) to set the values of the currently active weapon field.
1591653546
GiGs
Pro
Sheet Author
API Scripter
Marius &nbsp;said: To sum it up – what is the best way to organize a weapons section with either 9 or 18 different weapon categories and how can the player select one of the weapons from all these categories to make it current? I use the GiGs &amp; Finderski “action button tabs” for the sheet, and have considered using another set of button tabs for the weapons section. However, I don’t understand how I’d make another set of tabs within a tab:&nbsp; <a href="https://wiki.roll20.net/CSS_Wizardry#Tabs" rel="nofollow">https://wiki.roll20.net/CSS_Wizardry#Tabs</a> I have also played around with another GiGs trick, Filtering Repeation sections according to criteria within the repeating items itself,&nbsp; <a href="https://wiki.roll20.net/CSS_Wizardry#Filter_Repeating_section_displays_according_to_criteria_within_the_repeating_items_itself" rel="nofollow">https://wiki.roll20.net/CSS_Wizardry#Filter_Repeating_section_displays_according_to_criteria_within_the_repeating_items_itself</a> . But I’m not sure if this is possible to combine with my need for different headers for the different weapons. My initial inkling is to recommend cutting the weapons down to just one repeating section, but looking at the sheet, I dont see a good way to do that. This might be a case where the multiple repeating sections is a decent way to handle it. You might be able to reduce the set, all explosive weapons in one list, all direct fire weapons that share most of the headings in another, and so on. Then some weapons would have some&nbsp; headings that don't apply to them, but thats fine. However, there's another part of your sheet where you use repeating sections and maybe shouldnt. You have six repeating sections for skills, one for each skill, but also the skills dropdown for each has a preset list that you select from a dropdown. My inkling here is that you probably shouldnt use repeating sections, instead should be using hardcoded skills, with a selector for showing which ones are visible. This is better for players who might want to set up macros for using skills- getting attribute names for attributes in a repeating section is painful, especially for free users. That said, if many of these skills have themselves subsets of more skills (like if Pilot requires you to pick which type of piloting and you have multiple options), going the way you have might be better. Regardless, this sheet does seem to present some interesting design challenges.
1591654175
GiGs
Pro
Sheet Author
API Scripter
I did start to brainstorm some ideas on how to combine the weapons into one repeating section, but then realised its probably best to keep them as separate sections. That's so you can have a working attack/damage macros for each that you can build for that section that always work. Combining weapons that use different attributes in the same section would require different attack macros, and get a bit complicated to design. I'm honestly thinking keeping them as separate repeating sections is best, from a design perspective and a use perspective.
1591684195
Kraynic
Pro
Sheet Author
If you are open to the idea, you might want to make a place where the players can configure which weapon sections show.&nbsp; Then, at least they can hide anything they don't absolutely need displayed to save a little screen space.&nbsp; Even a sheet-arrow checkbox by the heading for each one would hide your individual input headings and the add/edit buttons unless they were needed.
Finderski said: One of the things the Savage Worlds Tabbed sheet does is give a configuration section for each weapon. This allows one to choose which skill to use with the weapon, etc. So you could do something similar to that so you don't need 18 different sections. As for the current weapon...quick question, why is that field important? What I'm getting at is if all the weapons are listed and I need to swap out a weapon, why not just allow me to click a button next to that weapon? To answer the question, though, you could add a checkbox next to each weapon to indicate whether that weapon is active or not. You'd then need to use a sheet worker to make sure that field was mutually exclusive across ALL weapons in ALL sections, and then you could use that same sheet worker (or a different one) to set the values of the currently active weapon field. Hm. The Savage Worlds approach might work. Some stats are the same for all weapons (ROF, Recoil, Bulk, Mag), all have Range but some have an extra Indirect fire range, some stats are either/or (Pen rating or Pen value, Dam or conc/brst). But the problem would be that I would not be able to have the same headers for all weapons, and I'm note sure how I'd solve the layout then. The idea of the "current weapon" field was that it would be easier for the player to see the relevant stats and perhaps easier for macros etc, but it is not crucial in any way. I have been thinking about a checkbox system like you describe. But I'm not sure how to implement. GiGs said: My initial inkling is to recommend cutting the weapons down to just one repeating section, but looking at the sheet, I dont see a good way to do that. This might be a case where the multiple repeating sections is a decent way to handle it. You might be able to reduce the set, all explosive weapons in one list, all direct fire weapons that share most of the headings in another, and so on. Then some weapons would have some&nbsp; headings that don't apply to them, but thats fine. However, there's another part of your sheet where you use repeating sections and maybe shouldnt. You have six repeating sections for skills, one for each skill, but also the skills dropdown for each has a preset list that you select from a dropdown. My inkling here is that you probably shouldnt use repeating sections, instead should be using hardcoded skills, with a selector for showing which ones are visible. This is better for players who might want to set up macros for using skills- getting attribute names for attributes in a repeating section is painful, especially for free users. That said, if many of these skills have themselves subsets of more skills (like if Pilot requires you to pick which type of piloting and you have multiple options), going the way you have might be better. Regardless, this sheet does seem to present some interesting design challenges. The GDW house system - and especially Traveller - is a classic example of a system that tries to have rules for everything. There is perhaps a reason why game designers don't do that anymore, but it is not without it's charms... As for the skills - I started using repeating sections because there were sooo many skills. The Twillight:2000 sheet I started from has hardcoded skills, but less of them. I have considered removing the drop-down in favour of a text input to make the sheet easily adaptable to the other GDW systems. All skills with a (paranthesis) in them are "cascade" skills, meaning that you if a have one of the skills you also get half the value in the others. For example a Pilot (Interface/Grav) of 4 gives a Pilot (Fixed wing) of 2. However, you might get an extra skill level in one of the cascade skills so if our pilot used experience to increase Pilot (Fixed wing) to 3 he/she would have a Pilot (interface/grav) of 4, Pilot (fixed wing) of 3 and Pilot (Glider) and the other Pilot skills at 2. Skill checks are rolled against an asset, which is the skill + the controlling attribute. Right now it works pretty well with the Universal Chat Menus api script, but I see your point about non-pro macro use.
As for the weapons, I think fully automated to hit and damage macros are unrealistic. Especially with damage as there is so many factors on the recieving end. What I think is achivable is: asset calculated for each weapon and a roll-button with a difficult selector similar to the skill checks asset adjusted according to recoil for single shots (recoil is cummulative and when it becomes higher than strength - the difference is subtracted from the asset) initative tie-break automatically calculated (agility minus bulk) ammo tracking with api script If so, only the blk, mag, and single shot recoil values needs to accessed by sheetworkers/roll buttons. The other values need only to be presented to the player in a good way.
I've been thinking and will try this next: Add a row of hide/show checkboxes at the top of the section to let players hide/show the repeating sections see if I can group some of the sections that have relatively overlapping stats add an action button to "equip" a weapon that sets the initative tie break add an option to select the relevant skill add a sheetworker that looks for the skill and sets the correct asset add a roll-button for attacks that lets the player fire one shot at a time and manually add the (cumulative) recoil
1591811519
GiGs
Pro
Sheet Author
API Scripter
Marius said: I've been thinking and will try this next: Add a row of hide/show checkboxes at the top of the section to let players hide/show the repeating sections see if I can group some of the sections that have relatively overlapping stats add an action button to "equip" a weapon that sets the initative tie break add an option to select the relevant skill add a sheetworker that looks for the skill and sets the correct asset add a roll-button for attacks that lets the player fire one shot at a time and manually add the (cumulative) recoil I numbered your options to make it easy to address one of them. All of those look like good selections, except #5&nbsp; If the weapon skills do not have subskills, it'll work, since you have skill names defined in your repeating section dropdown. But if you need the sheet worker to find a specific skill that players have entered into an input, that is a recipe for frustration and error. You have to rely on the players to type and spell the weapon skill in the way you expect, and you'll be surprised how often that will fail.&nbsp; You can still code for it, and it'll work most of the time, but players will be tripped up when it fails, and may not notice for a while.&nbsp; So IMO, if players are entering skill names manually, its better to require them to enter the skill value in the weapon section. It seems a little less user-friendly, but it will always work, and players will accept it.&nbsp; Alternatively you could include some validation when they are entering weapon skill names, and replace it with a warning message if they enter a value that doesnt match, but that doesnt cope with custom weapon skills.
The idea for #5 was based on my current sheet were the skills (and their subskills) are chosen from a drop-down, so no player input. However, I've also been thinking that I should add a row of "combat assets" in the combat section. I think this has several advantages: While they can be calculated via a sheetworker, it would be possible to enter the value manually if I change the way skills are input NPCs are listed with a combat asset (as opposed to an attribute and a skill value that is combined to an asset for PCs) The Energy Weapon skill is a bit of an anamoly as it uses Agility as a controlling attribute for laser weapons, but Strenght for plasma/fusion weapons - and there is no good way of implementing this with the current setup, but with a seperate combat asset attribute for laser and plasma rifles (not sure if there are any plasma pistols in the game) it could be done. Not sure when I get around to coding more, but I will keep this thread updated.
My thinking So I've attempted a very different weapon section. I'll discuss some of the design choices first, before going into details. I realized the only real use for a "current/equipped" weapon toggle was to adjust initiative. So instead of having the player choose a current weapon and then "roll"* for initiative, I've placed an initiative roll button on every weapon. I then reconsidered my rationale for multiple repeating sections. This was a decision based largely on a need for consistent headers, but this only made sense if I thought players would have multiple weapons of the same type. However, players are much more likely to have different kinds of weapons. Currently, weapons with multiple ammo-types need to be listed several times, but this new approach might solve this better as well. Another key decision was what do with roll-buttons and what to leave for macros/APIs down the road. I decided that on one hand the roll-buttons should be as general as possible, meaning that you should always be able to use them. This meant limiting their automation because there are so many exceptions to the rules**. At the same time, I wanted to have the weapon stats stored in a way that made advanced macros/API use possible. The previous version stored weapon stats the way they were written in the book. For example, penetration rating would be printed like 2-1-Nil where 2 is the value at short and medium ranges, 1 is long range and Nil is extreme range. Any macro/API use of these values would then have to parse this info somehow to calculate the applied pen rating. The current version lets the player configure every weapon, and displays the relevant stats according to weapon type. It also displays a span with the values so that the player can have them "at a glance" when the configuration is hidden. This lets me store attributes in a way that I think will be better for future macro/API use. This approach also let me have a "custom" option, since Traveller: The New Era has rules for weapon design there is always a possibility that somebody designs something that does not fit in the existing categories. As for roll buttons, I ended up with a single-shot and a burst button for each weapon***. The single-shot button asks for the uncompensated recoil, subtracts this from a calculated asset based on weapon type, asks for a difficulty level, rolls, and checks for success. The burst button asks for the number of dice to roll and checks for successes versus the relevant asset. This means the player has to make several calculations manually, but at least the buttons can always be used. Rolling for damage is a whole other thing...**** *There is no actual roll, but Roll20 requires a roll to send initiative to tracker - so the roll is a 1d0. **For instance I wanted to automatically adjust the asset based on recoil. But you can reduce pistol recoil by 1 if you use both hands or rifle recoil by 1 if you are bracing. However, you cannot brace a rifle with a folded folding stock. Recoil is also increased by one if you walk, and if you trot your strength is halved when calculating recoil. This is simply too many queries to ask every time a bullet is fired. ***I considered having the button ask for the number of shots, which also would be needed for a recoil calculation, but since either one (if you spent the last turn aiming) or up to three (if you spent the last turn aiming and have a laser sight and the target is within range of the laser sight) shots can be made at a lower difficulty level than the rest this became unnecessarily complex. Also, I don't think the rules stop you from firing at multiple targets which could of course be at different ranges and thus different difficulty levels. ****You would need to know what you are hitting (creature or vehicle), the hit location of the target, the armor value of the target and whether this armor is worn or some other kind of cover, and then apply the relevant damage rolls/calculations. My solution This is what I have so far: It is not a repeating section yet since I had a hard enough time getting the sheetworkers right in a non-repeating section. Any help pointing me in the right direction for getting this to work with repeating sections would be great. (I tried adding "repeating_weapons_" to everything, but that did not work as intended.) I have not paid any consideration to the layout in this version. I only have this in my custom sheet sandbox currently, but if anyone wants to try it in a game I could make one and post the link. HTML: &lt;script type="text/worker"&gt; on("change:weapon_type", function() { getAttrs (["weapon_type",], function(pvalue) { var weapon_type = parseInt(pvalue.weapon_type); var thrown_toggle; var bow_toggle; var slug_toggle; var laser_toggle; var plasma_rifle_toggle; var plasma_bazooka_toggle; var grenade_toggle; var ram_grenade_toggle; var grenade_launcher_toggle; var arl_toggle; var tac_missile_toggle; var archaic_firearm_toggle; var archaic_artillery_toggle; var asset_toggle; var range_toggle; var hit_mod_toggle; var rof_toggle; var reload_toggle; var damage_toggle; var laser_damage_toggle; var conc_burst_toggle; var pen_val_c_toggle; var pen_val_range_toggle; var pen_rtng_toggle; var ss_recoil_toggle; var brst_recoil_toggle; var ifr_toggle; var bulk_toggle; var tac_missle_toggle; var dngr_spc_toggle; var mag_toggle; var rof_config_toggle; if (weapon_type &lt; 1) { thrown_toggle = 1; bow_toggle = 1; slug_toggle = 1; laser_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle =1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 1; hit_mod_toggle = 1; rof_toggle = 1; reload_toggle = 1; damage_toggle = 1; laser_damage_toggle = 1; conc_burst_toggle = 1; pen_val_c_toggle = 1; pen_val_range_toggle = 1; pen_rtng_toggle = 1; ss_recoil_toggle = 1; brst_recoil_toggle = 1; ifr_toggle = 1; bulk_toggle = 1; tac_missle_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 1; rof_config_toggle = 1; } else if (weapon_type &lt; 2) { thrown_toggle = 1; bow_toggle = 1; slug_toggle = 1; laser_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle =1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 0; hit_mod_toggle = 0; rof_toggle = 1; reload_toggle = 1; damage_toggle = 0; laser_damage_toggle = 1; conc_burst_toggle = 1; pen_val_c_toggle = 1; pen_val_range_toggle = 1; pen_rtng_toggle = 1; ss_recoil_toggle = 1; brst_recoil_toggle = 1; ifr_toggle = 1; bulk_toggle = 1; tac_missle_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 1; rof_config_toggle = 1; } else if (weapon_type &lt; 6) { thrown_toggle = 1; bow_toggle = 1; slug_toggle = 0; laser_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle =1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 0; reload_toggle = 1; damage_toggle = 0; laser_damage_toggle = 1; conc_burst_toggle = 1; pen_val_c_toggle = 1; pen_val_range_toggle = 1; pen_rtng_toggle = 0; ss_recoil_toggle = 0; brst_recoil_toggle = 0; ifr_toggle = 1; bulk_toggle = 0; tac_missle_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 0; rof_config_toggle = 1; } else if (weapon_type &lt; 8) { thrown_toggle = 1; bow_toggle = 1; slug_toggle = 1; laser_toggle = 0; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle =1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 0; reload_toggle = 1; damage_toggle = 1; laser_damage_toggle = 0; conc_burst_toggle = 1; pen_val_c_toggle = 1; pen_val_range_toggle = 1; pen_rtng_toggle = 0; ss_recoil_toggle = 1; brst_recoil_toggle = 1; ifr_toggle = 1; bulk_toggle = 0; tac_missle_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 0; rof_config_toggle = 1; } else if (weapon_type &lt; 9) { thrown_toggle = 1; bow_toggle = 1; laser_toggle = 1; slug_toggle = 1; laser_toggle = 1; plasma_rifle_toggle = 0; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle =1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 0; reload_toggle = 1; damage_toggle = 0; laser_damage_toggle = 1; conc_burst_toggle = 1; pen_val_c_toggle = 1; pen_val_range_toggle = 0; pen_rtng_toggle = 0; ss_recoil_toggle = 0; brst_recoil_toggle = 0; ifr_toggle = 1; bulk_toggle = 0; tac_missle_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 0; rof_config_toggle = 1; } else if (weapon_type &lt; 10) { thrown_toggle = 1; bow_toggle = 1; laser_toggle = 1; slug_toggle = 1; laser_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 0; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle =1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 0; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 1; reload_toggle = 0; damage_toggle = 0; laser_damage_toggle = 1; conc_burst_toggle = 1; pen_val_c_toggle = 1; pen_val_range_toggle = 0; pen_rtng_toggle = 0; ss_recoil_toggle = 1; brst_recoil_toggle = 1; ifr_toggle = 1; bulk_toggle = 0; tac_missle_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 0; rof_config_toggle = 1; } else if (weapon_type &lt; 11) { thrown_toggle = 1; bow_toggle = 1; laser_toggle = 1; slug_toggle = 1; laser_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 0; ram_grenade_toggle = 1; grenade_launcher_toggle =1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 1; hit_mod_toggle = 1; rof_toggle = 1; reload_toggle = 1; damage_toggle = 1; laser_damage_toggle = 1; conc_burst_toggle = 0; pen_val_c_toggle = 0; pen_val_range_toggle = 1; pen_rtng_toggle = 1; ss_recoil_toggle = 1; brst_recoil_toggle = 1; ifr_toggle = 1; bulk_toggle = 1; tac_missle_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 1; rof_config_toggle = 1; } else if (weapon_type &lt; 12) { thrown_toggle = 1; bow_toggle = 1; laser_toggle = 1; slug_toggle = 1; laser_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 0; grenade_launcher_toggle = 1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 1; reload_toggle = 1; damage_toggle = 1; laser_damage_toggle = 1; conc_burst_toggle = 0; pen_val_c_toggle = 0; pen_val_range_toggle = 1; pen_rtng_toggle = 0; ss_recoil_toggle = 1; brst_recoil_toggle = 1; ifr_toggle = 0; bulk_toggle = 1; tac_missle_toggle = 1; dngr_spc_toggle = 0; mag_toggle = 1; rof_config_toggle = 1; } else if (weapon_type &lt; 13) { thrown_toggle = 1; bow_toggle = 1; laser_toggle = 1; slug_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle = 0; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 0; reload_toggle = 1; damage_toggle = 0; laser_damage_toggle = 1; conc_burst_toggle = 1; pen_val_c_toggle = 0; pen_val_range_toggle = 1; pen_rtng_toggle = 0; ss_recoil_toggle = 0; brst_recoil_toggle = 0; ifr_toggle = 0; bulk_toggle = 0; tac_missle_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 1; rof_config_toggle = 1; } else if (weapon_type &lt; 14) { thrown_toggle = 1; bow_toggle = 1; laser_toggle = 1; slug_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle = 1; arl_toggle = 0; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 0; reload_toggle = 1; damage_toggle = 0; laser_damage_toggle = 1; conc_burst_toggle = 0; pen_val_c_toggle = 0; pen_val_range_toggle = 1; pen_rtng_toggle = 0; ss_recoil_toggle = 1; brst_recoil_toggle = 1; ifr_toggle = 0; bulk_toggle = 0; tac_missle_toggle = 1; dngr_spc_toggle = 0; mag_toggle = 0; rof_config_toggle = 1; } else if (weapon_type &lt; 15) { thrown_toggle = 1; bow_toggle = 1; laser_toggle = 1; slug_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle = 1; arl_toggle = 1; tac_missile_toggle = 0; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 1; reload_toggle = 1; damage_toggle = 1; laser_damage_toggle = 1; conc_burst_toggle = 0; pen_val_c_toggle = 0; pen_val_range_toggle = 1; pen_rtng_toggle = 1; ss_recoil_toggle = 1; brst_recoil_toggle = 1; ifr_toggle = 1; bulk_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 1; rof_config_toggle = 1; } else if (weapon_type &lt; 16) { thrown_toggle = 1; bow_toggle = 1; laser_toggle = 1; slug_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle = 1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 0; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 1; reload_toggle = 0; damage_toggle = 0; laser_damage_toggle = 1; conc_burst_toggle = 0; pen_val_c_toggle = 0; pen_val_range_toggle = 1; pen_rtng_toggle = 0; ss_recoil_toggle = 0; brst_recoil_toggle = 1; ifr_toggle = 1; bulk_toggle = 0; dngr_spc_toggle = 1; mag_toggle = 0; rof_config_toggle = 1; } else if (weapon_type &lt; 17) { thrown_toggle = 1; bow_toggle = 1; laser_toggle = 1; slug_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle = 1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 0; asset_toggle = 0; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 1; reload_toggle = 0; damage_toggle = 0; laser_damage_toggle = 1; conc_burst_toggle = 0; pen_val_c_toggle = 1; pen_val_range_toggle = 0; pen_rtng_toggle = 1; ss_recoil_toggle = 1; brst_recoil_toggle = 1; ifr_toggle = 1; bulk_toggle = 1; dngr_spc_toggle = 0; mag_toggle = 1; rof_config_toggle = 1; } else if (weapon_type &lt; 20) { thrown_toggle = 1; bow_toggle = 0; slug_toggle = 1; laser_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle =1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 1; reload_toggle = 0; damage_toggle = 0; laser_damage_toggle = 1; conc_burst_toggle = 1; pen_val_c_toggle = 1; pen_val_range_toggle = 1; pen_rtng_toggle = 0; ss_recoil_toggle = 0; brst_recoil_toggle = 1; ifr_toggle = 1; bulk_toggle = 0; tac_missle_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 0; rof_config_toggle = 1; } else if (weapon_type &lt; 21) { thrown_toggle = 0; bow_toggle = 1; slug_toggle = 1; laser_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle =1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 1; range_toggle = 1; hit_mod_toggle = 1; rof_toggle = 1; reload_toggle = 1; damage_toggle = 0; laser_damage_toggle = 1; conc_burst_toggle = 1; pen_val_c_toggle = 1; pen_val_range_toggle = 1; pen_rtng_toggle = 1; ss_recoil_toggle = 1; brst_recoil_toggle = 1; ifr_toggle = 1; bulk_toggle = 1; tac_missle_toggle = 1; dngr_spc_toggle = 1; mag_toggle = 1; rof_config_toggle = 1; } else { thrown_toggle = 1; bow_toggle = 1; laser_toggle = 1; slug_toggle = 1; laser_toggle = 1; plasma_rifle_toggle = 1; plasma_bazooka_toggle = 1; grenade_toggle = 1; ram_grenade_toggle = 1; grenade_launcher_toggle =1; arl_toggle = 1; tac_missile_toggle = 1; archaic_firearm_toggle = 1; archaic_artillery_toggle = 1; asset_toggle = 0; range_toggle = 0; hit_mod_toggle = 1; rof_toggle = 0; reload_toggle = 0; damage_toggle = 0; laser_damage_toggle = 0; conc_burst_toggle = 0; pen_val_c_toggle = 0; pen_val_range_toggle = 0; pen_rtng_toggle = 0; ss_recoil_toggle = 0; brst_recoil_toggle = 0; ifr_toggle = 0; bulk_toggle = 0; tac_missle_toggle = 0; dngr_spc_toggle = 0; mag_toggle = 0; rof_config_toggle = 0; } setAttrs ({range_toggle,hit_mod_toggle,rof_toggle,reload_toggle,damage_toggle,laser_damage_toggle,conc_burst_toggle,pen_val_c_toggle,pen_val_range_toggle,pen_rtng_toggle,ss_recoil_toggle,brst_recoil_toggle,ifr_toggle,bulk_toggle,tac_missle_toggle,dngr_spc_toggle,mag_toggle,rof_config_toggle,bow_toggle,slug_toggle,laser_toggle,plasma_rifle_toggle,plasma_bazooka_toggle,grenade_toggle,ram_grenade_toggle,grenade_launcher_toggle,arl_toggle,tac_missile_toggle,archaic_firearm_toggle,archaic_artillery_toggle,asset_toggle,thrown_toggle}) }); }); on("change:weapon_type", function() { getAttrs (["weapon_type","armed_melee_asset","archery_asset","slug_pistol_asset","slug_rifle_asset","laser_pistol_asset","laser_rifle_asset","plasma_rifle_asset","grenade_launcher_asset","thrown_weapon_asset","early_firearms_asset","tac_missile_asset","archaic_artillery_asset","energy_artillery_asset","heavy_artillery_asset","heavy_gun_asset","autogun_asset",], function(pvalue) { var weapon_type = parseInt(pvalue.weapon_type); var armed_melee_asset = parseInt(pvalue.armed_melee_asset); var archery_asset = parseInt(pvalue.archery_asset); var slug_pistol_asset = parseInt(pvalue.slug_pistol_asset); var slug_rifle_asset = parseInt(pvalue.slug_rifle_asset); var laser_pistol_asset = parseInt(pvalue.laser_pistol_asset); var laser_rifle_asset = parseInt(pvalue.laser_rifle_asset); var plasma_rifle_asset = parseInt(pvalue.plasma_rifle_asset); var grenade_launcher_asset = parseInt(pvalue.grenade_launcher_asset); var thrown_weapon_asset = parseInt(pvalue.thrown_weapon_asset); var early_firearms_asset = parseInt(pvalue.early_firearms_asset); var tac_missile_asset = parseInt(pvalue.tac_missile_asset); var archaic_artillery_asset = parseInt(pvalue.archaic_artillery_asset); var energy_artillery_asset = parseInt(pvalue.energy_artillery_asset); var heavy_gun_asset = parseInt(pvalue.heavy_gun_asset); var heavy_artillery_asset = parseInt(pvalue.heavy_artillery_asset); var autogun_asset = parseInt(pvalue.autogun_asset); var thrown_weapon_asset = parseInt(pvalue.thrown_weapon_asset); var active_asset; if (weapon_type == 1) { active_asset = armed_melee_asset } else if (weapon_type == 2) { active_asset = slug_pistol_asset } else if (weapon_type == 3) { active_asset = slug_rifle_asset } else if (weapon_type == 4 ) { if (slug_rifle_asset &gt; slug_pistol_asset) { active_asset = slug_rifle_asset } else { active_asset = slug_pistol_asset } } else if (weapon_type == 5) { active_asset = autogun_asset } else if (weapon_type == 6) { active_asset = laser_pistol_asset } else if (weapon_type == 7) { active_asset = laser_rifle_asset } else if (weapon_type == 8) { active_asset = plasma_rifle_asset } else if (weapon_type == 9) { active_asset = heavy_gun_asset } else if (weapon_type == 10) { active_asset = thrown_weapon_asset } else if (weapon_type == 11) { active_asset = grenade_launcher_asset } else if (weapon_type == 12) { active_asset = grenade_launcher_asset } else if (weapon_type == 13) { active_asset = autogun_asset } else if (weapon_type == 14) { active_asset = grenade_launcher_asset } else if (weapon_type == 15) { active_asset = tac_missile_asset } else if (weapon_type == 16) { active_asset = early_firearms_asset } else if (weapon_type == 17) { active_asset = archaic_artillery_asset } else if (weapon_type == 18) { active_asset = archery_asset } else if (weapon_type == 19) { active_asset = early_firearms_asset } else if (weapon_type == 20) { active_asset = thrown_weapon_asset } else { } setAttrs ({active_asset}) }); }); &lt;/script&gt; &lt;label&gt;Attributes:&lt;/label&gt; Strength: &lt;input type="number" name="attr_strength"&gt; Agility: &lt;input type="number" name="attr_agility"&gt; Initative: &lt;input type="number" name="attr_initiative"&gt; Throw range: &lt;input type="number" name="attr_throw_range"&gt; &lt;br&gt; &lt;label&gt;Combat assets:&lt;/label&gt; Unarmed melee: &lt;input type="number" name="attr_unarmed_melee_asset"&gt; Armed melee: &lt;input type="number" name="attr_armed_melee_asset"&gt; Archery: &lt;input type="number" name="attr_archery_asset"&gt; Slug Pistol: &lt;input type="number" name="attr_slug_pistol_asset"&gt; Slug Rifle: &lt;input type="number" name="attr_slug_rifle_asset"&gt; Laser Pistol: &lt;input type="number" name="attr_laser_pistol_asset"&gt; Laser Rifle &lt;input type="number" name="attr_laser_rifle_asset"&gt; Plasma/Fusion Rifle: &lt;input type="number" name="attr_plasma_rifle_asset"&gt; Grenade Launcher: &lt;input type="number" name="attr_grenade_launcher_asset"&gt; Thrown Weapon: &lt;input type="number" name="attr_thrown_weapon_asset"&gt; Early Firearms: &lt;input type="number" name="attr_early_firearms_asset"&gt; Tac Missile: &lt;input type="number" name="attr_tac_missile_asset"&gt; Archaic Artillery: &lt;input type="number" name="attr_archaic_artillery_asset"&gt; Energy Artillery: &lt;input type="number" name="attr_energy_artillery_asset"&gt; Heavy Artillery: &lt;input type="number" name="attr_heavy_artillery_asset"&gt; Heavy Gun: &lt;input type="number" name="attr_heavy_gun_asset"&gt; Autogun: &lt;input type="number" name="attr_autogun_asset"&gt; &lt;label&gt;Weapons:&lt;/label&gt; &lt;!--fieldset class="repeating_weapons"--&gt; Weapon:&lt;input type="text" name="attr_weapon_name"&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_thrown_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;Range: &lt;span name="attr_throw_range" &gt;&lt;/span&gt; Dam: &lt;span name="attr_damage"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_hit_mod_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;Range: &lt;span name="attr_range" &gt;&lt;/span&gt; Hit mod: &lt;span name="attr_hit_mod"&gt;&lt;/span&gt; Dam: &lt;span name="attr_damage"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_bow_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;Rld: &lt;span name="attr_reload"&gt;&lt;/span&gt; Dam: &lt;span name="attr_damage"&gt;&lt;/span&gt; Pen rtng: &lt;span name="attr_pen_rtng_sm"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_e"&gt;&lt;/span&gt; Bulk: &lt;span name="attr_bulk"&gt;&lt;/span&gt; Mag: &lt;span name="attr_mag_max"&gt;&lt;/span&gt;&lt;span name="attr_mag_type"&gt;&lt;/span&gt; Recoil: &lt;span name="attr_ss_recoil"&gt;&lt;/span&gt; Range: &lt;span name="attr_range" &gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_slug_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;ROF: &lt;span name="attr_rof"&gt;&lt;/span&gt; Dam: &lt;span name="attr_damage"&gt;&lt;/span&gt; Pen rtng: &lt;span name="attr_pen_rtng_sm"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_e"&gt;&lt;/span&gt; Bulk: &lt;span name="attr_bulk"&gt;&lt;/span&gt; Mag: &lt;span name="attr_mag_max"&gt;&lt;/span&gt;&lt;span name="attr_mag_type"&gt;&lt;/span&gt; SS Recoil: &lt;span name="attr_ss_recoil"&gt;&lt;/span&gt; Brst recoil: &lt;span name="attr_burst_recoil"&gt;&lt;/span&gt; &lt;/span&gt; &lt;span&gt;Short range: &lt;span name="attr_range" &gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_laser_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;ROF: &lt;span name="attr_rof"&gt;&lt;/span&gt; Dam (S-M-L-E): &lt;span name="attr_laser_damage_s"&gt;&lt;/span&gt;-&lt;span name="attr_laser_damage_m"&gt;&lt;/span&gt;-&lt;span name="attr_laser_damage_l"&gt;&lt;/span&gt;-&lt;span name="attr_laser_damage_e"&gt;&lt;/span&gt; Dam (W-X-Y-Z): &lt;span name="attr_laser_damage_w"&gt;&lt;/span&gt;-&lt;span name="attr_laser_damage_x"&gt;-&lt;span name="attr_laser_damage_y"&gt;&lt;/span&gt;-&lt;span name="attr_laser_damage_z"&gt;&lt;/span&gt;&lt;/span&gt; Pen rtng: &lt;span name="attr_pen_rtng_sm"&gt;&lt;/span&gt; Bulk: &lt;span name="attr_bulk"&gt;&lt;/span&gt; Mag: &lt;span name="attr_mag_max"&gt;&lt;/span&gt;&lt;span name="attr_mag_type"&gt;&lt;/span&gt; &lt;span&gt;Short range: &lt;span name="attr_range" &gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_plasma_rifle_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;ROF: &lt;span name="attr_rof"&gt;&lt;/span&gt; Dam: &lt;span name="attr_damage"&gt;&lt;/span&gt; Pen rtng: &lt;span name="attr_pen_rtng_sm"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_e"&gt;&lt;/span&gt; Pen value: &lt;span name="attr_pen_val_s"&gt;&lt;/span&gt;-&lt;span name="attr_pen_val_m"&gt;&lt;/span&gt;-&lt;span name="attr_pen_val_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_val_e"&gt;&lt;/span&gt; Bulk: &lt;span name="attr_bulk"&gt;&lt;/span&gt; Mag: &lt;span name="attr_mag_max"&gt;&lt;/span&gt;&lt;span name="attr_mag_type"&gt;&lt;/span&gt; SS recoil: &lt;span name="attr_ss_recoil"&gt;&lt;/span&gt; Range: &lt;span name="attr_range"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_plasma_bazooka_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;Rld: &lt;span name="attr_reload"&gt;&lt;/span&gt; Dam: &lt;span name="attr_damage"&gt;&lt;/span&gt; Pen rtng: &lt;span name="attr_pen_rtng_sm"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_e"&gt;&lt;/span&gt; Pen value: &lt;span name="attr_pen_val_s"&gt;&lt;/span&gt;-&lt;span name="attr_pen_val_m"&gt;&lt;/span&gt;-&lt;span name="attr_pen_val_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_val_e"&gt;&lt;/span&gt; Bulk: &lt;span name="attr_bulk"&gt;&lt;/span&gt; Mag: &lt;span name="attr_mag_max"&gt;&lt;/span&gt;&lt;span name="attr_mag_type"&gt;&lt;/span&gt; Range: &lt;span name="attr_range" &gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_grenade_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;Range: &lt;span name="attr_throw_range"&gt;&lt;/span&gt; Dam: C:&lt;span name="attr_concussion"&gt;&lt;/span&gt; B:&lt;span name="attr_burst_range"&gt;&lt;/span&gt; Pen value: &lt;span name="attr_pen_val_c"&gt;&lt;/span&gt;&lt;span&gt;C&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_ram_grenade_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;Range: &lt;span name="attr_range"&gt;&lt;/span&gt; Conc:&lt;span name="attr_concussion"&gt;&lt;/span&gt; Brst:&lt;span name="attr_burst_range"&gt;&lt;/span&gt; Pen value: &lt;span name="attr_pen_val_c"&gt;&lt;/span&gt;&lt;span&gt;C&lt;/span&gt; Dngr spc &lt;span name="attr_danger_space"&gt;&lt;/span&gt; Dam: &lt;span name="attr_damage"&gt;&lt;/span&gt; Pen rtng: &lt;span name="attr_pen_rtng_sm"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_e"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_grenade_launcher_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;ROF: &lt;span name="attr_rof"&gt;&lt;/span&gt; Range: &lt;span name="attr_range"&gt;&lt;/span&gt; IFR: &lt;span name="attr_indirect_fire_range"&gt;&lt;/span&gt; Conc:&lt;span name="attr_concussion"&gt;&lt;/span&gt; Brst:&lt;span name="attr_burst_range"&gt;&lt;/span&gt; Pen value: &lt;span name="attr_pen_val_c"&gt;&lt;/span&gt;&lt;span&gt;C&lt;/span&gt; Pen rtng: &lt;span name="attr_pen_rtng_sm"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_e"&gt;&lt;/span&gt; Bulk:&lt;span name="attr_bulk"&gt;&lt;/span&gt; Mag: &lt;span name="attr_mag_max"&gt;&lt;/span&gt;&lt;span name="attr_mag_type"&gt;&lt;/span&gt; SS recoil: &lt;span name="attr_ss_recoil"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_arl_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt;ROF: &lt;span name="attr_rof"&gt;&lt;/span&gt; Range: &lt;span name="attr_range"&gt;&lt;/span&gt; Conc:&lt;span name="attr_concussion"&gt;&lt;/span&gt; Brst:&lt;span name="attr_burst_range"&gt;&lt;/span&gt; Pen value: &lt;span name="attr_pen_val_c"&gt;&lt;/span&gt;&lt;span&gt;C&lt;/span&gt; Dngr spc: &lt;span name="attr_danger_space"&gt;&lt;/span&gt; Pen rtng: &lt;span name="attr_pen_rtng_sm"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_e"&gt;&lt;/span&gt; Bulk: &lt;span name="attr_bulk"&gt;&lt;/span&gt; Mag &lt;span name="attr_mag_max"&gt;&lt;/span&gt;&lt;span name="attr_mag_type"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_tac_missile_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt; Range: &lt;span name="attr_range"&gt;&lt;/span&gt; Conc:&lt;span name="attr_concussion"&gt;&lt;/span&gt; Brst:&lt;span name="attr_burst_range"&gt;&lt;/span&gt; Pen value: &lt;span name="attr_pen_val_c"&gt;&lt;/span&gt;&lt;span&gt;C&lt;/span&gt; M/turn &lt;span name="attr_m_turn"&gt;&lt;/span&gt; Agl: &lt;span name="attr_agl"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_archaic_firearm_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt; Rld: &lt;span name="attr_reload"&gt;&lt;/span&gt; Dam: &lt;span name="attr_damage"&gt;&lt;/span&gt; Pen rtng: &lt;span name="attr_pen_rtng_sm"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_e"&gt;&lt;/span&gt; Bulk: &lt;span name="attr_bulk"&gt;&lt;/span&gt; Mag: &lt;span name="attr_bulk"&gt;&lt;/span&gt; SS Recoil: &lt;span name="attr_ss_recoil"&gt;&lt;/span&gt; Range: &lt;span name="attr_range"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_archaic_artillery_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;span&gt; Rld: &lt;span name="attr_reload"&gt;&lt;/span&gt; Conc:&lt;span name="attr_concussion"&gt;&lt;/span&gt; Brst:&lt;span name="attr_burst_range"&gt;&lt;/span&gt; Dam: &lt;span name="attr_damage"&gt;&lt;/span&gt; Pen value: &lt;span name="attr_pen_val_s"&gt;&lt;/span&gt;-&lt;span name="attr_pen_val_m"&gt;&lt;/span&gt;-&lt;span name="attr_pen_val_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_val_e"&gt;&lt;/span&gt; Pen rtng: &lt;span name="attr_pen_rtng_sm"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_l"&gt;&lt;/span&gt;-&lt;span name="attr_pen_rtng_e"&gt;&lt;/span&gt; Dngr spc: &lt;span name="attr_danger_space"&gt;&lt;/span&gt; Range: &lt;span name="attr_range"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt; &lt;button type="roll" name="roll_single_shot" value="&amp;{template:skillRoll} {{name=@{character_name}}} {{skillvalue=(@{active_asset}-?{Recoil})}} {{os=[[((@{active_asset}-?{Recoil})*?{Difficulty?|Average,[[2]]|Easy,[[4]]|Difficult,[[1]]|Formidable,[[0.5]]|Impossible,[[0.25]]})-10]]}} {{cf=[[((@{active_asset}-?{Recoil})*?{Difficulty?| Average,[[2]]|Easy, [[4]] |Difficult,[[1]]|Formidable,[[0.5]]|Impossible,[[0.25]] })+10]]}} {{success=[[(@{active_asset}-?{Recoil})*?{Difficulty?| Average,[[2]]|Easy, [[4]] |Difficult,[[1]]|Formidable,[[0.5]]|Impossible,[[0.25]] }]]}} {{roll=[[1d20]]}} {{skillname=@{weapon_name}}}"&gt;Single shot&lt;/button&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_brst_recoil_toggle"&gt; &lt;div class="sheet-body"&gt; &lt;button type="roll" name="roll_burst" value="/roll ?{No dice}d20&lt;@{active_asset}"&gt;Burst&lt;/button&gt; &lt;/div&gt; &lt;button type="roll" name="roll_initiative" value="/roll 1d0 +@{initiative}+((@{agility}-@{bulk})/100) &amp;{tracker}"&gt;Initative&lt;/button&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_mag_toggle" /&gt; &lt;div class="sheet-body"&gt; Current mag: &lt;input type="number" name="attr_mag"&gt; No mags: &lt;input type="number" name="attr_mag_no"&gt; &lt;/div&gt; &lt;div&gt; &lt;input type="checkbox" value="0" name="attr_configure_weapon" class="sheet-toggle-hide"/&gt; &lt;span&gt;Configure&lt;/span&gt; &lt;div class="sheet-body"&gt;Weapon type: &lt;select name="attr_weapon_type"&gt; &lt;option value="0"&gt;--Choose--&lt;/option&gt; &lt;option value="1"&gt;Melee&lt;/option&gt; &lt;option value="2"&gt;Slug Pistol&lt;/option&gt; &lt;option value="3"&gt;Slug Rifle&lt;/option&gt; &lt;option value="4"&gt;SMG&lt;/option&gt; &lt;option value="5"&gt;Autogun&lt;/option&gt; &lt;option value="6"&gt;Laser Pistol&lt;/option&gt; &lt;option value="7"&gt;Laser Rifle&lt;/option&gt; &lt;option value="8"&gt;Plasma/Fusion Rifle&lt;/option&gt; &lt;option value="9"&gt;Plasma Bazooka&lt;/option&gt; &lt;option value="10"&gt;Grenade&lt;/option&gt; &lt;option value="11"&gt;RAM/Rifle Grenade&lt;/option&gt; &lt;option value="12"&gt;Grenade Launcher&lt;/option&gt; &lt;option value="13"&gt;Automatic Grenade Launcher&lt;/option&gt; &lt;option value="14"&gt;Assualt Rocket Launcher&lt;/option&gt; &lt;option value="15"&gt;Tac Missile&lt;/option&gt; &lt;option value="16"&gt;Archaic Firearm&lt;/option&gt; &lt;option value="17"&gt;Archaic Artillery&lt;/option--&gt; &lt;option value="18"&gt;Bow&lt;/option&gt; &lt;option value="19"&gt;Crossbow&lt;/option&gt; &lt;option value="20"&gt;Thrown Weapon&lt;/option&gt; &lt;option value="99"&gt;Custom/Other&lt;/option&gt; &lt;/select&gt;&lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_asset_toggle" /&gt; &lt;div class="sheet-body"&gt;Asset: &lt;input type="number" name="attr_active_asset"&gt;&lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_range_toggle" /&gt; &lt;div class="sheet-body"&gt;Range:&lt;input type="text" name="attr_range"&gt;&lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_hit_mod_toggle" /&gt; &lt;div class="sheet-body"&gt;Hit mod: &lt;input type="text" name="attr_hit_mod"&gt;&lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_rof_toggle" /&gt; &lt;div class="sheet-body"&gt;ROF:&lt;select name="attr_rof"&gt; &lt;option value=" "&gt;--Choose--&lt;/option&gt; &lt;option value="SS"&gt;SS&lt;/option&gt; &lt;option value="BA"&gt;BA&lt;/option&gt; &lt;option value="LA"&gt;LA&lt;/option&gt; &lt;option value="PA"&gt;PA&lt;/option&gt; &lt;option value="DAR"&gt;DAR&lt;/option&gt; &lt;option value="SA"&gt;SA&lt;/option&gt; &lt;option value="SAR"&gt;SAR&lt;/option&gt; &lt;option value="3"&gt;3&lt;/option&gt; &lt;option value="5"&gt;5&lt;/option&gt; &lt;option value="10"&gt;10&lt;/option&gt; &lt;option value="5/10"&gt;5/10&lt;/option&gt; &lt;option value="3/5/10"&gt;3/5/10&lt;/option&gt; &lt;option value="50"&gt;50&lt;/option&gt; &lt;option value="5/50"&gt;5/50&lt;/option&gt; &lt;option value="SA(10)"&gt;SA(10)&lt;/option&gt; &lt;option value="SA1"&gt;SA1&lt;/option&gt; &lt;option value="SA2"&gt;SA2&lt;/option&gt; &lt;option value="SA3"&gt;SA3&lt;/option&gt; &lt;option value="SA5"&gt;SA5&lt;/option&gt; &lt;option value="1x3"&gt;1x3&lt;/option&gt; &lt;option value="1x10"&gt;1x10&lt;/option&gt; &lt;option value="2x3"&gt;2x3&lt;/option&gt; &lt;option value="2x10"&gt;2x10&lt;/option&gt; &lt;option value="3x3"&gt;3x3&lt;/option&gt; &lt;option value="3x10"&gt;3x10&lt;/option&gt; &lt;option value="5x3"&gt;5x3&lt;/option&gt; &lt;option value="5x5"&gt;5x5&lt;/option&gt; &lt;option value="5x10"&gt;5x10&lt;/option&gt; &lt;option value="5x50"&gt;5x50&lt;/option&gt; &lt;option value="1*"&gt;1*&lt;/option&gt; &lt;option value="SS(10)"&gt;SS(10)&lt;/option&gt; &lt;!--option value=" "&gt;Custom&lt;/option--&gt; &lt;/select&gt;&lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_reload_toggle" /&gt; &lt;div class="sheet-body"&gt;Reload: &lt;input type="number" name="attr_reload"&gt;&lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_damage_toggle" /&gt; &lt;div class="sheet-body"&gt;Damage: &lt;input type="text" name="attr_damage"&gt;&lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_laser_damage_toggle" /&gt; &lt;div class="sheet-body"&gt; Laser damage S &lt;input type="number" name="attr_laser_damage_s"&gt; Laser damage M &lt;input type="number" name="attr_laser_damage_m"&gt; Laser damage L &lt;input type="number" name="attr_laser_damage_l"&gt; Laser damage E &lt;input type="number" name="attr_laser_damage_e"&gt; Laser damage W &lt;input type="number" name="attr_laser_damage_w"&gt; Laser damage X &lt;input type="number" name="attr_laser_damage_x"&gt; Laser damage Y &lt;input type="number" name="attr_laser_damage_y"&gt; Laser damage Z &lt;input type="number" name="attr_laser_damage_z"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_conc_burst_toggle" /&gt; &lt;div class="sheet-body"&gt; Concussion damage: &lt;input type="number" name="attr_concussion"&gt; Burst range: &lt;input type="number" name="attr_burst_range"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_pen_val_c_toggle" /&gt; &lt;div class="sheet-body"&gt; Penetration value constant: &lt;input type="number" name="attr_pen_val_c"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_pen_val_range_toggle" /&gt; &lt;div class="sheet-body"&gt; Penetration value short range: &lt;input type="number" name="attr_pen_val_s"&gt; Penetration value medium range: &lt;input type="number" name="attr_pen_val_m"&gt; Penetration value long range: &lt;input type="number" name="attr_pen_val_l"&gt; Penetration value extreme range: &lt;input type="number" name="attr_pen_val_e"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_pen_rtng_toggle" /&gt; &lt;div class="sheet-body"&gt; Penetration rating short/medium range: &lt;input type="number" name="attr_pen_rtng_sm"&gt; Penetration rating long range: &lt;input type="number" name="attr_pen_rtng_l"&gt; Penetration rating extreme range: &lt;input type="number" name="attr_pen_rtng_e"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_ss_recoil_toggle" /&gt; &lt;div class="sheet-body"&gt; Single shot recoil: &lt;input type="number" name="attr_ss_recoil"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_brst_recoil_toggle" /&gt; &lt;div class="sheet-body"&gt; Burst recoil: &lt;input type="number" name="attr_burst_recoil"&gt;&lt;input type="number" name="attr_burst_recoil_mid"&gt;&lt;input type="number" name="attr_burst_recoil_high"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_IFR_toggle" /&gt; &lt;div class="sheet-body"&gt; Indirect Fire Range: &lt;input type="number" name="attr_indirect_fire_range"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_bulk_toggle" /&gt; &lt;div class="sheet-body"&gt; Bulk: &lt;input type="number" name="attr_bulk" value="0"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_tac_missile_toggle" /&gt; &lt;div class="sheet-body"&gt; Combat Move(M/Turn): &lt;input type="number" name="attr_m_turn"&gt; Agility: &lt;input type="number" name="attr_agl"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_dngr_spc_toggle" /&gt; &lt;div class="sheet-body"&gt; Danger space: &lt;input type="number" name="attr_danger_space"&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_mag_toggle" /&gt; &lt;div class="sheet-body"&gt; Mag capacity: &lt;input type="number" name="attr_mag_max"&gt; Magazine type: &lt;select name="attr_mag_type"&gt; &lt;option value=" "&gt;&lt;/option&gt; &lt;option value="R"&gt;R&lt;/option&gt; &lt;option value="i"&gt;i&lt;/option&gt; &lt;option value="B"&gt;B&lt;/option&gt; &lt;option value="C"&gt;C&lt;/option&gt; &lt;option value="PP"&gt;PP&lt;/option&gt; &lt;/select&gt; &lt;/div&gt; &lt;input type="checkbox" class="sheet-toggle-show" value="0" name="attr_rof_config_toggle" /&gt; &lt;div class="sheet-body"&gt; Single shot ROF: &lt;input type="number" name="single_shot_rof"&gt; Burst size: &lt;input type="number" name="attr_burst_size"&gt; Burst size medium: &lt;input type="number" name="attr_burst_size_medium"&gt; Burst size high: &lt;input type="number" name="attr_burst_size_high"&gt; &lt;/div&gt; &lt;input type="hidden" name="attr_burst_asset" value="(@{active_asset}/4)" disabled&gt; &lt;input type="hidden" name="attr_range_band_modifier"&gt; &lt;input type="hidden" name="attr_minimum_burst"&gt; &lt;input type="hidden" name="attr_burst_recoil_modifier"&gt; &lt;/div&gt; &lt;/fieldset&gt; &lt;rolltemplate class="sheet-rolltemplate-skillRoll"&gt; &lt;!-- Skill roll --&gt; &lt;table class="skillRoll" style="width: 100%; border 1px black"&gt; &lt;!--&lt;tr&gt;&lt;th&gt;{{name}}&lt;/th&gt;&lt;/tr&gt;--&gt; &lt;tr&gt;&lt;th colspan="2"&gt;{{name}}&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt;&lt;th colspan="2"&gt;Skill Roll&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt;&lt;th colspan="2"&gt;{{skillname}}&lt;/th&gt;&lt;/tr&gt; &lt;!--&lt;tr&gt;&lt;td&gt;os&lt;/td&gt;&lt;td&gt;{{os}}&lt;/td&gt;&lt;/td&gt; &lt;tr&gt;&lt;td&gt;CF&lt;/td&gt;&lt;td&gt;{{cf}}&lt;/td&gt;&lt;/td&gt;--&gt; &lt;tr&gt; &lt;tr&gt; &lt;td class="template_label"&gt;&lt;b&gt;Skill:&lt;/b&gt; &lt;/td&gt; &lt;td class="sheet-rolltemplate-skillRoll-template_value"&gt; {{skillvalue}}&amp;nbsp;({{success}})&lt;/td&gt; &lt;/tr&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td class="template_label"&gt;&lt;b&gt;Rolled:&lt;/b&gt;&lt;/td&gt; &lt;td class="sheet-rolltemplate-skillRoll-template_value"&gt;&amp;nbsp;{{roll}}&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td class="template_label"&gt;&lt;b&gt;Result:&lt;/b&gt;&lt;/td&gt; &lt;!-- Check for outstanding success --&gt; {{#^rollGreater() roll os}} {{#rollTotal() roll 20}} &lt;td class="sheet-rolltemplate-skillRoll-template_value"&gt;Failure&lt;/td&gt; {{/rollTotal() roll 20}} {{#^rollTotal() roll 20}} &lt;td class="sheet-rolltemplate-skillRoll-template_value"&gt;Outstanding Success&lt;/td&gt; {{/^rollTotal() roll 20}} {{/^rollGreater() roll os}} {{#rollGreater() roll os}} {{#rollLess() roll cf}} {{#rollGreater() roll success}} &lt;!-- Failure --&gt; {{#rollTotal() roll 1}} &lt;td class="sheet-rolltemplate-skillRoll-template_value"&gt;Success&lt;/td&gt; {{/rollTotal() roll 1}} {{#^rollTotal() roll 1}} &lt;td class="sheet-rolltemplate-skillRoll-template_value"&gt;Failure&lt;/td&gt; {{/^rollTotal() roll 1}} {{/rollGreater() roll success}} {{#^rollGreater() roll success}} {{#rollTotal() roll 20}} &lt;td class="sheet-rolltemplate-skillRoll-template_value"&gt;Failure&lt;/td&gt; {{/rollTotal() roll 20}} &lt;!-- Success --&gt; {{#^rollTotal() roll 20}} &lt;td class="sheet-rolltemplate-skillRoll-template_value"&gt;Success&lt;/td&gt; {{/^rollTotal() roll 20}} {{/^rollGreater() roll success}} {{/rollLess() roll cf}} {{/rollGreater() roll os}} {{#^rollLess() roll cf}} &lt;!--Catastrophic Failure: --&gt; &lt;td class="sheet-rolltemplate-skillRoll-template_value"&gt;Catastrophic Failure&lt;/td&gt; {{/^rollLess() roll cf}} &lt;/tr&gt; &lt;/table&gt; &lt;/rolltemplate&gt; And the CSS: .sheet-columns { display: flex; justify-content: space-between; width: 400px; } .sheet-columns &gt; * { flex: 1; } input.sheet-toggle-show:not(:checked) + div.sheet-body, input.sheet-toggle-hide:checked ~ div.sheet-body { display: none; } /* Hide actual checkbox */ input[type="checkbox"] { position: absolute; opacity: 0; width: 15px; height: 15px; cursor: pointer; z-index: 1; margin-top: 6px; } input[type="checkbox"]:not(:checked) + span::before { content: "▼"; } input[type="checkbox"]:checked + span::before { content: "►"; }
1593721104
GiGs
Pro
Sheet Author
API Scripter
It's going to be hard to give specific help, because so much is bound up in the specifics of how that system works.&nbsp; It sounds like a good approach, going for a more generalised approach that will work for all weapons is best. Some general comments: You have two sheet workers that change only when weapon_type changes. If that is the only trigger for changes, then they should be combined into one sheet worker.&nbsp; You mention not being able to get it working as a repeating section. This should be simple. Can you post what you tried, that wasnt working? Here's a slightly more compact version of that first worker. Instead of using a different variable for every toggle, it stores them all in a javascript object variable, and gives each set a name: 1, 2, 3, etc. I could have named the "firstset", "secondset", etc. If each represents a different class of weapons, you could use that name for each set (remove spaces, keep lower case). Then you can get all the variables in a set by using weapon_toggles[name_of_set] . See the if statement for how thats done. on("change:weapon_type",&nbsp;function()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;getAttrs&nbsp;(["weapon_type",],&nbsp;function(pvalue)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const&nbsp;weapon_toggles&nbsp;=&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;1,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;1,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;1,&nbsp;pen_val_c_toggle:&nbsp;1,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;1,&nbsp;ss_recoil_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;1,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;1,&nbsp;rof_config_toggle:&nbsp;1&nbsp;}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;0,&nbsp;rof_toggle:&nbsp;1,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;1,&nbsp;pen_val_c_toggle:&nbsp;1,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;1,&nbsp;ss_recoil_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;1,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;1,&nbsp;rof_config_toggle:&nbsp;1}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;0,&nbsp;laser_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;0,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;1,&nbsp;pen_val_c_toggle:&nbsp;1,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;0,&nbsp;ss_recoil_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;0,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;0,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;0,&nbsp;rof_config_toggle:&nbsp;1}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;0,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;0,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;0,&nbsp;conc_burst_toggle:&nbsp;1,&nbsp;pen_val_c_toggle:&nbsp;1,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;0,&nbsp;ss_recoil_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;0,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;0,&nbsp;rof_config_toggle:&nbsp;1}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;0,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;0,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;1,&nbsp;pen_val_c_toggle:&nbsp;1,&nbsp;pen_val_range_toggle:&nbsp;0,&nbsp;pen_rtng_toggle:&nbsp;0,&nbsp;ss_recoil_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;0,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;0,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;0,&nbsp;rof_config_toggle:&nbsp;1}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;0,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;1,&nbsp;reload_toggle:&nbsp;0,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;1,&nbsp;pen_val_c_toggle:&nbsp;1,&nbsp;pen_val_range_toggle:&nbsp;0,&nbsp;pen_rtng_toggle:&nbsp;0,&nbsp;ss_recoil_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;0,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;0,&nbsp;rof_config_toggle:&nbsp;1&nbsp;&nbsp;}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;0,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;1,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;1,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;0,&nbsp;pen_val_c_toggle:&nbsp;0,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;1,&nbsp;ss_recoil_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;1,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;1,&nbsp;rof_config_toggle:&nbsp;1&nbsp;&nbsp;}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;0,&nbsp;grenade_launcher_toggle:&nbsp;1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;1,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;0,&nbsp;pen_val_c_toggle:&nbsp;0,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;0,&nbsp;ss_recoil_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;0,&nbsp;bulk_toggle:&nbsp;1,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;0,&nbsp;mag_toggle:&nbsp;1,&nbsp;rof_config_toggle:&nbsp;1&nbsp;&nbsp;&nbsp;}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;9:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:&nbsp;0,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;0,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;1,&nbsp;pen_val_c_toggle:&nbsp;0,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;0,&nbsp;ss_recoil_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;0,&nbsp;ifr_toggle:&nbsp;0,&nbsp;bulk_toggle:&nbsp;0,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;1,&nbsp;rof_config_toggle:&nbsp;1&nbsp;&nbsp;}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:&nbsp;1,&nbsp;arl_toggle:&nbsp;0,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;0,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;0,&nbsp;pen_val_c_toggle:&nbsp;0,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;0,&nbsp;ss_recoil_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;0,&nbsp;bulk_toggle:&nbsp;0,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;0,&nbsp;mag_toggle:&nbsp;0,&nbsp;rof_config_toggle:&nbsp;1}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;11:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:&nbsp;1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;0,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;1,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;0,&nbsp;pen_val_c_toggle:&nbsp;0,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;1,&nbsp;ss_recoil_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;1,&nbsp;rof_config_toggle:&nbsp;1}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:&nbsp;1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;1,&nbsp;reload_toggle:&nbsp;0,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;0,&nbsp;pen_val_c_toggle:&nbsp;0,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;0,&nbsp;ss_recoil_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;0,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;0,&nbsp;rof_config_toggle:&nbsp;1&nbsp;&nbsp;}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;13:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:&nbsp;1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;0,&nbsp;asset_toggle:&nbsp;0,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;1,&nbsp;reload_toggle:&nbsp;0,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;0,&nbsp;pen_val_c_toggle:&nbsp;1,&nbsp;pen_val_range_toggle:&nbsp;0,&nbsp;pen_rtng_toggle:&nbsp;1,&nbsp;ss_recoil_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;0,&nbsp;mag_toggle:&nbsp;1,&nbsp;rof_config_toggle:&nbsp;1}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;0,&nbsp;slug_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;1,&nbsp;reload_toggle:&nbsp;0,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;1,&nbsp;pen_val_c_toggle:&nbsp;1,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;0,&nbsp;ss_recoil_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;0,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;0,&nbsp;rof_config_toggle:&nbsp;1}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;15:&nbsp;{thrown_toggle:&nbsp;0,&nbsp;bow_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;1,&nbsp;range_toggle:&nbsp;1,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;1,&nbsp;reload_toggle:&nbsp;1,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;1,&nbsp;conc_burst_toggle:&nbsp;1,&nbsp;pen_val_c_toggle:&nbsp;1,&nbsp;pen_val_range_toggle:&nbsp;1,&nbsp;pen_rtng_toggle:&nbsp;1,&nbsp;ss_recoil_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;1,&nbsp;ifr_toggle:&nbsp;1,&nbsp;bulk_toggle:&nbsp;1,&nbsp;tac_missle_toggle:&nbsp;1,&nbsp;dngr_spc_toggle:&nbsp;1,&nbsp;mag_toggle:&nbsp;1,&nbsp;rof_config_toggle:&nbsp;1}, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;16:&nbsp;{thrown_toggle:&nbsp;1,&nbsp;bow_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;slug_toggle:&nbsp;1,&nbsp;laser_toggle:&nbsp;1,&nbsp;plasma_rifle_toggle:&nbsp;1,&nbsp;plasma_bazooka_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;grenade_toggle:&nbsp;1,&nbsp;ram_grenade_toggle:&nbsp;1,&nbsp;grenade_launcher_toggle:1,&nbsp;arl_toggle:&nbsp;1,&nbsp;tac_missile_toggle:&nbsp;1,&nbsp;&nbsp;archaic_firearm_toggle:&nbsp;1,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;archaic_artillery_toggle:&nbsp;1,&nbsp;asset_toggle:&nbsp;0,&nbsp;range_toggle:&nbsp;0,&nbsp;hit_mod_toggle:&nbsp;1,&nbsp;rof_toggle:&nbsp;0,&nbsp;reload_toggle:&nbsp;0,&nbsp;damage_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;laser_damage_toggle:&nbsp;0,&nbsp;conc_burst_toggle:&nbsp;0,&nbsp;pen_val_c_toggle:&nbsp;0,&nbsp;pen_val_range_toggle:&nbsp;0,&nbsp;pen_rtng_toggle:&nbsp;0,&nbsp;ss_recoil_toggle:&nbsp;0,&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;brst_recoil_toggle:&nbsp;0,&nbsp;ifr_toggle:&nbsp;0,&nbsp;bulk_toggle:&nbsp;0,&nbsp;tac_missle_toggle:&nbsp;0,&nbsp;dngr_spc_toggle:&nbsp;0,&nbsp;mag_toggle:&nbsp;0,&nbsp;rof_config_toggle:&nbsp;0} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;let&nbsp;output&nbsp;=&nbsp;{}; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;1)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.1; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;2)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.2; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;6)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.3; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;8)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.4; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;9)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.5; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;10)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.6; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;11)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.7; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;12)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.8; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;13)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.9; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;14)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.10; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;15)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.11; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;16)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.12; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;17)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.13; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;20)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.14; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;if&nbsp;(weapon_type&nbsp;&lt;&nbsp;21)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.15; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;output&nbsp;=&nbsp;weapon_toggles.16; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setAttrs(output); &nbsp;&nbsp;&nbsp;&nbsp;}); }); For the second sheet worker, you might want to add all the&nbsp;energy_artillery_asset, thrown_weapon_asset, etc., to the change line. Otherwise, the active&nbsp; weapons stats wont get updated if the score it depends on changes.
Thank you for your feedback GiGs! I'm learning a lot here. I was aware that I should include a listener for changes in the combat assets as well, but not that it is good practice to combine workers that are triggered by the same attribute into one (only that workers that set the same attribute should be combined into one). For the repeating section stuff I just tried adding on:("change.repeating_weapons:weapon_type" to the listener and "repeating_weapons_" to all the other attributes/variables, as described here: <a href="https://roll20.zendesk.com/hc/en-us/articles/360037773513#getattrs-attributenamearray-callback-asynchronous-0-15" rel="nofollow">https://roll20.zendesk.com/hc/en-us/articles/360037773513#getattrs-attributenamearray-callback-asynchronous-0-15</a> . But It did strange things and I didn't have time to explore fully. It might just be typing errors on my side. I will get back to this sometime next week.
1593850488
GiGs
Pro
Sheet Author
API Scripter
Marius said: Thank you for your feedback GiGs! I'm learning a lot here. I was aware that I should include a listener for changes in the combat assets as well, but not that it is good practice to combine workers that are triggered by the same attribute into one (only that workers that set the same attribute should be combined into one). For the repeating section stuff I just tried adding on:("change.repeating_weapons:weapon_type" to the listener and "repeating_weapons_" to all the other attributes/variables, as described here: <a href="https://roll20.zendesk.com/hc/en-us/articles/360037773513#getattrs-attributenamearray-callback-asynchronous-0-15" rel="nofollow">https://roll20.zendesk.com/hc/en-us/articles/360037773513#getattrs-attributenamearray-callback-asynchronous-0-15</a> . But It did strange things and I didn't have time to explore fully. It might just be typing errors on my side. I will get back to this sometime next week. Combining workers that are triggered by the same attribute is generally good practice, but not always necessary. For instance you might have one worker that is triggered by attribute A, and another worker that is triggered by A, B, and C: in that case you need to consider whether to combine them or not. But if you have two workers that have identical triggers (e.g. both triggered by A and only A), you should definitely combine them. The reason is to reduce the number simultaneous of getAttrs and setAttrs calls in your sheet. Each time one of those runs, the sheet has to contact roll20's servers and communicate back and forth details about attributes being updated. This is a costly process - it takes time, and adds lag to the sheet. It isnt noticable with just a couple of calls, but as a sheet gets bigger, and you have multiple players in the campaign each accessing their own sheets, you can have multiple sheet workers running at once. If those sheet workers trigger other sheet workers, you have a cascade that can cause very noticable lag. So it's best to work to minimise the number of getAttrs and setAttrs calls your sheet make. Combining sheet workers is how you do that. Regarding the repeating section: that's the correct process, but of course there's plenty of ways to mess up the syntax.&nbsp;