Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 06/27/24 in all areas

  1. Version 1.0.0

    245 downloads

    This mod made in map_drops.yml now allows you to add drops globally (without specifying a map), I also added a parameter where the added item can go directly to the player's inventory if there is space. Example of use ( db\import\map_drops.yml ) Header: Type: MAP_DROP_DB Version: 2 Body: - Map: ANY GlobalDrops: - Index: 0 Item: Union_Token Rate: 50000 DirectInventory: true - Index: 1 Item: Flower Rate: 100000 SpecificDrops: - Monster: Fabre Drops: - Index: 0 Item: White_Gold_Coin Rate: 50000 DirectInventory: true - Index: 1 Item: Izidor Rate: 50000 - Monster: Poring Drops: - Index: 0 Item: Crystal_Jewel__ Rate: 50000 Note 1: To be valid across all maps, set the map name to ANY. Note 2: The new parameter DirectInventory ( false | true ) allows the item to go directly to the inventory. Note 3: I created 2 new mapflags (nomapdrops and mapdrops), the first is self-explanatory (does not drop any items from map_drops ), the second will be effective for instances, as now map_drops does not drop items in instances, so just apply the second mapflag on the instance (in the instance maps) to make it work again. Example of use: OnInstanceInit: setmapflag instance_mapname("1@nyd"),mf_mapdrops; setmapflag instance_mapname("2@nyd"),mf_mapdrops; Next updates I will add a parameter to mapdrops.yml if you want the item to be dropped in instances too instead of having to use the mapdrops mapflag.
    Free
    2 points
  2. View File AnyMapDrops This mod made in map_drops.yml now allows you to add drops globally (without specifying a map), I also added a parameter where the added item can go directly to the player's inventory if there is space. Example of use ( db\import\map_drops.yml ) Header: Type: MAP_DROP_DB Version: 2 Body: - Map: ANY GlobalDrops: - Index: 0 Item: Union_Token Rate: 50000 DirectInventory: true - Index: 1 Item: Flower Rate: 100000 SpecificDrops: - Monster: Fabre Drops: - Index: 0 Item: White_Gold_Coin Rate: 50000 DirectInventory: true - Index: 1 Item: Izidor Rate: 50000 - Monster: Poring Drops: - Index: 0 Item: Crystal_Jewel__ Rate: 50000 Note 1: To be valid across all maps, set the map name to ANY. Note 2: The new parameter DirectInventory ( false | true ) allows the item to go directly to the inventory. Note 3: I created 2 new mapflags (nomapdrops and mapdrops), the first is self-explanatory (does not drop any items from map_drops ), the second will be effective for instances, as now map_drops does not drop items in instances, so just apply the second mapflag on the instance (in the instance maps) to make it work again. Example of use: OnInstanceInit: setmapflag instance_mapname("1@nyd"),mf_mapdrops; setmapflag instance_mapname("2@nyd"),mf_mapdrops; Next updates I will add a parameter to mapdrops.yml if you want the item to be dropped in instances too instead of having to use the mapdrops mapflag. Submitter Hyroshima Submitted 06/26/24 Category Source Modifications Video Content Author Hyroshima  
    1 point
  3. Any .exe need a permission to run as administrator when it actively modifying the system and requires permissions, or when a legacy application is not working correctly in a modern system because it needs compatibility adjustments.
    1 point
  4. 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 Screenshot - With Monster === Hope this help ?
    1 point
×
×
  • Create New...