Jump to content

Vote Buff .rewardme Command


Recommended Posts

Guest Elfocrash
Posted

Hello guys!

 

I see all the servers around have a vote reward system which actually rewards you with items, usually vote coins, in order to get items like gear,

scrolls and others.

By adding this code you give the opportunity to the players get rewarded with a buff you select by giving some of the vote items

Everything is configurable.

The command is .rewardme

Nothing hard to be coded,just an idea a guy gave me and i though it was cool.

 

Code:

### Eclipse Workspace Patch 1.0
#P PewPew
Index: gameserver/config/functions/l2jfrozen.properties
===================================================================
--- gameserver/config/functions/l2jfrozen.properties	(revision 930)
+++ gameserver/config/functions/l2jfrozen.properties	(working copy)
@@ -280,4 +280,23 @@
ProtectorSkillLevel = 13
ProtectorSkillTime = 600
# Npc Protector Message
-ProtectorMessage = Hey You!, Never Kill On This Area, Go Read The Rules!
\ No newline at end of file
+ProtectorMessage = Hey You!, Never Kill On This Area, Go Read The Rules!
+
+# -----------------------------------------
+# Vote Buff Config  -
+# -----------------------------------------
+# By enabling this you will give the players the opportunity
+# to get rewarded with a buff that you will choose
+VoteBuffCmdEnabled = True
+# Set the item that you reward the players by their votes
+# Default 3470 - Gold Bar
+VoteItemId = 3470
+# Set the a-beep-t needed and will be consumed in order to get the buff
+VoteItemRequired = 5
+# Set the name of the item 
+VoteItemName = Gold Bar
+# Set the Buff ID that you want to reward the players with
+# Default Active : Might
+VoteBuffId = 3132
+# Set the level of the buff
+VoteBuffLevel = 10
Index: gameserver/head-src/com/l2jfrozen/gameserver/handler/VoicedCommandHandler.java
===================================================================
--- gameserver/head-src/com/l2jfrozen/gameserver/handler/VoicedCommandHandler.java	(revision 930)
+++ gameserver/head-src/com/l2jfrozen/gameserver/handler/VoicedCommandHandler.java	(working copy)
@@ -35,6 +35,7 @@
import com.l2jfrozen.gameserver.handler.voicedcommandhandlers.TvTCmd;
import com.l2jfrozen.gameserver.handler.voicedcommandhandlers.VersionCmd;
import com.l2jfrozen.gameserver.handler.voicedcommandhandlers.Voting;
+import com.l2jfrozen.gameserver.handler.voicedcommandhandlers.VoteRewardMe;
import com.l2jfrozen.gameserver.handler.voicedcommandhandlers.Wedding;

/**
@@ -66,6 +67,11 @@

		registerVoicedCommandHandler( new Voting());

+		if(Config.VOTE_BUFF_ENABLED)
+		{
+		registerVoicedCommandHandler( new VoteRewardMe());
+		}
+		
		if(Config.BANKING_SYSTEM_ENABLED)
		{
			registerVoicedCommandHandler(new BankingCmd());
Index: gameserver/head-src/com/l2jfrozen/Config.java
===================================================================
--- gameserver/head-src/com/l2jfrozen/Config.java	(revision 930)
+++ gameserver/head-src/com/l2jfrozen/Config.java	(working copy)
@@ -2378,6 +2378,12 @@
	public static String FARM2_CUSTOM_MESSAGE;
	public static String PVP1_CUSTOM_MESSAGE;
	public static String PVP2_CUSTOM_MESSAGE;
+	public static int VOTE_ITEM_ID;
+	public static int VOTE_ITEM_A-beep-T;
+	public static int VOTE_BUFF_ID;
+	public static int VOTE_BUFF_LVL;
+	public static boolean VOTE_BUFF_ENABLED;
+	public static String VOTE_ITEM_NAME;

	//============================================================
	public static void loadL2JFrozenConfig()
@@ -2497,6 +2503,14 @@
			FARM2_CUSTOM_MESSAGE = L2JFrozenSettings.getProperty("Farm2CustomMeesage", "You have been teleported to Farm Zone 2!");
			PVP1_CUSTOM_MESSAGE = L2JFrozenSettings.getProperty("PvP1CustomMeesage", "You have been teleported to PvP Zone 1!");
			PVP2_CUSTOM_MESSAGE = L2JFrozenSettings.getProperty("PvP2CustomMeesage", "You have been teleported to PvP Zone 2!");
+			
+			//Vote Buff Config
+			VOTE_BUFF_ENABLED = Boolean.parseBoolean(L2JFrozenSettings.getProperty("VoteBuffCmdEnabled", "false"));
+			VOTE_ITEM_ID = Integer.parseInt(L2JFrozenSettings.getProperty("VoteItemId", "3470"));
+			VOTE_ITEM_A-beep-T = Integer.parseInt(L2JFrozenSettings.getProperty("VoteItemRequired", "5"));
+			VOTE_BUFF_ID = Integer.parseInt(L2JFrozenSettings.getProperty("VoteBuffId", "3132"));
+			VOTE_BUFF_LVL = Integer.parseInt(L2JFrozenSettings.getProperty("VoteBuffLevel", "10"));
+			VOTE_ITEM_NAME = L2JFrozenSettings.getProperty("VoteItemName", "Vote Item");
		}
		catch(Exception e)
		{
Index: gameserver/head-src/com/l2jfrozen/gameserver/handler/voicedcommandhandlers/VoteRewardMe.java
===================================================================
--- gameserver/head-src/com/l2jfrozen/gameserver/handler/voicedcommandhandlers/VoteRewardMe.java	(revision 0)
+++ gameserver/head-src/com/l2jfrozen/gameserver/handler/voicedcommandhandlers/VoteRewardMe.java	(revision 0)
@@ -0,0 +1,70 @@
+/*
+ * 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 com.l2jfrozen.gameserver.handler.voicedcommandhandlers;
+
+import com.l2jfrozen.Config;
+import com.l2jfrozen.gameserver.handler.IVoicedCommandHandler;
+import com.l2jfrozen.gameserver.model.L2Effect;
+import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jfrozen.gameserver.model.PcInventory;
+import com.l2jfrozen.gameserver.model.Inventory;
+import com.l2jfrozen.gameserver.network.serverpackets.MagicSkillUser;
+import com.l2jfrozen.gameserver.datatables.SkillTable;
+
+
+/**
+ * @author Elfocrash
+ */
+
+public class VoteRewardMe implements IVoicedCommandHandler
+{
+	private static final String[] VOICED_COMMANDS =
+	{
+			"rewardme"
+	};
+
+	
+	@Override
+	public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)
+	{
+
+			if(activeChar.isInOlympiadMode() || activeChar.getOlympiadGameId() != -1)
+			{
+				activeChar.sendMessage("You can't use that command inside Olympiad");
+				return false;
+			}
+
+			if(activeChar.getInventory().getItemByItemId(Config.VOTE_ITEM_ID).getCount() >= Config.VOTE_ITEM_A-beep-T)
+			{
+				activeChar.getInventory().destroyItemByItemId("Consume", Config.VOTE_ITEM_ID, Config.VOTE_ITEM_A-beep-T, activeChar, null);
+				activeChar.sendMessage(Config.VOTE_ITEM_A-beep-T + " " + Config.VOTE_ITEM_NAME + "(s) have been consumed.");
+				MagicSkillUser mgc = new MagicSkillUser(activeChar, activeChar, Config.VOTE_BUFF_ID, Config.VOTE_BUFF_LVL, 1, 0);
+				SkillTable.getInstance().getInfo(Config.VOTE_BUFF_ID, Config.VOTE_BUFF_LVL).getEffects(activeChar,activeChar);
+				activeChar.broadcastPacket(mgc);
+				activeChar.sendMessage("You have been blessed with the effects of the Vote Buff!");	
+			}
+			else
+			{			
+				activeChar.sendMessage("You don't have enough " + Config.VOTE_ITEM_NAME + "(s) in order to get rewarded!");
+			}
+			return true;	
+	}
+
+	@Override
+	public String[] getVoicedCommandList()
+	{
+		return VOICED_COMMANDS;
+	}
+}

Video Preview:

 

Coded in l2jfrozen last rev.

 

PS: The -beep- in the code is actually the work {AMO UNT} without the space.Stupid smf

Posted

Nice work.Btw it could be more advanced by selecting what buff to give in every class.GJ

Guest Elfocrash
Posted

Nice work.Btw it could be more advanced by selecting what buff to give in every class.GJ

actually you have to make a custom buff that gives a variety of stats for all classes but your idea is good.It is easy to be made.

Thanks guys

Guest Elfocrash
Posted

oo good man , have for Hi5 ?

just adapt it.i think this will work just but adding the correct imports and correcting the config stuff

Posted

-beep-ing awsome work!!

Just one litle Question I want to reward agg skills but if someone use 2 skills the one doesnt stay and i can have only 1 How can i change that to more than 1?

Posted

+# Set the name of the item

+VoteItemName = Gold Bar

 

This isn't actually needed, you can skip that. Do it like this:

activeChar.sendMessage("You don't have enough " +  ItemTable.getInstance().getTemplate(Config.VOTE_ITEM_ID).getName() + "(s) in order to get rewarded!");

 

The code isn't bad and it's clean too, but just saying how to make it more simple ;) Friendly always.

 

Thanks, gj.

Guest Elfocrash
Posted

+# Set the name of the item

+VoteItemName = Gold Bar

 

This isn't actually needed, you can skip that. Do it like this:

activeChar.sendMessage("You don't have enough " +  ItemTable.getInstance().getTemplate(Config.VOTE_ITEM_ID).getName() + "(s) in order to get rewarded!");

 

The code isn't bad and it's clean too, but just saying how to make it more simple ;) Friendly always.

 

Thanks, gj.

Yeah i know that it isn't needed.I just wanted to give the opportunity to users type something else :P

Thank you

Posted

-beep-ing awsome work!!

Just one litle Question I want to reward agg skills but if someone use 2 skills the one doesnt stay and i can have only 1 How can i change that to more than 1?

Any answer on My Question?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



  • Posts

    • Have a good start with your sales! @NoemoN
    • Hello gamers. Let’s start with something simple that everyone can understand: MARKETING = THE KEY TO SUCCESS 🔑 Ever watched a PvP or clan promo and thought “damn, that looks clean”? I can help you make your videos look just like that. 💻 I offer professional video editing & montage services made specifically for gamers, private server owners, and Lineage 2 content creators — or for any game you’re passionate about. 🎮 Perfect for: PvP / Mass PvP highlights Clan recruitment or promo videos YouTube / TikTok / Instagram clips Funny or cinematic edits 🧠 Why me: Experienced with gaming content & timing (no random effect spam) Clean transitions, music sync, subtitles, dynamic cuts, 3D text Fast delivery & affordable prices Over 350+ hours of professional editing for YouTube creators Skilled with Adobe Premiere Pro, After Effects, Photoshop, plugins & AI tools Our montage services are new to this community, but as passionate gamers ourselves, we know exactly the do’s and don’ts of creating content that hits. You can check out our showcase & recent projects on Discord. Our marketing/montage services isn't the only thing we offer, feel free to check out more in our hub:  👉https://discord.gg/9CS24dUZ Whether you want a short TikTok, a YouTube montage, or a full cinematic video — we got you. 💬 DM me here or join the Discord to talk details! Thank you for your time.
    • 亲爱的朋友们! 我们非常高兴地与您分享来自 SocNet 团队的两条好消息! 1. 我们的 SMM 面板更新啦! 我们已全面审查并更新了可用服务列表 —— 现在面板中仅包含最相关、最稳定且真正有效的解决方案。 强烈推荐您立即体验全新升级的服务! ➡ 针对新客户的特别优惠:创建一个支持工单,主题填写 “Get Trial Balance”,即可获得 $1 余额,用于测试我们的任何 SMM 面板服务。 2. 我们的 Telegram Stars 机器人重大更新! 经过大量改进工作,我们很高兴向您展示全新版本的 SocNet Telegram Stars Bot,这是我们在过去一个月中精心开发的成果: ➡ 新增支持通过俄罗斯银行卡支付,并具备自动支付验证功能。 ➡ 实现自动汇率调整 —— 价格始终保持市场最低,包括 Split。 ➡ 新增独特的“礼物老虎机”游戏,每个人都有机会公平赢取丰厚奖品:Telegram Stars、Premium、高价值礼物、SOCNET.STORE 余额以及来自我们合作伙伴的更多惊喜。 感谢您一直以来的支持!✨ 加入我们 —— 每周我们都会在 Telegram 频道举办 Telegram Stars 和其他奖品的抽奖活动! SOCNET 商店有效链接: 数字商品商店(网站):前往 商店 Telegram 机器人:前往 – 通过 Telegram 消息应用轻松访问商店。 Telegram Stars 购买机器人:前往 – 快速、便捷地购买 Telegram Stars。 SMM 面板:前往 – 推广您的社交媒体账户。 我们为您准备了当前平台的优惠与特别活动清单: 1. 优惠码 OCTOBER2025(8% 折扣)—— 在九月期间于我们的商店(网站或机器人)购物时使用! 您还可以使用首次购买优惠码 SOCNET(15% 折扣)。 2. 获得 $1 商店余额或 10–20% 折扣 —— 只需在网站注册后,按照以下格式发布您的用户名:“SEND ME BONUS, MY USERNAME IS...” —— 在我们的论坛帖子中留言即可! 3. 获得 $1 SMM 面板首次试用余额 —— 只需在网站(支持中心)创建主题为 “Get Trial Bonus” 的工单。 4. 每周在我们的 Telegram 频道以及 Telegram Stars 购买机器人中都会举行 Telegram Stars 抽奖活动! 新闻动态: ➡ Telegram 频道:https://t.me/accsforyou_shop ➡ WhatsApp 频道:https://chat.whatsapp.com/K8rBy500nA73z27PxgaJUw?mode=ems_copy_t ➡ Discord 服务器:https://discord.gg/y9AStFFsrh 联系方式与支持: ➡ Telegram:https://t.me/socnet_support ➡ WhatsApp:https://wa.me/79051904467 ➡ Discord:socnet_support ➡ ✉ 邮箱:solomonbog@socnet.store
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock