Actions

Difference between revisions of "Kit (Satellite Dish)"

From Unofficial Stationeers Wiki

m
Line 1: Line 1:
Category:Machines]]
+
[[Category:Machines]]
 
[[Category:Items]]
 
[[Category:Items]]
 
{{Itembox
 
{{Itembox
Line 69: Line 69:
 
|-
 
|-
 
| style="text-align:center;" | 8-15
 
| style="text-align:center;" | 8-15
| SHUTTLE_TYPE
+
| SHUTTLE_TYPE<br/>See [[Trader#Trader_Tier|SHUTTLE_TYPE]].
 
|-
 
|-
 
| style="text-align:center;" | 16-23
 
| style="text-align:center;" | 16-23
| CONTACT_TIER
+
| CONTACT_TIER<br/>See [[Trader#Trader_Tier|CONTACT_TIER]].
 
|-
 
|-
 
| style="text-align:center;" | 24-31
 
| style="text-align:center;" | 24-31
| CONTACTED
+
| CONTACTED<br/>See [[Trader#Trader_Tier|CONTACTED]].
 
|-
 
|-
 
| style="text-align:center;" | 32-63
 
| style="text-align:center;" | 32-63
Line 88: Line 88:
 
|-
 
|-
 
| style="text-align:center;" | 8-23
 
| style="text-align:center;" | 8-23
| WATTS_TO_RESOLVE
+
| WATTS_TO_RESOLVE<br/>See [[Trader#Trader_Tier |WattsToResolve]].
 
|-
 
|-
 
| style="text-align:center;" | 24-39
 
| style="text-align:center;" | 24-39
| LIFETIME
+
| LIFETIME<br/>See [[Trader#Trader_Tier|LifeTime]].
 
|-
 
|-
 
| style="text-align:center;" | 32-63
 
| style="text-align:center;" | 32-63
Line 130: Line 130:
 
! rowspan="4" | 7
 
! rowspan="4" | 7
 
| rowspan="4" | TraderInstruction.TraderBuyThingData
 
| rowspan="4" | TraderInstruction.TraderBuyThingData
| rowspan="4" | Currently not useful, if wrote to stack, will be cleared per tick.
+
| rowspan="4" | This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData.
 
| rowspan="4" | 0-31
 
| rowspan="4" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 146: Line 146:
 
! rowspan="4" | 8
 
! rowspan="4" | 8
 
| rowspan="4" | TraderInstruction.TraderBuyThingChildData
 
| rowspan="4" | TraderInstruction.TraderBuyThingChildData
| rowspan="4" | Currently not useful, only Op_code will be used in the output of TraderInstruction.WriteTraderBuyData.
+
| rowspan="4" | This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData.
 
| rowspan="4" | 0-31
 
| rowspan="4" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 162: Line 162:
 
! rowspan="4" | 9
 
! rowspan="4" | 9
 
| rowspan="4" | TraderInstruction.TraderBuyGasData
 
| rowspan="4" | TraderInstruction.TraderBuyGasData
| rowspan="4" | Currently not useful.
+
| rowspan="4" | This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData.
 
| rowspan="4" | 0-31
 
| rowspan="4" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 171: Line 171:
 
|-
 
|-
 
| style="text-align:center;" | 16-47
 
| style="text-align:center;" | 16-47
| GAS_TYPES_BITFLAG
+
| GAS_TYPES_BITFLAG<br/>See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].
 
|-
 
|-
 
| style="text-align:center;" | 48-63
 
| style="text-align:center;" | 48-63
Line 178: Line 178:
 
! rowspan="4" | 10
 
! rowspan="4" | 10
 
| rowspan="4" | TraderInstruction.TraderSellThingData
 
| rowspan="4" | TraderInstruction.TraderSellThingData
| rowspan="4" | Currently not useful, if wrote to stack, will be cleared per tick.
+
| rowspan="4" | This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData.
 
| rowspan="4" | 0-31
 
| rowspan="4" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 194: Line 194:
 
! rowspan="4" | 11
 
! rowspan="4" | 11
 
| rowspan="4" | TraderInstruction.TraderSellGasData
 
| rowspan="4" | TraderInstruction.TraderSellGasData
| rowspan="4" | Currently not useful.
+
| rowspan="4" | This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData.
 
| rowspan="4" | 0-31
 
| rowspan="4" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 203: Line 203:
 
|-
 
|-
 
| style="text-align:center;" | 16-47
 
| style="text-align:center;" | 16-47
| GAS_TYPES_BIGFLAG
+
| GAS_TYPES_BIGFLAG<br/>See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].
 
|-
 
|-
 
| style="text-align:center;" | 48-63
 
| style="text-align:center;" | 48-63
Line 210: Line 210:
 
! rowspan="4" | 12
 
! rowspan="4" | 12
 
| rowspan="4" | TraderInstruction.TraderSellThingChildData
 
| rowspan="4" | TraderInstruction.TraderSellThingChildData
| rowspan="4" | Currently not useful, only Op_code will be used in the output of TraderInstruction.WriteTraderSellData.
+
| rowspan="4" | This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData.
 
| rowspan="4" | 0-31
 
| rowspan="4" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 226: Line 226:
 
! rowspan="3" | 13
 
! rowspan="3" | 13
 
| rowspan="3" | TraderInstruction.FilterPrefabHashEquals
 
| rowspan="3" | TraderInstruction.FilterPrefabHashEquals
| rowspan="3" | todo
+
| rowspan="3" | Filter Operation.<br/>User can append this OP after any TraderInstruction.Write* OP to filter writer's output.<br/>This OP's effective scope is the last Write* OP and before the next Write* OP.<br/>Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.<br/>This Filter narrows Write* OP's output to only matching PrefabHash.
 
| rowspan="3" | 0-31
 
| rowspan="3" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 239: Line 239:
 
! rowspan="3" | 14
 
! rowspan="3" | 14
 
| rowspan="3" | TraderInstruction.FilterPrefabHashNotEquals
 
| rowspan="3" | TraderInstruction.FilterPrefabHashNotEquals
| rowspan="3" | todo
+
| rowspan="3" | Filter Operation.<br/>User can append this OP after any TraderInstruction.Write* OP to filter writer's output.<br/>This OP's effective scope is the last Write* OP and before the next Write* OP.<br/>Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.<br/>This Filter narrows Write* OP's output to only not matching PrefabHash.
 
| rowspan="3" | 0-31
 
| rowspan="3" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 252: Line 252:
 
! rowspan="4" | 15
 
! rowspan="4" | 15
 
| rowspan="4" | TraderInstruction.FilterSortingClassCompare
 
| rowspan="4" | TraderInstruction.FilterSortingClassCompare
| rowspan="4" | todo
+
| rowspan="4" | Filter Operation.<br/>User can append this OP after any TraderInstruction.Write* OP to filter writer's output.<br/>This OP's effective scope is the last Write* OP and before the next Write* OP.<br/>Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.<br/>This Filter narrows Write* OP's output to only matching SortingClass.
 
| rowspan="4" | 0-31
 
| rowspan="4" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 258: Line 258:
 
|-
 
|-
 
| style="text-align:center;" | 8-15
 
| style="text-align:center;" | 8-15
| CONDITION_OPERATION
+
| CONDITION_OPERATION<br/>0: Equals<br/>1: Greater<br/>2: Less<br/>3: Not Equals
 
|-
 
|-
 
| style="text-align:center;" | 16-31
 
| style="text-align:center;" | 16-31
Line 268: Line 268:
 
! rowspan="4" | 16
 
! rowspan="4" | 16
 
| rowspan="4" | TraderInstruction.FilterQuantityCompare
 
| rowspan="4" | TraderInstruction.FilterQuantityCompare
| rowspan="4" | todo
+
| rowspan="4" | Filter Operation.<br/>User can append this OP after any TraderInstruction.Write* OP to filter writer's output.<br/>This OP's effective scope is the last Write* OP and before the next Write* OP.<br/>Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.<br/>This Filter narrows Write* OP's output to only matching Quantity Condition.
 
| rowspan="4" | 0-31
 
| rowspan="4" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 274: Line 274:
 
|-
 
|-
 
| style="text-align:center;" | 8-15
 
| style="text-align:center;" | 8-15
| CONDITION_OPERATION
+
| CONDITION_OPERATION<br/>0: Equals<br/>1: Greater<br/>2: Less<br/>3: Not Equals
 
|-
 
|-
 
| style="text-align:center;" | 16-31
 
| style="text-align:center;" | 16-31
Line 284: Line 284:
 
! rowspan="3" | 17
 
! rowspan="3" | 17
 
| rowspan="3" | TraderInstruction.FilterGasContains
 
| rowspan="3" | TraderInstruction.FilterGasContains
| rowspan="3" | todo
+
| rowspan="3" | Filter Operation.<br/>User can append this OP after any TraderInstruction.Write* OP to filter writer's output.<br/>This OP's effective scope is the last Write* OP and before the next Write* OP.<br/>Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.<br/>This Filter narrows Write* OP's output to only matching Gases.
 
| rowspan="3" | 0-31
 
| rowspan="3" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 290: Line 290:
 
|-
 
|-
 
| style="text-align:center;" | 8-39
 
| style="text-align:center;" | 8-39
| GAS_TYPES_BITFLAG
+
| GAS_TYPES_BITFLAG<br/>See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].
 
|-
 
|-
 
| style="text-align:center;" | 40-63
 
| style="text-align:center;" | 40-63
Line 297: Line 297:
 
! rowspan="3" | 18
 
! rowspan="3" | 18
 
| rowspan="3" | TraderInstruction.FilterGasNotContains
 
| rowspan="3" | TraderInstruction.FilterGasNotContains
| rowspan="3" | todo
+
| rowspan="3" | Filter Operation.<br/>User can append this OP after any TraderInstruction.Write* OP to filter writer's output.<br/>This OP's effective scope is the last Write* OP and before the next Write* OP.<br/>Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.<br/>This Filter narrows Write* OP's output to only not matching Gases.
 
| rowspan="3" | 0-31
 
| rowspan="3" | 0-31
 
| style="text-align:center;" | 0-7
 
| style="text-align:center;" | 0-7
Line 303: Line 303:
 
|-
 
|-
 
| style="text-align:center;" | 8-39
 
| style="text-align:center;" | 8-39
| GAS_TYPES_BITFLAG
+
| GAS_TYPES_BITFLAG<br/>See [[#Gas_Type_BitFlags|Gas_Type_BitFlags]].
 
|-
 
|-
 
| style="text-align:center;" | 40-63
 
| style="text-align:center;" | 40-63

Revision as of 08:30, 24 March 2025


Kit (Satellite Dish)
ItemKitSatelliteDish.png
Properties
Stacks Yes (10)
Recipe
Created With Electronics Printer
Cost 5g Gold, 10g Copper, 20g Steel, 5g Nickel, 10g Solder
Medium Satellite Dish
StructureSatelliteDish.png
Operation
Power Usage 200W
Construction
Placed with Kit (Satellite Dish)
Placed on Small Grid
Stage 1
Deconstruction
Deconstructed with Hand Drill
Item received Kit (Satellite Dish)

Description

The Satellite Dish is used together with a Computer fitted with a Motherboard (Communications) to allow Interstellar Communications.

The Satellite Dish must be guided by Satellite Tracking onto a signal and communications may be established once the signal strength is greater than 94%

Medium Satellite Dish

After "Big Changes Coming: Terrain Preview, Melting Ice, Modding, & Localization" update, Medium Satellite Dish has internal stack like Autolathe, which user can utilize it to give instructions to. The Medium Satellite Dish currently have 256Bytes(32 Addresses) stack memory.

Op_code Name Description Valid Address Bits Bits Description
1 TraderInstruction.WriteTraderData The dish will write out metadata(24 Bytes, in continuous of 3 addresses) to the specified starting index. E.g.: if set WRITE_INDEX to 1, then the metadata will span address 1-3. See Metadata Payloads. 0-31 0-7 Op_code
8-15 WRITE_INDEX
16-63 Unused
2 TraderInstruction.StrongestContactIdHash Currently not useful. 0-31 0-7 Op_code
8-39 TRADER_ID_HASH
40-63 Unused
3 TraderInstruction.StrongestContactMetaData Currently not useful. 0-31 0-7 Op_code
8-15 SHUTTLE_TYPE
See SHUTTLE_TYPE.
16-23 CONTACT_TIER
See CONTACT_TIER.
24-31 CONTACTED
See CONTACTED.
32-63 Unused
4 TraderInstruction.StrongestContactSignalData Currently not useful. 0-31 0-7 Op_code
8-23 WATTS_TO_RESOLVE
See WattsToResolve.
24-39 LIFETIME
See LifeTime.
32-63 Unused
5 TraderInstruction.WriteTraderBuyData The dish will write out trader buy metadatas from the starting address WRITE_INDEX, and write WRITE_COUNT continuous addresses total.
If an item contains child items, then it will be expaned inplace.
E.g.: <BuyPayload><BuyPayload><BuyChildPayload><BuyPayload>.
See Buy/Sell Payloads, Buy/Sell Child Payloads.
0-31 0-7 Op_code
8-15 WRITE_INDEX
16-23 WRITE_COUNT
24-63 Unused
6 TraderInstruction.WriteTraderSellData The dish will write out trader sell metadatas from the starting address WRITE_INDEX, and write WRITE_COUNT continuous addresses total.
If an item contains child items, then it will be expaned inplace.
E.g.: <SellPayload><SellPayload><SellChildPayload><SellPayload>.
See Buy/Sell Payloads, Buy/Sell Child Payloads.
0-31 0-7 Op_code
8-15 WRITE_INDEX
16-23 WRITE_COUNT
24-63 Unused
7 TraderInstruction.TraderBuyThingData This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData. 0-31 0-7 Op_code
8-15 QUANTITY
16-47 PREFAB_HASH
48-63 Unused
8 TraderInstruction.TraderBuyThingChildData This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData. 0-31 0-7 Op_code
8-15 QUANTITY
16-47 PREFAB_HASH
48-63 Unused
9 TraderInstruction.TraderBuyGasData This OpCode indicates the data generated by TraderInstruction.WriteTraderBuyData. 0-31 0-7 Op_code
8-15 QUANTITY
16-47 GAS_TYPES_BITFLAG
See Gas_Type_BitFlags.
48-63 Unused
10 TraderInstruction.TraderSellThingData This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData. 0-31 0-7 Op_code
8-15 QUANTITY
16-47 PREFAB_HASH
48-63 Unused
11 TraderInstruction.TraderSellGasData This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData. 0-31 0-7 Op_code
8-15 QUANTITY
16-47 GAS_TYPES_BIGFLAG
See Gas_Type_BitFlags.
48-63 Unused
12 TraderInstruction.TraderSellThingChildData This OpCode indicates the data generated by TraderInstruction.WriteTraderSellData. 0-31 0-7 Op_code
8-15 QUANTITY
16-47 PREFAB_HASH
48-63 Unused
13 TraderInstruction.FilterPrefabHashEquals Filter Operation.
User can append this OP after any TraderInstruction.Write* OP to filter writer's output.
This OP's effective scope is the last Write* OP and before the next Write* OP.
Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.
This Filter narrows Write* OP's output to only matching PrefabHash.
0-31 0-7 Op_code
8-39 PREFAB_HASH
40-63 Unused
14 TraderInstruction.FilterPrefabHashNotEquals Filter Operation.
User can append this OP after any TraderInstruction.Write* OP to filter writer's output.
This OP's effective scope is the last Write* OP and before the next Write* OP.
Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.
This Filter narrows Write* OP's output to only not matching PrefabHash.
0-31 0-7 Op_code
8-39 PREFAB_HASH
40-63 Unused
15 TraderInstruction.FilterSortingClassCompare Filter Operation.
User can append this OP after any TraderInstruction.Write* OP to filter writer's output.
This OP's effective scope is the last Write* OP and before the next Write* OP.
Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.
This Filter narrows Write* OP's output to only matching SortingClass.
0-31 0-7 Op_code
8-15 CONDITION_OPERATION
0: Equals
1: Greater
2: Less
3: Not Equals
16-31 SORTING_CLASS
32-63 Unused
16 TraderInstruction.FilterQuantityCompare Filter Operation.
User can append this OP after any TraderInstruction.Write* OP to filter writer's output.
This OP's effective scope is the last Write* OP and before the next Write* OP.
Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.
This Filter narrows Write* OP's output to only matching Quantity Condition.
0-31 0-7 Op_code
8-15 CONDITION_OPERATION
0: Equals
1: Greater
2: Less
3: Not Equals
16-31 QUANTITY
32-63 Unused
17 TraderInstruction.FilterGasContains Filter Operation.
User can append this OP after any TraderInstruction.Write* OP to filter writer's output.
This OP's effective scope is the last Write* OP and before the next Write* OP.
Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.
This Filter narrows Write* OP's output to only matching Gases.
0-31 0-7 Op_code
8-39 GAS_TYPES_BITFLAG
See Gas_Type_BitFlags.
40-63 Unused
18 TraderInstruction.FilterGasNotContains Filter Operation.
User can append this OP after any TraderInstruction.Write* OP to filter writer's output.
This OP's effective scope is the last Write* OP and before the next Write* OP.
Multple filter OP can be written to the addresses after a Write* OP to group as a "AND" condition.
This Filter narrows Write* OP's output to only not matching Gases.
0-31 0-7 Op_code
8-39 GAS_TYPES_BITFLAG
See Gas_Type_BitFlags.
40-63 Unused

Metadata Payloads

Since Metadata has 3 addresses, so it's referenced here as a 24 bytes(192 bits) payload.

BitsOffset 191-168 167-136 135-128 127-96 95-88 87-80 79-72 71-64 63-40 39-16 15-8 7-0
Contents N/A ContactTypeID Constant: 2. N/A Contacted
0: false
1: true
Contact Tier:
0: Close
1: Medium
2: Far
Shuttle Type:
0:None
1: Small(3x3)
2: SmallGas(3x3)
3: Medium(5x5)
4: MediumGas(5x5)
5: Large(6x6)
6: LargeGas(6x6)
7: MediumPlane(7x7, runway:15)
8: LargePlane(9x9, runway:20)
Constant: 3. N/A LifeTime WattsToResolve Constant: 4.

Buy/Sell Payloads

Buy/Sell Payloads are 1 address each, so it's referenced here as a 8 bytes(64 bit) payload.

BitsOffset 63-48 47-16 15-8 7-0
Contents N/A PrefabHash/GasTypeBitFlag Quantity
This value is truncated so it won't be greater than 255 although the trader's Request/Stock is more than 255.
OpCode
Which OpCode requested this data.

Buy/Sell Child Payloads

Buy/Sell Payloads are 1 address each, so it's referenced here as a 8 bytes(64 bit) payload.

BitsOffset 63-48 47-16 15-8 7-0
Contents N/A PrefabHash/GasTypeBitFlag ChildCount
Counts how many instances of this item appeared as a child item.
Beware it's not quantity, it's just a prefab type count.
OpCode
If this data is requested by TraderInstruction.WriteTraderBuyData, then it's value is the OpCode of TraderInstruction.TraderBuyThingChildData.
If this data is requested by TraderInstruction.WriteTraderSellData, then it's value is the OpCode of TraderInstruction.TraderSellThingChildData.

Gas Type BitFlags

If the BitFlag equals 0, it's undefined. If the bit at specific offset is 1, it means the gas contains that component.

BitsOffset 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Contents PollutedWater LiquidHydrogen Hydrogen LiquidNitrousOxide LiquidPollutant LiquidCarbonDioxide Steam LiquidVolatiles LiquidOxygen LiquidNitrogen NitrousOxide Water Pollutant Volatiles CarbonDioxide Nitrogen Oxygen

Special Gas:

  1. Bit 0,1 both set to 1, which is Air.
  2. Bit 0,3 both set to 1, is which Fuel.