Skip to content

FEZModding/FEZEditor

Repository files navigation

icon FEZEditor

A Modding Tool for FEZ

JadeEditor

Editor for World Map (live and interactive)

ChrisEditor

Editor for trixel models (Art Objects and Trile Sets)

Overview

FEZEditor is a GUI tool created for managing and modding FEZ's assets.

Warning

FEZEditor is in a development state, and only suitable for use by modding developers.

Expect that some features will be missing or will not work at all.

Cloning

Clone the repository with flag --recurse-submodules.

If you have already cloned the project, use this:

git submodule update --init

Building

Prerequisites

  • .NET 9 SDK
  • fxc.exe for shader compilation (see below)

Shader Compiler (fxc.exe)

The build requires fxc.exe to compile HLSL shaders. You can provide it in one of two ways:

Windows:

  • Place fxc.exe in the FXC/ directory, or
  • Install the DirectX SDK (June 2010) — the build will locate it automatically via %DXSDK_DIR%

Linux / macOS (via Wine):

  • Place fxc.exe in the FXC/ directory and install Wine with winetricks d3dcompiler_43, or
  • Install the DirectX SDK under Wine with winetricks dxsdk_jun2010

Build and run locally

dotnet build -c Debug

Build a self-contained release binary

dotnet publish -c Release -r win-x64    # Windows
dotnet publish -c Release -r linux-x64  # Linux
dotnet publish -c Release -r osx-arm64  # macOS

Note

In JetBrains Rider, ReSharper Build must be disabled to ensure assets are always up to date on every project build. Go to Settings > Build, Execution, Deployment > Toolset and Build and uncheck Use ReSharper Build.

Content Packaging

  • Debug: assets are copied to Content/ next to the executable.
  • Release: assets are bundled into Content.pkz, copied to the publishing directory on dotnet publish.

Features

Asset Management

  • Opening PAK files (readonly mode)
  • Opening folders with extracted assets (XNB and FEZRepacker formats are supported)
  • Extracting assets from PAK

Asset Editing

  • JadeEditor: World Map
  • DiezEditor: Tracked Songs
  • PoEditor: Static text (localization files)
  • SallyEditor: Save files (PC format only)
  • ZuEditor: SpriteFonts
  • ChrisEditor: ArtObjects and TrileSets

Documentation

Refer to FEZModding Wiki for FEZ assets specifications (incomplete).

Contributing

Contributions are welcome! Whether it's bug fixes, implementation improvements or suggestions, your help will be greatly appreciated.

Credits

This project uses:

  • FNA as main app framework.
  • FEZRepacker for taking on the heavy lifting of reading and converting assets.
  • ImGui.NET for creating complex editor UI.

Special thanks to

About

A modding tool for FEZ assets

Resources

License

Stars

Watchers

Forks

Contributors

Languages