From b2414a5e5180fc0d065a6d398a76b825ea461279 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 29 Aug 2019 00:44:42 -0300 Subject: Reward for the bug --- npc/functions/clientversion.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/npc/functions/clientversion.txt b/npc/functions/clientversion.txt index 94b32d54d..9acaf27a8 100644 --- a/npc/functions/clientversion.txt +++ b/npc/functions/clientversion.txt @@ -14,6 +14,12 @@ function script clientupdater { } .@dg=0; + // ERROR fixing + if (UPDATE == 1565039378) { + getitem MysteriousFruit, 1; + UPDATE+=1; + dispbottom l("Received one @@ as August daily login bug Token of Apology!", getitemlink(MysteriousFruit)); + } // Update handler (use `date +%s` for this) // Current UPDATE value: Qui Jun 7 08:10:55 -03 2018 if (Lang > 5 && UPDATE < 1528369855) { -- cgit v1.2.3-60-g2f50 From b003d3376aa8b2d233e058743151d36e46fcdd48 Mon Sep 17 00:00:00 2001 From: Saulc Date: Thu, 29 Aug 2019 07:32:16 +0000 Subject: add note to exp_guild.txt --- db/re/exp_guild.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/db/re/exp_guild.txt b/db/re/exp_guild.txt index 928047600..cecf66632 100644 --- a/db/re/exp_guild.txt +++ b/db/re/exp_guild.txt @@ -1,4 +1,8 @@ // Guild LvUp experience value table +// Exp needed for level 5: 5.500.000 Exp +// Exp needed for level 10: 38.500.000 Exp +// Exp needed for level 25: 552.500.000 Exp +// Exp needed for level 50: 4.292.500.000 Exp 100000 400000 900000 -- cgit v1.2.3-60-g2f50 From b8c9124db4e56906028a4cc2b77ddbfc040ab647 Mon Sep 17 00:00:00 2001 From: Saulc Date: Thu, 29 Aug 2019 12:01:38 +0000 Subject: Revert "It's not "Wurtzite", it is "WurtIzite"" This reverts commit d4d1de377b52ff59977a3b327221e022830ed181 --- db/re/mob_db.conf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf index 232163950..8a8226829 100644 --- a/db/re/mob_db.conf +++ b/db/re/mob_db.conf @@ -8844,7 +8844,7 @@ mob_db: ( Drops: { Coal: 200 CopperOre: 100 - Wurtizite: 100 + Wurtzite: 100 LeadOre: 40 Graphene: 25 LightGreenDiamond: 1 @@ -8870,7 +8870,7 @@ mob_db: ( Drops: { Coal: 300 CopperOre: 200 - Wurtizite: 200 + Wurtzite: 200 LeadOre: 80 Graphene: 45 LightGreenDiamond: 2 @@ -8896,7 +8896,7 @@ mob_db: ( Drops: { Coal: 500 CopperOre: 300 - Wurtizite: 300 + Wurtzite: 300 LeadOre: 120 Graphene: 65 LightGreenDiamond: 3 -- cgit v1.2.3-60-g2f50 From d358c6bf596bb7c50ab26bb1c526cda4afd81276 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 29 Aug 2019 12:37:58 +0000 Subject: Revert "Revert "It's not "Wurtzite", it is "WurtIzite""" This reverts commit b8c9124db4e56906028a4cc2b77ddbfc040ab647 --- db/re/mob_db.conf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf index 8a8226829..232163950 100644 --- a/db/re/mob_db.conf +++ b/db/re/mob_db.conf @@ -8844,7 +8844,7 @@ mob_db: ( Drops: { Coal: 200 CopperOre: 100 - Wurtzite: 100 + Wurtizite: 100 LeadOre: 40 Graphene: 25 LightGreenDiamond: 1 @@ -8870,7 +8870,7 @@ mob_db: ( Drops: { Coal: 300 CopperOre: 200 - Wurtzite: 200 + Wurtizite: 200 LeadOre: 80 Graphene: 45 LightGreenDiamond: 2 @@ -8896,7 +8896,7 @@ mob_db: ( Drops: { Coal: 500 CopperOre: 300 - Wurtzite: 300 + Wurtizite: 300 LeadOre: 120 Graphene: 65 LightGreenDiamond: 3 -- cgit v1.2.3-60-g2f50 From bbcbf5b6927de6078370ec83b0a1f086da516749 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 29 Aug 2019 13:15:22 -0300 Subject: 018-6-2 Forgotten Hall --- conf/map/maps.conf | 1 + db/map_index.txt | 99 ++++++++++++++++++++++++------------------------ maps/re/017-1.mcache | Bin 4239 -> 4242 bytes maps/re/018-6-2.mcache | Bin 0 -> 543 bytes npc/018-6-2/_import.txt | 2 + npc/_import.txt | 1 + 6 files changed, 54 insertions(+), 49 deletions(-) create mode 100644 maps/re/018-6-2.mcache create mode 100644 npc/018-6-2/_import.txt diff --git a/conf/map/maps.conf b/conf/map/maps.conf index 733e5f357..070af3756 100644 --- a/conf/map/maps.conf +++ b/conf/map/maps.conf @@ -129,6 +129,7 @@ map_list: ( "018-5", "018-6-0", "018-6-1", + "018-6-2", "019-1-1", "019-1", "019-2", diff --git a/db/map_index.txt b/db/map_index.txt index 3cf92e99f..f50043de0 100644 --- a/db/map_index.txt +++ b/db/map_index.txt @@ -126,52 +126,53 @@ 018-5 126 018-6-0 127 018-6-1 128 -019-1-1 129 -019-1 130 -019-2 131 -019-3 132 -019-4-1 133 -019-4 134 -020-1 135 -020-2 136 -020-3 137 -020-4 138 -020-5 139 -020-6 140 -020-7-1 141 -020-7-2 142 -020-7 143 -021-1 144 -021-2 145 -021-3 146 -021-4 147 -022-1 148 -023-1 149 -023-2 150 -023-3-1 151 -023-3-2 152 -023-3 153 -024-1 154 -024-10 155 -024-11 156 -024-12 157 -024-13 158 -024-14 159 -024-15 160 -024-16 161 -024-2 162 -024-3 163 -024-4 164 -024-5 165 -024-6 166 -024-7 167 -024-8 168 -024-9 169 -boss 170 -botcheck 171 -guilds 172 -sec_pri 173 -soren-2 174 -soren 175 -test 176 -testbg 177 +018-6-2 129 +019-1-1 130 +019-1 131 +019-2 132 +019-3 133 +019-4-1 134 +019-4 135 +020-1 136 +020-2 137 +020-3 138 +020-4 139 +020-5 140 +020-6 141 +020-7-1 142 +020-7-2 143 +020-7 144 +021-1 145 +021-2 146 +021-3 147 +021-4 148 +022-1 149 +023-1 150 +023-2 151 +023-3-1 152 +023-3-2 153 +023-3 154 +024-1 155 +024-10 156 +024-11 157 +024-12 158 +024-13 159 +024-14 160 +024-15 161 +024-16 162 +024-2 163 +024-3 164 +024-4 165 +024-5 166 +024-6 167 +024-7 168 +024-8 169 +024-9 170 +boss 171 +botcheck 172 +guilds 173 +sec_pri 174 +soren-2 175 +soren 176 +test 177 +testbg 178 diff --git a/maps/re/017-1.mcache b/maps/re/017-1.mcache index 8e0460974..291b35397 100644 Binary files a/maps/re/017-1.mcache and b/maps/re/017-1.mcache differ diff --git a/maps/re/018-6-2.mcache b/maps/re/018-6-2.mcache new file mode 100644 index 000000000..f72c6cf46 Binary files /dev/null and b/maps/re/018-6-2.mcache differ diff --git a/npc/018-6-2/_import.txt b/npc/018-6-2/_import.txt new file mode 100644 index 000000000..9a8d640ce --- /dev/null +++ b/npc/018-6-2/_import.txt @@ -0,0 +1,2 @@ +// Map 018-6-2: Forgotten Hall +// This file is generated automatically. All manually added changes will be removed when running the Converter. diff --git a/npc/_import.txt b/npc/_import.txt index c877bae5d..9aacd583a 100644 --- a/npc/_import.txt +++ b/npc/_import.txt @@ -128,6 +128,7 @@ @include "npc/018-5/_import.txt" @include "npc/018-6-0/_import.txt" @include "npc/018-6-1/_import.txt" +@include "npc/018-6-2/_import.txt" @include "npc/019-1-1/_import.txt" @include "npc/019-1/_import.txt" @include "npc/019-2/_import.txt" -- cgit v1.2.3-60-g2f50 From c0eac16a3163d645fcb8960265397b2f5d914a27 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 29 Aug 2019 13:15:57 -0300 Subject: *sigh* now to technically implement this --- npc/017-1/townhall.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/npc/017-1/townhall.txt b/npc/017-1/townhall.txt index 61df25334..d18466e5e 100644 --- a/npc/017-1/townhall.txt +++ b/npc/017-1/townhall.txt @@ -85,7 +85,7 @@ function script BarbaraInstCheck { .@inst = instance_create("Forgotten Shrine "+getcharid(0), getcharid(3), IOT_CHAR); instance_attachmap("018-6-0", .@inst, false, .@map0$); instance_attachmap("018-6-1", .@inst, false, .@map1$); - //instance_attachmap("018-6-2", .@inst, false, .@map2$); + instance_attachmap("018-6-2", .@inst, false, .@map2$); //instance_attachmap("018-6-3", .@inst, false, .@map3$); // Instance lasts two hours instance_set_timeout(7200, 7200, .@inst); -- cgit v1.2.3-60-g2f50 From 3e8923f5622be59db84a39419e9bf4775049c222 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 29 Aug 2019 21:18:28 -0300 Subject: SplashRange bonus → SplashAddRange (it's fixed as +1 so) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/item_options.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/db/item_options.conf b/db/item_options.conf index 9eabad237..870338f4f 100644 --- a/db/item_options.conf +++ b/db/item_options.conf @@ -1050,7 +1050,7 @@ item_options_db: ( { Id: 187 Name: "IOPT_SPLASHDAMAGE" - Script: <" bonus(bSplashRange, getequippedoptioninfo(IT_OPT_VALUE)); "> + Script: <" bonus(bSplashAddRange, getequippedoptioninfo(IT_OPT_VALUE)); "> }, { Id: 188 -- cgit v1.2.3-60-g2f50 From 15f1c63489363ef36904226dbca1a71ad3f4b82a Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 29 Aug 2019 21:21:45 -0300 Subject: IOTP_RICHNESS - n% chance to get 1~mobLv GP on kill --- db/item_options.conf | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/db/item_options.conf b/db/item_options.conf index 870338f4f..c3a39848b 100644 --- a/db/item_options.conf +++ b/db/item_options.conf @@ -1112,6 +1112,11 @@ item_options_db: ( Name: "IOPT_CRITDMG" Script: <" bonus(bCritAtkRate, getequippedoptioninfo(IT_OPT_VALUE)); "> } +{ + Id: 200 + Name: "IOPT_RICHNESS" + Script: <" bonus2(bAddGetZenyNum, -1, getequippedoptioninfo(IT_OPT_VALUE)); "> +}, ) -- cgit v1.2.3-60-g2f50 From f0b78339438d73206ceb618d9d15e28271a6a93e Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 29 Aug 2019 21:23:34 -0300 Subject: Throw GP gain to replace Splash Damage on Crafting. Splash Damage went to Lv 5 --- npc/craft/options.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/npc/craft/options.txt b/npc/craft/options.txt index c0ad5c8b7..db844d179 100644 --- a/npc/craft/options.txt +++ b/npc/craft/options.txt @@ -276,6 +276,9 @@ function script csys_Generate { array_push(@csys_attr, IOPT_EXPGAIN); } if (.@lvl >= 3) { + array_push(@csys_attr, IOPT_RICHNESS); + } + if (.@lvl >= 5) { array_push(@csys_attr, IOPT_SPLASHDAMAGE); } array_push(@csys_penalty, IOPT_WALKSPEED); @@ -345,6 +348,7 @@ function script csys_Multiplier { case IOPT_SPLASHDAMAGE: return 0; case IOPT_WALKSPEED: + case IOPT_RICHNESS: return 2; case VAR_AGIAMOUNT: case VAR_LUKAMOUNT: -- cgit v1.2.3-60-g2f50 From d5fa07b8ae66f886340ca61f5d5f5cfc8dab5aa8 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 29 Aug 2019 21:41:40 -0300 Subject: An evil comma --- db/item_options.conf | 4 ++-- npc/017-1/townhall.txt | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/db/item_options.conf b/db/item_options.conf index c3a39848b..cce2306f2 100644 --- a/db/item_options.conf +++ b/db/item_options.conf @@ -1111,12 +1111,12 @@ item_options_db: ( Id: 199 Name: "IOPT_CRITDMG" Script: <" bonus(bCritAtkRate, getequippedoptioninfo(IT_OPT_VALUE)); "> -} +}, { Id: 200 Name: "IOPT_RICHNESS" Script: <" bonus2(bAddGetZenyNum, -1, getequippedoptioninfo(IT_OPT_VALUE)); "> -}, +} ) diff --git a/npc/017-1/townhall.txt b/npc/017-1/townhall.txt index d18466e5e..f005c52b1 100644 --- a/npc/017-1/townhall.txt +++ b/npc/017-1/townhall.txt @@ -108,7 +108,6 @@ function script BarbaraInstCheck { end; OnTouch: - // TODO: OnQuest: Instance .@q=getq(LoFQuest_Barbara); if (.@q >= 1) { warp BarbaraInstCheck(1), 80, 199; -- cgit v1.2.3-60-g2f50 From 3114643fabfde05ee7e559535bfa1c0ea9259b2e Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 29 Aug 2019 22:03:34 -0300 Subject: Minimal core functions for 018-6-1 Elenium Mines --- npc/018-6-1/_import.txt | 1 + npc/018-6-1/main.txt | 98 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+) create mode 100644 npc/018-6-1/main.txt diff --git a/npc/018-6-1/_import.txt b/npc/018-6-1/_import.txt index de446a263..2770c1ae4 100644 --- a/npc/018-6-1/_import.txt +++ b/npc/018-6-1/_import.txt @@ -2,3 +2,4 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. "npc/018-6-1/_mobs.txt", "npc/018-6-1/_warps.txt", +"npc/018-6-1/main.txt", diff --git a/npc/018-6-1/main.txt b/npc/018-6-1/main.txt new file mode 100644 index 000000000..cbaed9897 --- /dev/null +++ b/npc/018-6-1/main.txt @@ -0,0 +1,98 @@ +// TMW2 Scripts +// Author: +// Jesusalva +// Description: +// Controls Elenium Mines, specially the instances + +// Main Controller for Instanced maps +018-6-1,0,0,0 script #01861_InstCtrl NPC_HIDDEN,{ + end; + +// Map, x, y, width, height, mob, amount +function AreaMonsterB { + .@m$=getarg(0); + .@x1=getarg(1); + .@x2=.@x1+getarg(3); + .@y1=getarg(2); + .@y2=.@y1+getarg(4); + .@mi=getarg(5); + .@am=getarg(6); + areamonster(.@m$, .@x1, .@y1, .@x2, .@y2, strmobinfo(1, .@mi), .@mi, .@am, instance_npcname(.name$)+"::OnKill"+.@mi); + return; +} + +// (var, value) +function SetIfVoid { + if (!getarg(0)) + return getarg(1); + return 0; +} + +// Bifs won't respawn +OnKill1226: +OnKill1227: +OnKill1228: + end; + +// Others: Wait 30 seconds and respawn +OnKill1178: + .@mi=SetIfVoid(.@mi, 1178); +OnKill1051: + .@mi=SetIfVoid(.@mi, 1051); +OnKill1074: + .@mi=SetIfVoid(.@mi, 1074); +OnKill1123: + .@mi=SetIfVoid(.@mi, 1123); +OnKill1176: + .@mi=SetIfVoid(.@mi, 1176); +OnKill1026: + .@mi=SetIfVoid(.@mi, 1026); + + // Common utils + getmapxy(.@m$, .@x, .@y, 0); + sleep(30000); + AreaMonsterB(.@m$, .@x-2, .@y-2, 4, 4, .@mi, 1); + end; + +OnInstanceInit: + // Generate map ID + getmapxy(.@m$, .@x, .@y, UNITTYPE_NPC); + + // Bif monsters + AreaMonsterB(.@m$, 40, 49, 7, 8, BigEleniumBif, 5); + AreaMonsterB(.@m$, 95, 51, 7, 8, BigEleniumBif, 5); + AreaMonsterB(.@m$, 145, 83, 6, 5, EleniumBif, 5); + AreaMonsterB(.@m$, 62, 86, 6, 5, EleniumBif, 5); + AreaMonsterB(.@m$, 65, 130, 6, 5, EleniumBif, 5); + AreaMonsterB(.@m$, 125, 158, 6, 5, SmallEleniumBif, 4); + AreaMonsterB(.@m$, 129, 183, 6, 5, SmallEleniumBif, 4); + AreaMonsterB(.@m$, 34, 181, 5, 5, SmallEleniumBif, 4); + + // Common Monsters + AreaMonsterB(.@m$, 80, 172, 54, 25, BlackSlime, 16); + AreaMonsterB(.@m$, 89, 167, 54, 25, DarkLizard, 8); + AreaMonsterB(.@m$, 96, 103, 56, 29, BlackScorpion, 18); + AreaMonsterB(.@m$, 101, 105, 54, 25, MountainSnake, 10); + AreaMonsterB(.@m$, 70, 45, 44, 25, WickedMushroom, 14); + AreaMonsterB(.@m$, 68, 45, 31, 21, Archant, 7); + end; + +} +///////////////////////////// +018-6-1,83,26,0 script #ToForgottenChamber NPC_SUMMONING_CIRC,0,0,{ + dispbottom l("It looks dangerous."); + end; + +OnTouch: + Exception("TODO"); + end; + +OnInit: + disablenpc .name$; + end; + +} + + + + -- cgit v1.2.3-60-g2f50 From bb858131f60b404fd8881391d487755cf67a2144 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 10:38:54 -0300 Subject: Account updater is not a thing, but I might need it right now --- npc/functions/clientversion.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/npc/functions/clientversion.txt b/npc/functions/clientversion.txt index 9acaf27a8..f23f2385a 100644 --- a/npc/functions/clientversion.txt +++ b/npc/functions/clientversion.txt @@ -18,6 +18,7 @@ function script clientupdater { if (UPDATE == 1565039378) { getitem MysteriousFruit, 1; UPDATE+=1; + #UPDATE=1565039378; dispbottom l("Received one @@ as August daily login bug Token of Apology!", getitemlink(MysteriousFruit)); } // Update handler (use `date +%s` for this) -- cgit v1.2.3-60-g2f50 From 2fdd1dc0ccb1047200f8142002c7dfe84e7905ba Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 10:39:28 -0300 Subject: Check for previous commit --- npc/functions/clientversion.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/npc/functions/clientversion.txt b/npc/functions/clientversion.txt index f23f2385a..a6d9811c0 100644 --- a/npc/functions/clientversion.txt +++ b/npc/functions/clientversion.txt @@ -15,7 +15,7 @@ function script clientupdater { .@dg=0; // ERROR fixing - if (UPDATE == 1565039378) { + if (UPDATE == 1565039378 && #UPDATE < 1565039378) { getitem MysteriousFruit, 1; UPDATE+=1; #UPDATE=1565039378; -- cgit v1.2.3-60-g2f50 From ce75463a748bf00714c7ee4d438e6948697cc5c3 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 10:41:31 -0300 Subject: Wurtizite → Wurtzite MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/re/item_db.conf | 4 ++-- db/re/mob_db.conf | 6 +++--- npc/017-4/refine.txt | 12 ++++++------ npc/functions/refine.txt | 2 +- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/db/re/item_db.conf b/db/re/item_db.conf index 75a7fca70..ce8a3d2ac 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -5522,8 +5522,8 @@ item_db: ( }, { Id: 912 - AegisName: "Wurtizite" - Name: "Wurtizite Ore" + AegisName: "Wurtzite" + Name: "Wurtzite Ore" Type: "IT_ETC" Buy: 5000 Sell: 500 diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf index 232163950..8a8226829 100644 --- a/db/re/mob_db.conf +++ b/db/re/mob_db.conf @@ -8844,7 +8844,7 @@ mob_db: ( Drops: { Coal: 200 CopperOre: 100 - Wurtizite: 100 + Wurtzite: 100 LeadOre: 40 Graphene: 25 LightGreenDiamond: 1 @@ -8870,7 +8870,7 @@ mob_db: ( Drops: { Coal: 300 CopperOre: 200 - Wurtizite: 200 + Wurtzite: 200 LeadOre: 80 Graphene: 45 LightGreenDiamond: 2 @@ -8896,7 +8896,7 @@ mob_db: ( Drops: { Coal: 500 CopperOre: 300 - Wurtizite: 300 + Wurtzite: 300 LeadOre: 120 Graphene: 65 LightGreenDiamond: 3 diff --git a/npc/017-4/refine.txt b/npc/017-4/refine.txt index 4c3e472d7..2bed9cee8 100644 --- a/npc/017-4/refine.txt +++ b/npc/017-4/refine.txt @@ -35,12 +35,12 @@ OnInit: L_Fusus: inventoryplace Iten, 1; mesn; - mesq l("I can fuse an @@ and 20 @@, besides @@ GP, into 3~5 @@.", getitemlink(CopperIngot), getitemlink(SilkCocoon), 500, getitemlink(Wurtizite)); - mesc l("5 @@ can be fused in a @@", getitemlink(Wurtizite), getitemlink(Graphene)); + mesq l("I can fuse an @@ and 20 @@, besides @@ GP, into 3~5 @@.", getitemlink(CopperIngot), getitemlink(SilkCocoon), 500, getitemlink(Wurtzite)); + mesc l("5 @@ can be fused in a @@", getitemlink(Wurtzite), getitemlink(Graphene)); mesc l("5 @@ can be fused in a @@", getitemlink(Graphene), getitemlink(Arcanum)); select - rif(Zeny >= 500, l("I want the Wurtizite")), - rif(countitem(Wurtizite) >= 5, l("I want Graphene")), + rif(Zeny >= 500, l("I want the Wurtzite")), + rif(countitem(Wurtzite) >= 5, l("I want Graphene")), rif(countitem(Graphene) >= 5, l("I want Arcanum")), l("Do nothing"); mes ""; @@ -51,10 +51,10 @@ L_Fusus: if (!transcheck(CopperIngot, 1, SilkCocoon, 20)) close; Zeny -= 500; - getitem Wurtizite, any(3,3,4,4,4,5); // 3: ~33%. 4: =50%. 5: ~17%. AVG: 3.8 + getitem Wurtzite, any(3,3,4,4,4,5); // 3: ~33%. 4: =50%. 5: ~17%. AVG: 3.8 break; case 2: - delitem Wurtizite, 5; + delitem Wurtzite, 5; getitem Graphene, 1; break; case 3: diff --git a/npc/functions/refine.txt b/npc/functions/refine.txt index 48535f91d..6275c042c 100644 --- a/npc/functions/refine.txt +++ b/npc/functions/refine.txt @@ -76,7 +76,7 @@ function script refineMaster { case 1: case 2: case 3: - .@rg=Wurtizite; break; + .@rg=Wurtzite; break; case 4: case 5: case 6: -- cgit v1.2.3-60-g2f50 From 3ea6a255439e05902adc8add099eb3556e08840a Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 10:45:16 -0300 Subject: Raise Anwar Success Chance in relative 1%. Maximum fails went from 8.3 to 7.7 --- npc/004-1/anwar.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/npc/004-1/anwar.txt b/npc/004-1/anwar.txt index 036131c6e..47ca64255 100644 --- a/npc/004-1/anwar.txt +++ b/npc/004-1/anwar.txt @@ -62,8 +62,8 @@ L_TryIt: next; setq2 TulimsharQuest_AnwarField, .@q2+1; - // Fail chances are 100% - 12% per attempt - if (rand(0,100) < 100-(.@q2*12)) { + // Fail chances are 100% - 13% per attempt + if (rand2(0,100) < 100-(.@q2*13)) { setq1 TulimsharQuest_AnwarField, 6; mesc l("Nothing happens."); next; -- cgit v1.2.3-60-g2f50 From 9069c1aaac3ea72b06c0c07991d27397ac4e5b9b Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 10:52:34 -0300 Subject: Mess up with Herbal Tea --- db/re/item_db.conf | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/db/re/item_db.conf b/db/re/item_db.conf index ce8a3d2ac..cdbb7a161 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -2281,7 +2281,7 @@ item_db: ( { Id: 615 AegisName: "HerbalTea" - Name: "Herbal Tea" + Name: "Nightshade Tea" Type: "IT_USABLE" Buy: 1240 Sell: 480 @@ -2291,7 +2291,8 @@ item_db: ( UseEffect: "EFFECT_HEAL" Script: <" sc_start SC_ATTHASTE_POTION1, 30000, 60; - sc_start SC_POISON, 40000, 0; + if (rand(10000) < 6000) + sc_start callfunc("any", SC_POISON, SC_SILENCE, SC_POISON, SC_CONFUSE, SC_POISON, SC_BLIND, SC_POISON), rand(20000, 40000), 0; itemheal 0, rand(10,200); "> }, -- cgit v1.2.3-60-g2f50 From 6bd8238388e91272cf077266a192e9d595e880e3 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 11:12:32 -0300 Subject: Acknowledge 018-6-3 mapspace. This allows MQ 6 to happen --- conf/map/maps.conf | 1 + db/map_index.txt | 99 ++++++++++++++++++++++++------------------------ maps/re/018-6-3.mcache | Bin 0 -> 612 bytes npc/018-6-3/_import.txt | 2 + npc/_import.txt | 1 + 5 files changed, 54 insertions(+), 49 deletions(-) create mode 100644 maps/re/018-6-3.mcache create mode 100644 npc/018-6-3/_import.txt diff --git a/conf/map/maps.conf b/conf/map/maps.conf index 070af3756..5abef6ff7 100644 --- a/conf/map/maps.conf +++ b/conf/map/maps.conf @@ -130,6 +130,7 @@ map_list: ( "018-6-0", "018-6-1", "018-6-2", + "018-6-3", "019-1-1", "019-1", "019-2", diff --git a/db/map_index.txt b/db/map_index.txt index f50043de0..2dc2bd3ea 100644 --- a/db/map_index.txt +++ b/db/map_index.txt @@ -127,52 +127,53 @@ 018-6-0 127 018-6-1 128 018-6-2 129 -019-1-1 130 -019-1 131 -019-2 132 -019-3 133 -019-4-1 134 -019-4 135 -020-1 136 -020-2 137 -020-3 138 -020-4 139 -020-5 140 -020-6 141 -020-7-1 142 -020-7-2 143 -020-7 144 -021-1 145 -021-2 146 -021-3 147 -021-4 148 -022-1 149 -023-1 150 -023-2 151 -023-3-1 152 -023-3-2 153 -023-3 154 -024-1 155 -024-10 156 -024-11 157 -024-12 158 -024-13 159 -024-14 160 -024-15 161 -024-16 162 -024-2 163 -024-3 164 -024-4 165 -024-5 166 -024-6 167 -024-7 168 -024-8 169 -024-9 170 -boss 171 -botcheck 172 -guilds 173 -sec_pri 174 -soren-2 175 -soren 176 -test 177 -testbg 178 +018-6-3 130 +019-1-1 131 +019-1 132 +019-2 133 +019-3 134 +019-4-1 135 +019-4 136 +020-1 137 +020-2 138 +020-3 139 +020-4 140 +020-5 141 +020-6 142 +020-7-1 143 +020-7-2 144 +020-7 145 +021-1 146 +021-2 147 +021-3 148 +021-4 149 +022-1 150 +023-1 151 +023-2 152 +023-3-1 153 +023-3-2 154 +023-3 155 +024-1 156 +024-10 157 +024-11 158 +024-12 159 +024-13 160 +024-14 161 +024-15 162 +024-16 163 +024-2 164 +024-3 165 +024-4 166 +024-5 167 +024-6 168 +024-7 169 +024-8 170 +024-9 171 +boss 172 +botcheck 173 +guilds 174 +sec_pri 175 +soren-2 176 +soren 177 +test 178 +testbg 179 diff --git a/maps/re/018-6-3.mcache b/maps/re/018-6-3.mcache new file mode 100644 index 000000000..8adaa3869 Binary files /dev/null and b/maps/re/018-6-3.mcache differ diff --git a/npc/018-6-3/_import.txt b/npc/018-6-3/_import.txt new file mode 100644 index 000000000..31f003015 --- /dev/null +++ b/npc/018-6-3/_import.txt @@ -0,0 +1,2 @@ +// Map 018-6-3: Forgotten Shrine +// This file is generated automatically. All manually added changes will be removed when running the Converter. diff --git a/npc/_import.txt b/npc/_import.txt index 9aacd583a..e5596800e 100644 --- a/npc/_import.txt +++ b/npc/_import.txt @@ -129,6 +129,7 @@ @include "npc/018-6-0/_import.txt" @include "npc/018-6-1/_import.txt" @include "npc/018-6-2/_import.txt" +@include "npc/018-6-3/_import.txt" @include "npc/019-1-1/_import.txt" @include "npc/019-1/_import.txt" @include "npc/019-2/_import.txt" -- cgit v1.2.3-60-g2f50 From a9f900ad7a4ebccb125004b218408f23978bb3f4 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 11:14:44 -0300 Subject: Getting blind for drinking tea? Well, you _could_ burn your tongue, but otherwise... --- db/re/item_db.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/db/re/item_db.conf b/db/re/item_db.conf index cdbb7a161..a685f4054 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -2292,7 +2292,7 @@ item_db: ( Script: <" sc_start SC_ATTHASTE_POTION1, 30000, 60; if (rand(10000) < 6000) - sc_start callfunc("any", SC_POISON, SC_SILENCE, SC_POISON, SC_CONFUSE, SC_POISON, SC_BLIND, SC_POISON), rand(20000, 40000), 0; + sc_start callfunc("any", SC_POISON, SC_SILENCE, SC_POISON, SC_CONFUSE, SC_POISON), rand(20000, 40000), 0; itemheal 0, rand(10,200); "> }, -- cgit v1.2.3-60-g2f50 From e36711920aca544f001b1940203393ab0371b8e9 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 11:15:09 -0300 Subject: Poison is more likely, but there's 1/6 chance of getting bad luck and silenced. --- db/re/item_db.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/db/re/item_db.conf b/db/re/item_db.conf index a685f4054..f3c95f6eb 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -2292,7 +2292,7 @@ item_db: ( Script: <" sc_start SC_ATTHASTE_POTION1, 30000, 60; if (rand(10000) < 6000) - sc_start callfunc("any", SC_POISON, SC_SILENCE, SC_POISON, SC_CONFUSE, SC_POISON), rand(20000, 40000), 0; + sc_start callfunc("any", SC_POISON, SC_SILENCE, SC_POISON, SC_CONFUSE, SC_POISON, SC_POISON), rand(20000, 40000), 0; itemheal 0, rand(10,200); "> }, -- cgit v1.2.3-60-g2f50 From 71051c803f7f5697e668f0783b8bef63b6a1dc76 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 11:22:43 -0300 Subject: Dialog for Tinris failures --- npc/003-1/tinris.txt | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/npc/003-1/tinris.txt b/npc/003-1/tinris.txt index ce759981f..92404daef 100644 --- a/npc/003-1/tinris.txt +++ b/npc/003-1/tinris.txt @@ -109,7 +109,35 @@ L_Fail: else getexp 90, 0; mesn; - mesq l("Well, that could fail, I said. Here is some experience."); + switch (.@q2) { + case 1: + mesq l("Well, that could fail, I said. Here is some experience."); + break; + case 2: + mesq l("Don't worry, third time is the charm. Here is some experience. Let's try again."); + break; + case 3: + mesq l("Okay, here is some experience, and forgot what I've said before. We can try again."); + break; + case 4: + mesq l("Don't worry, I've tweaked my formula this time. Here is some experience and let's try again!"); + break; + case 5: + mesq l("I'm sorry, I just... Maybe if...? Aha! Here's the EXP, ready for a next go?"); + break; + case 6: + mesq l("Uhm, maybe I mashed the Plushroom too hard this time. Here's EXP as usual, let's try again?"); + break; + case 7: + mesq l("I shall not fail any further, I think my new formula is perfect! Here's the EXP, but I need material to use it!"); + break; + case 8: + mesq l("I never knew you could fail THAT hard. I've took Saulc's Fertilizer's recipe, success chance is of 100% if you want to try again."); + break; + default: + mesq l("Well, that could fail, I said. Here is some experience."); + break; + } next; if (countitem(Plushroom) >= 3 && countitem(MaggotSlime) >= 9) -- cgit v1.2.3-60-g2f50 From 63f7e157946a0d2b8d09fb9d417c91c87beb23c6 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 11:53:01 -0300 Subject: Sagratha Unhappy: Move conditional further down the line. --- npc/014-5-1/sagratha.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/npc/014-5-1/sagratha.txt b/npc/014-5-1/sagratha.txt index e5f31475c..81ac6b0bb 100644 --- a/npc/014-5-1/sagratha.txt +++ b/npc/014-5-1/sagratha.txt @@ -57,8 +57,6 @@ function script SaggyMobCount { function requireHelp; if (array_find(.SaggyHats, getequipid(EQI_HEAD_TOP)) >= 0) goto L_HatAttack; - if (SAGRATHA_SCORE < 0) - goto L_Unhappy; .@q=getq(HurnscaldQuest_Sagratha); .@m=getq(HurnscaldQuest_InjuriedMouboo); @@ -86,6 +84,8 @@ function script SaggyMobCount { goto L_Reward; if (.@q == 6) goto L_Finish; + if (SAGRATHA_SCORE < 0) + goto L_Unhappy; do { -- cgit v1.2.3-60-g2f50 From 2c8e89cbb27f6f7adde24a17914c9f7c6ddb3aa6 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 12:07:57 -0300 Subject: Minimum Warp Crystal Break Rate - 30% → 20% MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- npc/items/teleporter.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/npc/items/teleporter.txt b/npc/items/teleporter.txt index 40bf61821..01a1af586 100644 --- a/npc/items/teleporter.txt +++ b/npc/items/teleporter.txt @@ -31,10 +31,10 @@ OnUse: } // TODO: Are you already at target point? - // It have at least 30% chance to break + // It have at least 20% chance to break // Chances begin at 100%, and lower in 0.01% each second - // It will never be below 30%, which happens after 7000 seconds - .@adj_breakrate=max(3000, 10000-(gettimetick(2)-TELEPORTER_TIME) ); + // It will never be below 20%, which happens after 7000 seconds + .@adj_breakrate=max(2000, 10000-(gettimetick(2)-TELEPORTER_TIME) ); //debugmes "Adjusted break ratio: %d", .@adj_breakrate; if (rand(0,10000) > .@adj_breakrate) getitem @itemid, 1; -- cgit v1.2.3-60-g2f50 From 88aaf2154475ef7c9d0e411b06d52d82c3c177e0 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 14:47:53 -0300 Subject: More main, core logics, needed for Forgotten Arc --- db/re/map_zone_db.conf | 4 ++++ npc/017-1/townhall.txt | 2 +- npc/018-6-0/_import.txt | 1 + npc/018-6-0/main.txt | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ npc/018-6-1/main.txt | 8 +++++++- npc/items/teleporter.txt | 2 +- 6 files changed, 62 insertions(+), 3 deletions(-) create mode 100644 npc/018-6-0/main.txt diff --git a/db/re/map_zone_db.conf b/db/re/map_zone_db.conf index 871e8b228..95455f729 100644 --- a/db/re/map_zone_db.conf +++ b/db/re/map_zone_db.conf @@ -609,5 +609,9 @@ zones: ( disabled_items: { } + + disabled_commands: { + pvpon: 100 + } } ) diff --git a/npc/017-1/townhall.txt b/npc/017-1/townhall.txt index f005c52b1..05e613eb8 100644 --- a/npc/017-1/townhall.txt +++ b/npc/017-1/townhall.txt @@ -86,7 +86,7 @@ function script BarbaraInstCheck { instance_attachmap("018-6-0", .@inst, false, .@map0$); instance_attachmap("018-6-1", .@inst, false, .@map1$); instance_attachmap("018-6-2", .@inst, false, .@map2$); - //instance_attachmap("018-6-3", .@inst, false, .@map3$); + instance_attachmap("018-6-3", .@inst, false, .@map3$); // Instance lasts two hours instance_set_timeout(7200, 7200, .@inst); instance_init(.@inst); diff --git a/npc/018-6-0/_import.txt b/npc/018-6-0/_import.txt index 45be6bdab..0e2c16f0e 100644 --- a/npc/018-6-0/_import.txt +++ b/npc/018-6-0/_import.txt @@ -1,2 +1,3 @@ // Map 018-6-0: Sanctuary - Forgotten Chamber // This file is generated automatically. All manually added changes will be removed when running the Converter. +"npc/018-6-0/main.txt", diff --git a/npc/018-6-0/main.txt b/npc/018-6-0/main.txt new file mode 100644 index 000000000..2e12efceb --- /dev/null +++ b/npc/018-6-0/main.txt @@ -0,0 +1,48 @@ +// TMW2 Scripts +// Author: +// Jesusalva +// Description: +// Controls Forgotten Chamber + +///////////////////////////// +018-6-1,83,26,0 script #ToForgottenShrine NPC_SUMMONING_CIRC,0,0,{ + dispbottom l("It looks dangerous."); + end; + +OnTouch: + .@q=getq(LoFQuest_Barbara); + if (.@q >= 2) { + warp BarbaraInstCheck(3), 31, 151; + //warp BarbaraInstCheck(0), 90+any(-1, 1), 90+any(-1,1); + } else { + Exception("ERROR, YOU SHOULD NOT BEEN SEEING THIS. 018-6-1.TFC"); + } + end; + +OnInit: +OnInstanceInit: + disablenpc .name$; + end; + +} + +///////////////////////////// +018-6-1,83,26,0 script #FromEleniumMines NPC_SUMMONING_CIRC,0,0,{ + dispbottom l("It should bring me back."); + end; + +OnTouch: + .@q=getq(LoFQuest_Barbara); + if (.@q < 10) { + warp BarbaraInstCheck(1), 83, 28; + //warp BarbaraInstCheck(0), 90+any(-1, 1), 90+any(-1,1); + } else { + warp "018-6-1", 83, 28; + } + end; +} + + + + + diff --git a/npc/018-6-1/main.txt b/npc/018-6-1/main.txt index cbaed9897..a12bb8672 100644 --- a/npc/018-6-1/main.txt +++ b/npc/018-6-1/main.txt @@ -84,7 +84,13 @@ OnInstanceInit: end; OnTouch: - Exception("TODO"); + .@q=getq(LoFQuest_Barbara); + if (.@q >= 1) { + warp BarbaraInstCheck(0), 90, 91; + //warp BarbaraInstCheck(0), 90+any(-1, 1), 90+any(-1,1); + } else { + Exception("ERROR, YOU SHOULD NOT BEEN SEEING THIS. 018-6-1.TFC"); + } end; OnInit: diff --git a/npc/items/teleporter.txt b/npc/items/teleporter.txt index 01a1af586..592817a75 100644 --- a/npc/items/teleporter.txt +++ b/npc/items/teleporter.txt @@ -33,7 +33,7 @@ OnUse: // It have at least 20% chance to break // Chances begin at 100%, and lower in 0.01% each second - // It will never be below 20%, which happens after 7000 seconds + // It will never be below 20%, which happens after 8000 seconds .@adj_breakrate=max(2000, 10000-(gettimetick(2)-TELEPORTER_TIME) ); //debugmes "Adjusted break ratio: %d", .@adj_breakrate; if (rand(0,10000) > .@adj_breakrate) -- cgit v1.2.3-60-g2f50 From 9e8b0b8ac77c11edb20fca419192c7466a8a56f1 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 16:08:43 -0300 Subject: Lower Cotton Trouser price from 90k to 80k, update item db Still too high but need better equipment for saner prices --- db/re/item_db.conf | 4 ++-- npc/012-1/shoppakep.txt | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/db/re/item_db.conf b/db/re/item_db.conf index f3c95f6eb..8faf6c255 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -8121,8 +8121,8 @@ item_db: ( AegisName: "CottonTrousers" Name: "Cotton Trousers" Type: "IT_ARMOR" - Buy: 1200 - Sell: 250 + Buy: 12000 + Sell: 2500 Weight: 25 Def: 22 Slots: 1 diff --git a/npc/012-1/shoppakep.txt b/npc/012-1/shoppakep.txt index 2ee13acc2..a55e36554 100644 --- a/npc/012-1/shoppakep.txt +++ b/npc/012-1/shoppakep.txt @@ -35,7 +35,7 @@ OnInit: sellitem CottonSkirt, 100000, 1; sellitem MiniSkirt, 100000, 1; sellitem ShortTankTop, 100000, 1; - sellitem CottonTrousers, 90000, 1; + sellitem CottonTrousers, 80000, 1; sellitem CottonGloves, 20000, 1; sellitem CottonBoots, 10000, 1; @@ -56,7 +56,7 @@ OnClock0546: restoreshopitem CottonSkirt, 100000, 1; restoreshopitem MiniSkirt, 100000, 1; restoreshopitem ShortTankTop, 100000, 1; - restoreshopitem CottonTrousers, 90000, 1; + restoreshopitem CottonTrousers, 80000, 1; restoreshopitem CottonGloves, 20000, 1; restoreshopitem CottonBoots, 10000, 1; -- cgit v1.2.3-60-g2f50 From 2473c5d1036b1b994f42fc7cbc1a83296ef6f5e3 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 16:22:49 -0300 Subject: Client updater - Julie --- npc/functions/clientversion.txt | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/npc/functions/clientversion.txt b/npc/functions/clientversion.txt index a6d9811c0..1a8872786 100644 --- a/npc/functions/clientversion.txt +++ b/npc/functions/clientversion.txt @@ -581,7 +581,45 @@ function script clientupdater { } // Update Crafting Score CRAFTING_SCORE_COMPLETE=CRAFTING_SCORE*39; + // Water bug + if (strcharinfo(0) == "JulieWarhawk") { + #LOAN=34980; + // Take any money in pockets + if (Zeny>=#LOAN) { + Zeny-=#LOAN; + #LOAN=0; + } else { + #LOAN-=Zeny; + Zeny=0; + } + // Sell Bottles + if (countitem(BottleOfWoodlandWater)) { + #LOAN-=countitem(BottleOfWoodlandWater)*80; + delitem BottleOfWoodlandWater, countitem(BottleOfWoodlandWater); + } + if (countitem(EmptyBottle)) { + #LOAN-=countitem(EmptyBottle)*80; + delitem EmptyBottle, countitem(EmptyBottle); + } + if (countitem(IcedBottle)) { + #LOAN-=countitem(IcedBottle)*500; + delitem IcedBottle, countitem(IcedBottle); + } + // Bank money (will also handle overflows) + if (BankVault > #LOAN) { + BankVault-=#LOAN; + #LOAN=0; + } else { + #LOAN-=BankVault; + BankVault=0; + } + + // Unjail player + atcommand "@unjail "+strcharinfo(0); + dispbottom l("You have been freed, and you still own @@ GP to the Bank.", #LOAN); + + } } -- cgit v1.2.3-60-g2f50 From 57a4c13193c91f616a579b73607e00c5ae923274 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 16:34:26 -0300 Subject: Jesusalva | Today at 4:33 PM Hello World haven't loggen in the past 40 days Can I just assume seeds won the event? :frowning: > yes --- npc/functions/clientversion.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/npc/functions/clientversion.txt b/npc/functions/clientversion.txt index 1a8872786..6882e2e36 100644 --- a/npc/functions/clientversion.txt +++ b/npc/functions/clientversion.txt @@ -618,8 +618,13 @@ function script clientupdater { // Unjail player atcommand "@unjail "+strcharinfo(0); dispbottom l("You have been freed, and you still own @@ GP to the Bank.", #LOAN); + } + // Bug reward (FF) + if (strcharinfo(0) == "seeds") { + getitembound LegendaryMouboo, 1, 1; } + } -- cgit v1.2.3-60-g2f50 From 9129341a98bb1b5a92d3dc442f4ca247d8332cec Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 19:23:26 -0300 Subject: That's right, JulieWarhawk never sold a single water bottle '-' Noobs >.> --- npc/functions/clientversion.txt | 25 ++++--------------------- 1 file changed, 4 insertions(+), 21 deletions(-) diff --git a/npc/functions/clientversion.txt b/npc/functions/clientversion.txt index 6882e2e36..0a97ffc52 100644 --- a/npc/functions/clientversion.txt +++ b/npc/functions/clientversion.txt @@ -583,41 +583,24 @@ function script clientupdater { CRAFTING_SCORE_COMPLETE=CRAFTING_SCORE*39; // Water bug if (strcharinfo(0) == "JulieWarhawk") { - #LOAN=34980; + .@dg=true; - // Take any money in pockets - if (Zeny>=#LOAN) { - Zeny-=#LOAN; - #LOAN=0; - } else { - #LOAN-=Zeny; - Zeny=0; - } // Sell Bottles if (countitem(BottleOfWoodlandWater)) { - #LOAN-=countitem(BottleOfWoodlandWater)*80; delitem BottleOfWoodlandWater, countitem(BottleOfWoodlandWater); } if (countitem(EmptyBottle)) { - #LOAN-=countitem(EmptyBottle)*80; delitem EmptyBottle, countitem(EmptyBottle); } if (countitem(IcedBottle)) { - #LOAN-=countitem(IcedBottle)*500; delitem IcedBottle, countitem(IcedBottle); } - // Bank money (will also handle overflows) - if (BankVault > #LOAN) { - BankVault-=#LOAN; - #LOAN=0; - } else { - #LOAN-=BankVault; - BankVault=0; - } // Unjail player atcommand "@unjail "+strcharinfo(0); - dispbottom l("You have been freed, and you still own @@ GP to the Bank.", #LOAN); + mesn "Jesusalva"; + mesq l("You're right, you never sold any Water Bottle ever. I'm unjailing you."); + next; } // Bug reward (FF) -- cgit v1.2.3-60-g2f50 From a75c323e7a9b35f7dcc49c6f86478ec16a3c0419 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 19:25:06 -0300 Subject: Actually, give Julie an Arcmage Boxset as an apology token. --- npc/functions/clientversion.txt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/npc/functions/clientversion.txt b/npc/functions/clientversion.txt index 0a97ffc52..6c507ccbc 100644 --- a/npc/functions/clientversion.txt +++ b/npc/functions/clientversion.txt @@ -586,8 +586,8 @@ function script clientupdater { .@dg=true; // Sell Bottles - if (countitem(BottleOfWoodlandWater)) { - delitem BottleOfWoodlandWater, countitem(BottleOfWoodlandWater); + if (countitem(BottleOfWoodlandWater) > 1) { + delitem BottleOfWoodlandWater, (countitem(BottleOfWoodlandWater)/2)+1; } if (countitem(EmptyBottle)) { delitem EmptyBottle, countitem(EmptyBottle); @@ -595,11 +595,13 @@ function script clientupdater { if (countitem(IcedBottle)) { delitem IcedBottle, countitem(IcedBottle); } + getitem ArcmageBoxset, 1; // Unjail player atcommand "@unjail "+strcharinfo(0); mesn "Jesusalva"; mesq l("You're right, you never sold any Water Bottle ever. I'm unjailing you."); + mesc l("As an Apology Token, you're also receiving one @@.", getitemlink(ArcmageBoxset)); next; } -- cgit v1.2.3-60-g2f50 From d936a2e5ffa6097135db52ca173ed7cd332767e4 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 19:33:40 -0300 Subject: OnLogin: If you're in Jail, send message. reinforce we cannot unjail offline players. Send message that player have the right of defense. Remember we may change our mind. Remember innocent people get apology gift. Threat scammers/hackers/etc. which would be normally banned. Assure GMs will try to make out a compromise and free even if you're guilty. --- npc/functions/clientversion.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/npc/functions/clientversion.txt b/npc/functions/clientversion.txt index 6c507ccbc..bacbf3863 100644 --- a/npc/functions/clientversion.txt +++ b/npc/functions/clientversion.txt @@ -12,6 +12,13 @@ function script clientupdater { if (getmap() ~= "000-0*") { UPDATE=gettimetick(2); } + // If you're in Jail, show a minor message + if (getmap() == "sec_pri") { + dispbottom l("You seem to be jailed. We cannot unjail offline players, so please don't logout."); + dispbottom l("You have the right to defend yourself if you believe we were wrong. If we find out it's true, you'll receive an apology gift."); + dispbottom l("Note: Unless you were doing something REALLY bad which is harmful to player community (eg. scamming, hacking, DDoS'ing, etc.)"); + dispbottom l("Please contact a GM as soon as possible so we can make out a compromise. You should be liberated even if found guilty."); + } .@dg=0; // ERROR fixing -- cgit v1.2.3-60-g2f50 From 06c9c4d8e1b5c323e9d8a5bf9c84612d9c827389 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 30 Aug 2019 19:41:18 -0300 Subject: Rule 10 - Do not logout at botcheck or jail areas. Apology gift if innocent. Rule 11 - Council Trial Right. The right to be judged by community. --- npc/functions/game-rules.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/npc/functions/game-rules.txt b/npc/functions/game-rules.txt index cd528e333..e3242c53d 100644 --- a/npc/functions/game-rules.txt +++ b/npc/functions/game-rules.txt @@ -27,7 +27,9 @@ function script GameRules { l("6. ##BDo not create multi accounts.##b A person may only hold one account and as many chars as allowed by the server/client. Staff members with special privileges in-game may have a second account without those privileges."), l("7. ##BAs long as you have an account, you agree with the [@@https://tmw2.org/legal|Terms Of Service@@]##b. Shall any rule conflict with these terms, the Terms Of Service provided on that link shall prevail."), l("8. ##BThe use of real money is prohibited##b for ingame stuff, except by sponsoring."), - l("9. ##BAdmit when you're wrong.##b Users trying to lie to or fool GMs will get no pity from them."); + l("9. ##BAdmit when you're wrong.##b Users trying to lie to or fool GMs will get no pity from them."), + l("10. ##BDo not logout##b at Botcheck area or at Jail. We cannot unjail an offline player. The opposite of rule 9: If you believe you're right, keep your ground and explain calmly what happened. We'll calmly analyse the situation. If you were jailed without guilt, an apology will be sent to you, provided this rule is not broken."), + l("11. If you believe a GM is not being fair, or you believe your defense is being ignored, request a ##BCouncil Trial##b. It's your right. In a Council Trial, we'll have multiple people giving the veredict. Any player may be called to compose the council. All admins shall take part in it. An arragment relative to time and date is to be made."); return; } -- cgit v1.2.3-60-g2f50 From 562263c15c5d2f7176f36454dadc61cf1a4b2f53 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 00:31:36 -0300 Subject: Regenerate maps. Add a file with comments of internal state of Barbara quest. --- npc/015-8-1/_import.txt | 2 +- npc/018-6-0/ctrl | 29 +++++++++++++++++++++++++++++ npc/018-6-1/main.txt | 1 + npc/functions/game-rules.txt | 2 +- 4 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 npc/018-6-0/ctrl diff --git a/npc/015-8-1/_import.txt b/npc/015-8-1/_import.txt index d2ae0e8bb..016ede10f 100644 --- a/npc/015-8-1/_import.txt +++ b/npc/015-8-1/_import.txt @@ -1,4 +1,4 @@ -// Map 015-8-1: Cave Of Trials +// Map 015-8-1: Abandoned Ruins // This file is generated automatically. All manually added changes will be removed when running the Converter. "npc/015-8-1/campaign.txt", "npc/015-8-1/puzzle.txt", diff --git a/npc/018-6-0/ctrl b/npc/018-6-0/ctrl new file mode 100644 index 000000000..e1f7f6140 --- /dev/null +++ b/npc/018-6-0/ctrl @@ -0,0 +1,29 @@ +LoFQuest_Barbara +q1 + q3 + +-------------------------- +0 Quest not assigned +1 Quest was assigned + 0 No cutscene seen + 1 The wounded soldier seen + 2 The footprints seen +2 Forgotten Chamber Puzzle is in progress (warp on) + 0 No puzzle solved + 1 West puzzle solved (&) (west lever) + 2 East puzzle solved (&) (east lever) + 3 South puzzle unlocked (w/e lever) + 4 South puzzle node (e/w lever) + 5 South puzzle solved, access to shrine granted +3 Forgotten Shrine has been allowed (warp on / remember to reenable NPCs on resume) + Bitwise boss fights: + 1, 2, 4, 8, 16, 32, 64, 128, 256 (enable warps as win) + → Once the main shrine was reached: set to 511, Mana Stone story + & 512 => Boss defeated, cutscene ended, magic apple now visible +4 Ambush finished, return to elenium mines +5 Barbara captured +6 Reward claimed, Barbara Arrested +7 Reward claimed, Barbara NOT Arrested + +Field 2: Instance ID + diff --git a/npc/018-6-1/main.txt b/npc/018-6-1/main.txt index a12bb8672..89658dee9 100644 --- a/npc/018-6-1/main.txt +++ b/npc/018-6-1/main.txt @@ -99,6 +99,7 @@ OnInit: } +///////////////////////////// Minievents diff --git a/npc/functions/game-rules.txt b/npc/functions/game-rules.txt index e3242c53d..baa60f14c 100644 --- a/npc/functions/game-rules.txt +++ b/npc/functions/game-rules.txt @@ -29,7 +29,7 @@ function script GameRules { l("8. ##BThe use of real money is prohibited##b for ingame stuff, except by sponsoring."), l("9. ##BAdmit when you're wrong.##b Users trying to lie to or fool GMs will get no pity from them."), l("10. ##BDo not logout##b at Botcheck area or at Jail. We cannot unjail an offline player. The opposite of rule 9: If you believe you're right, keep your ground and explain calmly what happened. We'll calmly analyse the situation. If you were jailed without guilt, an apology will be sent to you, provided this rule is not broken."), - l("11. If you believe a GM is not being fair, or you believe your defense is being ignored, request a ##BCouncil Trial##b. It's your right. In a Council Trial, we'll have multiple people giving the veredict. Any player may be called to compose the council. All admins shall take part in it. An arragment relative to time and date is to be made."); + l("11. If you believe you are Not Guilty, but the GM deemed you guilty, request a ##BCouncil Trial##b. It's your right. In a Council Trial, we'll have multiple people giving the veredict. Any player may be called to compose the council. All admins shall take part in it. An arragment relative to time, date, and number of counsellors is to be made."); return; } -- cgit v1.2.3-60-g2f50 From 4c5fa3f86c7db895dab7dee6dcda8eefafe33f4e Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 00:35:08 -0300 Subject: Minimal retry control on Forgotten Arcs. It's starting to get ready to receive logic. --- npc/018-6-1/main.txt | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/npc/018-6-1/main.txt b/npc/018-6-1/main.txt index 89658dee9..5a1331aaf 100644 --- a/npc/018-6-1/main.txt +++ b/npc/018-6-1/main.txt @@ -85,9 +85,19 @@ OnInstanceInit: OnTouch: .@q=getq(LoFQuest_Barbara); + .@q2=getq2(LoFQuest_Barbara); + .@q3=getq3(LoFQuest_Barbara); if (.@q >= 1) { warp BarbaraInstCheck(0), 90, 91; - //warp BarbaraInstCheck(0), 90+any(-1, 1), 90+any(-1,1); + // Complete the first arc if possible + if (.@q == 1) { + setq1 LoFQuest_Barbara, 2; + setq3 LoFQuest_Barbara, 0; + } + // Update M0 NPCs based on quest state + if (.@q3 == 5) + enablenpc instance_npcname("#ToForgottenShrine", .@q2); + } else { Exception("ERROR, YOU SHOULD NOT BEEN SEEING THIS. 018-6-1.TFC"); } -- cgit v1.2.3-60-g2f50 From d105d4594756b1272504bf9d7e42bf93b51b1f9c Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 02:22:31 -0300 Subject: Manual correction on healing delay --- npc/014-2/mouboo.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/npc/014-2/mouboo.txt b/npc/014-2/mouboo.txt index 038f0aec0..99534db10 100644 --- a/npc/014-2/mouboo.txt +++ b/npc/014-2/mouboo.txt @@ -93,6 +93,7 @@ L_Begin: itemeffect(.@id); // As a bonus, you'll be healed too, because I need to retrieve @max value // You need about 9.000 HP-worth healing items, and you can't use Mouboo Steak + @val1*=rand2(3,5); // Average delay if (.@id == ElixirOfLife) setq2 HurnscaldQuest_InjuriedMouboo, 9999; else -- cgit v1.2.3-60-g2f50 From 9e5e0a32593e4e72c3ffafabc6101663c1869dff Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 13:21:38 -0300 Subject: This will be chaotic to implement >.< --- npc/018-6-0/main.txt | 37 +++++++++++++++++++++++++++++++++---- npc/018-6-2/_import.txt | 1 + npc/018-6-2/main.txt | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 82 insertions(+), 4 deletions(-) create mode 100644 npc/018-6-2/main.txt diff --git a/npc/018-6-0/main.txt b/npc/018-6-0/main.txt index 2e12efceb..4020fe0c1 100644 --- a/npc/018-6-0/main.txt +++ b/npc/018-6-0/main.txt @@ -5,7 +5,7 @@ // Controls Forgotten Chamber ///////////////////////////// -018-6-1,83,26,0 script #ToForgottenShrine NPC_SUMMONING_CIRC,0,0,{ +018-6-0,90,67,0 script #ToForgottenShrine NPC_SUMMONING_CIRC,0,0,{ dispbottom l("It looks dangerous."); end; @@ -19,15 +19,17 @@ OnTouch: } end; + OnInit: -OnInstanceInit: disablenpc .name$; end; - +OnInstanceInit: + disablenpc instance_npcname(.name$); + end; } ///////////////////////////// -018-6-1,83,26,0 script #FromEleniumMines NPC_SUMMONING_CIRC,0,0,{ +018-6-0,90,90,0 script #FromEleniumMines NPC_SUMMONING_CIRC,0,0,{ dispbottom l("It should bring me back."); end; @@ -46,3 +48,30 @@ OnTouch: +///////////////////////////// +018-6-0,90,113,0 script #ToSouthHall NPC_SUMMONING_CIRC,0,0,{ + dispbottom l("It looks dangerous."); + end; + +OnTouch: + .@q=getq(LoFQuest_Barbara); + .@q2=getq2(LoFQuest_Barbara); + .@q3=getq3(LoFQuest_Barbara); + if (.@q == 2 && .@q3 >= 3) { + warp BarbaraInstCheck(2), 90, 32; + //warp BarbaraInstCheck(0), 90+any(-1, 1), 90+any(-1,1); + } else { + dispbottom l("I already visited this warp."); + } + end; + + +OnInit: + disablenpc .name$; + end; +OnInstanceInit: + disablenpc instance_npcname(.name$); + end; +} + + diff --git a/npc/018-6-2/_import.txt b/npc/018-6-2/_import.txt index 9a8d640ce..2291a778c 100644 --- a/npc/018-6-2/_import.txt +++ b/npc/018-6-2/_import.txt @@ -1,2 +1,3 @@ // Map 018-6-2: Forgotten Hall // This file is generated automatically. All manually added changes will be removed when running the Converter. +"npc/018-6-2/main.txt", diff --git a/npc/018-6-2/main.txt b/npc/018-6-2/main.txt new file mode 100644 index 000000000..a1ffd51fa --- /dev/null +++ b/npc/018-6-2/main.txt @@ -0,0 +1,48 @@ +// TMW2 Scripts +// Author: +// Jesusalva +// Description: +// Controls Forgotten Chamber + +///////////////////////////// +018-6-2,90,31,0 script #FromSouthHall NPC_SUMMONING_CIRC,0,0,{ + dispbottom l("It looks dangerous."); + end; + +OnTouch: + .@q=getq(LoFQuest_Barbara); + .@q2=getq2(LoFQuest_Barbara); + .@q3=getq3(LoFQuest_Barbara); + if (.@q == 2) { + // 1 - West Puzzle + if (!(.@q3 & 1)) { + warp BarbaraInstCheck(0), 68, 90; + setq3 LoFQuest_Barbara, .@q3|1; + } + // 2 - East Puzzle + else if (!(.@q3 & 2)) { + warp BarbaraInstCheck(0), 112, 90; + setq3 LoFQuest_Barbara, .@q3|2; + } + // Wut + else { + Exception("ERROR, YOU SHOULD NOT BEEN SEEING THIS. 018-6-2.FSH", RB_DEFAULT|RB_ISFATAL); + } + // Active the quest + if (.@q3 == 3) + enablenpc instance_npcname("#ToSouthHall", .@q2); + } else { + Exception("ERROR, YOU SHOULD NOT BEEN SEEING THIS. 018-6-2.FSH.MQ"); + } + end; + +OnInit: + disablenpc .name$; + end; +OnInstanceInit: + disablenpc instance_npcname(.name$); + end; + +} + + -- cgit v1.2.3-60-g2f50 From 60ff5255e599da98a1486dfa1ba9e57ce6765a06 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 13:36:08 -0300 Subject: Rebalance: Firewalk, Nature Wall, Ground Strike, Frost Nova --- db/re/skill_db.conf | 120 +++++++++++++++++++++++----------------------- npc/003-0/colin.txt | 8 +++- npc/003-0/luca.txt | 2 +- npc/003-0/trickmaster.txt | 2 +- 4 files changed, 69 insertions(+), 63 deletions(-) diff --git a/db/re/skill_db.conf b/db/re/skill_db.conf index a1fd3221f..6abca6ad2 100644 --- a/db/re/skill_db.conf +++ b/db/re/skill_db.conf @@ -927,7 +927,7 @@ skill_db: ( Lv10: 360 } SkillData1: { - Lv1: 7500 + Lv1: 8500 Lv2: 10000 Lv3: 12000 Lv4: 14000 @@ -3425,13 +3425,13 @@ skill_db: ( InterruptCast: true CastTime: { Lv1: 640 - Lv2: 640 - Lv3: 576 - Lv4: 576 - Lv5: 512 - Lv6: 512 - Lv7: 448 - Lv8: 448 + Lv2: 576 + Lv3: 412 + Lv4: 448 + Lv5: 384 + Lv6: 384 + Lv7: 384 + Lv8: 384 Lv9: 384 Lv10: 384 } @@ -3450,27 +3450,27 @@ skill_db: ( } FixedCastTime: { Lv1: 160 - Lv2: 160 - Lv3: 144 - Lv4: 144 - Lv5: 128 - Lv6: 128 - Lv7: 112 - Lv8: 112 + Lv2: 144 + Lv3: 128 + Lv4: 112 + Lv5: 96 + Lv6: 96 + Lv7: 96 + Lv8: 96 Lv9: 96 Lv10: 96 } Requirements: { SPCost: { - Lv1: 140 - Lv2: 160 - Lv3: 180 - Lv4: 200 - Lv5: 220 - Lv6: 240 - Lv7: 260 - Lv8: 280 - Lv9: 290 + Lv1: 120 + Lv2: 140 + Lv3: 160 + Lv4: 180 + Lv5: 200 + Lv6: 220 + Lv7: 240 + Lv8: 260 + Lv9: 280 Lv10: 300 } } @@ -12387,12 +12387,12 @@ skill_db: ( CastTime: 350 AfterCastActDelay: 500 SkillData2: { - Lv1: 10000 + Lv1: 15000 Lv2: 20000 - Lv3: 30000 - Lv4: 40000 - Lv5: 50000 - Lv6: 60000 + Lv3: 25000 + Lv4: 30000 + Lv5: 35000 + Lv6: 40000 Lv7: 70000 Lv8: 80000 Lv9: 90000 @@ -12402,15 +12402,15 @@ skill_db: ( Requirements: { SPCost: { Lv1: 95 - Lv2: 100 - Lv3: 110 - Lv4: 120 - Lv5: 130 - Lv6: 140 - Lv7: 150 - Lv8: 160 - Lv9: 170 - Lv10: 180 + Lv2: 120 + Lv3: 145 + Lv4: 170 + Lv5: 200 + Lv6: 200 + Lv7: 200 + Lv8: 200 + Lv9: 200 + Lv10: 200 } } }, @@ -28096,16 +28096,16 @@ skill_db: ( Element: "Ele_Fire" InterruptCast: true SkillInstances: { - Lv1: 8 - Lv2: 10 - Lv3: 12 - Lv4: 14 - Lv5: 16 - Lv6: 18 - Lv7: 20 - Lv8: 22 - Lv9: 24 - Lv10: 26 + Lv1: 7 + Lv2: 9 + Lv3: 11 + Lv4: 13 + Lv5: 15 + Lv6: 17 + Lv7: 19 + Lv8: 21 + Lv9: 23 + Lv10: 25 } CastTime: 1000 CoolDown: { @@ -28121,25 +28121,25 @@ skill_db: ( Lv10: 20000 } AfterCastActDelay: 1000 - SkillData1: 12000 - FixedCastTime: -1 + SkillData1: 9000 + FixedCastTime: 300 Requirements: { SPCost: { Lv1: 130 - Lv2: 134 - Lv3: 138 - Lv4: 142 - Lv5: 146 - Lv6: 150 - Lv7: 154 - Lv8: 158 - Lv9: 162 - Lv10: 166 + Lv2: 150 + Lv3: 180 + Lv4: 220 + Lv5: 250 + Lv6: 250 + Lv7: 250 + Lv8: 250 + Lv9: 250 + Lv10: 250 } } Unit: { Id: 0xdc - Interval: 500 + Interval: 750 Target: "Enemy" Flag: { UF_NOREITERATION: true diff --git a/npc/003-0/colin.txt b/npc/003-0/colin.txt index 7d8bbf77b..720afcbc1 100644 --- a/npc/003-0/colin.txt +++ b/npc/003-0/colin.txt @@ -20,6 +20,7 @@ mesc l("Napalm Beat - Spammable AoE Skill"); mesc l("Frost Diver - Attempt to freeze an enemy, dealing damage"); + mesc l("Fire Walk - Creates a trail of fire, harming any pursuer"); mesc l("Frost Nova - Freeze everything in a range"); mesc l("Note: You can exchange 1 @@ for 3 @@", getitemlink(GemPowder), getitemlink(Quill)), 1; @@ -29,6 +30,7 @@ l("Magic Strike"), MG_SOULSTRIKE, l("Napalm Beat"), MG_NAPALMBEAT, l("Frost Diver"), MG_FROSTDIVER, + l("Fire Walk"), SO_FIREWALK, l("Frost Nova"), WZ_FROSTNOVA, rif(countitem(GemPowder), l("Exchange Gempowder for Quill")), -1, l("Cancel"), 0; @@ -60,8 +62,12 @@ if (!mlearn(MG_FROSTDIVER, 7, 2, Quill, 1)) mesc l("You do not meet all requisites for this skill."), 1; break; + case SO_FIREWALK: + if (!mlearn(SO_FIREWALK, 2, 2, Lockpicks, 1)) + mesc l("You do not meet all requisites for this skill."), 1; + break; case WZ_FROSTNOVA: - if (!mlearn(WZ_FROSTNOVA, 7, 3, Quill, 1)) + if (!mlearn(WZ_FROSTNOVA, 4, 3, Quill, 1)) mesc l("You do not meet all requisites for this skill."), 1; break; default: diff --git a/npc/003-0/luca.txt b/npc/003-0/luca.txt index dc5720ebd..677f223c6 100644 --- a/npc/003-0/luca.txt +++ b/npc/003-0/luca.txt @@ -50,7 +50,7 @@ mesc l("You do not meet all requisites for this skill."), 1; break; case ASC_METEORASSAULT: - if (!mlearn(ASC_METEORASSAULT, 5, 2, FluoPowder, 3)) + if (!mlearn(ASC_METEORASSAULT, 3, 2, FluoPowder, 3)) mesc l("You do not meet all requisites for this skill."), 1; break; case SN_SHARPSHOOTING: diff --git a/npc/003-0/trickmaster.txt b/npc/003-0/trickmaster.txt index e35312606..519b152f8 100644 --- a/npc/003-0/trickmaster.txt +++ b/npc/003-0/trickmaster.txt @@ -23,7 +23,7 @@ "fullthrottle", ALL_FULL_THROTTLE, "darkillusion", GC_DARKILLUSION, "trickdead", NV_TRICKDEAD, - "firewalk", SO_FIREWALK, + //"firewalk", SO_FIREWALK, "Cancel", 0; mes ""; setskin ""; -- cgit v1.2.3-60-g2f50 From 5b46efd1d31fa5c2565e5674b9dea49a22596d4d Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 13:42:32 -0300 Subject: Rebalance: Dark Illusion (ie. Sudden Attack) At level 3 it works like a bow --- db/re/skill_db.conf | 42 ++++++++++++++++++++++-------------------- npc/003-0/trickmaster.txt | 7 +------ 2 files changed, 23 insertions(+), 26 deletions(-) diff --git a/db/re/skill_db.conf b/db/re/skill_db.conf index 6abca6ad2..2c7ce89f2 100644 --- a/db/re/skill_db.conf +++ b/db/re/skill_db.conf @@ -19422,36 +19422,38 @@ skill_db: ( MaxLevel: 5 Range: { Lv1: 5 - Lv2: 6 - Lv3: 7 - Lv4: 8 - Lv5: 9 + Lv2: 7 + Lv3: 9 + Lv4: 10 + Lv5: 10 Lv6: 10 - Lv7: 11 - Lv8: 12 - Lv9: 13 - Lv10: 14 + Lv7: 10 + Lv8: 10 + Lv9: 10 + Lv10: 10 } Hit: "BDT_SKILL" SkillType: { Enemy: true } + DamageType: { + IgnoreFlee: true + } AttackType: "Weapon" Element: "Ele_Weapon" - AfterCastActDelay: 1500 - FixedCastTime: -1 + FixedCastTime: 100 Requirements: { SPCost: { - Lv1: 120 - Lv2: 125 - Lv3: 130 - Lv4: 135 - Lv5: 140 - Lv6: 145 - Lv7: 150 - Lv8: 155 - Lv9: 160 - Lv10: 165 + Lv1: 110 + Lv2: 115 + Lv3: 120 + Lv4: 125 + Lv5: 130 + Lv6: 135 + Lv7: 140 + Lv8: 145 + Lv9: 150 + Lv10: 155 } } }, diff --git a/npc/003-0/trickmaster.txt b/npc/003-0/trickmaster.txt index 519b152f8..3860dadd8 100644 --- a/npc/003-0/trickmaster.txt +++ b/npc/003-0/trickmaster.txt @@ -23,7 +23,6 @@ "fullthrottle", ALL_FULL_THROTTLE, "darkillusion", GC_DARKILLUSION, "trickdead", NV_TRICKDEAD, - //"firewalk", SO_FIREWALK, "Cancel", 0; mes ""; setskin ""; @@ -50,17 +49,13 @@ mesc l("You do not meet all requisites for this skill."), 1; break; case GC_DARKILLUSION: - if (!mlearn(GC_DARKILLUSION, 1, 2, Lockpicks, 1)) + if (!mlearn(GC_DARKILLUSION, 3, 2, Lockpicks, 1)) mesc l("You do not meet all requisites for this skill."), 1; break; case NV_TRICKDEAD: if (!mlearn(NV_TRICKDEAD, 1, 2, Lockpicks, 1)) mesc l("You do not meet all requisites for this skill."), 1; break; - case SO_FIREWALK: - if (!mlearn(SO_FIREWALK, 2, 2, Lockpicks, 1)) - mesc l("You do not meet all requisites for this skill."), 1; - break; default: if (@menuret) Exception("ERROR skill not implemented", RB_DEFAULT|RB_SPEECH); -- cgit v1.2.3-60-g2f50 From b381ae7953898b033055b995972632d0c636b00b Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 13:43:55 -0300 Subject: Archer skill to increase range --- db/re/skill_db.conf | 2 +- npc/003-0/trickmaster.txt | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/db/re/skill_db.conf b/db/re/skill_db.conf index 2c7ce89f2..fa8e948ff 100644 --- a/db/re/skill_db.conf +++ b/db/re/skill_db.conf @@ -1761,7 +1761,7 @@ skill_db: ( Id: 43 Name: "AC_OWL" Description: "Owl's Eye" - MaxLevel: 20 + MaxLevel: 10 NumberOfHits: 0 SkillInfo: { Quest: true diff --git a/npc/003-0/trickmaster.txt b/npc/003-0/trickmaster.txt index 3860dadd8..3a111e4a3 100644 --- a/npc/003-0/trickmaster.txt +++ b/npc/003-0/trickmaster.txt @@ -19,7 +19,7 @@ "freecast", SA_FREECAST, "backslide", TF_BACKSLIDING, "firewall", MG_FIREWALL, - //"inccarry", ALL_INCCARRY, + "vulture", AC_VULTURE, "fullthrottle", ALL_FULL_THROTTLE, "darkillusion", GC_DARKILLUSION, "trickdead", NV_TRICKDEAD, @@ -40,8 +40,8 @@ if (!mlearn(MG_FIREWALL, 10, 1, Lockpicks, 1)) mesc l("You do not meet all requisites for this skill."), 1; break; - case ALL_INCCARRY: - if (!mlearn(ALL_INCCARRY, 2, 1, Lockpicks, 1)) + case AC_VULTURE: + if (!mlearn(AC_VULTURE, 1, 1, Lockpicks, 1)) mesc l("You do not meet all requisites for this skill."), 1; break; case ALL_FULL_THROTTLE: -- cgit v1.2.3-60-g2f50 From cd4c31c62f3fa6e1ebb11984734260e55cef66d6 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 13:53:52 -0300 Subject: Further rebalance: Frost Diver and Frost Nova --- db/re/skill_db.conf | 55 ++++++++++++++++++++++++++++++++--------------------- 1 file changed, 33 insertions(+), 22 deletions(-) diff --git a/db/re/skill_db.conf b/db/re/skill_db.conf index fa8e948ff..8cbbc7ab5 100644 --- a/db/re/skill_db.conf +++ b/db/re/skill_db.conf @@ -751,33 +751,44 @@ skill_db: ( AttackType: "Magic" Element: "Ele_Water" InterruptCast: true - CastTime: 640 - AfterCastActDelay: 1500 + CastTime: { + Lv1: 640 + Lv2: 600 + Lv3: 555 + Lv4: 500 + Lv5: 450 + Lv6: 400 + Lv7: 384 + Lv8: 384 + Lv9: 384 + Lv10: 384 + } + AfterCastActDelay: 300 SkillData2: { - Lv1: 3000 - Lv2: 3500 - Lv3: 4000 - Lv4: 4500 - Lv5: 5000 - Lv6: 5500 - Lv7: 6000 - Lv8: 6500 - Lv9: 7000 - Lv10: 7500 + Lv1: 4000 + Lv2: 4500 + Lv3: 5000 + Lv4: 5500 + Lv5: 6000 + Lv6: 7000 + Lv7: 8000 + Lv8: 9000 + Lv9: 10000 + Lv10: 10500 } FixedCastTime: 160 Requirements: { SPCost: { - Lv1: 200 - Lv2: 210 - Lv3: 220 - Lv4: 230 - Lv5: 240 - Lv6: 250 - Lv7: 260 - Lv8: 270 - Lv9: 280 - Lv10: 290 + Lv1: 100 + Lv2: 120 + Lv3: 140 + Lv4: 160 + Lv5: 180 + Lv6: 200 + Lv7: 220 + Lv8: 240 + Lv9: 260 + Lv10: 280 } } }, -- cgit v1.2.3-60-g2f50 From ebaa1c0043cf3f99aa701a5274c2090c91626298 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 14:34:25 -0300 Subject: 018-6-0 FORGOTTEN CHAMBER should be complete --- npc/018-6-0/main.txt | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/npc/018-6-0/main.txt b/npc/018-6-0/main.txt index 4020fe0c1..40827f383 100644 --- a/npc/018-6-0/main.txt +++ b/npc/018-6-0/main.txt @@ -74,4 +74,49 @@ OnInstanceInit: end; } +///////////////////////////// +018-6-0,67,90,0 script #ToWestHall NPC_SUMMONING_CIRC,0,0,{ + dispbottom l("It looks dangerous."); + end; + +OnTouch: + .@q=getq(LoFQuest_Barbara); + .@q2=getq2(LoFQuest_Barbara); + .@q3=getq3(LoFQuest_Barbara); + if (.@q == 2 && !(.@q3 & 1)) { + warp BarbaraInstCheck(2), 70, 150; + } else { + dispbottom l("I already visited this warp."); + } + end; + + +OnInit: + disablenpc .name$; + end; +} + + +///////////////////////////// +018-6-0,113,90,0 script #ToEastHall NPC_SUMMONING_CIRC,0,0,{ + dispbottom l("It looks dangerous."); + end; + +OnTouch: + .@q=getq(LoFQuest_Barbara); + .@q2=getq2(LoFQuest_Barbara); + .@q3=getq3(LoFQuest_Barbara); + if (.@q == 2 && !(.@q3 & 2)) { + warp BarbaraInstCheck(2), 103, 156; + } else { + dispbottom l("I already visited this warp."); + } + end; + + +OnInit: + disablenpc .name$; + end; +} + -- cgit v1.2.3-60-g2f50 From 0536e30f63d8c8cb621cf2a75caef01e6023eb66 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 14:41:27 -0300 Subject: Fix bug on Townhall access --- npc/017-1/townhall.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/npc/017-1/townhall.txt b/npc/017-1/townhall.txt index 05e613eb8..7c9bc3025 100644 --- a/npc/017-1/townhall.txt +++ b/npc/017-1/townhall.txt @@ -4,7 +4,7 @@ // Description: // LoF Townhall Access Control -017-1,180,20,0 script #LoF_Townhall01 NPC_HIDDEN,{ +017-1,180,20,0 script #LoF_Townhall01 NPC_HIDDEN,0,0,{ end; OnTouch: @@ -20,7 +20,7 @@ OnInit: } -017-1,182,20,0 script #LoF_Townhall02 NPC_HIDDEN,{ +017-1,182,20,0 script #LoF_Townhall02 NPC_HIDDEN,0,0,{ end; OnTouch: @@ -35,7 +35,7 @@ OnInit: end; } -017-1,171,20,0 script #LoF_Townhall03 NPC_HIDDEN,{ +017-1,171,20,0 script #LoF_Townhall03 NPC_HIDDEN,0,0,{ end; OnTouch: @@ -50,7 +50,7 @@ OnInit: end; } -017-1,190,20,0 script #LoF_Townhall04 NPC_HIDDEN,{ +017-1,190,20,0 script #LoF_Townhall04 NPC_HIDDEN,0,0,{ end; OnTouch: @@ -104,7 +104,7 @@ function script BarbaraInstCheck { return getd(".@map"+.@house+"$"); } -017-1,32,44,0 script #LoF_EleniumMines NPC_HIDDEN,{ +017-1,32,44,0 script #LoF_EleniumMines NPC_HIDDEN,0,0,{ end; OnTouch: -- cgit v1.2.3-60-g2f50 From 5be19d61afa6ee1c507491f9f0edb1236df7eb82 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 14:49:17 -0300 Subject: NPC_HIDDEN vs NPC_NO_SPRITE --- npc/017-1/townhall.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/npc/017-1/townhall.txt b/npc/017-1/townhall.txt index 7c9bc3025..2f053fa04 100644 --- a/npc/017-1/townhall.txt +++ b/npc/017-1/townhall.txt @@ -4,7 +4,7 @@ // Description: // LoF Townhall Access Control -017-1,180,20,0 script #LoF_Townhall01 NPC_HIDDEN,0,0,{ +017-1,180,20,0 script #LoF_Townhall01 NPC_NO_SPRITE,0,0,{ end; OnTouch: @@ -20,7 +20,7 @@ OnInit: } -017-1,182,20,0 script #LoF_Townhall02 NPC_HIDDEN,0,0,{ +017-1,182,20,0 script #LoF_Townhall02 NPC_NO_SPRITE,0,0,{ end; OnTouch: @@ -35,7 +35,7 @@ OnInit: end; } -017-1,171,20,0 script #LoF_Townhall03 NPC_HIDDEN,0,0,{ +017-1,171,20,0 script #LoF_Townhall03 NPC_NO_SPRITE,0,0,{ end; OnTouch: @@ -50,7 +50,7 @@ OnInit: end; } -017-1,190,20,0 script #LoF_Townhall04 NPC_HIDDEN,0,0,{ +017-1,190,20,0 script #LoF_Townhall04 NPC_NO_SPRITE,0,0,{ end; OnTouch: @@ -104,7 +104,7 @@ function script BarbaraInstCheck { return getd(".@map"+.@house+"$"); } -017-1,32,44,0 script #LoF_EleniumMines NPC_HIDDEN,0,0,{ +017-1,32,44,0 script #LoF_EleniumMines NPC_NO_SPRITE,0,0,{ end; OnTouch: -- cgit v1.2.3-60-g2f50 From 210a79e191c9443eadad34bd5bf53266582d029f Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 14:49:58 -0300 Subject: Well, 3% is not bad, but well... --- db/re/mob_db.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf index 8a8226829..1bcf57411 100644 --- a/db/re/mob_db.conf +++ b/db/re/mob_db.conf @@ -8896,7 +8896,7 @@ mob_db: ( Drops: { Coal: 500 CopperOre: 300 - Wurtzite: 300 + Wurtzite: 290 LeadOre: 120 Graphene: 65 LightGreenDiamond: 3 -- cgit v1.2.3-60-g2f50 From 4de339bf2c92af5f74cdb28b0eb62e8ca66993c4 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 31 Aug 2019 14:52:21 -0300 Subject: >.< --- npc/017-1/townhall.txt | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/npc/017-1/townhall.txt b/npc/017-1/townhall.txt index 2f053fa04..772688eed 100644 --- a/npc/017-1/townhall.txt +++ b/npc/017-1/townhall.txt @@ -14,9 +14,6 @@ OnTouch: warp "017-10", 56, 78; } end; -OnInit: - .distance=1; - end; } @@ -30,9 +27,6 @@ OnTouch: warp "017-10", 60, 78; } end; -OnInit: - .distance=1; - end; } 017-1,171,20,0 script #LoF_Townhall03 NPC_NO_SPRITE,0,0,{ @@ -45,9 +39,6 @@ OnTouch: warp "017-10", 36, 78; } end; -OnInit: - .distance=1; - end; } 017-1,190,20,0 script #LoF_Townhall04 NPC_NO_SPRITE,0,0,{ @@ -60,9 +51,6 @@ OnTouch: warp "017-10", 80, 78; } end; -OnInit: - .distance=1; - end; } ///////////////////////////// // Main Quest 6 @@ -115,8 +103,5 @@ OnTouch: warp "018-6-1", 80, 199; } end; -OnInit: - .distance=1; - end; } -- cgit v1.2.3-60-g2f50