Open William-McGonagle opened 3 years ago
I finished the File Parser and Config Files.
I also just finished building the CLI, so now you can enter big-tony --HTTP_SERVER=No
and it will parse correctly.
I am going to get working on a settings generator system so default settings can easily be generated as well.
The API should be done soon, but I'm not quite sure when.
Okay... the API is pretty rudimentary at the moment but in a passing state. Now it is time for documentation!
Finished all of the Documentation- I am going to start working on the config file generation system.
Looking at the code, it will likely be refactored, and so this issue should stay open!
Idea
There is no doubt, Big Tony is going to be huge. There needs to be a system to customize how each user will use the hundreds of different options available. So far, there will need to be three different ways to set up these configurations: config file, command-line config, and config through API. I really like how the C++ config files work, but I think JSON or XML files could work well too.
Implementation
I think that the way it should work is a
.config
file could be created. I think it could be interesting if the machine could automatically tell what kind of file it is. But, to be completely honest, this approach would be stupid. Each line should just have a key and a value. It would be formatted as:key: value
, and it would be the most efficient option.For the CLI, you should just be able to input the keys and values one after each other. This would be a simple syntax, just like this...
key=value
. This should work for most of the use cases, and if it didn't, the user could easily use the.config
files.Finally, for the API, there should be a JSON-like syntax. This could also flow into things like enabling or disabling the HTTP server and Voice Channel systems. In terms of which setup system is most important (overrides the others), the API would be the most, and then would be the CLI, and finally would be the
.config
file.Requirements