Mods / Lost and Found
Author: Centur1on
Side: Server
Created: Nov 2nd at 9:57 AM
Last modified: 5 days ago
Downloads: 1090
Follow Unfollow 120
Latest release (for Vintage Story 1.21.5, potentially outdated):
lostandfound_1.1.0.zip
1-click install
Lost and Found adds a new feature to the game - all items dropped on the ground no longer just despawn, upon despawning they get added to a global pool of items that can be panned out by players or dug up during terraforming!
That means, that item lost by one player can be found by other players.
Someone can find someone's old equipment and use it, or even get a written parchment or a book and read it!
There is a toggle between global and local modes of Lost and Found mod working.
When global mode is used, lost items can be found anywhere in the world.
When local mode is used, lost items can only be found in certain amount of chunks around the place they were lost in.
Check the mod config for more information (see the spoiler below).
Mod Config is server-side.
Config file is created when player creates a world and enters it with mod LostAndFound on.
Mod Config can be found at %appdata%/VintagestoryData/ModConfig/LostAndFound.json
Default contents of LostAndFound.json (for manual creation of config file or restoring original values):
{
"useNearbyChunksOnPanning": false,
"radiusNearbyChunksOnPanning": 8,
"useNearbyChunksOnBreaking": true,
"radiusNearbyChunksOnBreaking": 8,
"chanceOfDropOnPanning": 0.05,
"chanceOfDropOnBreaking": 0.005,
"allowVanillaDropOnPanning": true,
"allowLostItemDropOnPanning": true,
"allowLostItemDropOnBreaking": true,
"blacklistLostItems": [
"game:soil-verylow-none" // Example, look below for a table of blacklist items/blocks that you might want to add
],
"whitelistBlocksToBreakForLostItems": [
"game:soil-verylow-none" // Example, look below for a table of whitelist blocks that you might want to add
],
"allowBlacklistLostItemToBeFound": true,
"maxStackSizeToDrop": 1,
"allowItemsWithPerishTimeToBeAddedToItemPoolAndToBeFound": false,
"deleteBlacklistedItemsFromSaveFile": false
}
Comments:
useNearbyChunksOnPanning - use local or global mode on panning. If true, players can only pan out lost items in radiusNearbyChunksOnPanning around the chunk they are currently in.
radiusNearbyChunksOnPanning - amount of chunks from the chunk the player is currently in. It is used when local mode on panning is on.
useNearbyChunksOnBreaking - use local or global mode on block breaking. If true, players can only find lost items via block breaking in radiusNearbyChunksOnBreaking around the chunk they are currently in.
radiusNearbyChunksOnBreaking - amount of chunks from the chunk the player is currently in. It is used when local mode on block breaking is on.
chanceOfDropOnPanning - chance of a lost item drop on panning.
chanceOfDropOnBreaking - chance of a lost item drop on block breaking.
allowVanillaDropOnPanning - allow the game to drop it's own item as well as the lost item. If true, if a lost item was found by a player, there is an ingame chance that an item from the game's pool will also spawn in as in vanilla.
allowLostItemDropOnPanning - allow drop of the lost item on panning. If you don't want lost items to drop on panning, set to false. If false, vanilla code will not be affected by allowVanillaDropOnPanning.
allowLostItemDropOnBreaking - allow drop of the lost item on block breaking. If you don't want lost items to drop on block breaking, set to false.
blacklistLostItems - an array of items' code domain:path. Items that are present here will not be added to the global hidden pool of items but can still be found by players if they were in the save file before you added them to the blacklistLostItems.
whitelistBlocksToBreakForLostItems - an array of blocks' code domain:path. Blocks that are present here will be used for the block breaking to work.
allowBlacklistLostItemToBeFound - allow getting of the lost item without checking if it's blacklisted. If set to false, it will not drop this item. Also if there were lost items saved in the save file, and then you add them to blacklist and set this parameter to false, saved lost items will not be deleted from file (not in the case of deleteBlacklistedItemsFromSaveFile being true). Could be useful if you want to allow getting of a certain saved item after some time, like allow drop of copper tools in copper age and so on.
maxStackSizeToDrop - maximum stack size of lost item dropped. Chances of dropping certain amount are equal to 1/maxStackSizeToDrop.
allowItemsWithPerishTimeToBeAddedToItemPoolAndToBeFound - allow perishable items to be added to the item pool and to be found. If set to false, perishable items that are already present in the save file, will not be deleted from save file (not in the case of deleteBlacklistedItemsFromSaveFile being true).
deleteBlacklistedItemsFromSaveFile - allow deletion of all the blacklisted items from the save file when the next world save happens (or /autosavenow called). If allowItemsWithPerishTimeToBeAddedToItemPoolAndToBeFound is set to false, perishable items will also be deleted from save file.
Here are the codes for items/blocks that you might want to insert in blacklistLostItems.
This list contains codes for: chiseled blocks, stick, soil, sand, gravel, stone, fruits, mushrooms.
NOTE: As of update v1.1.0 you can use wildcards (*) to add all the items of the type to the list, for example, if you want to add all the codes for soil, simply add: "game:soil-*" instead of all the possible codes.
"game:chiseledblock",
"game:stick",
"game:soil-verylow-none",
"game:soil-low-none",
"game:soil-medium-none",
"game:soil-compost-none",
"game:soil-verylow-verysparse",
"game:soil-low-verysparse",
"game:soil-medium-verysparse",
"game:soil-compost-verysparse",
"game:soil-verylow-sparse",
"game:soil-low-verysparse",
"game:soil-medium-verysparse",
"game:soil-compost-verysparse",
"game:soil-verylow-normal",
"game:soil-low-normal",
"game:soil-medium-normal",
"game:soil-compost-normal",
"game:sand-andesite",
"game:sand-chalk",
"game:sand-chert",
"game:sand-conglomerate",
"game:sand-limestone",
"game:sand-claystone",
"game:sand-granite",
"game:sand-sandstone",
"game:sand-shale",
"game:sand-basalt",
"game:sand-peridotite",
"game:sand-phyllite",
"game:sand-slate",
"game:sand-bauxite",
"game:sandwavy-andesite",
"game:sandwavy-chalk",
"game:sandwavy-chert",
"game:sandwavy-conglomerate",
"game:sandwavy-limestone",
"game:sandwavy-claystone",
"game:sandwavy-granite",
"game:sandwavy-sandstone",
"game:sandwavy-shale",
"game:sandwavy-basalt",
"game:sandwavy-peridotite",
"game:sandwavy-phyllite",
"game:sandwavy-slate",
"game:sandwavy-bauxite",
"game:gravel-andesite",
"game:gravel-chalk",
"game:gravel-chert",
"game:gravel-conglomerate",
"game:gravel-limestone",
"game:gravel-claystone",
"game:gravel-granite",
"game:gravel-sandstone",
"game:gravel-shale",
"game:gravel-basalt",
"game:gravel-peridotite",
"game:gravel-phyllite",
"game:gravel-slate",
"game:gravel-bauxite",
"game:stone-andesite",
"game:stone-chalk",
"game:stone-chert",
"game:stone-conglomerate",
"game:stone-limestone",
"game:stone-claystone",
"game:stone-granite",
"game:stone-sandstone",
"game:stone-shale",
"game:stone-basalt",
"game:stone-peridotite",
"game:stone-phyllite",
"game:stone-slate",
"game:stone-bauxite",
"game:stone-obsidian",
"game:stone-kimberlite",
"game:stone-scoria",
"game:stone-tuff",
"game:stone-halite",
"game:stone-suevite",
"game:stone-whitemarble",
"game:stone-redmarble",
"game:stone-greenmarble",
"game:fruit-saguaro",
"game:fruit-breadfruit",
"game:fruit-blueberry",
"game:fruit-cranberry",
"game:fruit-redcurrant",
"game:fruit-whitecurrant",
"game:fruit-blackcurrant",
"game:fruit-pineapple",
"game:fruit-redapple",
"game:fruit-pinkapple",
"game:fruit-yellowapple",
"game:fruit-cherry",
"game:fruit-peach",
"game:fruit-pear",
"game:fruit-orange",
"game:fruit-mango",
"game:fruit-lychee",
"game:fruit-pomegranate",
"game:fruit-yellowapple",
"game:mushroom-fieldmushroom-normal",
"game:mushroom-almondmushroom-normal",
"game:mushroom-beardedtooth-normal-north",
"game:mushroom-chickenofthewoods-normal-north",
"game:mushroom-dryadsaddle-normal-north",
"game:mushroom-pinkoyster-normal-north",
"game:mushroom-tinderhoof-normal-north",
"game:mushroom-whiteoyster-normal-north",
"game:mushroom-reishi-normal-north",
"game:mushroom-funeralbell-normal-north",
"game:mushroom-deerear-normal-north",
"game:mushroom-livermushroom-normal-north",
"game:mushroom-pinkbonnet-normal-north",
"game:mushroom-shiitake-normal-north",
"game:mushroom-flyagaric-normal",
"game:mushroom-bitterbolete-normal",
"game:mushroom-blacktrumpet-normal",
"game:mushroom-chanterelle-normal",
"game:mushroom-commonmorel-normal",
"game:mushroom-deathcap-normal",
"game:mushroom-devilstooth-normal",
"game:mushroom-devilbolete-normal",
"game:mushroom-earthball-normal",
"game:mushroom-elfinsaddle-normal",
"game:mushroom-golddropmilkcap-normal",
"game:mushroom-greencrackedrussula-normal",
"game:mushroom-indigomilkcap-normal",
"game:mushroom-jackolantern-normal",
"game:mushroom-kingbolete-normal",
"game:mushroom-lobster-normal",
"game:mushroom-orangeoakbolete-normal",
"game:mushroom-paddystraw-normal",
"game:mushroom-puffball-normal",
"game:mushroom-redwinecap-normal",
"game:mushroom-saffronmilkcap-normal",
"game:mushroom-violetwebcap-normal",
"game:mushroom-witchhat-normal"
Here are the codes for blocks that you might want to insert in whitelistBlocksToBreakForLostItems.
This list contains codes for: soil, sand, gravel.
NOTE: As of update v1.1.0 you can use wildcards (*) to add all the items of the type to the list, for example, if you want to add all the codes for soil, simply add: "game:soil-*" instead of all the possible codes.
"game:soil-verylow-none",
"game:soil-low-none",
"game:soil-medium-none",
"game:soil-compost-none",
"game:soil-verylow-verysparse",
"game:soil-low-verysparse",
"game:soil-medium-verysparse",
"game:soil-compost-verysparse",
"game:soil-verylow-sparse",
"game:soil-low-verysparse",
"game:soil-medium-verysparse",
"game:soil-compost-verysparse",
"game:soil-verylow-normal",
"game:soil-low-normal",
"game:soil-medium-normal",
"game:soil-compost-normal",
"game:sand-andesite",
"game:sand-chalk",
"game:sand-chert",
"game:sand-conglomerate",
"game:sand-limestone",
"game:sand-claystone",
"game:sand-granite",
"game:sand-sandstone",
"game:sand-shale",
"game:sand-basalt",
"game:sand-peridotite",
"game:sand-phyllite",
"game:sand-slate",
"game:sand-bauxite",
"game:sandwavy-andesite",
"game:sandwavy-chalk",
"game:sandwavy-chert",
"game:sandwavy-conglomerate",
"game:sandwavy-limestone",
"game:sandwavy-claystone",
"game:sandwavy-granite",
"game:sandwavy-sandstone",
"game:sandwavy-shale",
"game:sandwavy-basalt",
"game:sandwavy-peridotite",
"game:sandwavy-phyllite",
"game:sandwavy-slate",
"game:sandwavy-bauxite",
"game:gravel-andesite",
"game:gravel-chalk",
"game:gravel-chert",
"game:gravel-conglomerate",
"game:gravel-limestone",
"game:gravel-claystone",
"game:gravel-granite",
"game:gravel-sandstone",
"game:gravel-shale",
"game:gravel-basalt",
"game:gravel-peridotite",
"game:gravel-phyllite",
"game:gravel-slate",
"game:gravel-bauxite"
Thanks to VladVertov for helping test the mod.
| Mod Version | Mod Identifier | For Game version | Downloads | Released | Changelog | Download | 1-click mod install* |
|---|---|---|---|---|---|---|---|
| 1.1.0 | lostandfound | 222 | 5 days ago | lostandfound_1.1.0.zip | 1-click install | ||
|
New config options added, please check Mod Config spoiler in the mod description for more info! | |||||||
| 1.0.1 | lostandfound | 295 | Nov 30th at 8:39 AM | lostandfound_1.0.1.zip | 1-click install | ||
|
-Fixed: client-side warning log should no longer appear, as the network channel between server and client are not needed for this mod | |||||||
| 1.0.0 | lostandfound | 411 | Nov 2nd at 10:28 AM | lostandfound_1.0.0.zip | 1-click install | ||
|
Initial Release | |||||||
Thanks for this update. It's not exactly what I expected, but it implements over 90% of the mechanics I wanted.
This is such an awesome idea and so immersive!
that was fast, thanks for the update and the mod!
Could the white and blacklists support wildcards?
I have another idea that came from the players of my server. What if you could have tool modes on the pan to choose the radius you would like to pan? Maybe it could be like presets like 8 chunks radius, 16 chunks radius, and maybe 32 chunks radius.
SiiMeR EnderMelody Thank you for your suggestions, I am working on an update that adds all these options
would you be able to add a config option that blocks any item with a spoil time from being added into the pool that way i dont have to manually blacklist every single food item. it doesnt really make sense to find food way past its spoil time anyways.
Would it be possible to use the blacklist to ignore items being panned if they're already in the pool ?
I have a problem where there is a bunch of trash already in the pool so I would have to edit the JSON in the Saves folder. It would be easier if the blacklist was also applied upon panning, not just upon despawning
Is it possible for you to implement such a feature that if the local pool contains multiple of 1 item there is a random chance of receiving more than 1? The 2000 carrots aint gonna pan themselves :D
Centur1on
this is so so cool
Excellent idea. I just hope you have a filter in place so that only relevant items are sent to the pool, not 5000 stacks of stones and bones.
SiiMeR Should be fixed in v1.0.1. Glad to hear that players like it! If you notice any other issues please tell, will try my best to fix them ASAP.
The mod is now being used on the Chronicles of Time roleplay server. People are having a blast with it and there are no apparent issues so far.
SiiMeR Simply add "game:chiseledblock" to the blacklist. All the chiseled blocks have that code.
By the way, as tested, chiseled blocks don't save their attributes/states/blocks used right now. I will see if I can fix that, or I will simply make it hardcoded to exclude them from adding to the global item pool.
How easy would it be to blacklist any chiseled block? That is mostly trash so if I could fully remove it from the pool it would be great
Tulikettu Will check that today. As for decomposition mechanic, it sounds interesting, will think about adding it
UPD: Tested, mod is server-side. Made the necessary changes to mod page and mod itself
Izunundara When fishing is out in vanilla I will certainly make an update for it
It would be great to add something like decomposition, since, for example, a piece of parchment buried in the ground would be hard to find in a couple of years. And another question: does this mod use the mechanics that caused it to be labeled as a Both-type?
Very good idea, this would be wonderful on any long lasting server.
I've been wanting something like this for a long time
Oh hey I love this mechanic in Haven and Hearth, I hope we can get this working with Fishing as well lmao
Maybe this will teach people to pick up their trash. lol
One of the coolest concepts for a server with friends I have seen in my personal opinion
This is a solid feature... I can imagine servers 'seeding' the global pool with treasure, or in local mode dropping a ton of metal bits around a particular mountain or river.
oh good there is a black list...... all rocks should be on that list by default and sticks with how often people just toss them especialy stone from minging
wow, that's on of the most immersive and atmospheric mods!!
Lovely idea, this can be huge for roleplay server with more history.