Coder Social home page Coder Social logo

ficsitremotemonitoring's People

Contributors

binarymuse avatar os17279 avatar porisius avatar v0id-whisperer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

ficsitremotemonitoring's Issues

Add getGenerator route

As requested, a reminder in the shape of a GitHub ticket!

Would you consider adding a route named something like /getGenerators? This would be a route that returns something similar to getFactory, but for power structures:

  • building/generator type
  • item consumption stats/min
  • location
  • power produced
  • max power produced
  • circuitID

Wrong JSON File output for /getDrone endpoint

As me and a friend of mine are currently trying to develop a dasboard with this endpoint we found out that the receiuved data cannot be parsed into a Web-JSON Object as it has a small error.

As one can see in the following screenshot the FlyingSpeed Key has the value 1,000 which gets parsed as the value 1 and then it gets confused by the 000.
grafik

I think the easiest fix would be to change the FlyingSpeed from f.ex. 1,000 to 1.000. Then all should work fine again.

Thanks again for this great mod and I hope you also like our dashboard :D

/getStorageInv only show first slot

Hello

when getting /getStorageInv container or any storage only shows one inventory slot and it is random

here is an json example

{
  "properties": {
    "name": "Personal Storage Box",
    "type": "Storage Container"
  },
  "geometry": {
    "coordinates": {
      "X": 247995.234375,
      "Y": -153958.953125,
      "Z": 3835.646484375
    },
    "type": "Point"
  }
},
{
  "Name": "Storage Container",
  "ClassName": "Build_StorageContainerMk1_C",
  "location": {
    "x": 249185.234375,
    "y": -150100.265625,
    "z": 4062.712158203125,
    "rotation": 270
  },
  "inventory": [
    { "Name": "Iron Ingot", "ClassName": "Desc_IronIngot_C", "Amount": 100 }
  ],
  "features": {
    "properties": {
      "name": "Storage Container",
      "type": "Storage Container"
    },
    "geometry": {
      "coordinates": {
        "X": 249185.234375,
        "Y": -150100.265625,
        "Z": 4062.712158203125
      },
      "type": "Point"
    }
  }
}

Underclocked production numbers are not correct

Found an issue with underclocked machines reporting incorrect CurrentConsumed/CurrentProd numbers.

EG: manufacturer here is reporting correct MaxConsumed/MaxProd numbers, but incorrect Current* numbers, which is also reporting a ProdPercent/ConsPercent of over 100%.

(This affects GetProdStats as well.)

{
      "building":"Manufacturer",
      "location":{
         "x":-47887.464844,"y":228504.71875,"z":7234.810547,
         "rotation":45
      },
      "Recipe":"Alternate: Radio Control System",
      "production":[
         {
            "Name":"Radio Control Unit",
            "CurrentProd":4.5,
            "MaxProd":2.5,
            "ProdPercent":179.899994,
            "Inventory":0
         }
      ],
      "ingredients":[
         {
            "Name":"Crystal Oscillator",
            "CurrentConsumed":1.5,
            "MaxConsumed":0.8,
            "ConsPercent":179.899994,
            "Inventory":100
         },         {
            "Name":"Circuit Board",
            "CurrentConsumed":15.0,
            "MaxConsumed":8.3,
            "ConsPercent":179.899994,
            "Inventory":200
         },         {
            "Name":"Aluminum Casing",
            "CurrentConsumed":90.0,
            "MaxConsumed":50.0,
            "ConsPercent":179.899994,
            "Inventory":168
         },         {
            "Name":"Rubber",
            "CurrentConsumed":45.0,
            "MaxConsumed":25.0,
            "ConsPercent":179.899994,
            "Inventory":200
         }
      ],
      "ManuSpeed":55.599998,
      "IsConfigured":true,
      "IsProducing":true,
      "IsPaused":false,
      "CircuitID": 83
}

Screenshot of affected manufacturer for reference:

image

Normalize units for liquid+gas between extractors and factory calls

Would it also be possible to normalize units between getExtractors and getFactory calls? It'd make it possible to add and compute these numbers up nicely.

getExtractor is returning m3

Examples note production is a rate of 120:

"building":"Resource Well Extractor",
      "location":{
         "x":218169.40625,"y":137548.90625,"z":-209.025772,
         "rotation":240
      },
      "Recipe":"Nitrogen Gas",
      "production":[
         {
            "Name":"Nitrogen Gas",
            "CurrentProd":120.0,
            "MaxProd":120.0,
            "ProdPercent":"100.0"
         }
      ],
      "ManuSpeed":1.0,
      "IsConfigured":true,
      "IsProducing":true,
      "IsPaused":false,
      "CircuitID":0

getFactory (both production and consumption) is using a unit that is x1000 of m3: note consumption is 37500.0

      "building":"Blender",
      "location":{
         "x":151600.0,"y":202700.0,"z":-5300.0,
         "rotation":0
      },
      "Recipe":"Fused Modular Frame",
      "production":[
         {
            "Name":"Fused Modular Frame",
            "CurrentProd":1.5,
            "MaxProd":1.5,
            "ProdPercent":100.0
         }
      ],
      "ingredients":[
         {
            "Name":"Heavy Modular Frame",
            "CurrentConsumed":1.5,
            "MaxConsumed":1.5,
            "ConsPercent":100.0
         },         {
            "Name":"Aluminum Casing",
            "CurrentConsumed":75.0,
            "MaxConsumed":75.0,
            "ConsPercent":100.0
         },         {
            "Name":"Nitrogen Gas",
            "CurrentConsumed":37500.0,
            "MaxConsumed":37500.0,
            "ConsPercent":100.0
         }
      ],
      "ManuSpeed":1.0,
      "IsConfigured":true,
      "IsProducing":true,
      "IsPaused":false,
      "CircuitID": 83

Here's a battery blender for comparison on liquid production - note - water, sulfuric acid, and alumina solution are all x1000 of the units displayed in game:

"building":"Blender",
      "location":{
         "x":21200.0,"y":15900.0,"z":24700.015625,
         "rotation":0
      },
      "Recipe":"Battery",
      "production":[
         {
            "Name":"Battery",
            "CurrentProd":20.0,
            "MaxProd":20.0,
            "ProdPercent":100.0
         },         {
            "Name":"Water",
            "CurrentProd":30000.0,
            "MaxProd":30000.0,
            "ProdPercent":100.0
         }
      ],
      "ingredients":[
         {
            "Name":"Sulfuric Acid",
            "CurrentConsumed":50000.0,
            "MaxConsumed":50000.0,
            "ConsPercent":100.0
         },         {
            "Name":"Alumina Solution",
            "CurrentConsumed":40000.0,
            "MaxConsumed":40000.0,
            "ConsPercent":100.0
         },         {
            "Name":"Aluminum Casing",
            "CurrentConsumed":20.0,
            "MaxConsumed":20.0,
            "ConsPercent":100.0
         }
      ],
      "ManuSpeed":1.0,
      "IsConfigured":true,
      "IsProducing":true,
      "IsPaused":false,
      "CircuitID": 83

Factory building manu speed is always 1.0, MaxProd/MaxConsumed follows slugs amount inserted

Similar to the miners bug, factory buildings are also getting MaxProd numbers from the # of slugs inserted rather than the set clockspeed.

Also, ManuSpeed always seems to return as 1.0. Probably desirable to follow the same as extractors where 100 (for 100%) to 250 (for 250%) etc.

Example Alclad Aluminum Sheet assembler, set to 222% clockspeed. (expected 66.6 aluminum ingots 22.2 copper ingots in, 66.6 aluminum sheets out)

{
      "building":"Assembler",
      "location":{
         "x":15259.248047,"y":46446.4375,"z":25134.820312,
         "rotation":130
      },
      "Recipe":"Alclad Aluminum Sheet",
      "production":[
         {
            "Name":"Alclad Aluminum Sheet",
            "CurrentProd":0.0,
            "MaxProd":75.0,
            "ProdPercent":0.0
         }
      ],
      "ingredients":[
         {
            "Name":"Aluminum Ingot",
            "CurrentConsumed":0.0,
            "MaxConsumed":75.0,
            "ConsPercent":0.0
         },         {
            "Name":"Copper Ingot",
            "CurrentConsumed":0.0,
            "MaxConsumed":25.0,
            "ConsPercent":0.0
         }
      ],
      "ManuSpeed":1.0,
      "IsConfigured":true,
      "IsProducing":false,
      "IsPaused":false,
      "CircuitID": 0
}

0.10.0 - Default website/port loads on 8090

I've had to do a new install of Satisfactory Experimental and FRM version 0.10.0 and am experiencing the webserver auto-starting on port 8090 causing the website information not to display in the webpage. Tried writing a new WebServer.cfg as this does not exist on new install and it does not respect starting up on 8080. Looked at the code and see that the asset/js references port 8080 specifically.

Auto-starting on this new port also is causing companion apps others have written to pull data into things like Grafana to fail.

Add drone home station, and fix currentDestination

Would be nice to add the result of Get Home Station on drones.

Also, CurrentDestination does not appear to display in the results properly.

I suspect this to be the difference between return values of GetCurrentDestinationStation/GetHomeStation -- these return an FGBuildable Drone Station Object Reference -- I beleive an additional call to Get Info before plugging into Get Building Tag would convert this to an FGDrone Station Info Object Reference which is how it's working on Drone Stations.

image

FactoryCacheSeperate vs FactoryCacheGroup

FactoryCacheSeparate is referenced both in the docs an in the Config_Factory.

FactoryCacheGroup is referenced in FRM_Factory Get Factory in where I'm assuming FactoryCacheSeparate should be.

image

Error with JSON when the game is set to French

Hello, sorry for my terrible English.
So I have the following error (screen below) when my game is in French and everything works when I am in English. So I want to report it for future people for whom its not working.

image

image

getWorldInv comma in JSON String Issue

Hi there, I am currently working on the dashboard project with @Jonathan-Hofmann.

We have just noticed when trying to pull the getWorldInv Data that there is an issue with a comma in the count, so instead of 1000 it will output 1,000 breaking the JSON file. It would be greatly appreciated if this could be fixed, I have attached a screenshot.

image

Thanks in advance,
arfla

Stuttering observed with WebSocket_Delay when WebSocket_Autostart is false

Steps to reproduce: Large-ish late game world. Websocket config disabled.

Set "FactoryCacheDelay": 600 (maximum) to ensure GetFactory is not at fault.
Observed stuttering/freezing for a second or two every 30 seconds.
Updated WebSocket_Delay to 60 (from default of 30). Observed the stuttering/freezing every 60 seconds.

I suspect this is caused by the subsystem's call to getAllFunc:
image

Which in turn calls things like getBelts and getPipes which a large factory may have a LOT of.

This tick should probably also honor WebSocket_Autostart so as to avoid unnecessary computation.

Working with JSON

Hi there, and thanks for this mod.
I am having trouble using python to query JSON data, it keeps returning multiple entries(6) (i have only 1 biomass in production), im also trying to figure out how to get say the item name and number being produced ? Any help appreciated and then I will be up and running

import json
import requests

url = 'http://localhost:8080/getProdStats'
r = requests.get(url)
data = json.loads(r.content.decode())

for i in data:
    print (data[0]['ItemName'])

Incorrect production numbers

Hey there! I'm currently really enjoying this mod, and am working on building out a new web dashboard for it. However while using the getProdStats endpoint, a lot of the numbers seem to be wrong. I'm not sure if I'm missing something but. The consuption numbers seem to be correct, however the actual production numbers, even for things I am producing hundreds or thousands of per minute, seem to all say small numbers like 0-2.

Maybe I'm just missing something, but figured I'd open an issue to see!

For example:
image

That's what the endpoint says for Iron rods, again, the consumption number (at least in the prodPerMin value) looks correct, but all of the production numbers seem very low.

Max Production numbers on getExtractors

As promised, I did wait an entire year before finding more bugs :)

Max production numbers seem to be doubly multiplied by overclocking amount on getExtractors

EG this extractor is a fully overclocked mk3 miner on a normal node. (Even if it was pure, max prod of 1500 is still over the 1200 cap):

"building":"Miner Mk.3",
      "location":{
         "x":-44922.0,"y":302273.59375,"z":-2515.800049,
         "rotation":210
      },
      "Recipe":"Iron Ore",
      "production":[
         {
            "Name":"Iron Ore",
            "CurrentProd":341.200012,
            "MaxProd":1500.0,
            "ProdPercent":"22.700001"
         }
      ],
      "ManuSpeed":2.5,
      "IsConfigured":true,
      "IsProducing":false,
      "IsPaused":false,
      "CircuitID":83

Development support?

Hi porisius,

would you mind having some support developing the mod?

Is there any possibility to look into the blueprints and learn how the mod works?

Vehicle Speed always 0 when far away

Another issue that we noticed...

The vehicle speed changes to 0 after a certain distance is between the player and the vehicle. This does not happen with the train, any idea what could possibly cause that?

Thanks in advance,
arfla

Duplicate Circuit IDs bloating getPower

Circuit IDs bloating getPower. The circuit information is coming from Satisfactory, and not the mod. Attempts to use Circuit Groups have failed, but I am engaging with others in the modding community for assistance.

Gets that don't work

Hello, yes me again xD
By testing some get do not work or they crash the game.
Here is the list

<style> </style>
URI Handler Result
Get ย 
Factory Good
Assembler Good
Blender Good
Constructor Good
Foundry Good
Manufacturer Good
Particle Good
Refinery Good
Smelter Good
Drone Good
DroneStation Good
DropPod Good
Explorer GameCrash
Extractor Good
ModList Good
Power Good
Player Good
ProdStats Good
ResourceNode Good
ResoucreSink Good
Schematics Good
Switches Good
Tractor Good
Train 404
TrainStation Good
Truck GameCrash
TruckStation Good
Vehicles GameCrash
All Good

Inventory not counting correctly

I have multiple containers of batteries, but it's telling me I only have 2 from the getWorldInv route. Not sure what's causing it, but my guess its it's resetting rather than aggregating as there does exist a container with a stack of 2 batteries in my save.

Apologies for the short note this time, I don't have much to go off of this time

Porsius' Discord account got hacked.

@porisius Hey, your Discord account got hacked and just tried to dm me and get me to download malware. I didn't know if you were aware and couldn't find another way to contact you, so I'm sorry if this isn't the most appropriate method to get your attention.

Unable to receive data from serial

I installed the mod and ArduinoKit to interface an Arduino Uno via Serial, but for some reason, it doesn't receive nothing.
The configuration for the serial port is correct and i have done the /frmserial start command.
Is there an example to read the getProdStats JSON.

The Arduino Script

void setup() {
  Serial.begin(9600);

}

void loop() {
  if(Serial.available() > 0) {
    int readed = Serial.read();

    Serial.println("READED BYTES: " + readed);
  }
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.