Thorium-Sim / thorium

Platform for starship simulator controls
https://thoriumsim.com
Apache License 2.0
157 stars 69 forks source link

Synthesis Card #821

Open issue-tracker[bot] opened 6 years ago

issue-tracker[bot] commented 6 years ago

Requested By: Nathan King

Priority: 1

Version: 0.2.31

Is it possible to have a card responsible for the Synthesis of additional cargo?

alexanderson1993 commented 5 years ago

From Nathan: At Lakeview, we’ve been having a little trouble keeping the probes student entertained through the duration of our missions. We also have noticed that there isn’t really an effective way to make new missiles and other parts within the controls. This document outlines a proposal for a new assembly system, which includes the collection of materials using probes. For this proposal to be effective, there will need to be a few changes made to current screens:

In Simulator Configuration, under Inventory, all items need the following additions:

All items, no matter their metadata type, will need a size value similar to the one given to probe equipment.

All items will need the ability to have assembly items assigned to them. These assembly items can be assigned by the user, and entirely omitted if the user doesn’t want to use the assembly function. Any item already created in the inventory can be used as an assembly item. For example, creating a new photon torpedo could require two hull plates and a photon detonator. Or it could require four pieces of sheet metal and one unit of explosive powder. It would just depend on the inventory built by the local flight director

Similar to the assembly list, there would need to be a disassembly list built. This list can be edited by the user to show materials that would be collected by the kids when a useless item is torn scrapped for parts.

A new metadata type would need to be built called “materials”. All items of the materials type would be displayed on the Assembly screen, and would be used to build new items.

The probe control screen would need to be edited in the following ways:

To condense space, the probes list would need to be made adaptive. Upon selecting a constructed probe, the window would update to display the equipment within the selected probe. A back button would allow the user to return to the probe list.

The central area of the screen would need to have a widget that displays the objects on sensors. This could be done by showing the sensors array, and allowing the kids to select sensors icons to see what items are on the nearby ships or planets. It could also be done by displaying a list of the names of nearby ships or planets, then, upon selection, displaying the available items for collection. Once an item has been selected, a deploy button would need to be pressed to allow the probe to collect the item. Collection trips would be limited by the amount of space left within the probe. If the probe has 12 spaces left, then it can only transport items of size 12 or lower.

The probe query box would need to be resized to compensate for the additional widgets on screen.

A new screen called “Assembly” would need to be built.

assembly screen

The screen allows the user to build new items based on the assembly lists made in the Simulation Configuration. The products list contains these items. The materials list contains all of the material items that are currently in the ship’s inventory. Only material items can be used to build new items. The required list shows the required materials needed to build the selected product. The +- symbols in the materials and the required lists will allow the user to move materials between the two lists. Once all the required materials are in place, the user can push the assemble button to create the desired object. The assemble button will not function until all required materials are in place.

The disassembly section allows the user to break down unneeded items. The materials gained from these items can then be used to build new items. When an unneeded item is selected in the inventory window, the results window will display what will be received by the user after disassembly. The disassemble button can be pressed to finalize the action.