The custom remote model uses resistors to distinguish the difference between which attachments are being connected to the main character. Each weapon is assigned a different numerical value, and in their physical attachments, they each have a resistor implemented with a different resistance value. Depending on the resistance values read by the analog inputs, the Arduino constantly prints a value to the Unity console telling it which attachment is currently connected and to which arm/input. The Arduino detects the value read from the inputs and then determines where those values lie on a scale of 0 to however many different modular attachments we have implemented.
With these arms we plan to add detachable weapons for the user to use and swap between. The weapons will be 3D printed so the user will have a variety of weapons to choose from beside them and can be swapped during gameplay. Each weapon will serve its own purpose in-game and the player has the freedom to stay with the current loadout of weapons or they could swap it out.