Kafkatorio/README.md
2022-02-20 12:30:45 +01:00

2.7 KiB

Kafkatorio

  1. output events from Factorio into Kafka.
    1. Factorio mod listens to events https://mods.factorio.com/mod/kafkatorio-events
    2. For each event, it emits a log message
    3. A tool (e.g. Kafkatorio Kafka Pipe) reads the logs, and sends the messages to a Kafka cluster
  2. Kafkatorio Events Server reads the messages from Kafka
    1. create images of the map
    2. hosts a web map

License

While this project is under development, no license is provided.

cmds

./bin/kafka-streams-application-reset.sh --application-id kafkatorio-events-processor --input-topics factorio-server-log

:screen-fps=60.000000 :live-caching=300 :screen-width=1920 :screen-height=1080 :screen-top=100 :screen-left:20 :screen-fps=60.000000 :live-caching=300 --screen-width=1920 --screen-height=1080 :sout=#transcode{vcodec=h264,vb=0,scale=0,acodec=mpga,ab=128,channels=2,samplerate=44100}:file{dst=D:\\savedir.mp4} :sout-keep

todo

  • add settings
    • is active - whether files are exported or not
    • delete files - clean up all files
    • tick-rate - how often reports are generated
      • requires on some sort of in-mod cache of map<entity-id, event>
      • also divide by game-speed? to keep ratio the same

to investigate:

wasm

kt -> wasm -> lua? kt-flatbuffers -> wasm -> lua?

https://www.npmjs.com/package/wasm2lua?activeTab=readme

Encodings