Crabsoft Posted December 11, 2025 Report Posted December 11, 2025 (edited) Hey guys, I recently learned about Archipelago Multiworld Randomizer (https://archipelago.gg/) and decided Vintage Story needed to be supported. I've got the basic skeleton of a working apworld and client. I don't know C# or Python very well and haven't been playing Vintage Story for very long. I need more experienced eyes and brains! A randomizer is a tool for a game that swaps around items, locations, enemies, etc, to provide extended replay value. A multiworld randomizer combines the item pools of multiple games and spreads them throughout all of them. So, if you're playing Zelda and I'm playing Vintage story, I might buy your Bow from a Trader. That Bow then gets sent over the network and you receive it in your game. Similarly, you might send me Flax Seeds when you defeat Bongo Bongo. As this is a connection between external software, the VS client, and the VS server, it does take a little brain power to setup. The .apworld is included in the mod's zip file. If you've got suggestions or bugs, please do let them be known. I'll be posting the source code to GitHub and linking it on the mod page, just as soon as I untangle the mess I've made. https://mods.vintagestory.at/show/mod/37027 **Edit**: https://github.com/theluckycrab/vintagestory_archipelago Edited December 11, 2025 by Crabsoft added link to source 1
Attac_Mage Posted December 12, 2025 Report Posted December 12, 2025 I've been looking into this myself and I'm thinking about making an implementation as well. Don't Starve seems like a decent reference if you need any ideas, and there's also the Archi discord that has a forum for indev setups that has a vintage story thread active.
Crabsoft Posted December 12, 2025 Author Report Posted December 12, 2025 21 minutes ago, Attac_Mage said: I've been looking into this myself and I'm thinking about making an implementation as well. Don't Starve seems like a decent reference if you need any ideas, and there's also the Archi discord that has a forum for indev setups that has a vintage story thread active. I would strongly encourage you to pull the trigger. While most things in 2025 are a huge pain in the butt to work with, VS and Archipelago both have sane setups that are actively pleasant. This took me about a week. I started with 0 knowledge or experience with Archipelago or VS Modding. I did have some game dev background but nothing serious. 3
VoidSpawned Posted December 18, 2025 Report Posted December 18, 2025 I haven't had as much time as I wanted too but I myself was also preparing to make an implementation down the line, but now that an implementation exist, maybe collaboration could be the path forward. I won't have as much time still till at least next year, but maybe plans could be made for this if it is wanted?
Crabsoft Posted December 18, 2025 Author Report Posted December 18, 2025 (edited) Sure thing. It was mostly a learning project for me, so I'm sure you could do much better much faster. So far, there seems to be 0 interest here or on reddit. I suspect that if we see any interest, it will spike with a big YouTuber/Discord Archipelago session. The source is up, so feel free to take a look. I'll summarize some technical details below. https://github.com/ArchipelagoMW/Archipelago/tree/main/worlds/apquest - the best starting place for the Archipelago side https://archipelagomw.github.io/Archipelago.MultiClient.Net/index.html - this is the C# library that bridges Archipelago and Vintage Story https://github.com/theluckycrab/vintagestory_archipelago/tree/master - the source for both the apworld and mod code https://youtu.be/_ZM6H4KabU0 - a rambly video I made explaining, this was before the changelog for 2.0.0 Basically, we're just using the MultiClient.Net library to talk to AP and setting up https://apidocs.vintagestory.at/api/Vintagestory.API.Common.INetworkAPI.html?q=Channel to handle VS Client <-> VS Server communication. Hooking into events proved to be a bit frustrating, so every so many ticks we search the player's inventory and figure out if they have either foreign AP items or achievement items and act appropriately. Technical improvements that need to be made would include saving/loading configs less, figuring out a workaround for the non-working session disconnect, a better method for setting ip/port/connecting, and breaking up the item checks to do less at once. Features to be added would be things like hints and deathlink. Edited December 18, 2025 by Crabsoft
VoidSpawned Posted December 18, 2025 Report Posted December 18, 2025 (edited) I'll definitely look into it cause i'm currently doing a test run with an idle game to experience how it play. I did notice some thing when I first tried with just an only vintage story test. if I don't input the server adress, port and do .aplogin it force stops the world cause too many errors were thrown. according to the mod page I don't see a slot name command so I manually changed the APName value in the config if i make the victory condition steel in the yaml the multiworld config still says Iron the first point could just be windows only error considering you said you had only tested with linux For the second point maybe a command should be added to input the Archipelago slot name for now considering a gui window like the character creator could be made to input the archipelago info into so you only try to make the connection when you press a connect button. I am still busy with doing some small tests but if I find anything else or get any ideas I'll send it here. Edited December 18, 2025 by VoidSpawned
VoidSpawned Posted December 18, 2025 Report Posted December 18, 2025 (edited) welp I noticed I play too much modded cause I totally thought the steel anvil was implemented already and when you said in your video that i'ts not possible it made me look to the wiki to see if that was true Edited December 18, 2025 by VoidSpawned 1
jesse robertson Posted December 18, 2025 Report Posted December 18, 2025 hey crabsoft, we have a room in the archipelago server with void and attic in it 1
Torvosaure Posted Sunday at 10:48 AM Report Posted Sunday at 10:48 AM I think the price for trader is to much? so maybe an options to adjust it in the mod? There is also a missing " " between the item given et "should" in the tchat when receiving an item. And maybe adding an option to "lock" crafts and unlock them trough archipelago item (progressive item). Like maybe unlocking clay forming, coal creation and else? (so this may need logic to be sure that it's not locked behind something impossible to obtain in vintage story itself) Cause in my game right now, I'm just playing the game normally cause some friend is not playing right and many of my items is blocked behind it.
Recommended Posts