Subnautica: 2.0 compatibility (#1329)
This commit is contained in:
@@ -41,11 +41,11 @@ item_table: Dict[int, ItemDict] = {
|
||||
35007: {'classification': ItemClassification.filler,
|
||||
'count': 1,
|
||||
'name': 'Stillsuit',
|
||||
'tech_type': 'Stillsuit'},
|
||||
'tech_type': 'WaterFiltrationSuitFragment'},
|
||||
35008: {'classification': ItemClassification.progression,
|
||||
'count': 2,
|
||||
'name': 'Alien Containment Fragment',
|
||||
'tech_type': 'BaseWaterParkFragment'},
|
||||
'count': 1,
|
||||
'name': 'Alien Containment',
|
||||
'tech_type': 'BaseWaterPark'},
|
||||
35009: {'classification': ItemClassification.useful,
|
||||
'count': 1,
|
||||
'name': 'Creature Decoy',
|
||||
@@ -91,15 +91,15 @@ item_table: Dict[int, ItemDict] = {
|
||||
'name': 'Bioreactor Fragment',
|
||||
'tech_type': 'BaseBioReactorFragment'},
|
||||
35020: {'classification': ItemClassification.progression,
|
||||
'count': 3,
|
||||
'count': 4,
|
||||
'name': 'Cyclops Bridge Fragment',
|
||||
'tech_type': 'CyclopsBridgeFragment'},
|
||||
35021: {'classification': ItemClassification.progression,
|
||||
'count': 3,
|
||||
'count': 4,
|
||||
'name': 'Cyclops Engine Fragment',
|
||||
'tech_type': 'CyclopsEngineFragment'},
|
||||
35022: {'classification': ItemClassification.progression,
|
||||
'count': 3,
|
||||
'count': 4,
|
||||
'name': 'Cyclops Hull Fragment',
|
||||
'tech_type': 'CyclopsHullFragment'},
|
||||
35023: {'classification': ItemClassification.filler,
|
||||
@@ -111,11 +111,11 @@ item_table: Dict[int, ItemDict] = {
|
||||
'name': 'Laser Cutter Fragment',
|
||||
'tech_type': 'LaserCutterFragment'},
|
||||
35025: {'classification': ItemClassification.filler,
|
||||
'count': 1,
|
||||
'count': 2,
|
||||
'name': 'Light Stick Fragment',
|
||||
'tech_type': 'TechlightFragment'},
|
||||
35026: {'classification': ItemClassification.progression,
|
||||
'count': 4,
|
||||
'count': 5,
|
||||
'name': 'Mobile Vehicle Bay Fragment',
|
||||
'tech_type': 'ConstructorFragment'},
|
||||
35027: {'classification': ItemClassification.progression,
|
||||
@@ -139,7 +139,7 @@ item_table: Dict[int, ItemDict] = {
|
||||
'name': 'Power Transmitter Fragment',
|
||||
'tech_type': 'PowerTransmitterFragment'},
|
||||
35032: {'classification': ItemClassification.progression,
|
||||
'count': 5,
|
||||
'count': 6,
|
||||
'name': 'Prawn Suit Fragment',
|
||||
'tech_type': 'ExosuitFragment'},
|
||||
35033: {'classification': ItemClassification.useful,
|
||||
@@ -163,7 +163,7 @@ item_table: Dict[int, ItemDict] = {
|
||||
'name': 'Scanner Room Fragment',
|
||||
'tech_type': 'BaseMapRoomFragment'},
|
||||
35038: {'classification': ItemClassification.progression,
|
||||
'count': 4,
|
||||
'count': 5,
|
||||
'name': 'Seamoth Fragment',
|
||||
'tech_type': 'SeamothFragment'},
|
||||
35039: {'classification': ItemClassification.progression,
|
||||
@@ -196,8 +196,8 @@ item_table: Dict[int, ItemDict] = {
|
||||
'tech_type': 'PrecursorIonPowerCell'},
|
||||
35046: {'classification': ItemClassification.filler,
|
||||
'count': 2,
|
||||
'name': 'Exterior Growbed Fragment',
|
||||
'tech_type': 'FarmingTrayFragment'},
|
||||
'name': 'Exterior Growbed',
|
||||
'tech_type': 'FarmingTray'},
|
||||
35047: {'classification': ItemClassification.filler,
|
||||
'count': 1,
|
||||
'name': 'Picture Frame',
|
||||
@@ -219,23 +219,23 @@ item_table: Dict[int, ItemDict] = {
|
||||
'name': 'Plant Shelf',
|
||||
'tech_type': 'PlanterShelfFragment'},
|
||||
35052: {'classification': ItemClassification.filler,
|
||||
'count': 2,
|
||||
'name': 'Observatory Fragment',
|
||||
'tech_type': 'BaseObservatoryFragment'},
|
||||
'count': 1,
|
||||
'name': 'Observatory',
|
||||
'tech_type': 'BaseObservatory'},
|
||||
35053: {'classification': ItemClassification.progression,
|
||||
'count': 2,
|
||||
'name': 'Multipurpose Room',
|
||||
'tech_type': 'BaseRoom'},
|
||||
35054: {'classification': ItemClassification.useful,
|
||||
'count': 2,
|
||||
'name': 'Bulkhead Fragment',
|
||||
'tech_type': 'BaseBulkheadFragment'},
|
||||
'count': 1,
|
||||
'name': 'Bulkhead',
|
||||
'tech_type': 'BaseBulkhead'},
|
||||
35055: {'classification': ItemClassification.filler,
|
||||
'count': 1,
|
||||
'name': 'Spotlight',
|
||||
'tech_type': 'Spotlight'},
|
||||
35056: {'classification': ItemClassification.filler,
|
||||
'count': 2,
|
||||
'count': 1,
|
||||
'name': 'Desk',
|
||||
'tech_type': 'StarshipDesk'},
|
||||
35057: {'classification': ItemClassification.filler,
|
||||
@@ -251,7 +251,7 @@ item_table: Dict[int, ItemDict] = {
|
||||
'name': 'Command Chair',
|
||||
'tech_type': 'StarshipChair3'},
|
||||
35060: {'classification': ItemClassification.filler,
|
||||
'count': 2,
|
||||
'count': 1,
|
||||
'name': 'Counter',
|
||||
'tech_type': 'LabCounter'},
|
||||
35061: {'classification': ItemClassification.filler,
|
||||
@@ -267,11 +267,11 @@ item_table: Dict[int, ItemDict] = {
|
||||
'name': 'Quilted Double Bed',
|
||||
'tech_type': 'Bed2'},
|
||||
35064: {'classification': ItemClassification.filler,
|
||||
'count': 2,
|
||||
'count': 1,
|
||||
'name': 'Coffee Vending Machine',
|
||||
'tech_type': 'CoffeeVendingMachine'},
|
||||
35065: {'classification': ItemClassification.filler,
|
||||
'count': 2,
|
||||
'count': 1,
|
||||
'name': 'Trash Can',
|
||||
'tech_type': 'Trashcans'},
|
||||
35066: {'classification': ItemClassification.filler,
|
||||
@@ -338,6 +338,28 @@ item_table: Dict[int, ItemDict] = {
|
||||
'count': 1,
|
||||
'name': 'Ultra High Capacity Tank',
|
||||
'tech_type': 'HighCapacityTank'},
|
||||
# these currently unlock through some special sauce in Subnautica, unlike any established other
|
||||
# keeping here for later
|
||||
35082: {'classification': ItemClassification.progression,
|
||||
'count': 0,
|
||||
'name': 'Large Room',
|
||||
'tech_type': 'BaseLargeRoom'},
|
||||
35083: {'classification': ItemClassification.filler,
|
||||
'count': 0,
|
||||
'name': 'Large Room Glass Dome',
|
||||
'tech_type': 'BaseLargeGlassDome'},
|
||||
35084: {'classification': ItemClassification.filler,
|
||||
'count': 0,
|
||||
'name': 'Multipurpose Room Glass Dome',
|
||||
'tech_type': 'BaseGlassDome'},
|
||||
35085: {'classification': ItemClassification.filler,
|
||||
'count': 0,
|
||||
'name': 'Partition',
|
||||
'tech_type': 'BasePartition'},
|
||||
35086: {'classification': ItemClassification.filler,
|
||||
'count': 0,
|
||||
'name': 'Partition Door',
|
||||
'tech_type': 'BasePartitionDoor'},
|
||||
}
|
||||
|
||||
advancement_item_names: Set[str] = set()
|
||||
@@ -351,6 +373,9 @@ for item_id, item_data in item_table.items():
|
||||
non_advancement_item_names.add(item_name)
|
||||
|
||||
if False: # turn to True to export for Subnautica mod
|
||||
from .Locations import location_table
|
||||
itemcount = sum(item_data["count"] for item_data in item_table.values())
|
||||
assert itemcount == len(location_table), f"{itemcount} != {len(location_table)}"
|
||||
payload = {item_id: item_data["tech_type"] for item_id, item_data in item_table.items()}
|
||||
import json
|
||||
|
||||
|
||||
Reference in New Issue
Block a user