Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reimplement various tools we depend on. #1

Open
3 tasks
DarkRTA opened this issue Jan 6, 2024 · 0 comments
Open
3 tasks

Reimplement various tools we depend on. #1

DarkRTA opened this issue Jan 6, 2024 · 0 comments

Comments

@DarkRTA
Copy link
Member

DarkRTA commented Jan 6, 2024

In order for hmxmilohax/rock-band-3-deluxe#499 to be viable, we should re-implement the major tools we depend on. Otherwise, we are just adding more complexity to our repo setup process. Ideally, these tools should have no dependencies other than what's listed in the Cargo.toml files meaning the only thing contributors will need to install is the Rust compiler.

The big thing we should focus on here is keeping the codebase as easy to navigate as possible. We should move shared code into libraries, and keep binaries as single-purpose as reasonably possible. Mackiloha is an example of what not to do here as its actually really hard to find things in that codebase and it depends on an entire runtime. (.NET)

Anyway, to start with we should probably re-implement the following:

  • Rock Band 3 Deluxe's build script - This should be pretty easy to do although we should aim to make it easy to use for our other projects.
  • superfreq - Specifically the image conversion part. This tool is really slow as it is, and we would likely get a massive reduction in build times from doing so.
  • arkhelper - Re implementing this in addition to superfreq will remove our .NET dependency entirely.

We probably will not need to re-implement these tools although it would be nice to not depend on them if possible:

  • dtab - This tool is well made as it is and we'd get little benefit from rewriting it.

  • ninja - Same reason as dtab, although we could retool our build script to not depend on it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant