Mods / Translocator Locator
Category:
#Crafting
#Magic
#QoL
#Tweak
#Utility
Author: Asraiel
Side: Both
Created: Jul 25th 2021 at 8:42 PM
Last modified: Mar 17th 2022 at 3:35 PM
Downloads: 3918
Follow Unfollow 34
Author: Asraiel
Side: Both
Created: Jul 25th 2021 at 8:42 PM
Last modified: Mar 17th 2022 at 3:35 PM
Downloads: 3918
Follow Unfollow 34
Latest file for v1.16.4:
translocatorlocator_v1.0.2.zip
1-click install
Trying to find Translocators near you? With this neat little helper your search will be a lot easier.
Features:
- Translocator Locator
- Tries to find broken Translocators around you
- Needs iron age for plates
- Mod Config to set range and durability cost of the different modes
- Directional Mode:
- searches in a Cone "behind" the block relative to the face clicked. If you click the wall, it will search behind the wall. If you click the floor, it will search below that block, etc.
- example with range 5 (C = clicked block, X = unchecked block, ■ = checked block, project to 3D)
XXXX■
XXX■■
XX■■■
X■■■■
C■■■■
X■■■■
XX■■■
XXX■■
XXXX■
-
- Three differently sized Radius Modes
- Will search in a small, medium or large radius around the clicked block, in every direction.
- Large radius may cause momentary lag, use config to reduce radius if needed.
- 1500 Durability
- Default values are currently:
- Directional mode: 20 range, 1 durability
- Small Radius mode: 20 range, 1 durability
- Medium Radius mode: 50 range, 5 durability
- Large Radius mode: 100 range, 20 durability
- Three differently sized Radius Modes
- Ancient Ruin Locator
- same functionality as Translocator Locator but:
- own config values
- looks for aged wood blocks
- bed
- chair
- table
- planks
- wallpaper planks
- does not show the number of blocks found
- can NOT distinguish between generated and player placed blocks
- uses aged wood planks instead of metal parts, so you still have to reach iron age and you must have found at least one underground ruin on your own
- same functionality as Translocator Locator but:
Currently has english and german localization.
Big Thanks to McBain for offering to update this to 1.16!
Version | For Game version | Downloads | Release date | Changelog | Download | 1-click mod install* |
---|---|---|---|---|---|---|
v1.0.2 | 1740 | Mar 17th 2022 at 3:35 PM | Show | translocatorlocator_v1.0.2.zip | Install now | |
v1.0.1 | 772 | Jul 29th 2021 at 6:45 PM | Show | TranslocatorLocator_v1.0.1.zip | Install now | |
v1.0.0 | 497 | Jul 28th 2021 at 9:16 PM | Show | TranslocatorLocator_v1.0.0.zip | Install now | |
v0.2.0 | 460 | Jul 27th 2021 at 5:04 PM | Show | TranslocatorLocator_v0.2.0.zip | Install now | |
v0.1.0 | 449 | Jul 25th 2021 at 8:52 PM | Show | TranslocatorLocator_v0.1.0.zip | Install now |
Suri04
Could you upload it here such that it can be automatically downloaded by clients?
Can you pls upgrade it for 1.19.3? It chrashes at the moment I try to use the locator..
System.NullReferenceException: Object reference not set to an instance of an object.
at TranslocatorLocator.ItemTranslocatorLocator.GetConeRange(ModConfig modConfig)
at Locator.ItemBaseLocator.OnHeldInteractStart(ItemSlot slot, EntityAgent byEntity, BlockSelection blockSel, EntitySelection entitySel, Boolean firstEvent, EnumHandHandling& handling)
at Vintagestory.Client.NoObf.SystemMouseInWorldInteractions.TryBeginUseActiveSlotItem(BlockSelection blockSel, EntitySelection entitySel, EnumHandInteract useType, EnumHandHandling& handling) in VintagestoryLib\Client\Systems\Player\MouseInWorldInteractions.cs:line 854
at Vintagestory.Client.NoObf.SystemMouseInWorldInteractions.HandleMouseInteractionsBlockSelected(Single dt) in VintagestoryLib\Client\Systems\Player\MouseInWorldInteractions.cs:line 444
at Vintagestory.Client.NoObf.SystemMouseInWorldInteractions.OnFinalizeFrame(Single dt) in VintagestoryLib\Client\Systems\Player\MouseInWorldInteractions.cs:line 89
at Vintagestory.Client.NoObf.ClientEventManager.TriggerRenderStage(EnumRenderStage stage, Single dt) in VintagestoryLib\Client\Util\ClientEventManager.cs:line 185
at Vintagestory.Client.NoObf.ClientMain.TriggerRenderStage(EnumRenderStage stage, Single dt) in VintagestoryLib\Client\ClientMain.cs:line 802
at Vintagestory.Client.NoObf.ClientMain.RenderToDefaultFramebuffer(Single dt) in VintagestoryLib\Client\ClientMain.cs:line 1006
at Vintagestory.Client.ScreenManager.Render(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 675
at Vintagestory.Client.ScreenManager.OnNewFrame(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 650
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(FrameEventArgs e) in VintagestoryLib\Client\ClientPlatform\GameWindow.cs:line 88
at OpenTK.Windowing.Desktop.GameWindow.Run()
at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 318
at Vintagestory.Client.ClientProgram.<>c__DisplayClass9_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 128
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93
I've forked Asraiel's mod to make it compatible with version 1.18.15.
Source of the fork : https://github.com/Sury04/vsmod_translocatorlocator
Mod file: https://github.com/Sury04/vsmod_translocatorlocator/blob/main/release_mod_translocatorlocator_update.zip
Such a great mod, I so wish it could be fixed to work in multiplayer.
Having the issue of client crashing when trying to use TransLocatorLocator in server(Linux) - client(windows) config, did work locally on creative world. Using 1.16.5
I had the same issue as posted below. It seems to be MP related. I looked into the code and my best guess is that the mod has an issue when retrieving values from the config file, like the range used for a scan. The config file is not found and crashes the client. (Null Reference). Most likely this is easy to fix, but I havent worked with config-file-stuff yet and dont know how the client config structure differs from the servers.
Asraiel Do you still support this mod, if you do, there is no recipe for the ruin locator i think.
With the recipie shape change it appears that the recipie for the ancient ruin locator is missing?
The locator crashed my client when I tried to use it on a multiplayer server.
Game Version: v1.16.4 (Stable)
Loaded Mods: ancienttools@1.4.0, tonwexp@1.0.9, backpackpack@1.0.3, bettercrates@1.4.1, cavecontent@1.0.1, dragonflies@1.1.9, extrachests@1.5.2, fancydoors@1.1.0, instruments@1.1.2, moremetals@1.0.9, moreroads@1.4.3, necessaries@1.1.1, primitivesurvival@2.8.0, qptech@1.7.6, rope-bridges@1.1.0, spidersilk@1.2.2, stackables@2.0.5, locustmod@2.3.5, theneighbours@0.4.12, tradeomat@1.6.0, viescraftmachines@1.17.0, game@1.16.4, vshud@2.0.31, zeekea@1.6.0, alchemy@1.6.0, carrycapacity@0.6.5, farmlife@1.2.3, fromgoldencombs@1.3.6-rc.6, lichen@1.6.1, medievalexpansion@3.7.1, outlawmod@1.0.8, petai@1.3.7, playercorpse@1.3.1, prospectorinfo@3.1.2, stonequarry@1.6.5, tpnet@1.5.1, translocatorlocator@1.0.2, usefulstuff@2.3.2, creative@1.16.4, survival@1.16.4, wildfarming@1.2.8, woodbarrels@1.0.1, workbenchexpansion@1.4.1, xlib@0.6.8, xmelee@0.0.10, xrowboat@0.0.3, bullseye@2.2.4, cats@1.3.4, feverstonehorses@1.2.6, packanimals@1.0.1, wildcraft@1.2.1, wolftaming@1.3.3, xskillspatched@0.6.9-dev.7
3/22/2022 11:10:12 PM: Critical error occurred
System.NullReferenceException: Object reference not set to an instance of an object
at TranslocatorLocator.ItemTranslocatorLocator.GetConeRange (ModConfig.ModConfig modConfig) [0x00001] in <e37e05bf798842eeb77cd01ff41980dc>:0
at Locator.ItemBaseLocator.OnHeldInteractStart (Vintagestory.API.Common.ItemSlot slot, Vintagestory.API.Common.EntityAgent byEntity, Vintagestory.API.Common.BlockSelection blockSel, Vintagestory.API.Common.EntitySelection entitySel, System.Boolean firstEvent, Vintagestory.API.Common.EnumHandHandling& handling) [0x00071] in <e37e05bf798842eeb77cd01ff41980dc>:0
at Vintagestory.API.Common.CollectibleObject.OnHeldUseStart (Vintagestory.API.Common.ItemSlot slot, Vintagestory.API.Common.EntityAgent byEntity, Vintagestory.API.Common.BlockSelection blockSel, Vintagestory.API.Common.EntitySelection entitySel, Vintagestory.API.Common.EnumHandInteract useType, System.Boolean firstEvent, Vintagestory.API.Common.EnumHandHandling& handling) [0x00018] in <c35009a825774beb829bbd8af877cce6>:0
at Vintagestory.Client.NoObf.SystemMouseInWorldInteractions.TryBeginUseActiveSlotItem (Vintagestory.API.Common.BlockSelection blockSel, Vintagestory.API.Common.EntitySelection entitySel, Vintagestory.API.Common.EnumHandInteract useType, Vintagestory.API.Common.EnumHandHandling& handling) [0x000a1] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at Vintagestory.Client.NoObf.SystemMouseInWorldInteractions.TryBeginUseActiveSlotItem (Vintagestory.API.Common.BlockSelection blockSel, Vintagestory.API.Common.EntitySelection entitySel) [0x00002] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at Vintagestory.Client.NoObf.SystemMouseInWorldInteractions.HandleMouseInteractionsBlockSelected (System.Single dt) [0x00319] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at Vintagestory.Client.NoObf.SystemMouseInWorldInteractions.UpdatePicking (System.Single dt) [0x0009e] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at Vintagestory.Client.NoObf.SystemMouseInWorldInteractions.OnFinalizeFrame (System.Single dt) [0x0004a] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at Vintagestory.API.Client.DummyRenderer.OnRenderFrame (System.Single deltaTime, Vintagestory.API.Client.EnumRenderStage stage) [0x00000] in <c35009a825774beb829bbd8af877cce6>:0
at Vintagestory.Client.NoObf.ClientEventManager.TriggerRenderStage (Vintagestory.API.Client.EnumRenderStage stage, System.Single dt) [0x00072] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at Vintagestory.Client.NoObf.ClientMain.TriggerRenderStage (Vintagestory.API.Client.EnumRenderStage stage, System.Single dt) [0x00028] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at Vintagestory.Client.NoObf.ClientMain.RenderToDefaultFramebuffer (System.Single dt) [0x00093] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at _4Bi1AGVssrIO0El8b8ygdS9FIfm._LvzIyYpsQCoC78JubjSO0HCjtTg (System.Single ) [0x0003e] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at _lAuHsYOBOAjBMdATFXwLUtH7N00._JvY4M2412YZu1OS3Ull8wgZBu1j (System.Single ) [0x001c0] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at _lAuHsYOBOAjBMdATFXwLUtH7N00._KmBeEx15nyyLrVqNDW6geSArpNr (System.Single ) [0x000cc] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame (System.Object sender, OpenTK.FrameEventArgs e) [0x00141] in <6b6988c5e6264e7e8b7a32e875df9528>:0
at (wrapper delegate-invoke) System.EventHandler`1[OpenTK.FrameEventArgs].invoke_void_object_TEventArgs(object,OpenTK.FrameEventArgs)
at OpenTK.GameWindow.OnRenderFrame (OpenTK.FrameEventArgs e) [0x00000] in <a4886e33f9fc416195d24950e7205b94>:0
at OpenTK.GameWindow.OnRenderFrameInternal (OpenTK.FrameEventArgs e) [0x00010] in <a4886e33f9fc416195d24950e7205b94>:0
at OpenTK.GameWindow.RaiseRenderFrame (System.Double elapsed, System.Double& timestamp) [0x0000c] in <a4886e33f9fc416195d24950e7205b94>:0
at OpenTK.GameWindow.DispatchRenderFrame () [0x00038] in <a4886e33f9fc416195d24950e7205b94>:0
at OpenTK.GameWindow.Run (System.Double updates_per_second, System.Double frames_per_second) [0x00104] in <a4886e33f9fc416195d24950e7205b94>:0
at OpenTK.GameWindow.Run () [0x00000] in <a4886e33f9fc416195d24950e7205b94>:0
at _TRhArnJABwZoV9Vt7Ld2l65Xzgg._mhlr8s7wtMvxaJGpVy2Ag90jUBK (_3HJA5NvAIx31LXjscc3HGjXaR6q , System.String[] ) [0x003dc] in <29d88641cda44fa481e9734466805d45>:0
at _TRhArnJABwZoV9Vt7Ld2l65Xzgg+_fSeTszd4whwFiRbaTa0d2CyPdfJ._SvbPzpxmSlo5pUMfGCrGwu2xebc () [0x00000] in <29d88641cda44fa481e9734466805d45>:0
at _q0zAVOrWbMX04rMA9G3HIFVuGjA._mhlr8s7wtMvxaJGpVy2Ag90jUBK (System.Threading.ThreadStart ) [0x00007] in <6b6988c5e6264e7e8b7a32e875df9528>:0
@Lumber Do you know what block you were clicking on when the error occured? I have tested this with lots of block and entity types and I can't replicate the error.
Weird, it crashed to desktop on the server once but seems to work fine now. If it matters, here's the crash log...
pastebin.com/Z7N9FdqA
Appears to crash to desktop when you attempt to use the device in 1.16.3.
To what depth does this mod explore for each range setting? The 100 block setting checks 100 blocks at the center and how many blocks deep at, say, 50 and 75 blocks from the center.
Thanks.
Wild_BluYonder
I got a Problem with this mod on game version 1.15.6
I can not use it on multiplayer (game crashes every time i use it).
I only can use this tool in multiplayer when i have used it bevore in singleplayer. (maybe some kind of variable does not load on mp?)
workaround for now:
bevore using it on mp, login to your sp world, use the tool, login to the mp server and then you can use the tool.
please fix this (i like that mod)
Thank you :)
Is this mod still being worked on?
So if I have an aged wood bed placed in my base, will the Ancient Ruin Locator detect that?
@DArkHekRoMaNT Yes I noticed that earlier today as well. Version 1.0.1 has an updated recipe for both locators.
@Chuckles The Ancient Ruin Locator is its own item with its own recipe.
What's the command to switch between modes on the Ancient Locator?
to clarify, have the chat window up, then press F
How to craft it? The temporal gear has a stack size of 1. Or have you changed the stack size?
Perhaps it is worth changing the recipe to PGP,GMG,P_P, where P is plate, G is t. gear, M - metal parts x4?
Thank you. I'll try your mode soon.
@Draaven @explorerbee I added an Ancient Ruin Locator tool to the mod. Check the description or change log for details.
I did not test with 1.14 or below, but for the reason you mentioned this mod needs 1.15+, pretty sure.
Just to be sure, this requires 1.15 to work right? In 1.14 the temporal gears don't stack. So I'm assuming that's a 1.15 change?
@Asraiel Gotcha, that's sounds like a way to balance it. I haven't used it quite yet. I was gonna wait until I upgraded to 1.15. :)
@Berkyjay As of now, the locator has limited durability with higher cost for higher range operations. You could configure higher durabilty costs if you think the current durability is too high.
Repairing is not really worth it imho, as you can recraft it with materials you can aquire from traders or farm from drifters.
@Draaven @explorerbee I'll check which method of finding underground ruins might be suitable. If I can distinguish whether a block has been placed by world generation or by a player, this might work. Otherwise this will probably lead to false positives near player structures.
LOVE this idea. One suggestion. If you can manage it, I would make it so that this device breaks down with every use and requires temporal gears to repair. Not sure how technically feasible that would be But I feel it would balance it out more and give players a reason to fight drifters more.
Would be nice to search for everything from aged wood.
I could easily add another tool that searches for another specific block, maybe tapestries? Would that help?
It would be brilliant, if this tool could also locate hidden chambers.
This makes me happy.