Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
Research Station

Research Station

A Simple Research System

148.1k
5
AboutChangelogVersions

title image

This mod adds a research system similar to the one used in Ancient Warfare 2.

You will use the Research Station to do research and the Engineering Station to craft researched items.

The Engineering Station can be used for normal crafting too and supports JEI.

Creating Research Definitions:

Every research is defined by a json file in config/researches/. This directory should be created on first run, or you create it yourself. The json files are loaded and displayed in the research book in alphabetic order of the filenames, so if you want to group your researches together / order them you can give them similar filenames like "mymodresearch001", "mymodresearch002".

This is an example research definition:

{
      "id": "example Research 1",
      "ticksRequired": 100,
      "requiredResearches": [],
      "requiredItems": [
        {
          "id": "c:ingots/iron",
          "amount": 4
        }
      ]
}

It has no required researches and need 4 iron ingots to unlock. it takes 100 ticks to complete.

Here is another research, it requires "example Research 1" to be completed:

{
      "id": "example Research 2",
      "ticksRequired": 300,
      "requiredResearches": [
        "example Research 1"
      ],
      "requiredItems": [
        {
          "id": "minecraft:string",
          "amount": 128
        }
      ]
}

Creating Research Crafting Recipes:

Every research-crafting recipe is defined as a json file in config/research_recipes. This directory should be created on first run too. Here is an example of how a recipe can look like:

{
      "requiredResearch": "example Research 1",
      "output": {
        "id": "minecraft:dirt",
        "amount": 10
      },
      "pattern": [
        "   ",
        "ABA",
        "   "
      ],
      "keys": {
        "A": {
          "input": { "id": "c:ingots/iron", "amount": 2 }        
        },
        "B": {
          "input": { "id": "minecraft:string", "amount": 1 }
        }
      }
    }

The pattern should always be 3x3. Research recipes support consuming multiple items per slot.

They also support converting a used item to a new item, for example if you want to use a water bucket and give back an empty water bucket. It would look similar to this, notice that i added onComplete to the recipe:

{
      "requiredResearch": "example Research 2",
      "output": {
        "id": "minecraft:diamond",
        "amount": 10
      },
      "pattern": [
        "   ",
        "ABA",
        "   "
      ],
      "keys": {
        "A": {
          "input": { "id": "c:ingots/gold", "amount": 2 },
          "onComplete": { "id": "minecraft:stone", "amount": 1 }
        },
        "B": {
          "input": { "id": "minecraft:string", "amount": 1 }
        }
      }
    }

This recipe will consume a total of 4 gold ingots, (2 for every 'A') and it will product a total of 2 stone (1 for every A).

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Compatibility

Minecraft: Java Edition

1.21.x

Platforms

NeoForge

Supported environments

Client and server

Links

Join Discord server

Creators

MarvinEckhardt
MarvinEckhardt Member

Details

Licensed ARR
Published 6 months ago
Updated 3 months ago

Modrinth is open source.

main@a0bd011

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.