shpaass / yafc-ce

Powerful Factorio calculator/analyser that works with mods
GNU General Public License v3.0
40 stars 15 forks source link

YAFC: Community Edition

yafc_icon.png

Why new repo?

The original YAFC repository has been inactive for a year. Bugfixes piled up, but there was no one to review and merge them. This repository aims to fix that.

Have you talked with the author?

Yes, we have their approval.

Expand to see the screenshot yafc_author_approval.png

What is YAFC?

Yet Another Factorio Calculator or YAFC is a planner and analyzer. The main goal of YAFC is to help with heavily modded Factorio games.

Expand to see what YAFC can do Main.gif

YAFC is more than just a calculator. It uses multiple algorithms to understand what is going on in your modpack to the point of calculating the whole late-game base. It knows what items are more important and what recipes are more efficient.

It was created as an answer to deeply recursive Pyanodon recipes, which the tools like Helmod could not handle. YAFC uses Google's OrTools as a model solver to handle them extremely well.

Among other things YAFC has Never Enough Items, which is FNEI on steroids. In addition to showing the recipes, it shows which ones you probably want to use, and how much.

Getting started

YAFC is a desktop app. The Windows build is the most tested, but OSX and Linux are supported too. See Linux and OSX installation instructions.

  1. Navigate to the Releases,
  2. Download the zip file for your given OS,
  3. Extract the zip file to your preferred location,
  4. Run either ./YAFC or ./YAFC.exe (OS-dependent),
  5. Once YAFC is opened, make sure to locate your mod folder. Refer to the wiki for your given OS.

For more examples, you can check out the Gifs, but beware that they are traffic-heavy.
For tricky use cases, please refer to the Tips and Tricks and the in-built tips. Feel free to add to them.

Project features

Possible incompatibilities

YAFC loads mods in an environment that is not completely compatible with Factorio. If you notice any bugs, please report them in the issues.

I am playing Seablock / Other "scripted progression" mod, and YAFC thinks that items are inaccessible

No ultimate solution to this has been found, but you can open Dependency Explorer and manually mark a bunch of items or technologies as accessible.

For Seablock specifically, please check this issue that contains a small list of things to enable at first.

For mod authors: You can detect YAFC by checking the data.data_crawler variable during the data stage. It will be equal to yafc a.b.c.d where a.b.c.d is yafc version. For instance, yafc 0.5.4.0.

Contributing

Do you want to discuss things about YAFC? Feel free to join our channel on the Pyanodons Discord!
Do you want to make a Pull Request to YAFC? Great! Please check out the Contributor's Guide to make sure the review process of your PR is smooth.

License