L2JMobius

Interlude Quest Drop Rate

ZhanetL2 · 11 · 2313

Offline ZhanetL2

  • Heir
  • **
    • Posts: 23
Hello again everyone , today i have try to make quest drop rate 25 , and i have try to kill some mobs in hot springs but still drop 1 quest item ?
 Any idea what is the problem?

https://ibb.co/gFQxpyFJ


Online BazookaRpm

  • Count
  • *****
    • Posts: 444
  • Lineage II - lover - Heirophant
Which quest are you reviewing? You should also review the Java for the corresponding quest.

check this.
Atte BazooKa.RPM

Lineage II Lovers


Offline ZhanetL2

  • Heir
  • **
    • Posts: 23
Which quest are you reviewing? You should also review the Java for the corresponding quest.

check this.
The Finest Food , hot springs quest for TT recs


Online Naker

  • Count
  • *****
    • Posts: 450
  • Coding Dreams
Hello again everyone , today i have try to make quest drop rate 25 , and i have try to kill some mobs in hot springs but still drop 1 quest item ?
 Any idea what is the problem?

https://ibb.co/gFQxpyFJ
You are sure that is not the rate to get the item? I mean is rate not amount .
If is only for one quest change it on the script of the quest


Online BazookaRpm

  • Count
  • *****
    • Posts: 444
  • Lineage II - lover - Heirophant
check.

Code: [Select]
/*
 * This file is part of the L2J Mobius project.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */
package quests.Q00623_TheFinestFood;

import org.l2jmobius.gameserver.enums.QuestSound;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State;

public class Q00623_TheFinestFood extends Quest
{
// NPC
private static final int JEREMY = 31521;
// Monsters
private static final int FLAVA = 21316;
private static final int BUFFALO = 21315;
private static final int ANTELOPE = 21318;
// Items
private static final int LEAF_OF_FLAVA = 7199;
private static final int BUFFALO_MEAT = 7200;
private static final int ANTELOPE_HORN = 7201;

public Q00623_TheFinestFood()
{
super(623);
registerQuestItems(LEAF_OF_FLAVA, BUFFALO_MEAT, ANTELOPE_HORN);
addStartNpc(JEREMY);
addTalkId(JEREMY);
addKillId(FLAVA, BUFFALO, ANTELOPE);
}

[member=79]override[/member]
public String onEvent(String event, Npc npc, Player player)
{
String htmltext = event;
final QuestState st = getQuestState(player, false);
if (st == null)
{
return htmltext;
}

if (event.equals("31521-02.htm"))
{
if (player.getLevel() >= 71)
{
st.startQuest();
}
else
{
htmltext = "31521-03.htm";
}
}
else if (event.equals("31521-05.htm"))
{
takeItems(player, LEAF_OF_FLAVA, -1);
takeItems(player, BUFFALO_MEAT, -1);
takeItems(player, ANTELOPE_HORN, -1);

final int luck = getRandom(100);
if (luck < 11)
{
giveAdena(player, 25000, true);
giveItems(player, 6849, 1);
}
else if (luck < 23)
{
giveAdena(player, 65000, true);
giveItems(player, 6847, 1);
}
else if (luck < 33)
{
giveAdena(player, 25000, true);
giveItems(player, 6851, 1);
}
else
{
giveAdena(player, 73000, true);
addExpAndSp(player, 230000, 18250);
}

st.exitQuest(true, true);
}

return htmltext;
}

[member=79]override[/member]
public String onTalk(Npc npc, Player player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, true);

switch (st.getState())
{
case State.CREATED:
{
htmltext = "31521-01.htm";
break;
}
case State.STARTED:
{
final int cond = st.getCond();
if (cond == 1)
{
htmltext = "31521-06.htm";
}
else if (cond == 2)
{
if ((getQuestItemsCount(player, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(player, BUFFALO_MEAT) >= 100) && (getQuestItemsCount(player, ANTELOPE_HORN) >= 100))
{
htmltext = "31521-04.htm";
}
else
{
htmltext = "31521-07.htm";
}
}
break;
}
}

return htmltext;
}

[member=79]override[/member]
public String onKill(Npc npc, Player player, boolean isPet)
{
final QuestState qs = getRandomPartyMemberState(player, 1, 3, npc);
if (qs == null)
{
return null;
}
final Player partyMember = qs.getPlayer();

final QuestState st = getQuestState(partyMember, false);
if (st == null)
{
return null;
}

switch (npc.getId())
{
case FLAVA:
{
if (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) < 100)
{
giveItems(partyMember, LEAF_OF_FLAVA, 1);
if ((getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100) && (getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
case BUFFALO:
{
if (getQuestItemsCount(partyMember, BUFFALO_MEAT) < 100)
{
giveItems(partyMember, BUFFALO_MEAT, 1);
if ((getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100) && (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
case ANTELOPE:
{
if (getQuestItemsCount(partyMember, ANTELOPE_HORN) < 100)
{
giveItems(partyMember, ANTELOPE_HORN, 1);
if ((getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100) && (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
}

return null;
}
}


only chatgpt, u resolve u problem
Atte BazooKa.RPM

Lineage II Lovers


Offline ZhanetL2

  • Heir
  • **
    • Posts: 23
check.

Code: [Select]
/*
 * This file is part of the L2J Mobius project.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */
package quests.Q00623_TheFinestFood;

import org.l2jmobius.gameserver.enums.QuestSound;
import org.l2jmobius.gameserver.model.actor.Npc;
import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.quest.Quest;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.quest.State;

public class Q00623_TheFinestFood extends Quest
{
// NPC
private static final int JEREMY = 31521;
// Monsters
private static final int FLAVA = 21316;
private static final int BUFFALO = 21315;
private static final int ANTELOPE = 21318;
// Items
private static final int LEAF_OF_FLAVA = 7199;
private static final int BUFFALO_MEAT = 7200;
private static final int ANTELOPE_HORN = 7201;

public Q00623_TheFinestFood()
{
super(623);
registerQuestItems(LEAF_OF_FLAVA, BUFFALO_MEAT, ANTELOPE_HORN);
addStartNpc(JEREMY);
addTalkId(JEREMY);
addKillId(FLAVA, BUFFALO, ANTELOPE);
}

[member=79]override[/member]
public String onEvent(String event, Npc npc, Player player)
{
String htmltext = event;
final QuestState st = getQuestState(player, false);
if (st == null)
{
return htmltext;
}

if (event.equals("31521-02.htm"))
{
if (player.getLevel() >= 71)
{
st.startQuest();
}
else
{
htmltext = "31521-03.htm";
}
}
else if (event.equals("31521-05.htm"))
{
takeItems(player, LEAF_OF_FLAVA, -1);
takeItems(player, BUFFALO_MEAT, -1);
takeItems(player, ANTELOPE_HORN, -1);

final int luck = getRandom(100);
if (luck < 11)
{
giveAdena(player, 25000, true);
giveItems(player, 6849, 1);
}
else if (luck < 23)
{
giveAdena(player, 65000, true);
giveItems(player, 6847, 1);
}
else if (luck < 33)
{
giveAdena(player, 25000, true);
giveItems(player, 6851, 1);
}
else
{
giveAdena(player, 73000, true);
addExpAndSp(player, 230000, 18250);
}

st.exitQuest(true, true);
}

return htmltext;
}

[member=79]override[/member]
public String onTalk(Npc npc, Player player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, true);

switch (st.getState())
{
case State.CREATED:
{
htmltext = "31521-01.htm";
break;
}
case State.STARTED:
{
final int cond = st.getCond();
if (cond == 1)
{
htmltext = "31521-06.htm";
}
else if (cond == 2)
{
if ((getQuestItemsCount(player, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(player, BUFFALO_MEAT) >= 100) && (getQuestItemsCount(player, ANTELOPE_HORN) >= 100))
{
htmltext = "31521-04.htm";
}
else
{
htmltext = "31521-07.htm";
}
}
break;
}
}

return htmltext;
}

[member=79]override[/member]
public String onKill(Npc npc, Player player, boolean isPet)
{
final QuestState qs = getRandomPartyMemberState(player, 1, 3, npc);
if (qs == null)
{
return null;
}
final Player partyMember = qs.getPlayer();

final QuestState st = getQuestState(partyMember, false);
if (st == null)
{
return null;
}

switch (npc.getId())
{
case FLAVA:
{
if (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) < 100)
{
giveItems(partyMember, LEAF_OF_FLAVA, 1);
if ((getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100) && (getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
case BUFFALO:
{
if (getQuestItemsCount(partyMember, BUFFALO_MEAT) < 100)
{
giveItems(partyMember, BUFFALO_MEAT, 1);
if ((getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100) && (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
case ANTELOPE:
{
if (getQuestItemsCount(partyMember, ANTELOPE_HORN) < 100)
{
giveItems(partyMember, ANTELOPE_HORN, 1);
if ((getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100) && (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
}

return null;
}
}


only chatgpt, u resolve u problem


Yes bro but there in this file i don’t see where u can edit drop of quest item


Online CostyKiller

  • Distinguished King
  • *****
    • Posts: 1274
Try changing
Code: [Select]
giveItems to
Code: [Select]
rewardItems in the quest script.


Offline ZhanetL2

  • Heir
  • **
    • Posts: 23
Try changing
Code: [Select]
giveItems to
Code: [Select]
rewardItems in the quest script.
That it’’s when u complied the quest to give you 1x rec if i change reward id to 2/3-4 will givme  more recs ,,
 I need the  quest item drop not  quest reward drop


Online Naker

  • Count
  • *****
    • Posts: 450
  • Coding Dreams
That it’’s when u complied the quest to give you 1x rec if i change reward id to 2/3-4 will givme  more recs ,,
 I need the  quest item drop not  quest reward drop
Then change the amount of items on the method onkill….
Code: [Select]
public String onKill(Npc npc, Player player, boolean isPet)
{
final QuestState qs = getRandomPartyMemberState(player, 1, 3, npc);
if (qs == null)
{
return null;
}
final Player partyMember = qs.getPlayer();

final QuestState st = getQuestState(partyMember, false);
if (st == null)
{
return null;
}

switch (npc.getId())
{
case FLAVA:
{
if (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) < 100)
{
giveItems(partyMember, LEAF_OF_FLAVA, [color=red]1)[/color];
if ((getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100) && (getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
case BUFFALO:
{
if (getQuestItemsCount(partyMember, BUFFALO_MEAT) < 100)
{
giveItems(partyMember, BUFFALO_MEAT, [color=red]1)[/color];
if ((getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100) && (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
case ANTELOPE:
{
if (getQuestItemsCount(partyMember, ANTELOPE_HORN) < 100)
{
giveItems(partyMember, ANTELOPE_HORN,[color=red] 1[/color]);
if ((getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100) && (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
}
On red you have the number you need to change for whatever number you want
giveItems(partyMember, BUFFALO_MEAT, 1);
giveItems(partyMember, LEAF_OF_FLAVA, 1);
giveItems(partyMember, ANTELOPE_HORN, 1);


Online BazookaRpm

  • Count
  • *****
    • Posts: 444
  • Lineage II - lover - Heirophant
One tries to help, but does not do his part, check the java code, take it and paste it into chatgpt, tell him to explain how the quest works, how the quest item drop method and reward works, it did not cost much.
Atte BazooKa.RPM

Lineage II Lovers


Offline ZhanetL2

  • Heir
  • **
    • Posts: 23
Then change the amount of items on the method onkill….
Code: [Select]
public String onKill(Npc npc, Player player, boolean isPet)
{
final QuestState qs = getRandomPartyMemberState(player, 1, 3, npc);
if (qs == null)
{
return null;
}
final Player partyMember = qs.getPlayer();

final QuestState st = getQuestState(partyMember, false);
if (st == null)
{
return null;
}

switch (npc.getId())
{
case FLAVA:
{
if (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) < 100)
{
giveItems(partyMember, LEAF_OF_FLAVA, [color=red]1)[/color];
if ((getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100) && (getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
case BUFFALO:
{
if (getQuestItemsCount(partyMember, BUFFALO_MEAT) < 100)
{
giveItems(partyMember, BUFFALO_MEAT, [color=red]1)[/color];
if ((getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100) && (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
case ANTELOPE:
{
if (getQuestItemsCount(partyMember, ANTELOPE_HORN) < 100)
{
giveItems(partyMember, ANTELOPE_HORN,[color=red] 1[/color]);
if ((getQuestItemsCount(partyMember, ANTELOPE_HORN) >= 100) && (getQuestItemsCount(partyMember, LEAF_OF_FLAVA) >= 100) && (getQuestItemsCount(partyMember, BUFFALO_MEAT) >= 100))
{
st.setCond(2, true);
}
else
{
playSound(partyMember, QuestSound.ITEMSOUND_QUEST_ITEMGET);
}
}
break;
}
}
On red you have the number you need to change for whatever number you want
giveItems(partyMember, BUFFALO_MEAT, 1);
giveItems(partyMember, LEAF_OF_FLAVA, 1);
giveItems(partyMember, ANTELOPE_HORN, 1);
okey good man , thank you for your time. :P