summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2018-09-02 23:32:29 -0300
committerJesusaves <cpntb1@ymail.com>2018-09-02 23:32:29 -0300
commitf2099d16cd7343da7d56f89341db4ff32a31eac3 (patch)
tree32da64f9429f04ac426c8a4c3b909e4c308126f7
parent48d3b32578cba10d14b56a4ab931b84e3ee3cad8 (diff)
downloadserverdata-f2099d16cd7343da7d56f89341db4ff32a31eac3.tar.gz
serverdata-f2099d16cd7343da7d56f89341db4ff32a31eac3.tar.bz2
serverdata-f2099d16cd7343da7d56f89341db4ff32a31eac3.tar.xz
serverdata-f2099d16cd7343da7d56f89341db4ff32a31eac3.zip
Another proposal.jesusalva/MobPt
-rw-r--r--npc/001-1/aidan.txt83
-rw-r--r--npc/001-1/ishi.txt28
-rw-r--r--npc/functions/mobpoint.txt36
3 files changed, 68 insertions, 79 deletions
diff --git a/npc/001-1/aidan.txt b/npc/001-1/aidan.txt
index 3f736b02..a4a0ea53 100644
--- a/npc/001-1/aidan.txt
+++ b/npc/001-1/aidan.txt
@@ -1,66 +1,35 @@
// TMW-2 Script
// Author: Crazyfefe, Jesusalva
-// Desc: Originally a Tmw script
+// Desc: Originally a Tmw script. See also: npc/functions/mobpoint.txt
001-1,123,85,0 script Aidan NPC_PLAYER,{
+ mesn l("Aidan, the Monster Guide");
+ if (#MAX_MPP)
+ mesq l("You currently have @@ Mob Points. Thus far you have collected @@/@@ Mob Points.", #Mobpt, #MPQUEST, #MAX_MPP);
+ else
+ mesq l("Players from the old server can port their accounts on our website and start collecting Monster Points.");
+ select
+ l("Information"),
+ menuaction(l("Quit"));
- function Register
- {
- mesn l("Aidan, the Monster Guide");
- mesq l("Oh my, you don't seem to be registered as a Monster Hunting Quest Participant. Would you like to register?");
-
- do
- {
- select
- l("Register"),
- l("Not at the moment"),
- l("Information");
-
- switch (@menu)
- {
- case 1:
- mes "";
- MPQUEST=1;
- mesn l("Aidan, the Monster Guide");
- mesq l("Give me a second to look over your paperwork.");
- next;
- mesn l("Aidan, the Monster Guide");
- mes l("\"Well, looks like you qualify!");
- mes l("Welcome to the questing world!\"");
- close;
- break;
- case 2:
- mes "";
- mesn l("Aidan, the Monster Guide");
- mesq l("Very well, you don't know what you're missing.");
- close;
- break;
- case 3:
- mes "";
- mesn l("Aidan, the Monster Guide");
- mesq l("Monsters have been running rampant. If they grow too much in numbers, cities may be overrun.");
- next;
- mesn l("Aidan, the Monster Guide");
- mesq l("Therefore, the Legion created a system so when you kill a monster, depending on its strength, you'll get Monster Points.");
- next;
- mesn l("Aidan, the Monster Guide");
- mesq l("You can then exchange those points for awesome items!");
- next;
- mesn l("Aidan, the Monster Guide");
- mesq l("So whaddaya say, sign up won't you?");
- next;
- mes "";
- Register;
- break;
- }
- } while (@menu != 2);
- }
-
- if (MPQUEST == 0)
- Register;
+ if (@menu == 2)
+ close;
- mesn l("Aidan, the Monster Guide");
- mesq l("You currently have @@ Monster Points. These points are acquired while killing monsters.", Mobpt);
+ mes "";
+ mesn;
+ mesq l("This world existed on a different place and with a different place a few eternities ago.");
+ next;
+ mesn;
+ mesq l("It so happens, some people among us are reincarnations from people who were on that previous world!");
+ next;
+ mesn;
+ mesq l("This means when they kill monsters, they get some weird Mob Points.");
+ next;
+ mesn;
+ mesq l("Nobody knows for sure what a Mob Point is, but Ishi can make some nice stuff from it.");
+ next;
+ mesn;
+ mesq l("Also, they can only collect as much Mob Points according to their past appearance strength.");
close;
OnInit:
diff --git a/npc/001-1/ishi.txt b/npc/001-1/ishi.txt
index 8d95e696..74d02239 100644
--- a/npc/001-1/ishi.txt
+++ b/npc/001-1/ishi.txt
@@ -8,26 +8,26 @@
001-1,124,85,0 script Ishi NPC_PLAYER,{
- if (MPQUEST == 0)
+ if (!#Mobpt)
{
mesn l("Ishi, the Rewards Master");
- mesq l("Hey, it seems like you didn't register as a Monster Hunting Quest participant yet! You can sign up with Aidan.");
+ mesq l("I am a Mob Points transmutter. Please ask my friend Aidan what those are.");
close;
}
- if (Mobpt < BaseLevel ** 2)
- {
- mesn l("Ishi, the Rewards Master");
- mesq l("Welcome! I see you have @@ Monster Points. But that isn't enough to get items, sorry!", Mobpt);
- close;
- }
-
+ mesn l("Ishi, the Rewards Master");
+ mesq l("Welcome! I'm a Mob Point Transmutter. I see you have @@ Mob Points.");
+
+ // @WildX I could not decide if we should use a shop (where players can choose their
+ // reward) or if we should use a lottery (for the sake of randomness). I left here
+ // the old lottery, but I'm not very optimistic of this getting in at all.
+ // The code for a shop is really simple to do, just shout if you want it.
+ //
+ // I also see a thousand of possible improvements and cleanups past this line.
+ // As gumi said he can clean up, I'll save myself the work to do so.
setarray @Items$, "Croconut","Plushroom","BlueCottonDye";
setarray @Rares$, "BrimmedHat", 5, "LousyMoccasins", 5;
-
- mesn l("Ishi, the Rewards Master");
- mesq l("Welcome! I see you have @@ Monster Points. Would you like to exchange some of those for items?", Mobpt);
next;
do
@@ -102,7 +102,9 @@
close;
L_Close:
- @var =0;
+ @var=0;
+ closedialog;
+ goodbye;
close;
L_Items:
diff --git a/npc/functions/mobpoint.txt b/npc/functions/mobpoint.txt
index a9d69af0..0bc7cef3 100644
--- a/npc/functions/mobpoint.txt
+++ b/npc/functions/mobpoint.txt
@@ -1,19 +1,37 @@
-// TMW2 Scripts
+// Evol Scripts
// Author: Crazyfefe
// Jesusalva
// Desc: Mob Points for Aidan & Ishi. You will gain MONSTER-LEVEL mob points.
+// This has been further modified since previous version
+// (commit 8e398042cea2ccd6ccacb1ec0acd47358b43fae5)
+// WildX said this would be only useful to give back stuff to players from
+// Legacy. This script supposes you have a way to weight everyone's
+// inventory, money, levels and etc., and have a way to write directly on
+// the acc_reg_num_db table.
+// Variables:
+// #MAX_MPP => Variable filled when you port a Legacy Account to Evol.
+// It holds the weighted value of your stuff from Legacy.
+// #MPQUEST => How many mob points you've acquired.
+// #Mobpt => How many unspent mob points you still have.
+// Rationale:
+// When you kill a monster, you get both a #Mobtpt and a #MPQUEST point.
+// You can only collect #MAX_MPP points, which is your Legacy account worth.
+// You can then trade #Mobpt points for rares.
+// The catch is that you can only use the 'points' attributed from your
+// account merge if you play the game and kill stuff. Simply porting the
+// account gives you absolutely nothing.
+// This should be reasonable enough to don't overreward nor underreward
+// players. It's strongly suggested that the items available for the Legacy
+// imports are solely decorative or otherwise easy to obtain (eg. money).
+// Adding powerful equipment etc. could cause balance concerns on long term.
function script mobpoint {
- if (!MPQUEST) goto L_Return;
- //if (killedrid < 1002) goto L_Return;
+ if (!#MAX_MPP || (#MPQUEST >= #MAX_MPP))
+ return;
- Mobpt = Mobpt + strmobinfo(3,killedrid);
-
-
-L_Return:
- //set @value, 0;
+ #Mobpt = #Mobpt + strmobinfo(3,killedrid);
+ #MPQUEST+=strmobinfo(3,killedrid);
return;
-
}
000-0,0,0,0 script #mobptsys NPC_HIDDEN,{