diff options
author | Jesusaves <cpntb1@ymail.com> | 2018-09-02 23:32:29 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2018-09-02 23:32:29 -0300 |
commit | f2099d16cd7343da7d56f89341db4ff32a31eac3 (patch) | |
tree | 32da64f9429f04ac426c8a4c3b909e4c308126f7 | |
parent | 48d3b32578cba10d14b56a4ab931b84e3ee3cad8 (diff) | |
download | serverdata-jesusalva/MobPt.tar.gz serverdata-jesusalva/MobPt.tar.bz2 serverdata-jesusalva/MobPt.tar.xz serverdata-jesusalva/MobPt.zip |
Another proposal.jesusalva/MobPt
-rw-r--r-- | npc/001-1/aidan.txt | 83 | ||||
-rw-r--r-- | npc/001-1/ishi.txt | 28 | ||||
-rw-r--r-- | npc/functions/mobpoint.txt | 36 |
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,{ |