* Generate decomp.dev progress reports - Wire up CI to generate decomp.dev progress reports (using the objdiff report format) and upload them as GHA artifacts, by using `mapfile_parser`. - This also adds a `decomp.yaml` file, which is used by `mapfile_parser` to generate the objdiff reports. - The `progress.py` script used to locally visualize the current progress has been updated to parse objdiff reports too. - `mapfile_parser` 2.13.0 or above is now required. - Delete the old `upload_frogress.py` script. Once we have this we can create an af entry in [decomp.dev](https://decomp.dev/). I'll talk with Encounter to migrate the old frogress progress into decomp.dev too * Activate venv
Animal Forest

This is a work-in-progress decompilation project for the Nintendo 64 game Animal Forest, also known as どうぶつの森 (Doubutsu no Mori). There is a decompilation project for the GameCube versions (Animal Crossing, etc.) here.
- WARNING! -
This repository is a work in progress, and while it can be used to make certain changes, it's
still constantly evolving. If you wish to use it for modding purposes in its current state,
please be aware that the codebase could drastically change at any time. Also note that some
parts of the ROM may not be 'shiftable' yet, so modifying them could currently be difficult.
Note: this project is not a port, to PC or any other platform. It takes a Nintendo 64 rom, extracts assets from it, and combines them with C code we reverse-engineered from the rom, to produce an identical rom. It is explicitly a non-goal for this project to be used as basis for a port, or to be used for any commercial purpose.
Setup
Linux
1. Install build dependencies
The build process has the following package requirements:
- make
- git
- build-essential
- clang
- binutils-mips-linux-gnu
- python3
- python3-pip
- python3-venv
Under Debian / Ubuntu (which we recommend using), you can install them with the following commands:
sudo apt update
sudo apt install make git build-essential clang binutils-mips-linux-gnu python3 python3-pip python3-venv
2. Install python dependencies
The build process has a few python packages required that are located in requirements.txt.
To install them simply run in a terminal:
make venv
3. Prepare a base ROM
Copy your ROM to inside baseroms/ in the version folder corresponding to your ROM's version, and rename the file of the baserom to baserom.z64. ex: baseroms/jp/baserom.z64
4. Make and Build the ROM
To start the extraction/build process, run the following command:
make setup
make extract
make
make compress
Note about licensing
The contents of the src and include folders are, as far as possible, licensed under CC0.
Other folders and files in the repository are CC0 unless they specify another license.
The licensing of this repository does not cover subrepos, namely:
tools/asm-differtools/asm-processortools/fadolib/ultralibtools/z64compress