Skip to content

/getHazards #290

Open
Open

Description

@Fokson

Would it be possible to add a /getHazards endpoint that reports gas pillars / flowers?

Activity

  1. porisius commented on Jun 21, 2026

    @porisius
    Owner

    Yes, if the gas pillars are Actors in the game, it would be quite easy. I am working on some stuff for the Modding Documentation then I will look at this.

  2. porisius commented on Jun 21, 2026

    @porisius
    Owner

    It would appear they are... pardon the nodes.

    In CPP:
    class FACTORYGAME_API AFGSporeFlower : public AFGStaticReplicatedActor, public IFGSaveInterface, public IFGSignificanceInterface

    Image
  3. added a commit that references this issue on Jun 22, 2026
  4. porisius commented on Jun 22, 2026

    @porisius
    Owner

    I tried to grab as much as possible that I felt was relevant. Do let me know if anything looks off.

    Image
  5. Fokson commented on Jun 22, 2026

    @Fokson
    Author

    This looks right for the flowers. I might be misreading the screenshots but I don't see mention of the gas pillars do they and spore flowers count as the same class, or were the gas pillars not actors that FRM could fetch? Also, I'm not sure if the flowers/pillars can have their effective hazard range reported upon, but that would be a useful metric as well.

    As a quick aside, I noticed that 'getCreatures' doesn't report the location of hatcher nests and their spawn, and I'm not sure if that's because they don't count strictly as "creatures" or if there was some other reason they don't get reported. If they don't fit in creatures perhaps they could fit in hazards along with the spore flowers, but I think they would count more as a creature personally.

  6. porisius commented on Jun 22, 2026

    @porisius
    Owner

    Some names are not exact, and I could check with the modding discord if they have more info.

    For example, the Lizard Doggos are BP_SpaceRabbit.

    Spawn points are separate from the creatures themselves, if I remember correctly. SirDigby recently asked about them, and I could check with him about what that class that is. They are probably actors as well.

    I guess the question ought to be should those be their own, be a part of creatures, or hazards. I can think about it, but welcome suggestions.

  7. porisius commented on Jun 23, 2026

    @porisius
    Owner

    they're... they're FGGasPillar per AngryBeaver, give me a few to switch that out. Working on a few other things atm.

  8. Fokson commented on Jun 23, 2026

    @Fokson
    Author

    No rush, of course; whenever you have time. I appreciate your work. =) This mod has been incredibly useful, I've used it for a number of things that have made Satisfactory more enjoyable. The thing I'm working on now is a map application that shows players moving in real time and the creatures, objects, points of interest, etc that are near them. Very nice to have up on a second monitor rather than hitting M all the time!

    Image

    The only thing I felt was missing from the map was the hazards and the hatcher/bug enemies.

  9. porisius commented on Jun 24, 2026

    @porisius
    Owner

    I had fun with the creature spawners as Disable Arachnoid Creatures in the Creative Menu gave me some grief.

    I have most of the docs done, but take a look at the artifact build from https://github.com/porisius/FicsitRemoteMonitoring/actions/runs/28075884122 and let me know what you think. I get busy on Wed/Thurs nights for IRL, so I won't probably get back to this until Friday.

  10. Fokson commented on Jun 24, 2026

    @Fokson
    Author

    It's looking good so far!

    Image

    getHazards reports the positions of Gas Pillars currently, but not Spore Flowers. Notably, they continue to be reported even after being destroyed ( a similar bug as one I noticed for resourceDeposits, but destroyed resourceDeposits will stop being reported once FRM stops and starts again ). I'm not sure if that's housekeeping that FRM should do, or if there should be an additional field per hazard entry that reflects if it's been destroyed or not.

  11. porisius commented on Jun 24, 2026

    @porisius
    Owner

    I can merge the two, (getHazards and getSporeFlowers). I'm just worried that some json fields will be missing from the Gas Pillars as they don't have the gas state and such that the spore flowers do.

    I can check on a IsDead, or whatever the game provides to filter some out, or as you said, housekeeping.

    I am assuming you mean when you reload FRM, you're reloading the save. It would appear the Actor remains after you blow up the gas pillars, as I am calling on the game engine to give me, literally, all actors of the gas pillar class. So, they're not despawning.

  12. Fokson commented on Jun 25, 2026

    @Fokson
    Author

    Oh, my bad! I didn't notice that getSporeFlowers was its own thing. That does work and is fine like that, or alternatively ( since intuitively 'hazard' would refer to both toxic gas spewing field hazards ) a possibility would be to just hard code the gasPillar's relevant missing fields to be "always on" ( state:"Active", GasState:"Gas", Significant:true, and then have 'Dead' indicate whether the pillar has been destroyed or not ).

    Regarding 'reload FRM'; yes. Resource deposits don't disappear from the json list after being destroyed or mined away until the game is saved and reloaded. Gas pillars, however, currently remain even if the game is saved and reloaded.

    I'm not sure if it's just my imagination, but I feel like different gas hazards have different 'effective ranges' for their damage aura ( not taking into account their gas visual effects ). If they do, it would be helpful to include that as a value in the reported data, but if not then disregard that =)

  13. Bread-Ch4n commented on Jun 29, 2026

    @Bread-Ch4n
    Collaborator

    If u need any help with making the app you can ping mei n the discord server.

    Spore Flower damage/trigger sphere sizes may vary, but the defaults seem to be:

    class USphereComponent* TriggerSphere;  // default is 1500
    class USphereComponent* DamageSphere;   // default is 1400

    @porisius might need to confirm that since he is better at finding that stuff xD

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions