summaryrefslogtreecommitdiff
path: root/npc/functions/clientversion.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/functions/clientversion.txt')
-rw-r--r--npc/functions/clientversion.txt174
1 files changed, 171 insertions, 3 deletions
diff --git a/npc/functions/clientversion.txt b/npc/functions/clientversion.txt
index 873873018..51e5eab84 100644
--- a/npc/functions/clientversion.txt
+++ b/npc/functions/clientversion.txt
@@ -284,8 +284,8 @@ function script clientupdater {
}
// General Updates
// seg jul 15 16:41:35 -03 2019
- if (UPDATE < 1563219695) {
- UPDATE=1563219695;
+ if (UPDATE < 1565039378) {
+ UPDATE=1565039378;
.@dg=true;
mesc l(".:: This is Release 9.5 Academy ::."), 0;
//mesc l(".:: This is Release 10.0 Infinity ::."), 0;
@@ -416,6 +416,170 @@ function script clientupdater {
}
// Cleanup
deletearray RNGTREASURE_DATE;
+
+ // Open Beta 2019 Main Event Rewards
+ .@u$=strtolower(strcharinfo(0));
+ setarray .@officialnick$, "jesusalva", "kolchak", "xanthem", "seeds", "dangerduck", "test123", "sertrop", "lawncable", "pookie", "saulc",
+ "apane", "omatt";
+ setarray .@expval, 211625, 1955041, 938439, 59663, 73899, 10338, 7494, 7857, 1992, 360, 443, 193, 5180;
+ setarray .@gpval, 150321, 863215, 3263, 973137, 5650, 18343, 45227, 42002, 37381, 50000, 50450, 50275, 49988;
+ setarray .@summer, 19, 30, 55, 0, 4, 2, 3, 4, 0, 0, 0, 0, 2;
+ /* Data for python
+ # import exp from exptable
+ i=0
+ THEARRAY=[]
+ while i < len(names):
+ raw=overflow[i]
+ c=0
+ while c < level[i]:
+ raw+=exp[c]
+ c+=1
+ print("%s: %d exp" % (names[i], raw))
+ THEARRAY.append(int(raw*0.3))
+ i+=1
+
+ setarray .@levelval, 48, 66, 60, 39, 40, 28, 25, 26, 17, 10, 10, 8, 23;
+ setarray .@overflow, 25762, 338713, 55746, 1275, 14516, 504, 2855, 640, 360, 0, 277, 18, 598;
+ */
+
+ // Open Beta 2019
+ .@ranking=array_find(.@officialnick$, .@u$);
+ // Mishana LawnCable bObr Jesusalva demure
+ showavatar NPC_LOF_RICH;
+ mes "";
+ mes "*************************************";
+ mes "";
+ mesn ("TMW2 Staff");
+ mesc l("Hello, @@! We are proud to announce the @@ RESULTS!", strcharinfo(0) , b(l("Open Beta 2019"))), 3;
+ mes "";
+ mesc l("1st Place - Jesusalva (65)");
+ mesc l("2nd Place - Kolchak (63)");
+ mesc l("3rd Place - Xanthem (56)");
+ mesc l("4th Place - seeds (43)");
+ mesc l("5th Place - dangerDuck (23)");
+ mesc l("6th Place - test123 (20)");
+ mesc l("7th Place - Sertrop (17)");
+ mesc l("8th Place - Pookie (13)");
+ mesc l("9th Place - LawnCable (13)");
+ mesc l("10th Place - Saulc (8)");
+ mes "";
+ mesc l("It was a reeeeeealy close dispute for the podium, but Jesusalva crafted an item at the last minute and took the first place!");
+ mesc l("Although KOLCHAK managed to rank first in almost every ranking, Jesusalva was too close, and the Crafting gave him the edge he needed to take first place.");
+ mesc l("Congratulations to everyone who participated on the event, even those who didn't made to the top 10!");
+ if (.@ranking >= 0) {
+ #ADD_LVL=.@expval[.@ranking];
+
+ // Force Ched quest start if you haven't done so already
+ .@year=getq(SQuest_Ched);
+ if (.@year != (gettime(GETTIME_YEAR)-2000))
+ setq SQuest_Ched, (gettime(GETTIME_YEAR)-2000), 0, 0;
+
+
+ @ched=getq2(SQuest_Ched);
+ .@pts=.@summer[.@ranking];
+ if (.@pts) {
+ getexp rand2(.@pts-1, .@pts*11/10), rand2(0,.@pts/25);
+ setq2 SQuest_Ched, @ched+.@pts;
+ }
+
+ switch (.@ranking+1) {
+ case 1:
+ getitembound Tyranny, 1, 1;
+ getitem MercBoxEE, 1;
+ getitem EquipmentBlueprintE, 1;
+ getitem HousingLetterI, 1;
+ getitem StrangeCoin, 150;
+ break;
+ case 2:
+ getitem MercBoxEE, 1;
+ getitem EquipmentBlueprintE, 1;
+ getitem HousingLetterI, 1;
+ getitem StrangeCoin, 100;
+ break;
+ case 3:
+ getitem MercBoxDD, 1;
+ getitem EquipmentBlueprintD, 1;
+ getitem HousingLetterI, 1;
+ getitem StrangeCoin, 100;
+ break;
+ case 4:
+ case 5:
+ getitem MercBoxCC, 1;
+ getitem EquipmentBlueprintC, 1;
+ getitem HousingLetterI, 1;
+ getitem StrangeCoin, 50;
+ break;
+ case 6:
+ case 7:
+ getitem MercBoxBB, 1;
+ getitem StrangeCoin, 30;
+ break;
+ case 8:
+ case 9:
+ getitem MercBoxAA, 1;
+ getitem StrangeCoin, 10;
+ break;
+ case 10:
+ getitem MercBoxAA, 1;
+ break;
+ } // switch(ranking)
+
+ // GP conversion rules
+ // if you have less than 50k, we'll return you to initial amount
+ // Because it is a thankyou for participating on the event ;-)
+ .@trugp=max(50000, .@gpval[.@ranking]);
+
+ // You get to carry over 1 GP for each 1000 GP too (max 1000 GP bonus)
+ Zeny+=min(1000, .@trugp/1000);
+
+ // You'll get 1 Rare Point for every 1k GP obtained
+ // Top was 1,000,000 → 1000 rare points
+ #RARE_POINTS+=.@trugp/1000;
+
+ } // if ranking
+ }
+ // Negative Karma = good. And positive karma allows PvP. So...
+ // sex ago 9 18:10:20 -03 201
+ if (UPDATE < 1565385020) {
+ UPDATE=1565385020;
+ // PVP bugfix
+ Karma=0;
+ // Allow to skip quest if you already have the Grimorium
+ if (countitem(JesusalvaGrimorium) && getskilllv(TMW2_SKILLPERMIT) == 2) {
+ skill TMW2_SKILLPERMIT, 3, 0;
+ }
+ // This can't happen but anyway, just in case...
+ if (getskilllv(TMW2_TRANSMIGRATION) > 10) {
+ skill TMW2_TRANSMIGRATION, 10, 0;
+ }
+ // Magic Skill Points for this skill went from 3 to 2
+ if (getskilllv(ASC_METEORASSAULT))
+ MAGIC_PTS-=1;
+ // Treasure Key from Lua
+ if (getq(General_Narrator) >= 3)
+ getitem TreasureKey, 1;
+
+ // Post-poned Referral Rewards
+ if (#REFERRAL_PROG && BaseLevel >= 25 && #REFERRAL_CTRL < 1) {
+ #REFERRAL_CTRL=1;
+ rodex_sendmail(gf_charid(#REFERRAL_PROG), "TMW2 Team", "Recruited Player got Lv 25!", strcharinfo(0)+" just got level 25!\nAs they get stronger, more rewards will be sent to you!", 0, SilverGift, 1);
+ }
+ if (#REFERRAL_PROG && BaseLevel >= 50 && #REFERRAL_CTRL < 2) {
+ #REFERRAL_CTRL=2;
+ rodex_sendmail(gf_charid(#REFERRAL_PROG), "TMW2 Team", "Recruited Player got Lv 50!", strcharinfo(0)+" just got level 50!\nAs they get stronger, more rewards will be sent to you!", 0, ArcmageBoxset, 1);
+ }
+ #REFERRAL_CTRL=3;
+ if (#REFERRAL_PROG && BaseLevel >= 75 && #REFERRAL_CTRL < 3) {
+ rodex_sendmail(gf_charid(#REFERRAL_PROG), "TMW2 Team", "Recruited Player got Lv 75!", strcharinfo(0)+" just got level 75!\nAs they get stronger, more rewards will be sent to you!", 0, PrismGift, 1);
+ }
+ // Eisten Rewards
+ if (BaseLevel >= 50 && getq(TulimsharQuest_Eistein) == 2)
+ getitem SilverGift, 1;
+ if (BaseLevel >= 75 && getq(TulimsharQuest_Eistein) == 3)
+ getitem GoldenGift, 1;
+ if (BaseLevel >= 75 && getq(TulimsharQuest_Eistein) >= 3)
+ getitem GraduationRobe, 1;
+
}
// Test Server Updates
// seg jul 22 21:23:00 -03 2019
@@ -431,6 +595,7 @@ function script clientupdater {
// #ADD_LVL means the user have to right to get some levels. This is a sketch. The code might be deleted.
if (#ADD_LVL) {
.@dg=1;
+ /*
mesn "Jesus Saves";
mesc l("Oh - Welcome to TMW2: Moubootaur Legends!"), 3;
next;
@@ -448,6 +613,7 @@ function script clientupdater {
//atcommand "@blvl "+#ADD_LVL;
//getitem TimeFlask, 1;
#ADD_LVL=(#ADD_LVL*9)/10;
+ */
if ((readparam(BaseExp)+#ADD_LVL > readparam(NextBaseExp))) {
do {
.@v=readparam(NextBaseExp)-readparam(BaseExp);
@@ -462,8 +628,10 @@ function script clientupdater {
}
- if (.@dg)
+ if (.@dg) {
+ next;
closeclientdialog;
+ }
return;
}