[Help] Apply Patches Question

Have you created a useful tool? or Do you want to get help building one? This is the right place!
Forum rules
READ NOW: L2j Forums Rules of Conduct
Post Reply
Jcof1988
Posts: 19
Joined: Tue Aug 07, 2012 1:52 am

[Help] Apply Patches Question

Post by Jcof1988 »

If you want to receive support we need this info to help you properly.
» Find Revision
L2J Revision 5565M:
L2JDP Revision [b9070[/b]:

Ok so i looked at this guide: http://www.l2jserver.com/wiki/How_to_Apply_a_Patch

But i had a few questions When i get a patch that dont have any (-) or (+) it cant be added manualy right ? And i have to save this patch in my workspace l2jserver.gameserver.datatables/PvPRewardsTable.java ?

Code: Select all

package com.l2jserver.gameserver.datatables; import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.Map; import javolution.util.FastMap; import com.l2jserver.L2DatabaseFactory;import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;import com.l2jserver.util.Rnd;  /** * @author hNoke * */public class PvPRewardsTable{    private Map<Integer, PvPRewardItem> _rewards;     public static PvPRewardsTable getInstance()    {        return SingletonHolder._instance;    }        public PvPRewardsTable()    {        load();    }        public void rewardLastHit(L2PcInstance winner, L2PcInstance target)    {        int random = Rnd.get(100000);        int am-beep-t;                for(Map.Entry<Integer, PvPRewardItem> item : _rewards.entrySet())        {            if(item.getKey() < random)            {                am-beep-t = item.getValue().getAm-beep-t(winner);                                if(am-beep-t > 0)                    winner.addItem("PvPReward", item.getValue().id, am-beep-t, null, true);            }        }    }     public class PvPRewardItem    {        public int id;        public int minAm-beep-t;        public int maxAm-beep-t;        public int chance;        public int pvpRequired;        public int levelRequired;                public PvPRewardItem(int id, int minAm-beep-t, int maxAm-beep-t, int chance, int pvpRequired, int levelRequired)        {            this.id = id;            this.minAm-beep-t = minAm-beep-t;            this.maxAm-beep-t = maxAm-beep-t;            this.chance = chance;            this.pvpRequired = pvpRequired;            this.levelRequired = levelRequired;        }                public int getAm-beep-t(L2PcInstance player)        {            if(player.getLevel() >= levelRequired && player.getPvpKills() >= pvpRequired)                return Rnd.get(minAm-beep-t, maxAm-beep-t);            else                return 0;        }    }     private void load()    {        _rewards = new FastMap<Integer, PvPRewardItem>();                Connection con = null;        try        {            con = L2DatabaseFactory.getInstance().getConnection();            PreparedStatement statement = con.prepareStatement("SELECT * FROM pvp_rewards");            ResultSet rset = statement.executeQuery();                        while (rset.next())            {                _rewards.put(rset.getInt("chance"), new PvPRewardItem(rset.getInt("id"), rset.getInt("minAm-beep-t"), rset.getInt("maxAm-beep-t"), rset.getInt("chance"), rset.getInt("pvpRequired"), rset.getInt("levelRequired")));            }                        rset.close();            statement.close();        }         catch (SQLException e)        {            e.printStackTrace();        }         finally        {            try            {                con.close();            }             catch (Exception e)            {            }        }    }        @SuppressWarnings("synthetic-access")    private static class SingletonHolder    {        protected static final PvPRewardsTable _instance = new PvPRewardsTable();    }} 
Also another question about Diff Files: i know that guide says:
@@ -99,7 +99,9 @@ = These are the lines above the edit. Whats that mean,

and do i replace the --- java/com/l2jserver/gameserver/GameServer.java (revision 4402)
with the +++ java/com/l2jserver/gameserver/GameServer.java (working copy)
and put my rev in where it says "Working Copy"

Code: Select all

### Eclipse Workspace Patch 1.0#P L2j_hNoke_COREIndex: java/com/l2jserver/gameserver/GameServer.java===================================================================--- java/com/l2jserver/gameserver/GameServer.java   (revision 4402)+++ java/com/l2jserver/gameserver/GameServer.java   (working copy)@@ -38,7 +38,9 @@ import com.l2jserver.gameserver.datatables.AdminCommandAccessRights; import com.l2jserver.gameserver.datatables.ArmorSetsTable; import com.l2jserver.gameserver.datatables.AugmentationData; import com.l2jserver.gameserver.datatables.CharNameTable; import com.l2jserver.gameserver.datatables.CharTemplateTable; import com.l2jserver.gameserver.datatables.ClanTable; import com.l2jserver.gameserver.datatables.DoorTable;@@ -61,9 +63,11 @@ import com.l2jserver.gameserver.datatables.NpcBufferTable; import com.l2jserver.gameserver.datatables.NpcTable; import com.l2jserver.gameserver.datatables.NpcWalkerRoutesTable; import com.l2jserver.gameserver.datatables.OfflineTradersTable; import com.l2jserver.gameserver.datatables.PetDataTable; import com.l2jserver.gameserver.datatables.PetSkillsTable;+import com.l2jserver.gameserver.datatables.PvPRewardsTable; import com.l2jserver.gameserver.datatables.ResidentialSkillTable; import com.l2jserver.gameserver.datatables.SkillSpellbookTable; import com.l2jserver.gameserver.datatables.SkillTable;@@ -84,11 +88,14 @@ import com.l2jserver.gameserver.instancemanager.AirShipManager; import com.l2jserver.gameserver.instancemanager.AuctionManager; import com.l2jserver.gameserver.instancemanager.BoatManager; import com.l2jserver.gameserver.instancemanager.CastleManager; import com.l2jserver.gameserver.instancemanager.CastleManorManager; import com.l2jserver.gameserver.instancemanager.ClanHallManager; import com.l2jserver.gameserver.instancemanager.CoupleManager; import com.l2jserver.gameserver.instancemanager.CursedWeaponsManager; import com.l2jserver.gameserver.instancemanager.DayNightSpawnManager; import com.l2jserver.gameserver.instancemanager.DimensionalRiftManager; import com.l2jserver.gameserver.instancemanager.FortManager;@@ -115,8 +122,10 @@ import com.l2jserver.gameserver.model.L2World; import com.l2jserver.gameserver.model.PartyMatchRoomList; import com.l2jserver.gameserver.model.PartyMatchWaitingList; import com.l2jserver.gameserver.model.entity.Hero; import com.l2jserver.gameserver.model.entity.TvTManager; import com.l2jserver.gameserver.model.olympiad.Olympiad; import com.l2jserver.gameserver.network.L2GameClient; import com.l2jserver.gameserver.network.L2GamePacketHandler;@@ -205,6 +214,7 @@        L2World.getInstance();        MapRegionTable.getInstance();        Announcements.getInstance();                printSection("Skills");        EnchantGroupsTable.getInstance();@@ -251,6 +261,7 @@            PathFinding.getInstance();                printSection("NPCs");        NpcTable.getInstance();        NpcWalkerRoutesTable.getInstance();        ZoneManager.getInstance();@@ -400,6 +411,16 @@            _log.log(Level.WARNING, "DynamicExtension could not be loaded and initialized", ex);        }         +       PvPRewardsTable.getInstance();+               TvTManager.getInstance();        KnownListUpdateTaskManager.getInstance();                Index: java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java===================================================================--- java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java    (revision 4402)+++ java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java    (working copy)@@ -21,6 +21,8 @@     /**     * Increase the pvp kills count and send the info to the player@@ -5817,17 +6077,175 @@     */            // Add karma to attacker and increase its PK counter            setPvpKills(getPvpKills() + 1); +           PvPRewardsTable.getInstance().rewardLastHit(this, (L2PcInstance)target);             // Send a Server->Client UserInfo packet to attacker with its Karma and PK Counter            sendPacket(new UserInfo(this));            sendPacket(new ExBrExtraUserInfo(this));        }    } }          
Thanks for any help guys, i am new and want to try to learn this stuff Thanks Again :D
User avatar
jurchiks
Posts: 6769
Joined: Sat Sep 19, 2009 4:16 pm
Location: Eastern Europe

Re: [Help] Apply Patches Question

Post by jurchiks »

Code: Select all

Index: java/com/l2jserver/gameserver/GameServer.java===================================================================--- java/com/l2jserver/gameserver/GameServer.java   (revision 4402)+++ java/com/l2jserver/gameserver/GameServer.java   (working copy)
All of this simply means the patch changes file java/com/l2jserver/gameserver/GameServer.java. Nothing more, nothing less. (revision 4402) means that the patch was made against that revision of the file, so if your local file is of different revision, the patch might not apply correctly.

Code: Select all

@@ -38,7 +38,9 @@
Starting at line 38, 7 lines were removed and 9 were added.
If you have problems, FIRST TRY SOLVING THEM YOURSELF, and if you get errors, TRY TO ANALYZE THEM, and ONLY if you can't help it, THEN ask here.
Otherwise you will never learn anything if all you do is copy-paste!
Discussion breeds innovation.
Jcof1988
Posts: 19
Joined: Tue Aug 07, 2012 1:52 am

Re: [Help] Apply Patches Question

Post by Jcof1988 »

ok so heres what i got so far lol, i am trying to apply this patch i go to team>Apply Patch then i get this: what does the red x mean, and i cant click next, if i click finish will it apply my patch...or do i have to do this manuly, Thanks again guys

Image
User avatar
jurchiks
Posts: 6769
Joined: Sat Sep 19, 2009 4:16 pm
Location: Eastern Europe

Re: [Help] Apply Patches Question

Post by jurchiks »

It means the file has been changed since the patch was made and the patch cannot be applied automatically anymore. You'll have to apply it manually. Just do a search for the lines deleted by the patch.
If you have problems, FIRST TRY SOLVING THEM YOURSELF, and if you get errors, TRY TO ANALYZE THEM, and ONLY if you can't help it, THEN ask here.
Otherwise you will never learn anything if all you do is copy-paste!
Discussion breeds innovation.
User avatar
Zoey76
L2j Inner Circle
L2j Inner Circle
Posts: 7005
Joined: Tue Aug 11, 2009 3:36 am

Re: [Help] Apply Patches Question

Post by Zoey76 »

Powered by Eclipse 4.30 🌌 | Eclipse Temurin 21 ☕ | MariaDB 11.3.2 🗃️ | L2J Server 2.6.3.0 - High Five 🚀

🔗 Join our Discord! 🎮💬
Jcof1988
Posts: 19
Joined: Tue Aug 07, 2012 1:52 am

Re: [Help] Apply Patches Question

Post by Jcof1988 »

I have finaly figured out how to apply patches thanks all, I just had one more question i am using eclipse to compile my server, and i have not updated it sence last month, i have added alot of patches and i want to update the server and datapack to the latest version, How can i do this without erasing all my patches, if i update will it overwrite the files that i edited in eclipse...Thanks
User avatar
jurchiks
Posts: 6769
Joined: Sat Sep 19, 2009 4:16 pm
Location: Eastern Europe

Re: [Help] Apply Patches Question

Post by jurchiks »

http://www.l2jserver.com/wiki/Synchronization
I'm updating it a bit now, will probably put in some pictures too, for noobs.
If you have problems, FIRST TRY SOLVING THEM YOURSELF, and if you get errors, TRY TO ANALYZE THEM, and ONLY if you can't help it, THEN ask here.
Otherwise you will never learn anything if all you do is copy-paste!
Discussion breeds innovation.
Post Reply