Specialty Drink - pluto7073/PlutosDrinksAPI GitHub Wiki

Specialty Drinks are special recipes that represent a base drink and a series of additions. These can have additional effects, not just the ones given by the additions it has.

Obtaining

Crafting in a Drink Workstation

Recipes for various Specialty Drinks can be viewed via REI (other recipe viewer support coming soon). Here you will be able to see the base drink you start with, and a series of items you need to add to the drink in order to create it. A list of built-in drinks can be found below

Built-In Recipes

Pluto's Coffee Mod

Caffè Latte

Base: Latte

Additions:

  • Espresso Shot x2

Caffeine: 150

Extra Effects:

  • Clears All Harmful Effects

Mocha

Base: Latte

Additions:

  • Mocha Syrup x2
  • Espresso Shot x2

Caffeine: 150

Extra Effects:

  • Restores 12 Hunger
  • Clears All Harmful Effects

Red Eye

Base: Any Brewed Coffee

Additions:

  • Espresso Shot x3

Caffeine: 350

Extra Effects:

  • Haste III for 2 Minutes

Sweet Caramel Latte

Base: Latte

Additions:

  • Honey
  • Caramel x2
  • Espresso Shot x2

Caffeine: 150

Extra Effects:

  • Health Boost III for 2 Minutes
  • Regeneration for 10 Seconds
  • Absorption for 10 Seconds
  • Restores 3 Hunger
Tea Time

Sweetened Iced Tea

Base: Black Tea

Additions:

  • Ice
  • Honey
  • Sugar x2

Caffeine: 50

Extra Effects:

  • Standard Black Tea Effects
  • Restores 3 Hunger
  • Regeneration II for 10 Seconds

Tea of Great Escape

Base: Concealing Tea

Additions:

  • Ice
  • Milk
  • Chorus Fruit
  • Echo Shard

Caffeine: 50

Extra Effects:

  • Standard Concealing Tea Effects
  • Fire Resistance II for 10 Seconds
  • Clears All Harmful Effects
  • Teleports you to a random location in a 12 Block radius
  • Applies the Glowing effect to anyone (except you) in an 8 Block radius for 30 seconds
  • Regeneration II for 10 seconds
The Art of Bartending

Appletini

Base: Cocktail Glass

Additions:

  • Ice
  • Shot of Vodka x4
  • Shot of Apple Liqueur x2
  • Sugar
  • Apple

Alcohol: 72g (~3.21oz of Pure Alcohol)

Extra Effects:

  • Restores 6 Hunger
  • Fire Resistance II for 10 seconds

Espresso Martini (Requires Pluto's Coffee Mod)

Base: Cocktail Glass

Additions:

  • Shot of Vodka
  • Shot of Coffee Liqueur
  • Espresso Shot
  • Sugar
  • Cocoa Bean
  • Coffee Bean

Alcohol: 26g (~1.15oz of Pure Alcohol)

Caffeine: 80

Extra Effects:

  • Restores 3 Hunger

Martini

Base: Cocktail Glass

Additions:

  • Ice
  • Shot of Dry Vermouth
  • Shot of Gin x3

Alcohol: 51g (~2.27oz of Pure Alcohol)

Extra Effects:

  • Fire Resistance II for 10 Seconds

Margarita (Requires Fruitful Fun)

Base: Cocktail Glass

Additions:

  • Ice
  • Shot of Tequila x2
  • Shot of Orange Liqueur
  • Lime

Alcohol: 34g (~1.51oz of Pure Alcohol)

Extra Effects:

  • Fire Resistance II for 10 seconds
  • Restores 3 Hunger

Specialty Drink Types

pdapi:specialty_drink

The default kind of specialty drink, this is also the value of type if not specified.

teatime:tea_base_specialty_drink

In this type, the base parameter is replaced with tea, which takes in the ID of a tea type. This kind of drink always has Brewed Tea as a base, and in order to craft this kind of drink it requires that the tea type match exactly.

plutoscoffee:brewed_coffee_specialty_drink (unreleased)

In this type, the base parameter is replaced with coffeeType, and takes in the ID of a coffee type. Similar to the above one this always has Brewed Coffee as a base, and the coffee type must match exactly

Creating Custom Specialty Drinks

Custom Specialty Drinks can be added via datapacks. These files have a similar structure to custom drink additions.

In your namespace folder of your datapack, create a new folder called specialty_drinks. This is where our drinks will be stored.

Create a new .json file in this folder. The name of this file is the ID of your specialty drink. Below is the syntax of the Specialty Drink JSON file, followed by an explanation of each part.

{
  "type": "pdapi:specialty_drink",
  "base": "pdapi:example_drink",
  "additions": [],
  "pdapi:caffeine": 0,
  "bartending:alcohol": 0,
  "color": 0,
  "onDrinkActions": [],
  "name": "Example Name"
}

type: This is the type of specialty drink. This option can be omitted (defaults to pdapi:specialty_drink). This determines how the file is loaded into the game. Differences in other types are shown below.

base: The ID of the base item of the drink. If you want to use an item that has a different in progress item then specify the in-progress item as the base (E.G. you want the base to be a cocktail glass, which turns into a mixed drink upon adding an item, specify bartending:mixed_drink).

additions: A list of steps to get this drink. This should be a list of IDs of each addition. (E.G. "additions": ["pdapi:ice", "pdapi:sugar"]

pdapi:caffeine: The amount of caffeine in the drink (Defaults to 0 and can be omitted)

bartending:alcohol: The amount of alcohol in the drink (Defaults to 0 and can be omitted)

Note: Other mods can add their own chemicals. These are specified in the file in the same way as caffeine and alcohol and each can be left out.

color: An int representing the color of the drink in decimal form. You can use this page to see some decimal color values that Minecraft uses.

onDrinkActions: A list of actions to apply to the player when they drink it. See the tutorial for custom drink additions for syntax help.

Note: Due to a bug, when consuming a specialty drink it does not apply the actions of each of the steps for the drink, so until that it fixed you should add each of the actions here.

name: The name to be displayed on the Specialty Drink item. This can be either specified here or in a resourcepack using the translation key drink.namespace.name_of_drink_file.

1.20.4+ Syntax Changes

In the 1.20.4 version of the mod, caffeine (and other chemicals) are now defined in a specific section of the JSON file rather than the main part, exactly like drink additions.

{
   "chemicals": {
      "pdapi:caffeine": 0,
      "bartending:alcohol": 0,
      "example:other_chemical_added_by_mod": 0
   },
   [...]
}

Example

For this example, we will be creating a drink using a Glass of Red Wine from bartending and various ingredients. Since we want the base to be red wine, then that gets us "base":"bartending:glass_of_red_wine:. Then say we want to add Glow Berries and Chorus Fruit, and we want our resulting drink to levitate the player. We could call this Levitating Wine.

data/example/specialty_drinks/levitating_wine.json

{
   "type": "pdapi:specialty_drink", // Unneeded but we'll add it anyway
   "base": "bartending:glass_of_red_wine", // Glass of Red Wine as our base
   "additions": [ // The IDs of Glow Berries and Chorus Fruit additions
      "pdapi:glow_berries",
      "pdapi:chorus_fruit"
   ],
   "bartending:alcohol": 14, // Theres about 14g of Alcohol in 1 glass of wine in TAOB
   "color": 11743532, // The Minecraft Red Dye color
   "onDrinkActions": [
      { // These first two actions just add the actions for Chorus Fruit and Glow Berries
         "type": "pdapi:chorus_teleport",
         "maxRadius": 8
      },
      {
         "type": "pdapi:apply_status_effect",
         "effect": "minecraft:glowing",
         "duration": 1200,
         "amplifier": 0
      },
      { // Levitation for 10 seconds
         "type": "pdapi:apply_status_effect",
         "effect": "minecraft:levitation",
         "duration": 200,
         "amplifier": 0
      }
   ],
   "name": "Levitating Wine"
}

And just like that, you have a custom Specialty Drink! This should show up in both REI and the Specialty Drinks Creative Tab.

⚠️ **GitHub.com Fallback** ⚠️