v1.1.0: improved the alchemy guidebook

This commit is contained in:
Evan Debenham 2021-11-26 17:35:34 -05:00
parent 4da42bd95f
commit fea3cc4473
4 changed files with 29 additions and 31 deletions

View File

@ -27,22 +27,22 @@ journal.document.adventurers_guide.magic.title=Magical Attacks
journal.document.adventurers_guide.magic.body=Magical attacks cut right through armor and are extremely difficult to dodge. This means that your wands will be very reliable, but also makes magical enemies extremely dangerous!\n\nMagical attacks always have a drawback though. In the case of wands it's their limited charges, but magic that enemies use will always have some form of weakness as well.\n\nWhen facing enemies that use magic it is extremely important to figure out how to evade their magic, rather than just eating the damage from it.
journal.document.alchemy_guide.title=Alchemy Guide
journal.document.alchemy_guide.potions.title=Creating Potions
journal.document.alchemy_guide.potions.body=Welcome to Practical Applications of Alchemy!\n\nThis book serves as a recipe reference for hobbyist alchemists and adventurers looking to get their hands dirty.\n\nWe will start with the most iconic alchemy recipe: Place any three seeds into an alchemy pot to brew a random potion!\n\nEvery seed has a potion counterpart, and the potion you create may relate to one of the seeds used. Using multiple of the same seed will increase the chance for this to occur.
journal.document.alchemy_guide.potions.title=Intro and Potions
journal.document.alchemy_guide.potions.body=Welcome to Practical Applications of Alchemy!\n\nAlchemy recipes can be used to craft a wide variety of items at an alchemy pot. You can experiment to find recipes, or continue reading this book for a full recipe reference!\n\nWe will start with the most iconic alchemy recipe: Place any three seeds into an alchemy pot to brew a random potion!\n\nEvery seed has a potion counterpart, and the potion you create may relate to one of the seeds used. Using multiple of the same seed will increase the chance for this to occur.
journal.document.alchemy_guide.stones.title=Creating Runestones
journal.document.alchemy_guide.stones.body=Mixing a scroll into an alchemy pot will imbue its magic into two rocks within the pot. This creates runestones!
journal.document.alchemy_guide.energy_food.title=Energy and Food
journal.document.alchemy_guide.energy_food.body=Some recipes require energy from the alchemy pot itself. Energy is used in recipes that produce more than the sum of their ingredients.\n\nNot all energy recipes are especially mystical however. These recipes more resemble traditional cooking than alchemy.
journal.document.alchemy_guide.energy_food.body=Many recipes require crystalized alchemical energy, which is produced by deconstructing most consumable items in an alchemy pot. As a few examples: seeds generate 2 energy, stones generate 3, scrolls and potions each generate 6.\n\nSome of these recipes are quite magical, but these ones more resemble traditional cooking.
journal.document.alchemy_guide.exotic_potions.title=Exotic Potions
journal.document.alchemy_guide.exotic_potions.body=Potions can be mixed with energy to create exotic potions. They have more powerful effects, but are often useful in different ways.
journal.document.alchemy_guide.exotic_scrolls.title=Exotic Scrolls
journal.document.alchemy_guide.exotic_scrolls.body=Exotic scrolls can be made with some energy and a scroll. They're a bit stronger and more expensive than exotic potions.
journal.document.alchemy_guide.bombs.title=Enhanced Bombs
journal.document.alchemy_guide.bombs.body=A standard black powder bomb can be mixed with a specific item to create an enhanced bomb.
journal.document.alchemy_guide.weapons.title=Enhancing Weapons
journal.document.alchemy_guide.weapons.body=Some of the lighter or more magical weapons can be used in alchemy!\n\nEach thrown weapon produces enough liquid metal to fully repair another weapon of the same level and tier.\n\nOne wand will produce enough arcane resin to upgrade two wands of the same level, but no higher than +3.
journal.document.alchemy_guide.exotic_potions.title=Exotic Potions
journal.document.alchemy_guide.exotic_potions.body=Potions can be augmented with two seeds to create exotic potions. They have more powerful effects, but are often useful in different ways.
journal.document.alchemy_guide.exotic_scrolls.title=Exotic Scrolls
journal.document.alchemy_guide.exotic_scrolls.body=Exotic scrolls can be made with two runestones and a scroll. They're a bit stronger than exotic potions, but stones are also harder to come by.
journal.document.alchemy_guide.catalysts.title=Catalysts
journal.document.alchemy_guide.catalysts.body=Catalysts are made by combining a scroll or potion with a single seed or runestone. If the pair of items match, the alchemical energy cost is reduced.\n\nCatalysts are most useful as components in recipes covered in the next two pages, but also can be used in a pinch for a random effect.
journal.document.alchemy_guide.catalysts.body=Catalysts are made by combining a scroll or potion with a single seed or runestone. If the pair of items match, the alchemical energy cost is removed.\n\nCatalysts are most useful as components in recipes covered in the next two pages, but also can be used in a pinch for a random effect.
journal.document.alchemy_guide.brews_elixirs.title=Brews and Elixirs
journal.document.alchemy_guide.brews_elixirs.body=Brews and elixirs are advanced potions which provide a variety of effects with a single use.
journal.document.alchemy_guide.spells.title=Spells

View File

@ -156,11 +156,11 @@ public enum Document {
ALCHEMY_GUIDE.pagesStates.put("Potions", debug ? READ : NOT_FOUND);
ALCHEMY_GUIDE.pagesStates.put("Stones", debug ? READ : NOT_FOUND);
ALCHEMY_GUIDE.pagesStates.put("Energy_Food", debug ? READ : NOT_FOUND);
ALCHEMY_GUIDE.pagesStates.put("Exotic_Potions", debug ? READ : NOT_FOUND);
ALCHEMY_GUIDE.pagesStates.put("Exotic_Scrolls", debug ? READ : NOT_FOUND);
//given in prison
ALCHEMY_GUIDE.pagesStates.put("Bombs", debug ? READ : NOT_FOUND);
ALCHEMY_GUIDE.pagesStates.put("Weapons", debug ? READ : NOT_FOUND);
//given in prison
ALCHEMY_GUIDE.pagesStates.put("Exotic_Potions", debug? READ : NOT_FOUND);
ALCHEMY_GUIDE.pagesStates.put("Exotic_Scrolls", debug ? READ : NOT_FOUND);
ALCHEMY_GUIDE.pagesStates.put("Catalysts", debug ? READ : NOT_FOUND);
ALCHEMY_GUIDE.pagesStates.put("Brews_Elixirs", debug ? READ : NOT_FOUND);
ALCHEMY_GUIDE.pagesStates.put("Spells", debug ? READ : NOT_FOUND);

View File

@ -284,12 +284,10 @@ public class QuickRecipe extends Component {
result.add(new QuickRecipe( new StewedMeat.twoMeat() ));
result.add(new QuickRecipe( new StewedMeat.threeMeat() ));
result.add(null);
result.add(null);
result.add(new QuickRecipe( new MeatPie.Recipe(),
new ArrayList<Item>(Arrays.asList(new Pasty(), new Food(), new MysteryMeat.PlaceHolder())),
new MeatPie()));
result.add(null);
result.add(null);
result.add(new QuickRecipe( new Blandfruit.CookFruit(),
new ArrayList<>(Arrays.asList(new Blandfruit(), new Plant.Seed.PlaceHolder())),
new Blandfruit(){
@ -305,6 +303,22 @@ public class QuickRecipe extends Component {
}));
return result;
case 3:
r = new ExoticPotion.PotionToExotic();
for (Class<?> cls : Generator.Category.POTION.classes){
Potion pot = (Potion) Reflection.newInstance(cls);
ArrayList<Item> in = new ArrayList<>(Arrays.asList(pot));
result.add(new QuickRecipe( r, in, r.sampleOutput(in)));
}
return result;
case 4:
r = new ExoticScroll.ScrollToExotic();
for (Class<?> cls : Generator.Category.SCROLL.classes){
Scroll scroll = (Scroll) Reflection.newInstance(cls);
ArrayList<Item> in = new ArrayList<>(Arrays.asList(scroll));
result.add(new QuickRecipe( r, in, r.sampleOutput(in)));
}
return result;
case 5:
r = new Bomb.EnhanceBomb();
int i = 0;
for (Class<?> cls : Bomb.EnhanceBomb.validIngredients.keySet()){
@ -318,7 +332,7 @@ public class QuickRecipe extends Component {
i++;
}
return result;
case 4:
case 6:
result.add(new QuickRecipe( new LiquidMetal.Recipe(),
new ArrayList<Item>(Arrays.asList(new MissileWeapon.PlaceHolder())),
new LiquidMetal()));
@ -334,22 +348,6 @@ public class QuickRecipe extends Component {
new ArrayList<Item>(Arrays.asList(new Wand.PlaceHolder())),
new ArcaneResin()));
return result;
case 5:
r = new ExoticPotion.PotionToExotic();
for (Class<?> cls : Generator.Category.POTION.classes){
Potion pot = (Potion) Reflection.newInstance(cls);
ArrayList<Item> in = new ArrayList<>(Arrays.asList(pot));
result.add(new QuickRecipe( r, in, r.sampleOutput(in)));
}
return result;
case 6:
r = new ExoticScroll.ScrollToExotic();
for (Class<?> cls : Generator.Category.SCROLL.classes){
Scroll scroll = (Scroll) Reflection.newInstance(cls);
ArrayList<Item> in = new ArrayList<>(Arrays.asList(scroll));
result.add(new QuickRecipe( r, in, r.sampleOutput(in)));
}
return result;
case 7:
result.add(new QuickRecipe(new AlchemicalCatalyst.Recipe(), new ArrayList<>(Arrays.asList(new Potion.PlaceHolder(), new Plant.Seed.PlaceHolder())), new AlchemicalCatalyst()));
result.add(new QuickRecipe(new AlchemicalCatalyst.Recipe(), new ArrayList<>(Arrays.asList(new Potion.PlaceHolder(), new Runestone.PlaceHolder())), new AlchemicalCatalyst()));

View File

@ -335,7 +335,7 @@ public class WndJournal extends WndTabbed {
private RedButton[] pageButtons;
private static final int NUM_BUTTONS = 10;
private static final int[] spriteIndexes = {10, 12, 7, 8, 3, 9, 11, 13, 14, 15};
private static final int[] spriteIndexes = {10, 12, 7, 9, 11, 8, 3, 13, 14, 15};
public static int currentPageIdx = -1;