diff options
author | Jesusaves <cpntb1@ymail.com> | 2025-03-29 17:17:09 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2025-03-29 17:17:09 -0300 |
commit | 3b88f44a9e53b4ef6707c197a4b83789eaa84556 (patch) | |
tree | 57910f1835e8d92387f7da20a7b0b014ed0498a5 | |
parent | 0a15062859e0633934052b02d7ffabe85a5f629b (diff) | |
download | serverdata-3b88f44a9e53b4ef6707c197a4b83789eaa84556.tar.gz serverdata-3b88f44a9e53b4ef6707c197a4b83789eaa84556.tar.bz2 serverdata-3b88f44a9e53b4ef6707c197a4b83789eaa84556.tar.xz serverdata-3b88f44a9e53b4ef6707c197a4b83789eaa84556.zip |
Strength Potion + map cache
-rw-r--r-- | db/constants.conf | 15 | ||||
-rw-r--r-- | db/craft_db.conf | 81 | ||||
-rw-r--r-- | db/re/item_db.conf | 107 | ||||
-rw-r--r-- | db/re/map_zone_db.conf | 4 | ||||
-rw-r--r-- | db/sc_config.conf | 5 | ||||
-rw-r--r-- | maps/re/001-15.mcache | bin | 388 -> 389 bytes | |||
-rw-r--r-- | maps/re/001-16.mcache | bin | 2325 -> 2349 bytes | |||
-rw-r--r-- | maps/re/018-1.mcache | bin | 365 -> 407 bytes | |||
-rw-r--r-- | npc/001-11/Soren.txt | 1 | ||||
-rw-r--r-- | npc/019-4-1/ofelia.txt | 3 | ||||
-rw-r--r-- | npc/024-1/john.txt | 20 | ||||
-rw-r--r-- | npc/034-4/storage.txt | 2 | ||||
-rw-r--r-- | npc/craft/alchemy.txt | 5 | ||||
-rw-r--r-- | npc/craft/price.txt | 9 | ||||
-rw-r--r-- | npc/craft/recipes.txt | 7 | ||||
-rw-r--r-- | npc/functions/aurora.txt | 4 | ||||
-rw-r--r-- | npc/guilds/logs.txt | 14 |
17 files changed, 244 insertions, 33 deletions
diff --git a/db/constants.conf b/db/constants.conf index 84a4fdd40..abece060f 100644 --- a/db/constants.conf +++ b/db/constants.conf @@ -151,6 +151,7 @@ constants_db: { mf_pairship_endable: 58 mf_nostorage: 59 mf_nogstorage: 60 + mf_nopet: 61 comment__: "Cell Properties" cell_walkable: 0 @@ -1632,7 +1633,7 @@ constants_db: { Ukar: 7 Redy: 8 Savior: 9 - Skelli: 30 + Skelli: 20 comment__: "directions" DOWN: 0 @@ -1896,6 +1897,7 @@ constants_db: { NPC_BLANC: 283 NPC_STOVE: 284 NPC_TIKI: 285 + NPC_ML_CIRCLE: 286 // TMW-BR Non Animated NPCs NPC_SHOPPAKEP: 301 @@ -2374,6 +2376,17 @@ constants_db: { MERCQ_SCOUT: 3 MERCQ_NONE: 9 + comment__: "Final Showdown Constants" + ML_MAPMODE_PVP: 1 + ML_MAPMODE_DOT: 2 + ML_MAPMODE_NOHEAL: 3 + ML_MAPMODE_NOMANA: 4 + ML_MAPMODE_NOBOOST: 5 + ML_MAPMODE_NOMAGIC: 6 + ML_MAPMODE_NOCHAT: 7 + ML_MAPMODE_PAY2KILL: 8 + ML_MAPMODE_NOPETS: 9 + comment__: "Mirror Lake Server Identifiers" WORLD_ID: 2 MLP_CR: 1 diff --git a/db/craft_db.conf b/db/craft_db.conf index 438bd858c..3f870f683 100644 --- a/db/craft_db.conf +++ b/db/craft_db.conf @@ -4691,4 +4691,85 @@ craft_db: ( Priority: 10 }, /****************************************************************************/ + +// Alchemy System Additional (ID 251~300, Flag 8) +////////////////////////////////////////////////////////////////////////////// +{ + Id: 251 + Name: "CraftStrPotionA" + Flag: 8 + SourceItems: + ( + { + RubyPowder: 1 + HerbalTea: 1 + }, + ) + CreateItems: + ( + { + StrPotionA: 3 + }, + { + StrPotionA: 2 + }, + { + StrPotionA: 2 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 252 + Name: "CraftStrPotionB" + Flag: 8 + SourceItems: + ( + { + Ruby: 1 + HerbalTea: 2 + }, + ) + CreateItems: + ( + { + StrPotionB: 3 + }, + { + StrPotionB: 2 + }, + { + StrPotionB: 2 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 253 + Name: "CraftStrPotionC" + Flag: 8 + SourceItems: + ( + { + PolishedRuby: 1 + HerbalTea: 3 + }, + ) + CreateItems: + ( + { + StrPotionC: 3 + }, + { + StrPotionC: 2 + }, + { + StrPotionC: 2 + }, + ) + Priority: 10 +}, +/****************************************************************************/ ) diff --git a/db/re/item_db.conf b/db/re/item_db.conf index 085b46c44..8f68476c8 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -2906,7 +2906,60 @@ item_db: ( doevent "inc_sc_bonus::OnUse"; "> }, -// Id 663~665 reserved Str+ potions +{ + Id: 663 + AegisName: "StrPotionA" + Name: "Str Potion" + Type: "IT_USABLE" + Buy: 1000 + Sell: 0 + Weight: 20 + Refine: false + Delay: 500 + Script: <" + @min = 5; + @max = 10; + @delay = 120; + @type = SC_STR_SCROLL; + doevent "inc_sc_bonus::OnUse"; + "> +}, +{ + Id: 664 + AegisName: "StrPotionB" + Name: "Str+ Potion" + Type: "IT_USABLE" + Buy: 10000 + Sell: 0 + Weight: 20 + Refine: false + Delay: 500 + Script: <" + @min = 10; + @max = 20; + @delay = 105; + @type = SC_STR_SCROLL; + doevent "inc_sc_bonus::OnUse"; + "> +}, +{ + Id: 665 + AegisName: "StrPotionC" + Name: "Str++ Potion" + Type: "IT_USABLE" + Buy: 100000 + Sell: 0 + Weight: 20 + Refine: false + Delay: 500 + Script: <" + @min = 20; + @max = 30; + @delay = 90; + @type = SC_STR_SCROLL; + doevent "inc_sc_bonus::OnUse"; + "> +}, // Id 666 reserved (change sex candy) { Id: 667 @@ -5309,7 +5362,7 @@ item_db: ( Refine: false Trade: { notrade: false - nodrop: true + nodrop: false nocart: true noselltonpc: true nostorage: true @@ -5329,7 +5382,7 @@ item_db: ( Refine: false Trade: { notrade: false - nodrop: true + nodrop: false nocart: true noselltonpc: true nostorage: true @@ -5349,7 +5402,7 @@ item_db: ( Refine: false Trade: { notrade: false - nodrop: true + nodrop: false nocart: true noselltonpc: true nostorage: true @@ -5369,7 +5422,7 @@ item_db: ( Refine: false Trade: { notrade: false - nodrop: true + nodrop: false nocart: true noselltonpc: true nostorage: true @@ -5389,7 +5442,7 @@ item_db: ( Refine: false Trade: { notrade: false - nodrop: true + nodrop: false nocart: true noselltonpc: true nostorage: true @@ -5409,7 +5462,7 @@ item_db: ( Refine: false Trade: { notrade: false - nodrop: true + nodrop: false nocart: true noselltonpc: true nostorage: true @@ -5429,7 +5482,7 @@ item_db: ( Refine: false Trade: { notrade: false - nodrop: true + nodrop: false nocart: true noselltonpc: true nostorage: true @@ -5449,7 +5502,7 @@ item_db: ( Refine: false Trade: { notrade: false - nodrop: true + nodrop: false nocart: true noselltonpc: true nostorage: true @@ -8360,6 +8413,31 @@ item_db: ( Loc: "EQP_GARMENT" EquipLv: 24 Refine: false + Slots: 1 + AllowCards: { + id5000: 1 + id5001: 1 + id5002: 1 + id5003: 1 + id5004: 1 + id5005: 1 + id5006: 1 + id5007: 1 + id5008: 1 + id5009: 1 + id5010: 1 + id5011: 1 + id5012: 1 + id5013: 1 + id5014: 1 + id5015: 1 + id5016: 1 + id5017: 1 + id5018: 1 + id5019: 1 + id5020: 1 + id5021: 1 + } Script: <" bonus bMatk,12; bonus bMaxSP,10; @@ -11892,6 +11970,17 @@ item_db: ( bonus bMaxHP, 2500; bonus bDef2, 18+REBIRTH; bonus bMdef, 3*REBIRTH; + if ($@GM_OVERRIDE) { + bonus bAllStats, 127; + bonus bMaxHP, 50000; + bonus bMaxSP, 10000; + bonus bAtk, 1000; + bonus bMatk, 1000; + bonus bHit, 1000; + bonus bFleeRate, 100; + bonus bAddMaxWeight, 10000; + bonus2 bHPRegenRate, 5000, 200; + } "> }, diff --git a/db/re/map_zone_db.conf b/db/re/map_zone_db.conf index 3d1ffb1cd..f4cbc86f6 100644 --- a/db/re/map_zone_db.conf +++ b/db/re/map_zone_db.conf @@ -745,6 +745,7 @@ zones: ( "nojobexp", "invincible_time_inc 2000", "short_damage_rate 85", + "nomemo", // "battleground", // "nomobloot", ) @@ -772,7 +773,7 @@ zones: ( doommap: 100 kill: 100 nuke: 100 - //revive: 100 + //alive: 100 setbattleflag: 100 cvcon: 100 cvcoff: 100 @@ -782,7 +783,6 @@ zones: ( gvgoff: 100 skillon: 100 skilloff: 100 - alive: 100 } skill_damage_cap: { } diff --git a/db/sc_config.conf b/db/sc_config.conf index 197fe89ed..648d83b83 100644 --- a/db/sc_config.conf +++ b/db/sc_config.conf @@ -1828,11 +1828,8 @@ SC_SPL_MATK: { } SC_STR_SCROLL: { Flags: { - NoDeathReset: true - NoDispelReset: true - NoClearanceReset: true Buff: true - Debuff: true + NoMadoReset: true } } SC_INT_SCROLL: { diff --git a/maps/re/001-15.mcache b/maps/re/001-15.mcache Binary files differindex 75924b054..9032dc493 100644 --- a/maps/re/001-15.mcache +++ b/maps/re/001-15.mcache diff --git a/maps/re/001-16.mcache b/maps/re/001-16.mcache Binary files differindex cca8db0d9..b565032fb 100644 --- a/maps/re/001-16.mcache +++ b/maps/re/001-16.mcache diff --git a/maps/re/018-1.mcache b/maps/re/018-1.mcache Binary files differindex 5fd249b7c..8a657d907 100644 --- a/maps/re/018-1.mcache +++ b/maps/re/018-1.mcache diff --git a/npc/001-11/Soren.txt b/npc/001-11/Soren.txt index 8c47ae8e4..76e8c711c 100644 --- a/npc/001-11/Soren.txt +++ b/npc/001-11/Soren.txt @@ -152,6 +152,7 @@ OnInit: sellitem SmokeGrenade; sellitem LousyMoccasins; sellitem LeatherQuiver, 3500; + sellitem StrPotionA, 1000; sellitem AgiPotionA, 1000; sellitem VitPotionA, 1000; sellitem IntPotionA, 1000; diff --git a/npc/019-4-1/ofelia.txt b/npc/019-4-1/ofelia.txt index 145a302ab..636a5850f 100644 --- a/npc/019-4-1/ofelia.txt +++ b/npc/019-4-1/ofelia.txt @@ -331,16 +331,19 @@ OnInit: IntPotionA, 10, VitPotionA, 10, AgiPotionA, 10, + StrPotionA, 10, LukPotionB, 7, DexPotionB, 7, IntPotionB, 7, VitPotionB, 7, AgiPotionB, 7, + StrPotionB, 7, LukPotionC, 3, DexPotionC, 3, IntPotionC, 3, VitPotionC, 3, AgiPotionC, 3, + StrPotionC, 3, DodgeDonut, 3, ChocolateDonut, 6, SparklyChocolateDonut, 6, diff --git a/npc/024-1/john.txt b/npc/024-1/john.txt index 2404f27b5..1c4b96ccc 100644 --- a/npc/024-1/john.txt +++ b/npc/024-1/john.txt @@ -164,7 +164,7 @@ break; case 7: if (.@q2 >= 40) { - .@i = any(LukPotionA, DexPotionA, IntPotionA, VitPotionA, AgiPotionA); + .@i = any(LukPotionA, DexPotionA, IntPotionA, VitPotionA, AgiPotionA, StrPotionA); inventoryplace .@i, 1; getitem .@i, 1; setq3 FrostiaQuest_JhonH, .@q3 + 1; @@ -179,7 +179,7 @@ break; case 9: if (.@q2 >= 60) { - .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, SacredLifePotion, SacredManaPotion); + .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, StrPotionC, SacredLifePotion, SacredManaPotion); inventoryplace .@i, 1; getitem .@i, 1; setq3 FrostiaQuest_JhonH, .@q3 + 1; @@ -201,7 +201,7 @@ break; case 12: if (.@q2 >= 100) { - .@i = any(LukPotionB, DexPotionB, IntPotionB, VitPotionB, AgiPotionB, SacredLifePotion, SacredManaPotion, DodgePotion, PrecisionPotion, MoveSpeedPotion, StatusResetPotion, DeathPotion, PurificationPotion, NymphPoison, ElixirOfLife); + .@i = any(LukPotionB, DexPotionB, IntPotionB, VitPotionB, AgiPotionB, StrPotionB, SacredLifePotion, SacredManaPotion, DodgePotion, PrecisionPotion, MoveSpeedPotion, StatusResetPotion, DeathPotion, PurificationPotion, NymphPoison, ElixirOfLife); inventoryplace .@i, 1; getitem .@i, 1; setq3 FrostiaQuest_JhonH, .@q3 + 1; @@ -209,7 +209,7 @@ break; case 13: if (.@q2 >= 120) { - .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, SacredLifePotion, SacredManaPotion, DodgePotion, PrecisionPotion, MoveSpeedPotion, StatusResetPotion, DeathPotion, PurificationPotion, NymphPoison, ElixirOfLife); + .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, StrPotionC, SacredLifePotion, SacredManaPotion, DodgePotion, PrecisionPotion, MoveSpeedPotion, StatusResetPotion, DeathPotion, PurificationPotion, NymphPoison, ElixirOfLife); inventoryplace .@i, 1; getitem .@i, 1; setq3 FrostiaQuest_JhonH, .@q3 + 1; @@ -217,7 +217,7 @@ break; case 14: if (.@q2 >= 140) { - .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, SacredLifePotion, SacredManaPotion, DodgePotion, PrecisionPotion, MoveSpeedPotion, StatusResetPotion, DeathPotion, PurificationPotion, NymphPoison, ElixirOfLife, SacredImmortalityPotion, Manapple); + .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, StrPotionC, SacredLifePotion, SacredManaPotion, DodgePotion, PrecisionPotion, MoveSpeedPotion, StatusResetPotion, DeathPotion, PurificationPotion, NymphPoison, ElixirOfLife, SacredImmortalityPotion, Manapple); inventoryplace .@i, 1; getitem .@i, 1; setq3 FrostiaQuest_JhonH, .@q3 + 1; @@ -225,7 +225,7 @@ break; case 15: if (.@q2 >= 150) { - .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, SacredLifePotion, SacredManaPotion, DodgePotion, PrecisionPotion, MoveSpeedPotion, StatusResetPotion, DeathPotion, PurificationPotion, NymphPoison, ElixirOfLife, SacredImmortalityPotion, AncientBlueprint, FrostiaWarpCrystal); + .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, StrPotionC, SacredLifePotion, SacredManaPotion, DodgePotion, PrecisionPotion, MoveSpeedPotion, StatusResetPotion, DeathPotion, PurificationPotion, NymphPoison, ElixirOfLife, SacredImmortalityPotion, AncientBlueprint, FrostiaWarpCrystal); inventoryplace .@i, 1; getitem .@i, 1; setq3 FrostiaQuest_JhonH, .@q3 + 1; @@ -233,7 +233,7 @@ break; case 16: if (.@q2 >= 175) { - .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, SacredLifePotion, SacredManaPotion, DodgePotion, PrecisionPotion, MoveSpeedPotion, StatusResetPotion, NymphPoison, ElixirOfLife, SacredImmortalityPotion, AncientBlueprint, FrostiaWarpCrystal, ScrollCriticalFortuneA); + .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, StrPotionC, SacredLifePotion, SacredManaPotion, DodgePotion, PrecisionPotion, MoveSpeedPotion, StatusResetPotion, NymphPoison, ElixirOfLife, SacredImmortalityPotion, AncientBlueprint, FrostiaWarpCrystal, ScrollCriticalFortuneA); inventoryplace .@i, 1; getitem .@i, 1; setq3 FrostiaQuest_JhonH, .@q3 + 1; @@ -241,7 +241,7 @@ break; case 17: if (.@q2 >= 200) { - .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, SacredLifePotion, SacredManaPotion, ElixirOfLife, SacredImmortalityPotion, AncientBlueprint, FrostiaWarpCrystal, ScrollCriticalFortuneA, ScrollMagnusHealA, ScrollSWolvern); + .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, StrPotionC, SacredLifePotion, SacredManaPotion, ElixirOfLife, SacredImmortalityPotion, AncientBlueprint, FrostiaWarpCrystal, ScrollCriticalFortuneA, ScrollMagnusHealA, ScrollSWolvern); inventoryplace .@i, 1; getitem .@i, 1; setq3 FrostiaQuest_JhonH, .@q3 + 1; @@ -249,7 +249,7 @@ break; case 18: if (.@q2 >= 250) { - .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, SacredLifePotion, SacredManaPotion, ElixirOfLife, SacredImmortalityPotion, AncientBlueprint, FrostiaWarpCrystal, ScrollCriticalFortuneA, ScrollMagnusHealA, ScrollSWolvern); + .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, StrPotionC, SacredLifePotion, SacredManaPotion, ElixirOfLife, SacredImmortalityPotion, AncientBlueprint, FrostiaWarpCrystal, ScrollCriticalFortuneA, ScrollMagnusHealA, ScrollSWolvern); inventoryplace .@i, 1; getitem .@i, 1; setq3 FrostiaQuest_JhonH, .@q3 + 1; @@ -257,7 +257,7 @@ break; case 19: if (.@q2 >= 300) { - .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, SacredLifePotion, SacredManaPotion, SacredImmortalityPotion, AncientBlueprint, FrostiaWarpCrystal, ScrollCriticalFortuneA, ScrollMagnusHealA, ScrollSWolvern, GoldenApple); + .@i = any(LukPotionC, DexPotionC, IntPotionC, VitPotionC, AgiPotionC, StrPotionC, SacredLifePotion, SacredManaPotion, SacredImmortalityPotion, AncientBlueprint, FrostiaWarpCrystal, ScrollCriticalFortuneA, ScrollMagnusHealA, ScrollSWolvern, GoldenApple); inventoryplace .@i, 1; getitem .@i, 1; setq3 FrostiaQuest_JhonH, .@q3 + 1; diff --git a/npc/034-4/storage.txt b/npc/034-4/storage.txt index 893971f32..79ee492c8 100644 --- a/npc/034-4/storage.txt +++ b/npc/034-4/storage.txt @@ -165,7 +165,7 @@ function storageutil { // If it falls on a collision, the item won't be created at all freeloop(true); for (.@i=0; .@i <= ((.sto/2)+getmapusers(.mp$)); .@i++) { - makeitem(any(Wurtzite, ShadowHerb, AlizarinHerb, DiamondPowder, RubyPowder, EmeraldPowder, SapphirePowder, TopazPowder, AmethystPowder, CopperOre, IronOre, Coal, LeadOre, Lifestone, ScorpionClaw, WhiteFur, SquirrelPelt, TinOre, PileOfAsh, EmptyBottle, FluoPowder, TerraniteOre, SulfurPowder, LeatherPatch, LazuriteShard, Root, ReedBundle, GambogeHerb, MauveHerb, CobaltHerb, MaggotSlime, BugLeg, RawLog, BanditHood, BatWing, IronPowder, ArtichokeHerb, LeftCraftyWing, RightCraftyWing, Coral, BlueCoral, Pearl, Moss, RattoTail, RattoTeeth, Knife, SharpKnife, StrangeCoin, PurificationPotion, IcedBottle, Grenade, SmokeGrenade, TreasureMap, AgiPotionA, VitPotionA, IntPotionA, DexPotionA, LukPotionA, EmptyBox, HastePotion, StrengthPotion, Croconut, ChocolateBar, ChocolateBiscuit, PinkieLeg, Potatoz, Coffee, SnakeEgg, Plushroom, Chagashroom, Honey, MoubooSteak, Milk, Orange, CherryCake, Piberries, Aquada, Cheese, Bread, Acorn, Manana), 1, .mp$, rand2(30, 71), rand2(44, 87)); + makeitem(any(Wurtzite, ShadowHerb, AlizarinHerb, DiamondPowder, RubyPowder, EmeraldPowder, SapphirePowder, TopazPowder, AmethystPowder, CopperOre, IronOre, Coal, LeadOre, Lifestone, ScorpionClaw, WhiteFur, SquirrelPelt, TinOre, PileOfAsh, EmptyBottle, FluoPowder, TerraniteOre, SulfurPowder, LeatherPatch, LazuriteShard, Root, ReedBundle, GambogeHerb, MauveHerb, CobaltHerb, MaggotSlime, BugLeg, RawLog, BanditHood, BatWing, IronPowder, ArtichokeHerb, LeftCraftyWing, RightCraftyWing, Coral, BlueCoral, Pearl, Moss, RattoTail, RattoTeeth, Knife, SharpKnife, StrangeCoin, PurificationPotion, IcedBottle, Grenade, SmokeGrenade, TreasureMap, StrPotionA, AgiPotionA, VitPotionA, IntPotionA, DexPotionA, LukPotionA, EmptyBox, HastePotion, StrengthPotion, Croconut, ChocolateBar, ChocolateBiscuit, PinkieLeg, Potatoz, Coffee, SnakeEgg, Plushroom, Chagashroom, Honey, MoubooSteak, Milk, Orange, CherryCake, Piberries, Aquada, Cheese, Bread, Acorn, Manana), 1, .mp$, rand2(30, 71), rand2(44, 87)); } freeloop(false); return; diff --git a/npc/craft/alchemy.txt b/npc/craft/alchemy.txt index ffdf34827..a5bf21cb4 100644 --- a/npc/craft/alchemy.txt +++ b/npc/craft/alchemy.txt @@ -40,6 +40,9 @@ function script AlchemySystem { .@m=limit(1, GSET_FIXED_ALCHEMY, 25); } else { .@max=(is_sponsor() ? 25 : 10); + // Guild can brew twice as faster than individual for... reasons + if (.scope == CRAFT_GUILD) + .@max*=2; mesc l("How many to brew? (%d-%d)", 1, .@max); input(.@m, 1, .@max); } @@ -100,7 +103,7 @@ OK Homun Stat Reset (Curshroom + Manapple) OK Move Speed (Gem Powder + Fluor Powder) OK Precision (Piberries + Mt. Snake Egg) OK Dodge Potion (Piberries + Snake Egg) -OK Luck, Dex, Int, Vit, Agi (Gems + Tea) +OK Luck, Dex, Int, Vit, Agi, Str (Gems + Tea) OK Sacred Life (Golden Apple + Elixir of Life) OK Sacred Mana (Golden Apple + Celestia Tea) OK Sacred Revival (Sacred Life + Sacred Mana) diff --git a/npc/craft/price.txt b/npc/craft/price.txt index f2f073872..e5dbb9a4c 100644 --- a/npc/craft/price.txt +++ b/npc/craft/price.txt @@ -75,9 +75,12 @@ function script fix_cPrice { freeloop(true); // Fix potions prices - _fix_cPrice(AgiPotionA); - _fix_cPrice(AgiPotionB); - _fix_cPrice(AgiPotionC); + _fix_cPrice(StrPotionA); + _fix_cPrice(StrPotionB); + _fix_cPrice(StrPotionC); + _fix_cPrice(StrPotionA); + _fix_cPrice(StrPotionB); + _fix_cPrice(StrPotionC); _fix_cPrice(VitPotionA); _fix_cPrice(VitPotionB); _fix_cPrice(VitPotionC); diff --git a/npc/craft/recipes.txt b/npc/craft/recipes.txt index 1a688e94d..3f4504a4e 100644 --- a/npc/craft/recipes.txt +++ b/npc/craft/recipes.txt @@ -181,6 +181,10 @@ function readAlchemy { showRecipe(DexPotionA, DexPotionB, DexPotionC); + + showRecipe(StrPotionA, + StrPotionB, + StrPotionC); dnext; // Scrolls @@ -394,6 +398,7 @@ function script MakeBlueprint { array_push(.@recipes, CraftIntPotionA); array_push(.@recipes, CraftAgiPotionA); array_push(.@recipes, CraftVitPotionA); + array_push(.@recipes, CraftStrPotionA); array_push(.@recipes, CraftSpeedPotion); array_push(.@recipes, CraftIcedBottle); array_push(.@recipes, CraftInsuranceContract); @@ -416,6 +421,7 @@ function script MakeBlueprint { array_push(.@recipes, CraftIntPotionB); array_push(.@recipes, CraftAgiPotionB); array_push(.@recipes, CraftVitPotionB); + array_push(.@recipes, CraftStrPotionB); array_push(.@recipes, CraftAtroposMixture); array_push(.@recipes, CraftPurificationPotion); array_push(.@recipes, CraftHomunResetPotion); @@ -428,6 +434,7 @@ function script MakeBlueprint { array_push(.@recipes, CraftIntPotionC); array_push(.@recipes, CraftAgiPotionC); array_push(.@recipes, CraftVitPotionC); + array_push(.@recipes, CraftStrPotionC); array_push(.@recipes, CraftSacredLifePotion); array_push(.@recipes, CraftSacredManaPotion); array_push(.@recipes, CraftSacredImmortalityPotion); diff --git a/npc/functions/aurora.txt b/npc/functions/aurora.txt index dd0c16e9b..c1eb61f53 100644 --- a/npc/functions/aurora.txt +++ b/npc/functions/aurora.txt @@ -210,9 +210,9 @@ function script FYT { case FY_POT: switch (.@l) { case 1: - return any(LukPotionA, DexPotionA, IntPotionA, VitPotionA, AgiPotionA, HastePotion, StrengthPotion); + return any(LukPotionA, DexPotionA, IntPotionA, VitPotionA, AgiPotionA, StrPotionA, HastePotion, StrengthPotion); case 2: - return any(LukPotionB, DexPotionB, IntPotionB, VitPotionB, AgiPotionB, MoveSpeedPotion, PrecisionPotion, DodgePotion); + return any(LukPotionB, DexPotionB, IntPotionB, VitPotionB, AgiPotionB, StrPotionB, MoveSpeedPotion, PrecisionPotion, DodgePotion); case 3: return any(SacredImmortalityPotion, SacredLifePotion, SacredManaPotion); } diff --git a/npc/guilds/logs.txt b/npc/guilds/logs.txt index 57bd7cb1e..2fc1658e4 100644 --- a/npc/guilds/logs.txt +++ b/npc/guilds/logs.txt @@ -74,6 +74,13 @@ guilds,47,39,0 script Guild Logs NPC_NO_SPRITE,{ .@s+=showRecipe(CraftAgiPotionC, AgiPotionC, 1, PolishedTopaz, 3, HerbalTea); + .@s+=showRecipe(CraftStrPotionA, StrPotionA, + 1, TopazPowder, 1, HerbalTea); + .@s+=showRecipe(CraftStrPotionB, StrPotionB, + 1, Topaz, 2, HerbalTea); + .@s+=showRecipe(CraftStrPotionC, StrPotionC, + 1, PolishedTopaz, 3, HerbalTea); + if (.@s > 14) next; @@ -264,6 +271,13 @@ guilds,47,39,0 script Guild Logs NPC_NO_SPRITE,{ if (!showRecipe(CraftAgiPotionC, false)) calcRecipe(CraftAgiPotionC, 8, 35000, l("Agi++ Potion")); + if (!showRecipe(CraftStrPotionA, false)) + calcRecipe(CraftStrPotionA, 4, 15000, l("Str Potion")); + if (!showRecipe(CraftStrPotionB, false)) + calcRecipe(CraftStrPotionB, 6, 25000, l("Str+ Potion")); + if (!showRecipe(CraftStrPotionC, false)) + calcRecipe(CraftStrPotionC, 8, 35000, l("Str++ Potion")); + // Limit Boosts if (!showRecipe(CraftSacredManaPotion, false)) calcRecipe(CraftSacredManaPotion, 7, 100000, l("Sacred Mana Potion")); |