add inventory resetting on server connect, properly handle getting new items from locations, integrate some of archi into new rando ui stuff

For the most part, solo archipelago runs seem to work fine now using the original TP apworld, but im sure there are plenty of weird issues still that need to be handled.
This commit is contained in:
CraftyBoss
2026-06-19 17:07:42 -07:00
parent 7537f1c4a8
commit 6366ab61d1
24 changed files with 894 additions and 175 deletions
+12 -2
View File
@@ -20,6 +20,8 @@
#include <numeric>
#include <ranges>
#include "dusk/archipelago/archipelago_context.hpp"
namespace dusk {
@@ -254,8 +256,16 @@ namespace dusk {
auto trackerHash = trackerRando->GetConfig().GetHash(false);
// If no hash, or seeds switched, try to create tracker world from currently active seed
if (trackerHash.empty() || (trackerHash != contextHash && !contextHash.empty())) {
*trackerRando = randomizer::Randomizer(ui::GetRandomizerPath());
trackerRando->GenerateTrackerWorld();
if (archi::ArchipelagoContext::IsConnected()) {
std::filesystem::path workingDir;
archi::ArchipelagoContext::GetSeedDirectoryPath(workingDir);
*trackerRando = randomizer::Randomizer(workingDir);
trackerRando->GenerateTrackerWorld(false);
}else {
*trackerRando = randomizer::Randomizer(ui::GetRandomizerPath());
trackerRando->GenerateTrackerWorld();
}
}
if (randomizer_IsActive()) {