- Go 100%
Mana2
⚠️ Mana2 is still under heavy development, and is not yet released, but it is ready to use. ⚠️
A sequel to my old magic analyser!
Planned/completed features:
- Modular analyses algorithms; choose between traditional analyses, old Mana algorithms, or optimal pathfinding analyses considering combos, layers, and magic.
- Custom board shapes, allowing for custom row or column staggers.
- Composable commands with s-expressions, for example:
compare sturdy (swap sturdy ab). - Customisable layout generation for regular layouts, or layouts with magic.
- Many included layouts.
- Customisable corpus parsing options.
- Simple user definable stats.
TUI of Mana2 showing a layout preview.
Installing and Running
Mana2 requires Go to be installed. Install it with your package manager or see the website.
git clone https://codeberg.org/Zakkkk/mana2.git
cd mana2
go run ./cmd/cli
You should then be able to run any commands in the TUI.
Alternatively, you can run Mana2 as a CLI tool, rather than in the TUI by appending the desired commands after the run command:
go run ./cmd/cli load sturdy
You can run multiple commands by putting parentheses around your commands:
go run ./cmd/cli (load sturdy) (compare night (swap night ae))
You may need to wrap your commands in "quotes" if your terminal misinterprets your input: go run ./cmd/cli "(compare sturdy (swap sturdy ab))".
Documentation
To get started for for any questions, please see the /docs/ folder for full documentation and examples. I've specifically made this to be easy to understand and read so please don't be intimidated!
Engines
Mana2 uses 'engines' to achieve its modular analyses. There are different algorithms for analysing a layout, depending on what is needed, for example, you might have a layout with simple magic, complex magic, layers, or combos, and it would make sense to choose the fastest engine which still supports all the features of your layout. This will especially matter for generation as layouts needs to be analysed thousands of times.
If you only intend on using Mana2 as a regular analyser, you can keep using the Standard Engine and ignore further mentions of it.
Contributing
You are welcome to contribute to Mana2! Ways on contributing include:
- Opening issues for bugs, feature suggestions, or questions.
- Tackling currently open issues. In particular, see the issues tagged with "good first issue".
- If you would like to add a feature not currently mentioned in the issues, or have a question about getting started, please send a message in the dev thread.
Ask before embarking on doing complicated work that might not be upstreamed.
AI Policy
Your contribution may not contain AI-generated content. This includes, but is not limited to: code, documentation, assets, or issues. You may use neural network based translation tools for issues.
Acknowledgements
Special thanks to Apfel, StrawberryTurtle aka BerryKate, yuli for their suggestions and contributions.
Consider joining the AKL Discord!