Jump to content

Question

Posted
[70001] = {
		Title = "Welcome to Ragnarok Online!",
		NpcSpr = "4_F_01",
		Description = {
			"Spoke with Father Mareusis to become an Acolyte. He ordered you to visit ^000077Father Rubalkabara^000000, who has been Practicing Asceticism near the Relics, Northeast of Prontera City.",
			},
		RewardEXP = "1000",
		RewardJEXP = "1000",
		Summary = "Talk to Father Rubalkabara."

How to i add monster and reward list ?

i already try and try but nothing happen
x371DJB.jpg

function GetOngoingRewardInfo(questID)
	local reward = QuestInfoList[questID].RewardItemList
	if nil == reward then
		return
	end
	for k, v in pairs(QuestInfoList[questID].RewardItemList) do
		AddOngoingRewardInfo(questID, v.ItemID, v.ItemNum)
	end
end

from  data\luafiles514\lua files\datainfo\questinfo_f.lub

8 answers to this question

Recommended Posts

  • 0
Posted (edited)

Here, that's the structure:
IconName = "ico_nq.bmp", // Normal Quest
IconName = "ico_nj.bmp", // Job Quest
IconName = "ico_gq.bmp", // Guide Quest

	[1238] = {
		Title = "Shop guide",
		IconName = "ico_nq.bmp",
		Description = {
			"The first quest. Experience about the use of shop. After buying one Red Potion, report to Leonie.",
		},
		Summary = "Talk to Leonie",
		NpcSpr = "4_M_THAIONGBAK",
		NpcNavi = "com_d02_i",
		NpcPosX = 241,
		NpcPosY = 255,
		RewardEXP = "4300000",
		RewardJEXP = "2800000",
		RewardItemList = {
		{
			ItemID = 501,
			ItemNum = 1
		}}
	},

 

Edited by WhiteEagle
  • Upvote 1
  • 1
Posted
22 minutes ago, MukkiesftKies said:

[70001] = {
		Title = "Welcome to Ragnarok Online!",
		NpcSpr = "4_F_01",
		Description = {
			"Spoke with Father Mareusis to become an Acolyte. He ordered you to visit ^000077Father Rubalkabara^000000, who has been Practicing Asceticism near the Relics, Northeast of Prontera City.",
			},
		RewardEXP = "1000",
		RewardJEXP = "1000",
		Summary = "Talk to Father Rubalkabara."

How to i add monster and reward list ?

i already try and try but nothing happen
x371DJB.jpg


function GetOngoingRewardInfo(questID)
	local reward = QuestInfoList[questID].RewardItemList
	if nil == reward then
		return
	end
	for k, v in pairs(QuestInfoList[questID].RewardItemList) do
		AddOngoingRewardInfo(questID, v.ItemID, v.ItemNum)
	end
end

from  data\luafiles514\lua files\datainfo\questinfo_f.lub

 

You can try this :
RewardEXP = "1000",
RewardJEXP = "1000",
RewardITEM = "512",

 

May I ask where you found the translated quest info?

  • 1
Posted

I think the correct one is, you should edit both Client and Server side. Doing so:

  • In client side, just update 
    System/OngoingQuestInfoList_Sakray.lub

    (You should decrypt with luadec into System/OngoingQuestInfoList_Sakray.lua

  • Then, use below format:
    -- Example Quest Info List --
    
    QuestList = {
    	[1] = {								-- This is the ID of the quest. Please remember/note it down.
    		Title = "Quest Title",			-- The quest title that shown on quest board.
    		Description = {					-- Quest description.
    			"Some long quest description",
    			"You can use ^FF0000Hex Color^000000,",
    			"An <URL>URL <INFO>https://google.com</INFO></URL>",
    			"A <NAVI>Navigation <INFO>WILOW,0,0,3,-222,0</INFO></NAVI>",
    			"Or an <ITEM>Item <INFO>501</INFO></ITEM> information"
    		},
    		Summary = "Some summary",		-- Summary,
    		-- Optional Properties
    		IconName = "ico_gq.bmp",		-- This is the quest icon displayed. It should reside on "data/texture/유저인터페이스/renew_questui/xxx.bmp" (Note for the file must be save with korean encoding)
    		NpcSpr = "4_F_KHELLISIA",		-- NPC Sprite name. Located at "data/sprite/npc/NPC_NAME" (Note: Input without .spr extension)
    		NpcNavi = "prontera",			-- Destination map name
    		NpcPosX = 115,					-- Destination npc X location
    		NpcPosY = 181,					-- Destination npc Y location
    		RewardItemList = {				-- Reward item list. You can have more items in it
    			-- First Item
    			{
    				ItemID = 501,			-- ItemID
    				ItemNum = 10				-- Item quantity
    			},
    			-- Second Item
    			{
    				ItemID = 502,			-- ItemID
    				ItemNum = 5				-- Item quantity
    			}
    			-- ...and so forth
    		},
    	}
    }

     

  • Next, you need to update your server side, by open and update these file:
    db/import/quest_db.yml

     

  • And add your quest inside it: (Note the quest ID you've saved before)
     

    ... add after "Header:"
    
    Body:
    	-	Id:2
        	Title: Quest Title # Same as the "OngoingQuestInfoList_Sakray.lua"
            # Optional, if you want to add some monster, define here. (Please read the documation in the first fold of this .yml)
            Targets:
            	-	Mob: PORING
                	Count: 5
    		
  • Finally, you can adjust your quest in your NPC script, like this:
    prontera,159,186,4	script	TestQuest	90,{
    	mes "Hello, this script just for testing quest";
    	next();
    	switch(select("Take quest", "Report Quest", "Bye")) {
    		case 1:
    			if (checkquest(2) == -1) {
    				setquest 2;
    				mes "Quest Taken";
    			} else {
    				mes "Sorry, but you already have the quest";
    			}
    			break;
    		case 2:
    			if (checkquest(2) == 0 || checkquest(2) == 1) {
    				mes "Well done!";
    				mes "This is the rewards";
    				getitem 501,10;
    				getitem 502,5;
    				erasequest 2;
    			} else if (checkquest(2) == 2) {
    				mes "Sorry, you've completed the quest";
    			} else if (checkquest(2) == -1) {
    				mes "It's look like you have not take the quest";
    			}
    			break;
    		case 3:
    			mes "Bye...";
    			break;
    	}
    	end;
    }

     

 

  • Last not least, don't forget to compile your lua file to lub using luac.

That's some tutorial for update/creating a custom quest. So, in summary, you only need 3 things to setup, which is:

  • Setup in client side -> Update OngoingQuestInfoList_Sakray.lub
  • Setup in server side -> Update db/import/quest_db.yml
  • Setup npc to trigger the quest

===

Screenshot - Without Monster

image.thumb.png.f3f30169b0edf9134e3b92b3f4109707.png

Screenshot - With Monster

image.thumb.png.31c9d6054a1bb09e7fa5b54f694a8637.png

===

Hope this help ?

  • Upvote 3
  • MVP 1
  • 0
Posted
12 hours ago, WhiteEagle said:

 

You can try this :
RewardEXP = "1000",
RewardJEXP = "1000",
RewardITEM = "512",

 

May I ask where you found the translated quest info?

same. nothing happen with RewardItem.

maybe like this

		RewardItemList = {

			},

i dont know how.

here translated quest

OngoingQuestInfoList.lub

  • 0
Posted
43 minutes ago, WhiteEagle said:

Here, that's the structure:
IconName = "ico_nq.bmp", // Normal Quest
IconName = "ico_nj.bmp", // Job Quest
IconName = "ico_gq.bmp", // Guide Quest


	[1238] = {
		Title = "Shop guide",
		IconName = "ico_nq.bmp",
		Description = {
			"The first quest. Experience about the use of shop. After buying one Red Potion, report to Leonie.",
		},
		Summary = "Talk to Leonie",
		NpcSpr = "4_M_THAIONGBAK",
		NpcNavi = "com_d02_i",
		NpcPosX = 241,
		NpcPosY = 255,
		RewardEXP = "4300000",
		RewardJEXP = "2800000",
		RewardItemList = {
		{
			ItemID = 501,
			ItemNum = 1
		}}
	},

 

work!  thank you.
but can be multi item ?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...