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
Lava Java

Lava Java

Skeletons selling coffee in the Nether.

2,210
20
Economy
Food
World Generation
AboutGalleryChangelogVersions

Lava Java

Lava Java's Lava Javas will warm your blackened bones! Each cup is a melody of unique flavors that will ensure you are able to face the rest of your day. With Lava Javas starting at only 4 gold nuggets, our prices are affordable by any standard. Our friendly staff are always working to improve, so every time you visit they will have new and exciting Lava Javas waiting for you to try. Please forward all complains and concerns to the branch manager.

Lava Java adds a structure to the Nether: the Lava Java Café. Within the café is a pair of friendly baristas who will sell you snacks and Lava Javas in exchange for gold nuggets. Each Lava Java will grant one or more buffs based on the drink's flavor and freshness. As you trade with a particular barista it will become more skilled, selling more drinks at once and making more complex brews.

Data Packs

Lava Java uses datapacks to determine the flavors that drinks can have. It looks for json files under data/lavajava/lava_java_flavor. They are formatted like so:

{
  "flavorID": "spellbound:bubbly",
  "statusID": "spellbound:shielded",
  "isDrawback": false,
  "duration": 7200,
  "magnitude": 4,
  "weight": 30,
  "value": 15,
  "namePriority": 0,
  "exclusions": [
    "spellbound:extra_bubbly",
    "spellbound:very_bubbly"
  ]
}

flavorID: the ID of your flavor. This is mandatory. Unlike the name of the json file, this must be unique. Otherwise it may conflict with other flavors.

statusID: the ID of the status effect your flavor provides. This is mandatory.

isDrawback: determines if the flavor decreases or increases the cost of a Lava Java. Defaults to false. In the future, may effect the conditions under which it can be selected.

duration: how many ticks the flavor's effect will last. This is mandatory, and must be a positive integer.

magnitude: determines the magnitude of the effect. This is optional, but recommended. If provided, must be a non-negative integer. Defaults to 0. Keep in mind that internally effect magnitudes are one lower than they are displayed in game. Strength II is actually magnitude 1, for example.

weight: determines how common the flavor is. This is mandatory, and must be a positive integer. Flavor generation may be seen like a raffle where tickets are pulled from a box, and this is how many tickets point to this flavor if chosen. 45 is for common flavors like Sweet or Creamy, 30 is for flavors that are neither common nor uncommon like Spicy, and 10 is for rare flavors like Thick or Filling. Generally, superior versions of a flavor (such as Extra Spicy) should be 5 times as rare as their lesser variants.

value: how much the flavor influences prices. This is mandatory, and must be a positive integer. A Lava Java with just your flavor will cost about one quarter this number. If the flavor is negative, it instead determines how much the price is reduced. Generally, superior versions of a flavor (such as Very Creamy) should cost twice as much as their lesser variants.

namePriority: currently does nothing. This is optional. If provided, must be an integer. Default value is 0. Once implemented, it will determine the order that flavors are listed in a Lava Java's name. Higher priorities will be listed later in the drinks name (a Sweet Spicy Lava Java rather than a Spicy Sweet Lava Java)

exclusions: a list of flavorIDs that prevents this flavor from co-existing with the listed flavors. This is optional. If it would be selected but an excluded flavor was first, or if an excluded flavor has been selected but it had been selected first, than the second flavor will be rerolled. These flavors do not need to exist. This allows you to exclude flavors that come from other mods, even if you do not use that mod as a dependency.

Once you have created your flavor, add a line to your language file in the format "flavor.spellbound.bubbly": "Bubbly", to set the display name of the flavor.

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Compatibility

Minecraft: Java Edition

1.20–1.20.4
1.19–1.19.2

Platforms

Fabric

Supported environments

Client and server

Links

Report issues View source Join Discord server
Donate on PayPal

Creators

TigerOfTroy
TigerOfTroy Owner

Details

Licensed MIT
Published last year
Updated last year

Modrinth is open source.

main@fafd47f

© 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.