// TMW2 scripts. // Authors: // Jesusalva // Description: // Exclusive for Fires of Steam 2021 - When our OVH server datacenter got fire. 029-0,111,37,0 script Alliance Hero#FoS NPC_HALBERDBARBARIAN,{ // No one is supposed to be able to reach NPC if event did not happen if (!$FIRESOFSTEAM) { disablenpc .name$; die(); end; } mesn; mesq l("Sooo, the police station of Moubootaur Legends went ablaze. Constable Perry is too busy to monitor illegal operation on this continent."); next; mesn; mesq l("Therefore... Are you perhaps interested in some... illicit goods? %%p"); next; select l("Show me what you got, noob."), l("Actually - Do you exchange goods even more illegal goods than this?"), l("Actually - Do you exchange illegal... research results?"); mes ""; if (@menu == 1) { closeclientdialog; openshop .name$; close; } else if (@menu == 2) { mesn; mesq l("Yes I do... I sell %s %s for the small amount of %s GP. Interested? %%%%p", fnum(.mobp), l("Monster Points"), fnum(.mobg)); if (Zeny < .mobg) close; next; if (askyesno() == ASK_NO) close; if (Zeny < .mobg) { die(); close; } Zeny-=.mobg; Mobpt+=.mobp; mes ""; mesn; mesq l("Hehehe... A pleasure doing business with you!"); } else if (@menu == 3) { mesn; mesq l("Yes I do... I sell %s %s for the small amount of %s GP. Interested? %%%%p", fnum(.robp), l("Research Points"), fnum(.robg)); if (Zeny < .robg) close; next; if (askyesno() == ASK_NO) close; if (Zeny < .robg) { die(); close; } Zeny-=.robg; Mobpt+=.robp; mes ""; mesn; mesq l("Hehehe... A pleasure doing business with you!"); } close; OnRw: logmes(sprintf("%s - Reward Granted by System Admin", getcharid(3))); getitem StrangeCoin, 2000; getitembound FireScroll, 1, 1; getexp 1000000, 500000; Mobpt+=1000000; Zeny+=1000000; dispbottom l("Jesusalva : \\o/"); end; OnInit: bindatcmd "steambk", "Alliance Hero#FoS::OnRw", 100, 99, 1; tradertype(NST_MARKET); .mobp=rand2(1000, 2500); .mobg=.mobp*rand2(100, 150)/10; .robp=rand2(900, 1200); .robg=.robp*rand2(40, 60);//rand2(80, 110); .distance=5; .sex=G_MALE; sellitem Coal, -1, 50+($FIRESOFSTEAM*3-3); sellitem LeatherPatch, 800, 45+($FIRESOFSTEAM*3-3); sellitem RawLog, -1, 40+($FIRESOFSTEAM*3-3); sellitem WoodenLog, -1, 40+($FIRESOFSTEAM*3-3); sellitem IronOre, -1, 30+($FIRESOFSTEAM*3-3); sellitem CopperOre, 1000, 20+($FIRESOFSTEAM*2-2); sellitem SilverOre, 2000, 14+($FIRESOFSTEAM*2-2); sellitem GoldOre, 3000, 14+($FIRESOFSTEAM*2-2); sellitem TinOre, 3600, 15+($FIRESOFSTEAM*2-2); sellitem LeadOre, 4000, 15+($FIRESOFSTEAM*2-2); sellitem TitaniumOre, 6000, 9+($FIRESOFSTEAM*2-2); sellitem IridiumOre, 16000, 6+($FIRESOFSTEAM*2-2); sellitem PlatinumOre, 24000, 3+($FIRESOFSTEAM*2-2); sellitem EarthPowder, -1, 3+$FIRESOFSTEAM-1; sellitem EverburnPowder, 15000, 2+$FIRESOFSTEAM-1; sellitem AncientBlueprint, 10000, 4+$FIRESOFSTEAM-1; sellitem RustyKnife, -1, 5+$FIRESOFSTEAM-1; sellitem TrainingWand, -1, 5+$FIRESOFSTEAM-1; sellitem TrainingBow, -1, 5+$FIRESOFSTEAM-1; sellitem AlchemyBlueprintA, -1, 5+$FIRESOFSTEAM-1; sellitem AlchemyBlueprintB, -1, 4+$FIRESOFSTEAM-1; sellitem AlchemyBlueprintC, -1, 3+$FIRESOFSTEAM-1; sellitem AlchemyBlueprintD, -1, 2+$FIRESOFSTEAM-1; sellitem AlchemyBlueprintE, -1, max(1, 1+$FIRESOFSTEAM-1); sellitem EquipmentBlueprintA, -1, 5+$FIRESOFSTEAM-1; sellitem EquipmentBlueprintB, -1, 4+$FIRESOFSTEAM-1; sellitem EquipmentBlueprintC, -1, 3+$FIRESOFSTEAM-1; sellitem EquipmentBlueprintD, -1, 2+$FIRESOFSTEAM-1; sellitem EquipmentBlueprintE, -1, max(1, 1+$FIRESOFSTEAM-1); sellitem ArcmageBoxset, 10000, 4+$FIRESOFSTEAM-1; sellitem ScholarshipBadge, -1, 3+$FIRESOFSTEAM-1; sellitem Bullet, 4, 90000+($FIRESOFSTEAM*1000-1000); sellitem Lifestone, -1, 800+$FIRESOFSTEAM-1; sellitem Bread, -1, 750+$FIRESOFSTEAM-1; sellitem Cheese, -1, 400+$FIRESOFSTEAM-1; sellitem Aquada, -1, 200+$FIRESOFSTEAM-1; sellitem WhiteFur, -1, 1+rand2(50)+$FIRESOFSTEAM; sellitem Piberries, -1, 1+rand2(50)+$FIRESOFSTEAM; sellitem CherryCake, -1, 1+rand2(50)+$FIRESOFSTEAM; sellitem LettuceLeaf, -1, 1+rand2(50)+$FIRESOFSTEAM; sellitem BugLeg, -1, 1+rand2(50)+$FIRESOFSTEAM; sellitem RoastedMaggot, -1, 1+rand2(50)+$FIRESOFSTEAM; sellitem Moss, -1, 1+rand2(50)+$FIRESOFSTEAM; sellitem AnimalBones, -1, 1+rand2(40)+$FIRESOFSTEAM; sellitem Milk, -1, 1+rand2(50)+$FIRESOFSTEAM; sellitem Mashmallow, -1, 1+rand2(50)+$FIRESOFSTEAM; sellitem Dragonfruit, 1200, 1+rand2(50)+$FIRESOFSTEAM; sellitem Root, -1, 40+$FIRESOFSTEAM-1; sellitem ManaPiouFeathers, -1, 1+rand2(300)+$FIRESOFSTEAM; if (!$BETASERVER && !debug) disablenpc .name$; if ($FIRESOFSTEAM && gettime(7) == 2021 &&!$@FOS_MOBDROP) { /* This code is overriden by seasons.txt addmonsterdrop(Scar, DarkCrystal, 500); addmonsterdrop(Crafty, DarkCrystal, 500); addmonsterdrop(GiantMutatedBat, DarkCrystal, 550); addmonsterdrop(Forain, DarkCrystal, 500); addmonsterdrop(GreenDragon, DarkCrystal, 500); addmonsterdrop(EliteDuck, DarkCrystal, 550); addmonsterdrop(Terranite, DarkCrystal, 500); addmonsterdrop(JackO, DarkCrystal, 550); addmonsterdrop(RedSkullSlime, DarkCrystal, 500); addmonsterdrop(Michel, DarkCrystal, 500); addmonsterdrop(CopperSkullSlime, DarkCrystal, 500); addmonsterdrop(MonsterGeneral, DarkCrystal, 10000); */ setiteminfo(DarkCrystal, ITEMINFO_SELLPRICE, rand2(100, 200)); $@FOS_MOBDROP=true; } end; OnClock0001: OnClock0201: OnClock0401: OnClock0601: OnClock0801: OnClock1001: OnClock1201: OnClock1401: OnClock1601: OnClock1801: OnClock2001: if ($EVENT$ != "Steam") end; OnClock2201: .mobp=rand2(1000, 2500); .mobg=.mobp*rand2(100, 150)/10; .robp=rand2(900, 1200); .robg=.robp*rand2(40, 60);//rand2(80, 110); restoreshopitem Coal, 50+($FIRESOFSTEAM*3-3); restoreshopitem LeatherPatch, 800, 45+($FIRESOFSTEAM*3-3); restoreshopitem RawLog, 40+($FIRESOFSTEAM*3-3); restoreshopitem WoodenLog, 40+($FIRESOFSTEAM*3-3); restoreshopitem IronOre, 30+($FIRESOFSTEAM*3-3); restoreshopitem CopperOre, 1000, 20+($FIRESOFSTEAM*2-2); restoreshopitem SilverOre, 2000, 14+($FIRESOFSTEAM*2-2); restoreshopitem GoldOre, 3000, 14+($FIRESOFSTEAM*2-2); restoreshopitem TinOre, 3600, 15+($FIRESOFSTEAM*2-2); restoreshopitem LeadOre, 4000, 15+($FIRESOFSTEAM*2-2); restoreshopitem TitaniumOre, 6000, 9+($FIRESOFSTEAM*2-2); restoreshopitem IridiumOre, 16000, 6+($FIRESOFSTEAM*2-2); restoreshopitem PlatinumOre, 24000, 3+($FIRESOFSTEAM*2-2); restoreshopitem EarthPowder, 3+$FIRESOFSTEAM-1; restoreshopitem EverburnPowder, 15000, 2+$FIRESOFSTEAM-1; restoreshopitem AncientBlueprint, 10000, 4+$FIRESOFSTEAM-1; restoreshopitem RustyKnife, 5+$FIRESOFSTEAM-1; restoreshopitem TrainingWand, 5+$FIRESOFSTEAM-1; restoreshopitem TrainingBow, 5+$FIRESOFSTEAM-1; restoreshopitem AlchemyBlueprintA, 5+$FIRESOFSTEAM-1; restoreshopitem AlchemyBlueprintB, 4+$FIRESOFSTEAM-1; restoreshopitem AlchemyBlueprintC, 3+$FIRESOFSTEAM-1; restoreshopitem AlchemyBlueprintD, 2+$FIRESOFSTEAM-1; restoreshopitem AlchemyBlueprintE, 1+$FIRESOFSTEAM-1; restoreshopitem EquipmentBlueprintA, 5+$FIRESOFSTEAM-1; restoreshopitem EquipmentBlueprintB, 4+$FIRESOFSTEAM-1; restoreshopitem EquipmentBlueprintC, 3+$FIRESOFSTEAM-1; restoreshopitem EquipmentBlueprintD, 2+$FIRESOFSTEAM-1; restoreshopitem EquipmentBlueprintE, 1+$FIRESOFSTEAM-1; restoreshopitem ArcmageBoxset, 10000, 4+$FIRESOFSTEAM-1; restoreshopitem ScholarshipBadge, 3+$FIRESOFSTEAM-1; restoreshopitem Lifestone, 800+$FIRESOFSTEAM-1; restoreshopitem Bullet, 4, 90000+$FIRESOFSTEAM-1; restoreshopitem Bread, 750+$FIRESOFSTEAM-1; restoreshopitem Cheese, 400+$FIRESOFSTEAM-1; restoreshopitem Aquada, 200+$FIRESOFSTEAM-1; restoreshopitem WhiteFur, 1+rand2(50)+$FIRESOFSTEAM; restoreshopitem Piberries, 1+rand2(50)+$FIRESOFSTEAM; restoreshopitem CherryCake, 1+rand2(50)+$FIRESOFSTEAM; restoreshopitem LettuceLeaf, 1+rand2(50)+$FIRESOFSTEAM; restoreshopitem BugLeg, 1+rand2(50)+$FIRESOFSTEAM; restoreshopitem RoastedMaggot, 1+rand2(50)+$FIRESOFSTEAM; restoreshopitem Moss, 1+rand2(50)+$FIRESOFSTEAM; restoreshopitem AnimalBones, 1+rand2(40)+$FIRESOFSTEAM; restoreshopitem Milk, 1+rand2(50)+$FIRESOFSTEAM; restoreshopitem Mashmallow, 1+rand2(50)+$FIRESOFSTEAM; restoreshopitem Dragonfruit, 1200, 1+rand2(50)+$FIRESOFSTEAM; restoreshopitem Root, 40+$FIRESOFSTEAM; restoreshopitem ManaPiouFeathers, 1+rand2(300)+$FIRESOFSTEAM; end; OnMinute02: if ($EVENT$ != "Steam") end; donpcevent "Neko::OnClock2359"; end; } 003-0-2,34,21,0 script Alliance Officer NPC_HALBERDBARBARIAN,{ mesn; mesq l("Good %s, %s. The council is not in session right now.", (is_night() ? l("evening") : l("morning")), lg("peasant")); if (($BETASERVER || debug) && BaseLevel < 60) goto L_PowerUp; close; L_PowerUp: next; mesn strcharinfo(0); mesq l("Could you awake my lost and forsaken potential?"); next; mesn; mesq l("Yes. I can. But this is irreversible. Are you sure you want this?"); next; mesc l("Awake lost potential? This will mess with your char data irreversibly, beware."), 1; if (askyesno() == ASK_NO) close; // IP Blacklist if (array_find($@IPBLIST$, getcharip()) < 0) array_push($@IPBLIST$, getcharip()); // Level up freeloop(true); while (BaseLevel < 60) getexp NextBaseExp, 100; freeloop(false); // Skip a few quests setq ShipQuests_Arpan, 5; if (getq(General_Narrator) < 17) { // Homunculus sk_lvup(AM_REST); sk_lvup(AM_RESSURECTHOMUN); sk_lvup(AM_CALLHOMUN); setq General_Narrator, 17; } // Monster points MPQUEST=true; if (!Mobpt) Mobpt+=100000; // Magic Power adddefaultskills(); if (!MAGIC_LVL) { sk_lvup(AL_DP); MAGIC_LVL=1; } // Crafting if (!CRAFTQUEST) { sk_lvup(TMW2_CRAFT); getitembound RecipeBook, 1, 4; CRAFTQUEST=true; } // Free skills sk_lvup(TMW2_MANABOMB); sk_lvup(any(TMW2_FROSTDIVER, TMW2_NAPALMBEAT, TMW2_MAGICSTRIKE, TMW2_METEORSTRIKE, TMW2_FIREARROW, TMW2_BRAWLING, TMW2_FALKONSTRIKE, TMW2_CHARGEDARROW)); // Pure awesomeness getitembound any(StrengthFruit, AgilityFruit, VitalityFruit, IntelligenceFruit, DexterityFruit, LuckFruit), 1, 4; getitembound any(StrengthFruit, AgilityFruit, VitalityFruit, IntelligenceFruit, DexterityFruit, LuckFruit), 1, 4; // Full power getitembound Wurtzite, 6, 4; getitembound Bread, 10, 4; // Regeneration and misc percentheal 100,100; mesc l("You awake a long forgotten potential, and feel ready to take over the world."); close; OnInit: .distance=4; if (!$BETASERVER && !debug) disablenpc .name$; end; }