From e6a4f893ea46f7baab71c99272b9c26e8d5c374d Mon Sep 17 00:00:00 2001 From: Rob B Date: Sun, 19 Jan 2025 17:09:06 -0500 Subject: [PATCH 1/4] Update Setup guide and info page --- worlds/satisfactory/docs/en_Satisfactory.md | 49 ++++++++++----------- worlds/satisfactory/docs/setup_en.md | 37 ++++++++-------- 2 files changed, 42 insertions(+), 44 deletions(-) diff --git a/worlds/satisfactory/docs/en_Satisfactory.md b/worlds/satisfactory/docs/en_Satisfactory.md index b2b96f1654..de128273e8 100644 --- a/worlds/satisfactory/docs/en_Satisfactory.md +++ b/worlds/satisfactory/docs/en_Satisfactory.md @@ -15,29 +15,22 @@ contains all the options you need to configure and export a config file. In Satisfactory, the HUB Milestones and MAM Research Nodes are shuffled, causing technologies to be obtained in a non-standard order. -The costs of unlocking these technologies are also shuffled. +Hard Drive scanning results also contain Archipelago items, +meaning alternate recipes could now become part of your required progression path. There are also a few new purchases in the AWESOME Shop. -An alternate recipe you've never used before may end up required to progress, for example. - - ## What is the goal of Satisfactory? The player can choose from a number of goals using their YAML settings: - Complete a certain [Space Elevator](https://satisfactory.wiki.gg/wiki/Space_Elevator) tier - - Supply items to the [AWESOME Sink](https://satisfactory.wiki.gg/wiki/AWESOME_Sink) totalling a configurable amount of points to finish. -In the current implementation, selecting multiple goals -requires completion of any one goal to complete the slot. +You can select whether completing your slot requires one or all goals to be met. ## What Satisfactory items can appear in other players' worlds? -Satisfactory's technologies are removed from the HUB and MAM and placed into other players' worlds. +Satisfactory's technologies are removed from the HUB, MAM, and Hard Drives and placed into other players' worlds. When those technologies are found, they are sent back to Satisfactory along with, optionally, free samples of those technologies. @@ -64,6 +57,14 @@ A resource bundle is a package of items received as a check from another world. They must be collected by constructing an Archipelago Portal. For example, `Bundle: Jetpack` would contain a single jetpack. +## What is a Trap? + +Traps are items intended to disrupt the player that replace non-progression filler items. +Satisfactory's traps currently include spawning disruptive creatures or sending inconvenient items to your Archipelago Portal. +The player settings page gives full control over which traps are enabled, +how many traps replace filler items, +as well as some pre-selected groups of themed traps. + ## What does another world's item look like in Satisfactory? In Satisfactory, items which need to be sent to other worlds appear in the HUB and MAM as info cards @@ -91,8 +92,8 @@ In Satisfactory, if enabled in the player settings, all base-game Power Storage They will deposit surplus produced energy and draw energy from the shared storage when needed. Just like the base game, there is no limit to the discharge/draw rate of one building, -and each Power Storage provides TODO MW of charging throughput. -The shared storage has unlimited capacity, but TODO% of energy is lost during depositing. +and each Power Storage provides 100 MW of charging throughput. +The shared storage has unlimited capacity, and no energy is lost during depositing. The amount of energy currently in the shared storage is displayed in the Archipelago client and appears in the Power Storage building UI. @@ -110,13 +111,6 @@ You can build multiple portals or use faster belts to increase their bandwith. However, they currently have no filtering capabilities, so you must deal with this problem when handling their output items. -## What is a Trap? - -You can optionally enable that some Traps be mixed into the item pool. -Traps are items that will instantly trigger some sort of surprise on the player when received. -Their severity varies from annoyance to killing the player. -A few traps are included in the default options. - ## Where do I run Archipelago commands? You can use the game's build-in chat menu. @@ -130,14 +124,17 @@ You may wish to launch the Archipelago Text Client and use it to run commands in ## Multiplayer and Dedicated Servers -It is possible to host a Satisfactory Archipelago Slot using the game's built in host-and-play multiplayer, allowing other Satisfactory players to join in constructing your factory. -This experience is wonderfull - but there are few things not yet properly working for multiplayer -* Death-links do not kill clients -* Starting inventory for clients is missing +It is possible to host a Satisfactory Archipelago Slot using the game's built in multiplayer, +allowing other Satisfactory players to join in constructing your factory. +This experience is wonderful - but there are few things not yet properly working for multiplayer: + +- Death-links do not kill clients +- Starting inventory for clients is missing + Remember that client players must have the same mods installed as the host player to join, however, they do not need to configure Archipelago connection settings. -Dedicated server support is only working for windows at the moment. +Dedicated server support is only working for Windows at the moment. ## Additional Mods @@ -167,7 +164,7 @@ The following mods are known to work with Archipelago: -- [The FICSIT Information Tool](https://ficsit.app/mod/TFIT) - View how many Sink Points items are worth and how points-profitable recipes are. Helpful for the AWESOME Points goal. +- [TFIT - FICSIT Information Tool](https://ficsit.app/mod/TFIT) - View how many Sink Points items are worth and how points-profitable recipes are. Helpful for the AWESOME Points goal. - [Faster Manual Crafting Redux](https://ficsit.app/mod/FasterManualCraftingRedux) - Reduce the early game manual crafting grind with a manual crafting speed that ramps up as you craft larger batches at once. diff --git a/worlds/satisfactory/docs/setup_en.md b/worlds/satisfactory/docs/setup_en.md index 0883e14260..b83ef94ef4 100644 --- a/worlds/satisfactory/docs/setup_en.md +++ b/worlds/satisfactory/docs/setup_en.md @@ -49,8 +49,11 @@ YAML Validator page: [Yaml Validation Page](/mysterycheck) ### Starting Inventory -TODO talk about how you can use the Plando? Weighted Options? Manual yaml editing? page to edit your starting inventory, -giving yourself specific technologies (ex. splitters/mergers) and item bundles (ex. start with extra ) out of the gates. +The Player Settings page provides a few options for controlling what materials you start with +and when certain key technologies are unlocked. + +Advanced users can use Plando, Weighted Options, and manual yaml editing to further configure the starting inventory. +If you don't wish to use these techniques, consider using a Satisfactory's Advanced Game Settings to spawn the items you desire. ### Advanced Configuration @@ -70,28 +73,26 @@ to futher customize their experience. ### Defining Some Terms In Archipelago, multiple Satisfactory worlds may be played simultaneously. -Each of these worlds must be hosted by a Satisfactory game client, each of which is connected to the Archipelago Server. - - +Each of these worlds must be hosted by a Satisfactory Server which is connected to the Archipelago Server via the Archipelago mod. This guide uses the following terms to refer to the software: - **Archipelago Server** - The central Archipelago server, which connects all games to each other. - - -- **Satisfactory Client** - The Satisfactory instance which will be used to host, and play, the game. +- **Satisfactory Server** - The Satisfactory instance (game client or dedicated server) which will be used to host the game. + It must be supplied with the Archipelago Server connection details. + Any number of Satisfactory Clients may connect to this server. +- **Satisfactory Client** - The Satisfactory instance (game client) with which additional players can use to connect to the same Satisfactory world. + They must also have the Archipelago mod installed, but require no configuration. It is important to note that the Satisfactory Archipelago mod -is not yet compatible with dedicated servers or in-game multiplayer. -Each Satisfactory world must be hosted and played by an individual player. +is not yet compatible with Linux dedicated servers - only Windows dedicated servers are supported. ### Installing Satisfactory Purchase and install Satisfactory via one the sources linked [above](#required-software). Launch the game at least once to ensure that the Mod Manager can detect the game's install location. -Make sure that you are running the correct branch of the game (Early Access or Experimental) that Archipelago supports. +Make sure that you are running the correct branch of the game (Release or Experimental) that Archipelago supports. Learn how to switch branches here: [Satisfactory Modding Documentation FAQ: Switching Branches](https://docs.ficsit.app/satisfactory-modding/latest/faq.html#_how_do_i_get_the_experimental_or_early_access_branch_of_the_game) @@ -116,7 +117,9 @@ Once on the mod page, click the "Install" link in the Latest Versions card. The Mod Manager will install all required dependency mods for you with no additional action required. -As soon as you have the relevant mods installed, you do not need to launch the game through the Mod Manager - desktop shortcuts, Steam, Epic. etc. will all launch the game with mods still loaded. +As soon as you have the relevant mods installed, +you do not need to launch the game through the Mod Manager - +desktop shortcuts, Steam, Epic. etc. will all launch the game with mods still loaded. ### Installing Additional Mods @@ -142,7 +145,7 @@ You can hover over the fields in the menu for more information and example value - **Debug Mode**: Don't enable it unless the developers ask you to when reporting problems. - **Force override settings in save**: Leave false for now. It is useful when the server changed ports. Read its tooltip for more info. -Note that the Satisfactory Client does _not_ need a copy of your Archipelago config file. +Note that the Satisfactory Server/Client does _not_ need a copy of your Archipelago config file. The mod communicates with the Archipelago Server, which already has your config file, to generate the required content at runtime. @@ -173,8 +176,6 @@ TODO implement filter_item_sends and bridge_chat_out mentioned in the Factorio g ## Troubleshooting -TODO what is the scope of this section? How much do we help with vs. sending people somewhere else - - If you are having trouble connecting to the Archipelago server, make sure you have entered the correct server address and port. The server port may have changed if the room went to sleep. @@ -184,10 +185,10 @@ TODO what is the scope of this section? How much do we help with vs. sending peo - If you encounter a game crash, please report it to us via the [Satisfactory Modding Discord](https://discord.ficsit.app). Please include the following information: - What you were doing when the crash occurred. - + - If you were a Satisfactory multiplayer host or client, and if you were playing on a dedicated server. - Use the Mod Manager to generate a debug zip and attach that file. [Satisfactory Modding Documentation FAQ: Generating a debug zip](https://docs.ficsit.app/satisfactory-modding/latest/faq.html#_where_can_i_find_the_games_log_files) - - Attach your Archipelago config file to your report. + - Attach your Archipelago config file and spoiler to your report. ## Additional Resources From fecc5855c1b44f32ac32d56be0001ef14a8a2fc8 Mon Sep 17 00:00:00 2001 From: Rob B Date: Mon, 20 Jan 2025 10:12:10 -0500 Subject: [PATCH 2/4] Add links to Gifting and Energy Link compatible games. Add info on Hard Drive behavior --- worlds/satisfactory/docs/en_Satisfactory.md | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/worlds/satisfactory/docs/en_Satisfactory.md b/worlds/satisfactory/docs/en_Satisfactory.md index de128273e8..b4891f04eb 100644 --- a/worlds/satisfactory/docs/en_Satisfactory.md +++ b/worlds/satisfactory/docs/en_Satisfactory.md @@ -97,6 +97,9 @@ The shared storage has unlimited capacity, and no energy is lost during depositi The amount of energy currently in the shared storage is displayed in the Archipelago client and appears in the Power Storage building UI. +You can find a list of Energy Link compatible games on the +[Archipelago Discord](https://discord.com/channels/731205301247803413/1010929117748809758/1174728119568048130). + ## What is the Archipelago Portal? The Archipelago Portal is a building that serves multiple purposes: @@ -104,13 +107,28 @@ The Archipelago Portal is a building that serves multiple purposes: - Collecting received "Resource Bundle"-type items. - Transfering items within your Satisfactory world - Transfering items between multiple Satisfactory worlds -- Gifting items to other games that support the Archipelago Gifting system. +- Gifting items to other games that support the **Archipelago Gifting** system. The building requires power to operate. You can build multiple portals or use faster belts to increase their bandwith. However, they currently have no filtering capabilities, so you must deal with this problem when handling their output items. +You can find a list of Gifting compatible games on the +[Archipelago Discord](https://discord.com/channels/731205301247803413/1134306496042258482/1247617772993908891). + +## How do Hard Drives work? + +All Hard Drive contents (alternate recipes) have been moved into the normal Archipelago progression. +The scan time has been reduced from 10 minutes to 3 seconds. +Researching a Hard Drive instead contains a random Archipelago item. +The "Hard Drive Progression Items" option controls how many hard drives contain progression items, +the rest are filler. + +Unlike the base game, Archipelago hard drive results have no hard progression requirements. +The random contents selection system prefers to pick items earlier in progression, +but keeping unselected Hard Drives in the Hard Drive Library will force later progression items to be presented. + ## Where do I run Archipelago commands? You can use the game's build-in chat menu. From 9f30c8f9161e303906b94e18f9dad8ffc0d6af00 Mon Sep 17 00:00:00 2001 From: Rob B Date: Mon, 20 Jan 2025 17:51:15 -0500 Subject: [PATCH 3/4] Fix typos --- worlds/satisfactory/Locations.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/worlds/satisfactory/Locations.py b/worlds/satisfactory/Locations.py index def02afa7e..e77c4db47f 100644 --- a/worlds/satisfactory/Locations.py +++ b/worlds/satisfactory/Locations.py @@ -146,7 +146,7 @@ class DropPod(LocationData): locationId: int, tier: int, can_hold_progression: bool): # drop pod locations are unlocked by hard drives, there is currently no direct mapping between location and hard drive - # we currently do not know how many hdd require gass or radioactive protection + # we currently do not know how many hdd require gas or radioactive protection # coordinates are for us to reference them, there is no real link between coordinate and check def get_region(gassed: Optional[bool], radioactive: Optional[bool]) -> str: #if radioactive: @@ -308,7 +308,7 @@ class Locations(): ] def get_locations_for_data_package(self) -> Dict[str, int]: - "Must include all posiable location names and thier id's" + "Must include all possible location names and their id's" location_table = self.get_base_location_table() location_table.extend(self.get_hub_locations()) From 79f2789ffdbdb07f0ff7051ad34e3152db9cd0bd Mon Sep 17 00:00:00 2001 From: Rob B Date: Mon, 20 Jan 2025 17:52:39 -0500 Subject: [PATCH 4/4] Update hard drive behavior description --- worlds/satisfactory/docs/en_Satisfactory.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/worlds/satisfactory/docs/en_Satisfactory.md b/worlds/satisfactory/docs/en_Satisfactory.md index b4891f04eb..94686f7fad 100644 --- a/worlds/satisfactory/docs/en_Satisfactory.md +++ b/worlds/satisfactory/docs/en_Satisfactory.md @@ -119,16 +119,19 @@ You can find a list of Gifting compatible games on the ## How do Hard Drives work? -All Hard Drive contents (alternate recipes) have been moved into the normal Archipelago progression. -The scan time has been reduced from 10 minutes to 3 seconds. -Researching a Hard Drive instead contains a random Archipelago item. -The "Hard Drive Progression Items" option controls how many hard drives contain progression items, -the rest are filler. +All base game Hard Drive contents (alternate recipes) have been moved into the normal Archipelago pool. +Instead, Hard Drives can contain Archipelago items from a dedicated "Hard Drive" pool. +Scanning a drive presents a choice between 2 items from the pool, +and the scan time has been reduced from 10 minutes to 3 seconds. -Unlike the base game, Archipelago hard drive results have no hard progression requirements. +Unlike the base game, Archipelago hard drive results have no hard progression requirements, +other than access to the MAM itself. The random contents selection system prefers to pick items earlier in progression, but keeping unselected Hard Drives in the Hard Drive Library will force later progression items to be presented. +The "Hard Drive Progression Items" option controls how many Hard Drives contain progression items, +the rest are filler or useful. + ## Where do I run Archipelago commands? You can use the game's build-in chat menu.