Author | Message | ||||||||
---|---|---|---|---|---|---|---|---|---|
EO+ Taking requests
| Hi all, I've some free time over the holidays and thought I could lend a hand to anyone needing quest scripting. If you provide your idea, I will do my best to create a script to accommodate it, the only condition is that I will make it free-to-use for all and will share it in this thread. I will leave a lot of the quest dialogue almost empty, with basic instructions or comments, that part is up to you! I will post links to Pastebin with basic descriptions of the quests in this original post, and edit it with new additions when they are created. Basic Merchant Script With this script, you could have far more functionality for a shop, than just using the original shop system. For example, you could quite easily modify it to trade any amount of one item, for any amount of another item, or multiple items like item sets. Further, this is not limited to just items, only by the EO+ current Actions and Rules set, class changing, titles, warping, exp, etc. Moreover, you can include restrictions to the shop or listed items, level, stats, class etc. Pastebin: http://pastebin.com/pcQ24YYZ Daily Stat Training + Random Amounts With this script, you can assign an amount of stats a player can purchase each day, it uses the Roll system to change the amount the player gains each day. Pastebin: http://pastebin.com/Neq86iph Heroes Call War Games This script allows a group leader, over a certain level, and with enough money, to spawn a map full of NPC's to battle against, after their group kills enough of the specific NPC's, another NPC (boss etc), is spawned, the group then has to defeat the boss to win and every member of the party is rewarded. This script uses the party leader as a dungeon master, the script is not needed by any other member of the group, and checks to make sure they are the leader and grouped before starting. Further, you will need the secondary reset script on another NPC, to allow the leader to reset, should something go wrong like death or kill steals. One way to avoid these is to add a map tile warp in to the map also, and have the required specific NPC's also spawning rarely on the map. I will include a map that the current spawns locations will work on by default, you will need to edit the script however, to suit your needs, NPC's and locations. Note* The leader and preferably all members of the group should load the map in to their client prior to starting this script. If the leader especially does not have the map downloaded from the server, it can create a bit of graphical lag for them, if they do have the map however, all the spawning /warping is achieved just like a normal map change. Main Pastebin: http://pastebin.com/DzW8h9zz Reset Pastebin: http://pastebin.com/8uHZfZLP Default Map: 00048.emf --- Host of a blacklisted server...
|
Re: EO+ Taking requests
| https://eoserv.net/forum/topic/23824 Help a fella out.
|
Re: EO+ Taking requests
| damis posted: (3rd Jan 2017, 04:27 am) Certainly, after reviewing your thread, I'm not too certain if you wish for this to be an entry and exit NPC or just an entry, with a warp tile to get out of the map. However, I can edit the following to suit either option, and have added another script you could use to allow people who are on the quest to warp back in if they die. I assume your QuestID is 12, you will have to edit where it says CHANGE-ME and put in your Item / NPC ID's. Further, certain functions added here will not work on EOServ. EOSource has additional functions like [name] and IsRebirth for example. If needed, just let me know what you had in mind with some more detail and I can quickly edit in the changes. Main { questname "Kingdom Comer" version 1.0 } State Begin { desc "Talk with NPC NAME" action AddNpcText(12,"It's time we go to war and finish off the Zeal"); action AddNpcText(12,"Some infomation about what to do after the warp etc, boss to kill etc maybe."); action AddNpcText(12,"We're sending you in, [name]!"); action AddNpcInput(12,1,"Bezniak Warfront"); action AddNpcInput(12,2,"Abort! Cancel!"); rule InputNpc(1) goto Bezniak1 rule InputNpc(2) goto HardReset } State Bezniak1 { if IsRebirth(3) goto Bezniak2 else SetState("SoftReset1"); } State Bezniak2 { action SetCoord(180,20,20); action SetState("Bezniak3"); } State Bezniak3 { action ShowHint("You have been warped in to PLACE NAME"); action ShowHint("Defeat BOSS NAME and return for more orders!"); action SetState("Bezniak4"); } State Bezniak4 { desc "Deafeat BOSS NAME" rule KilledNpcs(CHANGE-ME-BOSSID, 1) goto Bezniak5 } State Bezniak5 { action ShowHint("Well done! Return to NPC NAME for more."); action SetState("Bezniak6"); } State Bezniak6 { desc "Talk to NPC NAME" action AddNpcText(12,"Welcome back, [name]! Good job on defeating BOSS NAME..."); action AddNpcText(12,"I now need you to recover ITEM NAME from BOSS NAME, maybe some more information here about what to do."); action AddNpcInput(12,1,"Okay, I'll be right back!"); rule InputNpc(1) goto Bezniak7 } State Bezniak7 { action SetCoord(180,20,20); action SetState("Bezniak8"); } State Bezniak8 { action ShowHint("You have been warped in to PLACE NAME"); action ShowHint("Collect ITEM NAME and return for more orders!"); action SetState("Bezniak9"); } State Bezniak9 { desc "Collect ITEM NAME" rule GotItems(CHANGE-ME-ITEMID,1) goto Bezniak10 } State Bezniak10 { action ShowHint("Well done! Return to NPC NAME for your reward."); action SetState("Bezniak11"); } State Bezniak12 { desc "Return to NPC NAME" action AddNpcText(12,"Welcome back! Here are your rewards!"); action AddNpcInput(12,1,"Thank you!"); rule InputNpc(1) goto Ending } State Ending { action ShowHint("You have been rewarded!"); action GiveExp(100); action GiveItem(1,100); action Reset(); } State SoftReset1 { action ShowHint("You need Reborn level 3 to continue!"); action AddNpcText(12,"I'm sorry but you need a Reborn level of 3 or higher to continue."); action AddNpcInput(12,1,"Okay, maybe later."); rule InputNpc(1) goto HardReset } State HardReset { action Reset(); } And a separate NPC that can warp players that die while on the quest, back inside. Main { questname "Kingdom Comer Map Change" version 1.0 } State Begin { if IsQuestState(12, Bezniak4) goto WarpIn1 elseif IsQuestState(12, Bezniak6) goto WarpIn1 elseif IsQuestState(12, Bezniak9) goto WarpIn1 else goto SoftReset1 } State WarpIn1 { action ShowHint("You have been warped in to PLACE NAME"); action SetCoord(180,20,20); action Reset(); } State SoftReset1 { action ShowHint("You need a reason to use this warp!"); action AddNpcText(13,"I'm sorry but you must have a reason to use this warp."); action AddNpcInput(13,1,"Okay, maybe later."); rule InputNpc(1) goto HardReset } State HardReset { action Reset(); } --- Host of a blacklisted server...
|
Re: EO+ Taking requests
| I certainly appreciate it, thank you! :) How about another, which could probably be written and slightly changed to work as 2. I want a Wiseman quest that requires 30 rats killed, and afterwards, you can choose class 1,5,6, and another Wiseman quest which costs 500g to switch a class.
|
Re: EO+ Taking requests
| damis posted: (8th Jan 2017, 02:52 pm) Sure, here is the 1st one - http://pastebin.com/NCRGHm9Q And the second - http://pastebin.com/y565ebCh Change out where # for your quest ID, also some things need to be edited. *Edit* Replaced the 1st link, there was a typo. --- Host of a blacklisted server... |