If you have experience with or are looking to get into Minecraft mapmaking and are interested in contributing to the map, reach out to us! we're looking for people to help with the following items, in order of priority:
- Blockbench modelling
- Animating Java
- Datapacks
Back in early 2016 I released Omega Flowey in Minecraft
.
Since then I've gained a lot of skills both in Minecraft map development and in programming generally. This repo will store any and everything relating to development of a remaster of the original map for modern Minecraft version(s) with better gameplay, performance, and visuals.
Workspace
-
Install
Node.js >= 16.10
-
Install
Yarn 3.6.3
by runningcorepack enable
-
Initialize the repo by running
yarn
-
Enable Yarn's Plug'n'Play with VSCode by running
yarn dlx @yarnpkg/sdks vscode
-
Copy-paste
.env.EXAMPLE
and rename it to.env
-
Replace all the paths in your new
.env
with paths on your local machine -- e.g. replacingafro
with<YOUR_USERNAME>
. -
Replace
ASSETS_DIR
by following these steps:-
Extract a vanilla assets folder for Blockbench to use by following this reddit post
-
A typical
.minecraft
assets folder is found at%appdata%/.minecraft/versions
-
You will need some form of file extraction software -- e.g. 7-Zip
-
The file context to extract the
.jar
will look something like7-Zip > Extract to "1.21\"
-
-
Set
ASSETS_DIR
to the path to your extracted version folder- Make sure to point to the doubly nested folder -- e.g.
.../versions/1.21/1.21
- Make sure to point to the doubly nested folder -- e.g.
-
-
-
Run
yarn down
to extract the Minecraft world to your local Minecraft'ssaves
directory (so you can open the world in-game)
Required Tools
- Blockbench -- for 3D modelling
- Install our Blockbench CLI plugin:
- Open Blockbench, then go to
File > Plugins > Load Plugin From File
and select thebb-cli.js
file from your localomegaflowey-remastered
repo (omegaflowey-remastered/package-scripts/modules/bb-cli.js
).
- Open Blockbench, then go to
- Install Animated Java from the Blockbench plugin store
- see the docs for a detailed guide on how to do this.
- Restart Blockbench after installing these plugins
- Install our Blockbench CLI plugin:
Recommended Tools (Optional)
Install the following apps:
- paint.net -- for image editing
- ScreenToGif -- lightweight GIF recorder
- DaVinci Resolve -- for video editing / frame-by-frame video analysis (of the original fight in Undertale)
We also recommend using blockcolors.app to get a representative vanilla block texture for a desired color while texturing models.
Local Unit Testing (Optional)
- Download the Fabric mod loader and install a new profile to your Minecraft launcher
- Download the Fabric API jar
- Download the latest release jar of
packtest
- You should probably download the same version that we're currently specifying in
./.github/workflows/datapack.yml
- You should probably download the same version that we're currently specifying in
- Move the
Fabric API
andpacktest
jars into yourmods
folder in the Minecraft directory (typically%appdata%/.minecraft/mods
) - Run the new profile in your Minecraft launcher to launch a (lightly) modded instance that's able to run
packtest
's new commands designed for testing- Try:
test runall
- See
packtest
's README for full command documentation
- Try:
Read the descriptions of the following scripts and run them when it is recommended to:
-
yarn start export
: run the Animated Java (AJ) blueprint export scriptWe recommend running
yarn start export
at least once, and every time changes to.ajblueprint
files occur from new incoming commits.-
yarn start export.force
Normally,
yarn start export
keeps track of what files have been exported on your local machine via each model's file hash.Sometimes this gets out of sync (for various, usually rare, reasons); in this case you can run
yarn start export.force
to have the auto-exporter forcibly re-export every model in the repository.This shouldn't be your default export script because it takes around a minute to run, but is completely safe to do if you're ever unconfident that your exported model files are correct.
-
-
yarn start
: this keeps your local repository's content synced with your.minecraft
directory -- datapack/resourcepack changes will reflect in-gameWe recommend keeping
yarn start
running at all times while working on the project. -
yarn down
: extracts the Minecraft world in the repo to your local Minecraft saves. This is important to run whenever there's changes to the world (seeyarn sync
above) or you want to hard-reset your world state, e.g. if you made any changes you want to discard. -
yarn sync
: zips your Minecraft world and copies it to the repo as (world.zip
). This is how we handle version-control for the actual Minecraft world. This is especially important to run and commit if you make any physical changes to the world like breaking/placing blocks. -
yarn lint
: runs Prettier, ESLint, and our custom linting rules on our files. Run this prior to pushing commits to save on our workflow hours.
- Create a new Animated Java Rig via
File > New > Animated Java Blueprint
- Enter inputs for the following required fields:
Project Name
Resource Pack
: select theresourcepack
directory located at the root of the repositoryData Pack
: select thedatapacks/animated_java
directory starting from the root of the repository
- Save the file with
CTRL + S
to somewhere appropriate underresourcepack/assets/omega-flowey/models
- While the model is still a work-in-progress, append
_dev
to the filename so our auto-export scripts skip it- e.g.
housefly_dev.ajblueprint
- e.g.
- While the model is still a work-in-progress, append
- Export your model/animations by clicking
Animated Java > Export
at the top - When finished with the model, remove the
_dev
suffix from the filename (e.g.housefly.ajblueprint
)