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!

Custom Jump Quests, detailed guide.

Initiate Mage
Joined
Nov 4, 2008
Messages
3
Reaction score
0
Hello everyone, this is my first release so please don't flame me. I actually think it's a pretty nice release and I'm sure the people in your server's will love it.

Alright let's begin. First find your warper NPC.
Go to Your folder>Scripts>npc
In my server, it's Nana(K). So if you want to use her it's NPC 9201023.

Place this code in it.

EDIT!!!!: THE CODE KEEPS GETTING MESSED UP!
Where the 101000**** is, place 101 where the **** is and put a comma. Sorry.

Code:
/* Jump Quests Warper
by Jamie (LAWLjamie ragezone)
 */

var jumpquests = Array(105040311, 105040313, 101000**** 105040316); // Hidden Street - The Deep Forest of Patience <Step 2>, Hidden Street - The Deep Forest of Patience <Step 4>, Hidden Street - The Forest of Patience <Step 2>, Hidden Street - The Deep Forest of Patience <Step 7>
var chosenMap = -1;
var quests = 0;


importPackage(net.sf.odinms.client);

function start() {
    status = -1;
    action(1, 0, 0);
}

function action(mode, type, selection) {
    if (mode == -1) {
        cm.dispose();
    }
    else {
        if (status >= 3 && mode == 0) {
            cm.sendOk("See you next time!.");
            cm.dispose();
            return;    
        }
        if (mode == 1) {
            status++;
        }
        else {
            status--;
        }
        if (status == 0) {
            cm.sendNext("Hello! I'm the BedtimeStory Jump Quest Warper! You will be tested in many different Jump Quests. Once you have completed the Jump Quest, you click the ending NPC and you will be given and Item which you can trade for a special item!");
        }
        if (status == 1) {
            cm.sendSimple("#fUI/UIWindow.img/QuestIcon/3/0#\r\n#L0#View Jump Quests#l");
        }
        else if (status == 2) {
            if (selection == 0) {
                var selStr = "Select your Jump Quest.#b";
                for (var i = 0; i < jumpquests.length; i++) {
                    selStr += "\r\n#L" + i + "##m" + jumpquests[i] + "#";
                }
                cm.sendSimple(selStr);
                quests = 1;
 
            }
        }
        else if (status == 3) {
            if (quests == 1) {
                cm.sendYesNo("Do you want to go to #m" + jumpquests[selection] + "#?");
                chosenMap = selection;
                quests = 2;
            }
        }
        else if (status == 4) {
            if (quests == 2) {
                cm.warp(jumpquests[chosenMap], 0);
                cm.dispose();
            }
        }
              
    }
}

Save and close.

Next, go to that same folder but you're going to open a different NPC. You MUST put these codes in the specific NPC.

1043000 - a pile of flowers

Code:
/* Prize Giver
by Jamie (LAWLjamie ragezone)
 */

var status = 0;
var map = Array(100000000);

function start() {
    status = -1;
    action(1, 0, 0);
}

function action(mode, type, selection) {
    if (mode == -1)
        cm.dispose();
    else {
        if (mode == 0 && status == 0)
            cm.dispose();
        if (mode == 1)
            status++;
        else
            status--;
        if (status == 0) {
            cm.sendSimple("Congratz on beating this Jump Quest! For beating this one you'll get 15 #b#v4001159##k!\r\n#L1# I would like to get my #b#v4001159##k");
        } else if (status == 1) {
            if (selection == 1) {
                    cm.gainItem(4001159,15);
					cm.warp(100000000,0)
                    cm.sendOk("Here's your prize!");
                } else
                    cm.sendOk("Guess you don't want your prize!");
                cm.dispose();
        }
    }
}
Save and Close.

1063000 - a pile of pink flowers

Code:
/* Prize Giver
by Jamie (LAWLjamie ragezone)
 */

var status = 0;
var map = Array(100000000);

function start() {
    status = -1;
    action(1, 0, 0);
}

function action(mode, type, selection) {
    if (mode == -1)
        cm.dispose();
    else {
        if (mode == 0 && status == 0)
            cm.dispose();
        if (mode == 1)
            status++;
        else
            status--;
        if (status == 0) {
            cm.sendSimple("Congratz on beating this Jump Quest! For beating this one you'll get 5 #b#v4001159##k!\r\n#L1# I would like to get my #b#v4001159##k");
        } else if (status == 1) {
            if (selection == 1) {
                    cm.gainItem(4001159,5);
					cm.warp(100000000,0)
                    cm.sendOk("Here's your prize!");
                } else
                    cm.sendOk("Guess you don't want your prize!");
                cm.dispose();
        }
    }
}
Save and Close.

1063001 - a pile of blue flowers

Code:
/* Prize Giver
by Jamie (LAWLjamie ragezone)
 */

var status = 0;
var map = Array(100000000);

function start() {
    status = -1;
    action(1, 0, 0);
}

function action(mode, type, selection) {
    if (mode == -1)
        cm.dispose();
    else {
        if (mode == 0 && status == 0)
            cm.dispose();
        if (mode == 1)
            status++;
        else
            status--;
        if (status == 0) {
            cm.sendSimple("Congratz on beating this Jump Quest! For beating this one you'll get 10 #b#v4001159##k!\r\n#L1# I would like to get my #b#v4001159##k");
        } else if (status == 1) {
            if (selection == 1) {
                    cm.gainItem(4001159,10);
					cm.warp(100000000,0)
                    cm.sendOk("Here's your prize!");
                } else
                    cm.sendOk("Guess you don't want your prize!");
                cm.dispose();
        }
    }
}
Save and Close.

1063002 - a pile of white flowers

Code:
/* Prize Giver
by Jamie (LAWLjamie ragezone)
 */

var status = 0;
var map = Array(100000000);

function start() {
    status = -1;
    action(1, 0, 0);
}

function action(mode, type, selection) {
    if (mode == -1)
        cm.dispose();
    else {
        if (mode == 0 && status == 0)
            cm.dispose();
        if (mode == 1)
            status++;
        else
            status--;
        if (status == 0) {
            cm.sendSimple("Congratz on beating this Jump Quest!. For beating this one you'll get 20 #b#v4001159##k!\r\n#L1# I would like to get my #b#v4001159##k");
        } else if (status == 1) {
            if (selection == 1) {
                    cm.gainItem(4001159,20);
					cm.warp(100000000,0)
                    cm.sendOk("Here's your prize!");
                } else
                    cm.sendOk("Guess you don't want your prize!");
                cm.dispose();
        }
    }
}
Save and Close.

Ok once again. Now you have an option to which NPC you want to use. I'm using Nana(O). NPC 9201025.

Code:
/* Jump Quests Prize Giver
by Jamie (LAWLjamie ragezone)
 */

var status = 0;
var map = Array(240010501);

function start() {
    status = -1;
    action(1, 0, 0);
}

function action(mode, type, selection) {
    if (mode == -1)
        cm.dispose();
    else {
        if (mode == 0 && status == 0)
            cm.dispose();
        if (mode == 1)
            status++;
        else
            status--;
        if (status == 0) {
            cm.sendSimple("Hello, I am the Jump Quest Item Exchanger. Do you want to trade your #b#v4001159##k?\r\n#L1# I would like to trade my 10 #b#v4001159##k for a #b#v1122007##k!#l\r\n\#L2# I would like to exchange 5 #b#v4001159##k for a #b#v2041211##k!#l\r\n\#L3# I would like to exchange 100 #b#v4001159##k for a #b#v1002357##k!#l\r\n\#L4# I would like to exchange 500 #b#v4001159##k for a #b#v1122000##k!#l\r\n\#L5# I would like to exchange 1000 #b#v4001159##k for a #b#v2041200##k!#l");
        } else if (status == 1) {
            if (selection == 1) {
                if(cm.haveItem(4001159,10)) {
                    cm.gainItem(4001159,-10);
					cm.gainItem(1122007,1);
                    cm.sendOk("Thank you! Here is your Spiegelmann Necklace!");
                } else
                    cm.sendOk("Sorry, you don't have 10 #b#v4001159##k!");
                cm.dispose();
            } else if (selection == 2) {
                if(cm.haveItem(4001159,5)) {
                    cm.gainItem(4001159,-5);
					cm.gainItem(2041211,1);
                    cm.sendOk("Thank you! Here is your Spiegelmann Marble!");
                        } else
                    cm.sendOk("Sorry, you don't have 5 #b#v4001159##k!");
                    cm.dispose();
			} else if (selection == 3) {
					if(cm.haveItem (4001159,100)) {
						cm.gainItem(4001159,-100);
						cm.gainItem(1002357,1);
						cm.sendOk("Thank you! Here is your Zakum Helmet!");
						} else
					cm.sendOk("Sorry, you don't have 100 #b#v4001159##k!");
					cm.dispose();
			} else if (selection == 4) {
					if(cm.haveItem (4001159,500)) {
						cm.gainItem(4001159,-500);
						cm.gainItem(1122000,1);
						cm.sendOk("Thank you! Here is your Horntail Necklace!");
						} else
					cm.sendOk("Sorry, you don't have 500 #b#v4001159##k!");
					cm.dispose();
			} else if (selection == 5) {
					if(cm.haveItem (4001159,1000)) {
						cm.gainItem(4001159,-1000);
						cm.gainItem(2041200,1);
						cm.sendOk("Thank you! Here is your Dragon Stone!");
						} else
					cm.sendOk("Sorry, you don't have 1000 #b#v4001159##k");
					cm.dispose();
					}
				else
				cm.sendOk("Alright, come back soon!");
				cm.dispose();
        }
    }
}
Save and close.

So yeah, that's pretty much it. Feel free to make any changes to whatever you want. You can change the items given, how many are given, the maps, whatever you want. Just give credit please.

I also made two simple command which you don't have to use if you don't want.

Opens up the Jump Quest Warper NPC:
NOTE: If you didn't use the Nana(K) NPC as your warper, change the NPC ID.
Code:
                } else if (splitted[0].equals("@jumpquest")) {
                        NPCScriptManager npc = NPCScriptManager.getInstance();
                        npc.start(c, 9201023);
Gives basic information about the Jump Quest:
Code:
        } else if (splitted[0].equals("@jqinfo")) {
            mc.dropMessage("How the jump quest works is, you talk to Nana(K) and pick which Jump Quest you want to do. They go from 5-20 Zenumist Marbles respectively. Once you have enough of them, you can trade the marbles you get for beating them for cool prizes by talking to Nana(O) in the FM. Have fun and good luck! ");

If you added the commands, you must save and compile for them to work.

Yeah like I said, they aren't much but hey, they work =P.

EDIT: Added Screen Shots =)

LAWLjamie - Custom Jump Quests, detailed guide. - RaGEZONE Forums

LAWLjamie - Custom Jump Quests, detailed guide. - RaGEZONE Forums

LAWLjamie - Custom Jump Quests, detailed guide. - RaGEZONE Forums

LAWLjamie - Custom Jump Quests, detailed guide. - RaGEZONE Forums

LAWLjamie - Custom Jump Quests, detailed guide. - RaGEZONE Forums
LAWLjamie - Custom Jump Quests, detailed guide. - RaGEZONE Forums
LAWLjamie - Custom Jump Quests, detailed guide. - RaGEZONE Forums

LAWLjamie - Custom Jump Quests, detailed guide. - RaGEZONE Forums
LAWLjamie - Custom Jump Quests, detailed guide. - RaGEZONE Forums
LAWLjamie - Custom Jump Quests, detailed guide. - RaGEZONE Forums
 
Skilled Illusionist
Loyal Member
Joined
Aug 4, 2008
Messages
376
Reaction score
37
Nice release I guess... i wanna see SS's so get em ready :)
 
Back?
Loyal Member
Joined
Apr 17, 2008
Messages
540
Reaction score
19
Nice release dude.i might use this for my server.
 
Newbie Spellweaver
Joined
Apr 14, 2008
Messages
12
Reaction score
0
Nice I like it =D. I think i'll change prizes around though.
 
Initiate Mage
Joined
Nov 4, 2008
Messages
3
Reaction score
0
Haha, thanks guys! =)

Screen Shots added.

And in SS 6 and 8, it didn't say it'll give me 15 and gave me 30. I already had 15 in there =P

Everything is tested and working.
 
Mythic Archon
Loyal Member
Joined
May 23, 2008
Messages
779
Reaction score
4
Pretty nice release, haven't seen any decent releases lately.
 
duck You
Loyal Member
Joined
Jun 27, 2007
Messages
2,935
Reaction score
233
Pretty nice release,
Nice job dude
:D
 
Newbie Spellweaver
Joined
Feb 10, 2009
Messages
23
Reaction score
0
Prize giver works for ver 55? Cause whenever i click the npc i coded for price giving it kicks me out of my server
 
Junior Spellweaver
Joined
Aug 15, 2008
Messages
192
Reaction score
12
1. Lol @ Bump
2. This is NPC Scripts, no compiling needed.
Just follow me instructions.
3. Look at the post-date.
 
Back
Top