Skip to content

A factorio inspired puzzle game where you build factories to transform numbers

License

Notifications You must be signed in to change notification settings

UYasher/factor.io

Repository files navigation

project-cis552

By Maddy Adams (m20adams), Makarios Chung (chungma), and Shriyash Upadhyay (shriyash)

Project overview

Blueprint.hs defines the Blueprint datatype that user edits to try to solve the level.
Factory.hs provides a way of checking if a Blueprint solves a level by converting it into the Factory datatype, and then running multiple steps of the Factory simulation until the level is solved (or not).
Machine.hs and Operator.hs define datatypes that live in Blueprints, such as a Source that creates values, or an Add that sums values.
ResourceUpdate.hs exposes a way for the Factory simulation to access and modify state through the Resources datatype.
BlueprintTests.hs generates random levels using GraphUtils.hs

Building, running, and testing

This project compiles with stack build. You can add any needed dependencies and update project metadata in package.yaml.

You can run the main executable with stack run. The entry point for the executable is in Main.hs. It imports Lib.hs, where the bulk of your code should be written.

Write your tests in the test directory. You can run the tests with stack test.

Lastly, you can start a REPL with stack ghci.

About

A factorio inspired puzzle game where you build factories to transform numbers

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published