[Release]Realistic Scripts (All the best)
I have seen many topics that throw together an npc script that is nothing like the real maplestory. This topic is a compilation of all the best scripts that are the closest to maplestory.
For example, I have made a Shanks script that actually takes 150 mesos just like the real maplestory. Im also working on real 2nd job advancement quests.
Note: The explanations here are basic and will not go trough the full step-by-step process. Also, Some scripts may be linked to another topic.
Latest Scripts:
-Shanks (Requiring 150 mesos)
Shanks (Requiring 150 mesos)
In NPCsScripts.h:
PHP Code:
case 22000: npc_22000(npc); break; // Shanks - Southperry
and
PHP Code:
static void npc_22000(NPC* npc);
You should know where those go. (Public switch, and private "static void" things)
And in your MapleIsland.cpp (Or any other NPC files made by you) (I have an NPCsTeleport.cpp)
Add this anywhere:
PHP Code:
// Southperry - Shanks
void NPCsScripts::npc_22000(NPC* npc){
Player* player = npc->getPlayer();
int state = npc->getState();
if(state == 0){
npc->addText("Take this ship and you'll head off to a bigger continent. I can take you to #bVictoria Island#k for only 150 mesos. The thing is, once you leave this place, you can't ever come back. What do you think? Do you want to go to Victoria Island?");
npc->sendYesNo();
}
else if(state == 1){
if(npc->getSelected() == YES){
if (npc->getMesos() >= 150){
player->inv->setMesos(npc->getMesos()-150);
npc->addText("Alright, hope you have a great time on #bVictoria Island#k!");
npc->sendNext();
}else{
npc->addText("Sorry, but you do not have enough mesos!");
npc->sendOK();
npc->end();
}
}
else{
npc->addText("Hmm... I guess you still have things to do here?");
npc->sendOK();
}
}
else if(state == 2){
if(npc->getSelected() == YES){
npc->teleport(104000000);
}
npc->end();
}
}
Re: [Release]Realistic Scripts (All the best)
We already have NPC teleporters why do we need this? o.O
Re: [Release]Realistic Scripts (All the best)
To make a server as close to gMS as possible...
Re: [Release]Realistic Scripts (All the best)
Yeah i like this alot. I might contribute someday. :P
Re: [Release]Realistic Scripts (All the best)
Good thread. I'm tired of crappy custom teleporters and shops, drops etc. ;o
Maybe I could help, maybe not ~~~~kapitanhawkew@hotmail.com
Re: [Release]Realistic Scripts (All the best)
Im working on the 2nd job advancement quests.
I have the magician one done, but i want to make sure there are no bugs in it before i do the others. Then i will release.
If you have anything else you want "Closer" to MS, just suggest it in this topic.
Re: [Release]Realistic Scripts (All the best)
dont we have a release on teleport scripts that were based on gMS scripts? *looks at pinned*
Re: [Release]Realistic Scripts (All the best)
I was thinking the same way to copy everything from GMS, but the problem is I don't each and every dialogue of every NPCs.
Re: [Release]Realistic Scripts (All the best)
Quote:
Originally Posted by
Brad1011
Im working on the 2nd job advancement quests.
I have the magician one done, but i want to make sure there are no bugs in it before i do the others. Then i will release.
If you have anything else you want "Closer" to MS, just suggest it in this topic.
Shops need to be redone, so badly. Our current shops that everyone seems to use is all custom, but thats sort of a different deal... xml versus cpp, I don't know why nobody has released real shops yet.
Re: [Release]Realistic Scripts (All the best)
There actually is. The pack with all the Shop NPCs are actually the same as GMS. I'm using it, and it looks like the same. I didn't bother checking each and every shop though.
Re: [Release]Realistic Scripts (All the best)
if i am not wrong for job advancement scripts u need to add them to the quest by adding the npc.xml in the quest folder like.. for example the magician quest end would start the quest of the 30 dark marbles.. and on talk to the 2nd job instructor it will tele u to the map.. but regarding the drops to be all black marbles.. i am not sure how to do it.. xD but the rest i got it covered.
Re: [Release]Realistic Scripts (All the best)
This topic will get lost in the release section. Plus, there's a topic already like this in the development forum, please contribute there.
Re: [Release]Realistic Scripts (All the best)
I have finished the magician job advancement quest and i have Ellinia,Perion,Kerning and Henesys weapon shops done (the real ones).
Re: [Release]Realistic Scripts (All the best)
Ain't even close to the official. Here's mine (which is exactly word for word via unpacking the .wz files)
Code:
void NPCsScripts::npc_22000(NPC* npc){
int state = npc->getState();
if(state == 0){
npc->addText("Take this ship and you'll head off to a bigger continent.#e For 150 mesos#n, I'll take you to #bVictoria Island#k");
npc->addText(". The thing is, once you leave this place, you can't ever come back. What do you think? Do you want to go to Victoria Island?");
npc->sendYesNo();
}
else if(state == 1){
if(npc->getSelected() == YES){
npc->addText("Bored of this place? Here... Give me 150 mesos first...");
npc->sendNext();
}
else{
npc->addText("Hmm... I guess you still have things to do here?");
npc->sendOK();
}
}
else if(state == 2){
if(npc->getSelected() == YES){
if(npc->getLevel() > 6){
if(npc->getMesos() > 149){
npc->giveMesos(-150);
npc->addText("Awesome! #e150 mesos#n accepted! Alright, off to Victoria Island!");
npc->sendNext();
}
else{
npc->addText("What? You're telling me you wanted to go without any money? You're one weirdo...");
npc->setSelected(NO);
npc->sendOK();
}
}
else{
npc->addText("Let's see... I don't think you are strong enough. You'll have to be at least #bLevel 7#k ");
npc->addText("to go to Victoria Island.");
npc->setSelected(NO);
npc->sendOK();
}
}
else{
npc->end();
}
}
else if(state == 3){
if(npc->getSelected() == YES){
npc->teleport(104000000);
}
npc->end();
}
}
Re: [Release]Realistic Scripts (All the best)
Quote:
Originally Posted by
xSLaYaHx
Ain't even close to the official. Here's mine (which is exactly word for word via unpacking the .wz files)
Code:
void NPCsScripts::npc_22000(NPC* npc){
int state = npc->getState();
if(state == 0){
npc->addText("Take this ship and you'll head off to a bigger continent.#e For 150 mesos#n, I'll take you to #bVictoria Island#k");
npc->addText(". The thing is, once you leave this place, you can't ever come back. What do you think? Do you want to go to Victoria Island?");
npc->sendYesNo();
}
else if(state == 1){
if(npc->getSelected() == YES){
npc->addText("Bored of this place? Here... Give me 150 mesos first...");
npc->sendNext();
}
else{
npc->addText("Hmm... I guess you still have things to do here?");
npc->sendOK();
}
}
else if(state == 2){
if(npc->getSelected() == YES){
if(npc->getLevel() > 6){
if(npc->getMesos() > 149){
npc->giveMesos(-150);
npc->addText("Awesome! #e150 mesos#n accepted! Alright, off to Victoria Island!");
npc->sendNext();
}
else{
npc->addText("What? You're telling me you wanted to go without any money? You're one weirdo...");
npc->setSelected(NO);
npc->sendOK();
}
}
else{
npc->addText("Let's see... I don't think you are strong enough. You'll have to be at least #bLevel 7#k ");
npc->addText("to go to Victoria Island.");
npc->setSelected(NO);
npc->sendOK();
}
}
else{
npc->end();
}
}
else if(state == 3){
if(npc->getSelected() == YES){
npc->teleport(104000000);
}
npc->end();
}
}
Lawlz, I don't think that particular wording was found through wz unpacking, Slayah. Especially since the script doesn't contain the spelling errors I fixed that are apparent in the original script.