RimWorld

RimWorld

Mechanitor Command Relays
80 Comments
Vent 12 Jul @ 1:29pm 
Will this mod be updated for 1.6? I need to slap a couple of these bad boys into my gravship.
Hydrologist  [author] 21 May @ 3:01pm 
@Thekillergreece I haven't tested the mod with any modded mechanoids, but it shouldn't have any outright incompatibilities. You can try loading this mod after URMC to see if you get the desired behavior, but be aware that it may cause whatever behavior URMC is overriding this one's with to stop working.
»SoD« Thekillergreece 21 May @ 12:52am 
Does this work for modded mechanoids such as the ones from URMC? Cause it doesn't seem to work as if the command relay don't exist for them to be ordered.
Hydrologist  [author] 22 Mar @ 8:13pm 
@Derproid That was for performance reasons. If I recall correctly, when I attempted to make the range a configurable stat in the XML, retrieving the value for every range check caused the game to run poorly. There might be a better way to go about it, but since I haven't been actively playing Rimworld I haven't been motivated to pursue it.
Derproid 22 Mar @ 11:51am 
Tried doing it myself but I think editing the range in xml isn't possible because in CompProperties_CommandRelay you make relayCommandRange const :(
Derproid 20 Mar @ 5:12pm 
Would you be open to adding additional tiers? One with more range and another the covers the whole map (being extremely expensive ofc) is what I was thinking.
Hydrologist  [author] 16 Nov, 2024 @ 9:30pm 
@Hog It should be. It just adds a new building and doesn't change anything about existing ones.

@Hermann Are you seeing the same behavior as The Lord Pootis? Does moving the mod above or below Gestalt Engine in your load order change anything?
HogbogtekkyTTV 16 Nov, 2024 @ 3:47pm 
Is this stable to add to an existing save?
Hermann 13 Nov, 2024 @ 1:00pm 
does not work with Gestalt engine
The Lord Pootis 30 May, 2024 @ 9:17am 
It seems this mod and the Gestalt engine mod conflict in some way and makes the Gestalt engine unable to move drafted mechs under its command as if it had 0 command range instead of expending the whole map like it should, removing this mod fixes it
Morcalvin 19 May, 2024 @ 10:07pm 
Is there a way to make superior versions that put out larger control zones?
OG Diamond Poster 1 May, 2024 @ 8:10pm 
I was confused as why I couldn't find this structure in my fresh unmodded 1.5 play through. This is so useful that I thought this was just part of the vanilla game! Excellent work
Hydrologist  [author] 10 Apr, 2024 @ 10:45pm 
I did some testing and was able to confirm the extra log messages. I recompiled the mod with the 1.4 assemblies and it seems to have resolved the issue on my end. I tested the existing 1.5 version and it seems to be fine as well. I've pushed the update, so please let me know if the issue persists.
Parkle 10 Apr, 2024 @ 8:16am 
I'm playing on 1.4.3901. the error is gone now, but instead, I'm getting 3, almost identical messages spammed in the log. I've posted them in the discussion again.
Hydrologist  [author] 9 Apr, 2024 @ 8:48pm 
I've pushed an update which rearranges the folder structure of the mod. This should properly separate the 1.4 and 1.5 versions of the mod files, which I suspect was causing issues.

@Parkle, please do let me know what version of the game you're playing on, and whether you're still seeing the issue.
Hydrologist  [author] 9 Apr, 2024 @ 8:06pm 
@Parkle That error looks like the mod is targeting the wrong version of the game. I haven't been able to reproduce the issue in my own 1.5 install of the game, so I'm not sure what's causing yours to do that. Can you confirm the version of your game in the upper left corner of the main menu?

If you haven't already, you may want to unsubscribe and resubscribe to the mod, in case Steam hasn't updated the mod files properly and you still have the 1.4 version of the mod file.
Parkle 9 Apr, 2024 @ 2:05pm 
Posted the errors I'm getting in a discussion.
Parkle 9 Apr, 2024 @ 1:49pm 
I deconstructed a command relay and the game is spamming me with errors related to it. It's making my player.log file 80gb+
Hydrologist  [author] 8 Apr, 2024 @ 8:49pm 
I've recompiled the mod using the 1.5 assemblies. Let me know if there are any issues.
Hydrologist  [author] 24 Mar, 2024 @ 8:12pm 
@Sargon Rose I'm working on updating this for 1.5, though I'll be busy this coming week.
Sargon Rose 19 Mar, 2024 @ 4:45pm 
Damn, hoping this worked with 1,5
Kaedys 22 Jan, 2024 @ 11:25pm 
Ya, that's what I was thinking. I'm not *super* solid on the C# side, but I thought you could make it work like the powerConsumptionIdle var, which has a default value but can be overridden in the XML.
Hydrologist  [author] 22 Jan, 2024 @ 2:31pm 
It's been a while, but I believe I hardcoded the range for performance reasons. I'm currently not set up to do development, but it should be possible to load the range from XML into a variable in MechanitorRelayCacheHelper.cs, then use that variable in the range calculations in PatchMechanitorTracker_CanCommandTo.cs and PatchMechanitorUtility_InMechanitorCommandRange.cs in place of CompProperties_CommandRelay.relayCommandRange.
Kaedys 22 Jan, 2024 @ 3:46am 
Would like to second the request to expose the `relayCommandRange` in the XML. Was trying to add this comp to some buildings from another mod, to add the command relay effect to them, but with different ranges due to differing building sizes and construction costs, but that field is currently hardcoded =(
Morlund 18 Nov, 2023 @ 3:49am 
@Datboi
Unless I'm misunderstanding your question, that's a default Biotech feature, simply put the mechs you want guarding into a separate command group and set them to the Escort work type and they will follow the Mechanitor around and attack any hostiles that come near them. The only limitations being that they can't escort anyone other than their commanding mechanitor and they will ignore their charging settings and will continue to escort until they run out of power.

Alternatively, if you want your mechs to guard a specific area, you can restrict combat mechs to an area and set them to the standard Work work type (include charging stations in the area if you want them to be able to leave their post to charge). You can set up a pseudo-patrol by restricting them to an area of several single-tile spots that they will randomly wander between. Its not as clean as Guards for Me but it works well enough imo, hope that helps.
Datboi 12 Nov, 2023 @ 8:13pm 
Anyone have a mod that allows for mechs to guard/follow around your mechinator? I would like to have mechs as guards because my mechinator is a pacifist and so he can't really fight and so Im trying to have mechs guard him so if anything goes wrong he can run away while his mechs defend him. But the problem is I can't seem to find a mod that allows this to happen. The mod "guards for me" doesn't work on mechs it only affects human pawns which sucks so if anybody knows a mod that can do this then please let me know
Hydrologist  [author] 22 Oct, 2023 @ 12:54am 
Not right now. I haven't gotten back to playing RimWorld again yet, unfortunately.
Pureya_Player 6 Oct, 2023 @ 11:25am 
So are you working on the third thing on your post from Feb 28?
Blaze2377 3 May, 2023 @ 4:42pm 
this mod just crashes when used with the multiplayer mod
Cedaro 2 Apr, 2023 @ 2:06am 
This seems cause error when used together with Reinforced Mechanoid 2 and put it before RM2, can you add a rule to put it after RM2?
Hydrologist  [author] 28 Feb, 2023 @ 3:48pm 
@Virathas
1) Definitely possible and should be simple to do. I just don't have any art for other versions.
2) This should be fairly easy to do as well. I was planning to add settings to my mods, but I stopped playing Rimworld again before I got around to it.
3) This is a really cool idea, and I might actually go ahead and make this because I like it. :P
Virathas 28 Feb, 2023 @ 3:04am 
The mod is really great - but i do have a few "questions".
1) Would it be possible to add an additional, higher tier Relay? Longer range, Higher power usage, and using the High Subcore?
2) Alternatively, could it be possible to expose the Range variable into XML? This would allow simple and easy method for others to add on this system.
3) And I know this would be far more difficult - I think an Ultra-mech with a built-in relay would be awesome, and would give new ways to play.
Dizarus 27 Jan, 2023 @ 11:13pm 
Where have you been all my life! God i need this! Thank you!
Hydrologist  [author] 13 Jan, 2023 @ 7:09pm 
@Kad These need to be tuned to a specific mechanitor.
Tardo The Ass-Monkey 7 Jan, 2023 @ 11:27pm 
Do these need to be tuned to a specific mechanitor, or do they work for all mechanitors? Seems really useful, would just rather avoid having to plaster down four of them at my defence line so that all my different mechs can be moved.
Soulless Jelu 25 Nov, 2022 @ 10:11am 
Can i somehow make it mapwide? And how exactly?
Hydrologist  [author] 20 Nov, 2022 @ 10:30pm 
I've pushed an "update" which may fix the issue. I was able to reproduce the issue but nothing seemed to be wrong with the code. Rebuilding the assembly seems to have stopped errors from occurring, possibly something to do with Rimworld update. Let me know if the issue persists.
leeal 20 Nov, 2022 @ 7:53pm 
amazing mod, but it causes so many white errors that in a matter of minutes, it can fill an entire drive with unrestrained log spam.
Chris_ 20 Nov, 2022 @ 3:25am 
This causes a lot of log spam
fredericktpjohnstone 18 Nov, 2022 @ 12:56pm 
yes!! Thank you this is exactly what I have been looking for; thought the vanilla relays should do something similar tbh.

Modders make the game what it is.
BingusDingus 13 Nov, 2022 @ 1:17pm 
Thank you, i was temped to add these in myself as i was baffled that they weren't already in the game.
Bimsham 13 Nov, 2022 @ 12:02am 
I Can share the log tomorrow as i am not at my pc right now and yes the mod works fine but this text is filling the log and is bloating the log file
Hydrologist  [author] 12 Nov, 2022 @ 11:49pm 
I have an idea of where this might be coming from, but not why you're getting messages.
Is the mod still functional for you, or is it not behaving correctly?
And if you don't mind, can you share your log via HugsLib?
Bimsham 12 Nov, 2022 @ 11:06pm 
There is also a copy of the second one with a different number on the first line for ever relay i make
Bimsham 12 Nov, 2022 @ 10:53pm 
The text is white idk if that is imported but i thought you should know
Bimsham 12 Nov, 2022 @ 10:52pm 
Hydroxyapatite_CommandRelay407842
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
Hydroxyapatite_MechanitorCommandRelays.Hediff_CommandRelay:RecacheCommandRelays ()
Hydroxyapatite_MechanitorCommandRelays.Hediff_CommandRelay:PostTick ()
(wrapper dynamic-method) Verse.Pawn_HealthTracker:Verse.Pawn_HealthTracker.HealthTick_Patch2 (Verse.Pawn_HealthTracker)
Verse.Pawn:Tick ()
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch2 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch1 (Verse.Game)
Verse.Root_Play:Update ()
That is for the next line
Had to do two post as steam said it was two long
Bimsham 12 Nov, 2022 @ 10:51pm 
@Hydrologist Cached System.Collections.Generic.List`1[Verse.Building] relays.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
Hydroxyapatite_MechanitorCommandRelays.Hediff_CommandRelay:RecacheCommandRelays ()
Hydroxyapatite_MechanitorCommandRelays.Hediff_CommandRelay:PostTick ()
(wrapper dynamic-method) Verse.Pawn_HealthTracker:Verse.Pawn_HealthTracker.HealthTick_Patch2 (Verse.Pawn_HealthTracker)
Verse.Pawn:Tick ()
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch2 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch1 (Verse.Game)
Verse.Root_Play:Update ()
That is for the first line
Hydrologist  [author] 12 Nov, 2022 @ 7:44pm 
@Bimsham I need more information to help you. Can you get me the entire text from clicking on the log line with the error?
Bimsham 12 Nov, 2022 @ 3:50pm 
this repeats ever sec in the log help Cached System.Collections.Generic.List`1[Verse.Building] relays.
Hydroxyapatite_CommandRelay407842
23Chromosomes 12 Nov, 2022 @ 3:35pm 
@lesnipohadka Spit out my coffee