VedalAI / neuro-amongus

Among Us Plugin for Neuro-sama
GNU General Public License v3.0
540 stars 49 forks source link

Separate plugin functionality #4

Closed Vedal987 closed 1 year ago

Vedal987 commented 1 year ago

I want to separate the functionality of the plugin into the side that people will use to record their gameplay as training data for Neuro and the side that communicates with the AI to allow Neuro to play.

I've started by moving some of the Neuro-specific functionality into the Vision class (this keeps track of what Neuro sees throughout the round to be fed into the language model). We should probably use the Recorder class for gathering Frame data.

We will also probably want a separate class in the future to interface with the Python neural network, probably just open a socket and have some sort of communication protocol. This may end up being a different plugin(?), that instead just uses the data collected from this plugin to interface with the neural network.

Ideally there shouldn't be much code in the NeuroPlugin class too and it should instead handle setting these individual components up.