Skip to content

A modding library for Valheim, with the goal of making the lives of mod developers easier.

License

Notifications You must be signed in to change notification settings

jotunnlib/jotunnlib

Repository files navigation

JotunnLib

Jötunn (/ˈjɔːtʊn/, "giant") Lib is a modding library for Valheim, with the goal of making the lives of mod developers easier.
Get the mod on NexusMods or Thunderstore!

❗❗ Deprecation notice ❗❗

JotunnLib is no longer under active development, and has not been for quite some time. If you are looking to create a mod, please use Jötunn, the Valheim Library instead! If you are installing JotunnLib as a dependency for any mods, go ahead, but please bug the mod author to make the switch to JVL instead :)

The only updates that will be made to JotunnLib going forward will be to fix any compatibility issues or game-breaking issues - no new features will be added.

Jötunn, the Valheim Library is the direct successor to JotunnLib. It was originally created by the teams behind ValheimLib and JotunnLib as a means to unify the Valheim modding community, and it has evolved into a massive project with many contributors from the community.

Thank you again to all the developers and players who tried out and used the original JotunnLib ❤️

Installation

Instructions for installing and using JotunnLib as a user:

  1. You will first need to download BepInEx for Valheim.
    Move the contents of BepInExPack_Valheim folder into <Steam Location>\steamapps\common\Valheim.
    Note: If you already have used any other mods, you likely already have this installed.
  2. Download JotunnLib from the Releases page. Unzip the downloaded files into <Steam Location>\steamapps\common\Valheim\BepInEx\plugins.
  3. That's it! Now download some mods which use JotunnLib! :)

Features & Roadmap

Currently, JotunnLib lets you create & add all of the following custom things into Valheim:

  • Custom prefabs
  • Custom inventory items
  • Custom recipes
    • Create using JSON
  • Custom input buttons
    • Ability to change custom keybinds in-game via settings menu
  • Custom skills
    • Add using JSON
  • Custom localizations for current language
    • Localizations for other languages
    • Localizations from JSON file
  • Custom piece tables (create your own variant of the Hammer, Cultivator, etc.)
    • Create using JSON
  • Custom pieces to existing piece tables (adding extra items to Hammer, Cultivator, etc.)
    • Add using JSON
  • Custom vegetation spawning in the world
  • Utils for loading custom assets at runtime
    • Loading 2D textures
    • Loading meshes from .obj model files
  • Custom commands
    • Custom console commands
    • Custom chat commands
  • Listening to game events
    • (Currently very few event listeners implemented)
    • All game events
  • Custom tabs for in-game settings menu

Developing mods

Visit our documentation site for more info.

Repo structure

The repository is split up into a few parts:

Issues

Have any issues or feature requests? Open a pull request or submit an issue!

Contributing

For information about contributing to the repo, see the Contributing instructions.