This post was updated on .
The npc quest id is 99 and the npc name in the quest file is ''NPC'' so those need changed if this was to be added.
Apocalyspe survivor Quest (Reward 2 25m exp scrolls 1 pois apple Repeatable) State Start { desc "Talk to NPC" action AddNpcText(99, "How did you make it here alive?!"); action AddNpcInput(99, 1, "What do you mean?"); action AddNpcText(99, "The zombies! How did they not eat you alive?"); action AddNpcText(99, "No matter. I have a proposition for you. That is, if you're interested."); action AddNpcInput(99, 2, "Sure, what is it?"); action AddNpcInput(99, 3, "No thanks, I don't have the time."); action AddNpcText(99, "I need you to kill some of those zombies for me."); action AddNpcText(99, "I'm too weak to do it myself and I need to get back home."); rule InputNpc(2) goto Start2 rule InputNpc(3) goto Dick } State Start2 { desc ''Talk to NPC'' action AddNpcText(99, "I need you to kill some of those zombies for me."); action AddNpcText(99, "I'm too weak to do it myself and I need to get back home."); action AddNpcText(99, "So, could you do it for me?"); action AddNpcInput(99, 4, "Sure, leave it to me!"); action AddNpcInput(99, 5, "On second thought I'd better not..."); rule InputNpc(3) goto KillZambies rule InputNpc(4) goto Dick } State KillZambies { desc "Kill 40 Zombies" rule KilledNpcs(145, 40) goto KillZambies2 } State KillZambies2 { desc "Kill 40 Zombies" rule KilledNpcs(405, 40) goto Return } State Return { desc "Return to NPC" action AddNpcText(99, "Thank you!"); action AddNpcText(99, "I can finally return home now!"); action AddNpcText(99, "Here, please accept this as a token of my gratitude."); rule TalkedToNpc(QuestID) goto Reward } State Reward { action GiveItem(683, 2); action GiveItem(264, 1); action Reset(); } State Dick { desc "Talk to NPC" action AddNpcText(99, "Oh, *frown* I see...."); action Reset(); } |
I'm gonna use the Islander Quest and another quest as refrence.
Okay first of all, if you're gonna have a repeatable quest make sure that the prize can't be abused. Like your 50mil exp can be abused pretty easily and cause people to reborn so much quicker than they should be. Second, all quests should start like this: Main { questname "<Enter Quest Name Here>" version 1.0 } State Begin { Third, at your state 'Start', when you click on ''What do you mean?'' It'll just close the quest. Always have the AddNpcInput as the last action, followed by the rule, then end the state. Fourth, you should have slashes in before single quotation marks. For example, You're would be You\'re. Or, here: action AddNpcText(15, "Hello there, Traveller. You seem a little lost. How can I help you?"); action AddNpcInput(15,1,"I\'m a little lost.."); action AddNpcInput(15,2,"I\'m fine, thanks."); action AddNpcInput(15,3,"I don\'t speak to strangers."); Fifth, when you're having AddNpcInput, make sure it's followed by a rule, like so: action AddNpcInput(15,1,"Oh. Well.. What\'s the problem?"); action AddNpcInput(15,2,"I\'m not a helpful person."); rule InputNpc(1) goto Continue rule InputNpc(2) goto Exit2 Sixth, in your desc's, you have it as desc ' '<InsertDescHere> ' ' instead of desc "<InsertDescHere>" (Shift + 2) Seventh, your rule 'InputNpc' should have a matching number to your action AddNpcInput. So for example, if your AddNpcInput is: action AddNpcInput(15,2,"I\'m not a helpful person."); (Note the 2) Your InputNpc should be: rule InputNpc(2) goto Exit2 (Again, note the 2 in the brackets) Eighth, in your states 'KillZambies' and 'KillZambies2' you should give as much information as possible when you're set out to kill something, so the player doesn't have to keep going to their quest log in order to see what they have to do next. So for example, you should have it like this: desc "Kill 25 Baby Alfs" action AddNpcText(2, "Return to me for your next objective once you've finished. Good luck, soldier!"); rule KilledNpcs(57,25) goto Task Sorry if I let you down, but there is quite a good amount of mistakes. Work on fixing these mistakes and you should be fine! :P
I'm only here for the food.
|
okay, I took those into consideration when making this next quest: (Quest name is Path of Exile)
Main { questname "Path of Exile" version 1.0 } State Begin { desc "Talk to NPC" action AddNpcText(99, "*Mumbling to (him/her)self*"); action AddNpcInput(99, 1, "Uhm, hello?"); rule InputNpc(1) goto Begin2 } State Begin2 { desc "Talk to NPC" action AddNpcText(99, "Huh, oh! What do you want!? Can\'t you see I\'m trying to think."); action AddNpcInput(99, 2, "Sorry, I\'ll leave you alone then."); action AddNpcInput(99, 3, "Didn\'t look it to me."); rule InputNpc(2) goto Restart rule InputNpc(3) goto Begin3 } State Begin3 { desc "Talk to NPC" action AddNpcText(99, "Well, who asked for you\'re damn... nevermind. Maybe you could help me."); action AddNpcInput(99, 4, "Help you? Help you to do what?"); action AddNpcInput(99, 5, "Why would I help you?"); rule InputNpc(4) goto Begin4 rule InputNpc(5) goto Restart2 } State Begin4 { desc "Talk to NPC" action AddNpcText(99, "Well.. you seee. I got exiled from my homeland for treasony..."); action AddNpcInput(99, 6, "Treasony..? What\'d you do?"); action AddNpcInput(99, 7, "It sounds terrible, but I\'m sorry I can\'t help you."); rule InputNpc(6) goto Begin5 rule InputNpc(7) goto Restart3 } State Begin5 { desc "Talk to NPC" action AddNpcText(99, "You see, in my homeland it\'s illegal for someone of a lowly class to marry someone of a higher class."); action AddNpcText(99, "So, when my wife and I fell in love we had to keep it a secret."); action AddNpcText(99, "Then, a few nights ago we ran away to get married and were soon caught by the kingdom\'s guards."); action AddNpcText(99, "Since she was of royal blood she was locked away in a far discrete tower of the castle."); action AddNpcText(99, "I was then thrown into the dungeon to be executed, but was given the choice of exile from the kingdom, or death."); action AddNpcInput(99, 8, "Wow, that sounds terrible!"); action AddNpcInput(99, 9, "I\'d love to help, but I\'m afraid I\'m not yet ready for the challange."); rule InputNpc(8) goto Begin6 rule InputNpc(9) goto Restart4 } State Begin6 { desc "Talk to NPC" action AddNpcText(99, "It is... So.. will you help me to return to my homeland?"); action AddNpcInput(99, 10, "Of course!"); action AddNpcInput(99, 11, "Maybe later."); rule InputNpc(10) goto Begin7 rule InputNpc(11) goto Restart5 } State Begin7 { desc "Talk to NPC" action AddNpcText(99, "Great! First, I\'ll need you to get me (ITEM) and then return to me with it."); action AddNpcText(99, "Then, I\'ll need you to kill (NPC), (NPC), (NPC), (NPC), and then finally eliminate 1 (NPC)"); action AddNpcInput(99, 12, "I\'ll start right away!"); action AddNpcInput(99, 13, "That sounds too hard..."); rule InputNpc(12) goto Get(ITEM) rule InputNpc(13) goto Restart6 } State Get(ITEM) { desc "Get 1 (ITEM)" rule GotItems(ItemID, amount) goto Return } State Return { desc "Return to (NPC)" action AddNpcText(99, "Thank you! now, please defeat those beasts and return to me once more!"); action AddNpcInput(99, 14, "I\'m on it!"); rule InputNpc(14) goto Kill(NPC) } State Kill(NPC) { desc ''Kill 1 (NPC)'' rule KilledNpcs(NpcID, amount) goto Kill(NPC)2 } State Kill(NPC)2 { desc "Kill 1 (NPC)" rule KilledNpcs(NpcID, amount) goto Kill(NPC)3 } State Kill(NPC)3 { desc "Kill 1 (NPC)" rule KilledNpcs(NpcID, amount) goto Kill(NPC)4 } State Kill(NPC)4 { desc "Kill 1 (NPC)" rule KilledNpcs(NpcID, amount) goto Kill(NPC)5 } State Kill(NPC)5 { desc "Kill 1 (NPC)" rule KilledNpcs(NpcID, amount) goto Return2 } State Return2 { desc "Return to (NPC)" action AddNpcText(99, "Thank you for helping me to redeem myself so that I may return home to my wife. Here, take these!"); action GiveItem(ID, amount); action GiveItem(ID, amount); action GiveItem(ID, amount); action End(); } State Restart } action AddNpcText(99, "Yeah, go on, shoo!"); action Reset(); } State Restart2 { desc "Talk to (NPC)" action AddNpcText(99, "I don\'t want your damn help anyway!"); action Reset(); } State Restart3 { desc "Talk to (NPC)" action AddNpcText(99, "Well.. who needs you anyway..."); action Reset(); } State Restart4 { desc "Talk to (NPC)" action AddNpcText(99, "Well then quit wasting my time if you\'re not up for the challange!"); action Reset(); } State Restart5 { desc "Talk to (NPC)" action AddNpcText(99, "I don\'t have time to wait around for you!"); action Reset(); } State Restart6 { desc "Talk to (NPC)" action AddNpcText(99, "You\'re not an adventurer. you\'re a coward!"); action Reset(); } |
Free forum by Nabble | Edit this page |