Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[Release] Exp Seller [Updated! V4] Choose how much EXP to receive

Nice release?

  • this is nice.

    Votes: 99 73.9%
  • not to good..

    Votes: 35 26.1%

  • Total voters
    134
The almighty chicken
Loyal Member
Joined
Apr 7, 2008
Messages
570
Reaction score
31
[Release] Exp Seller [Updated! V10] Final Version!

^^^^^^^^^^^^^^^^^^^^^^
Look. v10 o_O

Hey, Someone requested me for an Exp seller, so I made one
first off, put this in NPCConversationManager.java
Code:
        public int getExp() {
                return getPlayer().getExp();
        }
&
Code:
public int itemQuantity(int itemid) {
MapleInventoryType type = MapleItemInformationProvider.getInstance().getInventoryType(itemid);
MapleInventory iv = getPlayer().getInventory(type);
int possesed = iv.countById(itemid);
return possesed;
}

Then, make a new npc, i used 9010011.js (Orange Mushroom) and put this in it:
updated, you will get a key, after 50 keys you receive 75k bonus exp, this one now shows the progress bar

updated v4 = You can choose how much EXP you will receive, however, theres a maximum of 127k. i will try to fix that later, because when you do 128 it has to do something with the bytes, and that just doesn't work
Updated v10 The exp function is working! you can get a max of 1bil exp since you cant get more then 2bil mesos
Gms can get free exp now!


PHP:
//Made by kippieeej aka Bassoe
var chickenms = 0;
 
function start() {
    chickenms = -1;
    action(1, 0, 0);
}
 
function action(mode, type, selection) {
    if (mode == -1) {
        cm.dispose();
    } else {
        if (mode == 0 && chickenms == 0) {
            cm.dispose();
            return;
        }
        if (mode == 1)
            chickenms++;
        else
            chickenms--;
        if (chickenms == 0) {
            if (cm.itemQuantity(4001026) >= 50) {
                cm.sendOk("#fUI/UIWindow.img/QuestIcon/4/0#\r\nYou got 50 #i4001026#!\r\nI will give you some #fUI/UIWindow.img/QuestIcon/8/0#");
                cm.gainItem(4001026, -50);
                cm.gainExp(75000);
                cm.dispose();
            } else {
                cm.sendSimple("Hello #h #, Welcome to #rChickenMS!#k\r\nYou have this much Keys #B" + (cm.itemQuantity(4001026) * 2) + "#\r\nWhat do you want to do?\r\n#L1##bTrade 10k #fUI/UIWindow.img/QuestIcon/7/0# for 9k #fUI/UIWindow.img/QuestIcon/8/0#!#k#l\r\n\r\n#L2##bTrade 10k #fUI/UIWindow.img/QuestIcon/8/0# for 9k #fUI/UIWindow.img/QuestIcon/7/0#!#k#l\r\n\r\n#L3##bI want to choose how much Exp i get!#k#l\r\n#L4##eNothing really..#n#l");
            }
        } else if (chickenms == 1) {
            if (selection == 1) {
                if (cm.getMeso() >= 10000 ) {
                    cm.gainMeso(-10000);                
                    cm.gainExp(9000);
                    cm.gainItem(4001026, 1); 
                    cm.dispose();
                } else {
                    cm.sendOk("You don't have enough #bMesos#k\r\nDon't scam me or I will use this on you! #s5001001#");
                    cm.dispose();
                }                                
            } else if (selection == 2) {
                if (cm.getExp() >= 10000 ) {
                                        cm.gainMeso(9000);                
                    cm.gainExp(-10000);
                    cm.gainItem(4001026, 1); 
                    cm.dispose();
                } else {
                    cm.sendOk("You don't have enough #bExp#k\r\nDon't scam me or I will use this on you! #s5001001#");
                    cm.dispose();
                }
            } else if (selection == 3) {
                var prompt = "How much exp do you want?\r\n#rI'm fixed, there's no limit anymore!#k";
                cm.sendGetText(prompt);
            } else {
                cm.sendOk("Oh. i see... Well then, have fun in #rChickenMS!#k");
                cm.dispose();
            }
        } else if (chickenms == 2) {
            qty = cm.getText();
            cost = (qty * 2);
                cm.sendYesNo("Do you really want to pay " + cost + " mesos for " + qty + " Exp?");
        } else if (chickenms == 3) {
            if(cm.getChar().isGM() == 1) {
                cm.gainExp(qty);
                cm.dispose();
            } else {
                if (cm.getMeso() >= cost) {
                    cm.gainMeso(-cost);
                    cm.gainExp(qty);
                    cm.dispose();
                } else {
                    cm.sendOk("You don't have enough #bMesos#k\r\nDon't scam me or I will use this on you! #s5001001#");
                    cm.dispose();
                }
            }
        } else {
            cm.dispose();
        }
    }
}


After that, you can manually use !npc 9010011
Edit: if you want to put your NPC in free market:
Code:
<imgdir name="2">
   <string name="type" value="n"/>
   <string name="id" value="9010011"/>
   <int name="x" value="520"/>
   <int name="y" value="1"/>
   <int name="mobTime" value="0"/>
   <int name="f" value="0"/>
   <int name="hide" value="0"/>
   <int name="fh" value="71"/>
   <int name="cy" value="6"/>
   <int name="rx0" value="470"/>
   <int name="rx1" value="570"/>   
  </imgdir>
Add that to 910000000.img.xml, change 9010011 to the npc you used
and change <imgdir name="2"> to the correct number

Have fun!
Bassoe aka Kippieeej

Woot the progress bar is working!


it will look like this if you have 50 keys:
kippieeej - [Release] Exp Seller [Updated! V4] Choose how much EXP to receive - RaGEZONE Forums


& progress bar ^^
kippieeej - [Release] Exp Seller [Updated! V4] Choose how much EXP to receive - RaGEZONE Forums


little improvement XD
kippieeej - [Release] Exp Seller [Updated! V4] Choose how much EXP to receive - RaGEZONE Forums
 

Attachments

You must be registered for see attachments list
Last edited:
Master Summoner
Loyal Member
Joined
Jul 22, 2008
Messages
573
Reaction score
0
Re: [Release] Exp Seller

tested? well looks interesting.
 
Newbie Spellweaver
Joined
Jun 30, 2008
Messages
43
Reaction score
0
Re: [Release] Exp Seller

LOLS. Can you make them sell for like donation points?
 
The almighty chicken
Loyal Member
Joined
Apr 7, 2008
Messages
570
Reaction score
31
Re: [Release] Exp Seller

it's tested and it fully works
i'm now uploading a screenie

edit: uploaded, check the first post ^^
about the donation points, i dont know
i'd say, try it =]
 
Newbie Spellweaver
Joined
Jun 30, 2008
Messages
43
Reaction score
0
Re: [Release] Exp Seller

I know. But can you make it.. so that you have to use donation points to buy?
 
The almighty chicken
Loyal Member
Joined
Apr 7, 2008
Messages
570
Reaction score
31
Re: [Release] Exp Seller

I know. But can you make it.. so that you have to use donation points to buy?

my server doesn't have donation system
but you can use something like
if (cm.isDonator == true);
 
&#12484;
Loyal Member
Joined
Apr 12, 2008
Messages
729
Reaction score
28
Re: [Release] Exp Seller

I know. But can you make it.. so that you have to use donation points to buy?

Just make a donators column in your DB. And do something like:
Code:
cm.getPlayer().setDonationPoints([amount]);








Also, i smell mega abuse of this x.X. (reborns with lots of money = lots of use of this npc :p)
 
The almighty chicken
Loyal Member
Joined
Apr 7, 2008
Messages
570
Reaction score
31
Re: [Release] Exp Seller

lol
that's why i made it 10k costs
so that you have to click endlessly to become 200
 
Newbie Spellweaver
Joined
Jun 30, 2008
Messages
43
Reaction score
0
Re: [Release] Exp Seller

X: Anybody know where to add it and stuff?
 
The almighty chicken
Loyal Member
Joined
Apr 7, 2008
Messages
570
Reaction score
31
Re: [Release] Exp Seller

thanks!
also, i don't quite remember why i made that last function, give 10k exp for 9k mesos lol.
i think that nobody will use that one ^^

edit: @ above, i thought i explained it quite simple where to add it lol
 
Newbie Spellweaver
Joined
Jun 30, 2008
Messages
43
Reaction score
0
Re: [Release] Exp Seller

Wait. So how do i take out the mesos and exp part? I just want it to be donation pts for exp.
 
The almighty chicken
Loyal Member
Joined
Apr 7, 2008
Messages
570
Reaction score
31
Re: [Release] Exp Seller

see this?:
Code:
if (cm.getMeso() >= 10000 ) {
     cm.gainMeso(-10000);    
     cm.gainExp(9000); 
     cm.dispose();

you can edit that to whatever you want
 
&#12484;
Loyal Member
Joined
Apr 12, 2008
Messages
729
Reaction score
28
Re: [Release] Exp Seller

this might or might not work, dont flame if it doesnt.


You must have a table for donationpoints, dont ask me for the scripts, i dont use donators.


change
Code:
if (cm.getMeso() >= 10000 ) {
     cm.gainMeso(-10000);    
     cm.gainExp(9000); 
     cm.dispose();

to
Code:
if (cm.getMeso() >= 10000 ) {
     cm.gainMeso(-10000);       
     cm.getPlayer().setDonationPoints([amount]); 
     cm.dispose();
You could make it so, if u give the npc 100m, he will give u 50 donation points....ect, ect.
cm.dispose();
 
Experienced Elementalist
Joined
Apr 18, 2008
Messages
294
Reaction score
3
Re: [Release] Exp Seller

this is the mushie for my PQ =\
 
Master Summoner
Loyal Member
Joined
Jul 22, 2008
Messages
573
Reaction score
0
Re: [Release] Exp Seller

they just change it to any npc u want lol
 
The almighty chicken
Loyal Member
Joined
Apr 7, 2008
Messages
570
Reaction score
31
Re: [Release] Exp Seller

well, you are very smart, so you know how to use another npc i suppose ;)

people, if you want me to improve this then just tell me how
i will do all i can
 
&#12484;
Loyal Member
Joined
Apr 12, 2008
Messages
729
Reaction score
28
Re: [Release] Exp Seller

Id make it so they get more exp, it costs more, but they can only do it x amount of times per rebirth.

9k exp per click = worthless :p
 
Mother effin' clouds
Loyal Member
Joined
Apr 13, 2008
Messages
1,534
Reaction score
448
Re: [Release] Exp Seller

LMAO! anyone can make this...
Simple check for mesos, not enough show message, if enough minus that amount and add this amount of exp. =.=" epic disaster in releases now even if its a good shot in making one now its just making everyone lazy.
 
Back
Top