MLRS Missing from Monument?

Are there any plugins that are known to adversely interact with the MLRS? I had the MLRS when it was first released, but in the two subsequent wipes the monument has been there but where the MLRS should be, it's missing.

I've tried to see if there are commands that control this, or if it's affected by minimum map size, but I'm not yielding any results.

I'm not aware of any plugins that could cause that specifically. I just checked on my test server and I also don't see the MLRS. I then wiped and restarted with the same seed, and it was there. I then restarted the server, and it was still there.

I think this is a Rust bug, but I don't know what specifically is going wrong. However, I've created a plugin that you can use to automatically respawn it. Create a file named MLRSRespawner.cs with the below contents, and add to the oxide/plugins directory.

namespace Oxide.Plugins
{
    [Info("MLRS Respawner", "WhiteThunder", "1.0.0")]
    [Description("Respawns MLRS at Desert Military Bases if missing when the plugin loads.")]
    internal class MLRSRespawner : CovalencePlugin
    {
        private void OnServerInitialized()
        {
            foreach (var monument in TerrainMeta.Path.Monuments)
            {
                if (!monument.name.Contains("desert_military_base"))
                    continue;

                foreach (var spawner in monument.GetComponentsInChildren<IndividualSpawner>())
                {
                    if (!spawner.entityPrefab.resourcePath.Contains("mlrs.entity"))
                        continue;

                    // The customBoundsCheckMask is 0 which won't find the MLRS, so use the standard mask.
                    spawner.useCustomBoundsCheckMask = false;

                    if (spawner.HasSpaceToSpawn())
                    {
                        spawner.SpawnInitial();
                        LogWarning("Spawned missing MLRS at Desert Military Base.");
                    }
                }
            }
        }
    }
}

Awesome, thanks! I hadn't tried a wipe and restart with same seed, but I had done a couple resets and it still wasn't there. I'll give this a go now. 

Merged post

Worked like a charm, thanks!

I've been having the same problem the past few days. It's randomly disapearing; one player watched it blink out of existence right in front of his eyes while clearing the monument of scientists. 

The code posted above for the plugin seems to work, but not automatically. I have to manually reload the plugin using the oxide.reload command to get it to respawn if the MLRS disappears. 

I have no idea what plugin or config would be causing the MLRS to disappear in the first place. Bumping this thread in hopes there's a fix.

ZRE5Z0vKxcnXIMM.jpg theshadow

The code posted above for the plugin seems to work, but not automatically. I have to manually reload the plugin using the oxide.reload command to get it to respawn if the MLRS disappears.

The plugin code above only respawns on plugin load, because I did not expect the MLRS to disappear at other times than server reboot.

Since you mentioned it is blinking out of existence in front of players, one possible explanation is that it's somehow decaying. Last I checked, it was not able to take damage due to its protection properties, but some sort of auto decay plugin might be bypassing protection properties.

That's what I'm thinking as well. I don't think it's RaidableBases; I did very recently update NoDecay, but the only thing set to decay is twig at half rate. Dangerous Treasures was recently installed and had issues compiling and loading properly. I don't think Automated Events is causing the issue. I really don't know.

I'm trying to figure out a way any user in the server can issue a command or type something in to have your plugin automatically reload in the MLRS. But I really need to figure out why it's disappearing to begin with.

The above plugin could be easily adjusted to auto respawn since the vanilla spawner already has respawn logic. It just needs a few properties changed to do that on a schedule. I will make those changes when I have time and send here.

I just found out what's causing it to disappear. When players enter the area, scientists shooting and hitting the MLRS causes it to disappear. I just reproduced it multiple times. I'm not sure why the MLRS has health or how scientists shooting is causing it to vanish.

Also anything kills it. A single shot with a gun destroys it. Just bashed it once with a stone and it disappeared too.

 

EDIT: the MLRS seems to have somewhere between 5-10hp. Takes one hit with a rock, two hits with a torch.

I looked into this briefly. I could not reproduce the issue. The MLRS entity spawns with 1/1 hp, and it uses the Immortal Protection preset, meaning all damage types are scaled to 0.

There are several possible reasons that the MLRS could be killable.

  • A) It's protection properties have been replaced. Plugins will sometimes replace the protection properties of an entity with a different set of protection properties, in order to customize the amount of damage it takes from various damage types. The likelihood of this being the cause is very low, since very few plugins are even aware of the MLRS, and only a bad plugin would apply protection properties this broadly.
  • B) The Immortal Protection preset has been modified. This preset is shared across many entities. If this was the case, you can confirm by testing if other static entities with low hp are also killable (which could be hard to find since many have hundreds or thousands of health). This is also very unlikely because only a bad plugin would do something like this.
  • C) It's spawning with 0 health. Entities with 0 health can be killed even with immortal protection, because the vanilla logic will "kill" any combat entity that has 0 health at the end of damage processing, even if no damage was received after scaling. If this is the case, then you should be able to kill it with only a single torch hit, so since you said it required 2 torch hits, this is probably not the cause.

I agree, the first or second are likely the cause. I was wondering if NoDecay was causing the problem; somehow assigning value to MLRS as a vehical since vehicals can decay. I tried unloading that plugin and several others, then spawning in the MLRS several times and I kept getting the same results. This morning I completely brought the server offline, re-updated in case there was a patch that came out after 6th, then ran the server vanilla. MLRS worked fine. I then made sure to download the latest umod (had already done that jan6th as well), then I started up the server. 

I didn't change any plugin settings or anything; the MLRS now works fine and seems to have infinite health. 

My only guess if there was either an update on either Rust's end or UMod's end that came out after thursday's forced wipe that fixes this issue.

There was actually a second Oxide update that came out on the day of the force wipe. Not sure if you have downloaded that one previously. That update had only minimal changes, none of which appear to be related to MLRS or damage.

For what it's worth my MLRS is still there from initial plugin load as of my previous comment. So it hasn't blinked out on me. I haven't done a server restart since then either.