Thread: [PI] Arrow\Bolt Dupe, Stackables Dupe [SS]

Page 1 of 2 12 LastLast
Results 1 to 10 of 12
  1. #1 [PI] Arrow\Bolt Dupe, Stackables Dupe [SS] 
    Registered Member Linksbro's Avatar
    Join Date
    Mar 2008
    Posts
    118
    Thanks given
    13
    Thanks received
    22
    Rep Power
    25
    First, I'm going to explain how to do the dupe. Then, we'll look at the source of the problem, and finally, I'll show you how to patch it.

    Purpose: Patch a dupe
    Difficulty: 0
    Assumed Knowledge: Complex 3d array manipulation and the javafx infrastructure
    Classes Modified: TradeAndDuel.java
    Tested On(if it applies): PI / SoulSplit

    Step 1. Performing the arrow\bolt dupe.
    The goal here is to try to get two stacks of a arrow or bolt or stackable item. This is best done by storing 1 of the arrow in the bank, equipping the rest, and then taking the 1 arrow out of the bank, then equipping another type or arrow or un-equipping the arrow. This should yield two stacks of arrows in most PI servers with this unpatched. Next, trade someone, offer x on the 1 arrow, and type in the amount of the other arrow. Then decline. This ends up doubling arrows, leading to massive arrow \ bolt numbers.

    Step 2. Why?
    PI is shit.

    Step 3. Patching the problem.
    (Note, I'm not actually patching the source of the problem, that is the two stacks occuring. I'm just adding a nice check in a method to see if you're doing shit right)
    Open up TradeAndDuel.java and add this in your tradeItem method.

    Code:
    if(!((c.playerItems[fromSlot] == itemID+1) && (c.playerItemsN[fromSlot] >= amount)))
    {
    	c.sendMessage("You don't have that amount!");
    	return false;
    }
    This stops any attempt of "Trade X"'ing over the item number.

    Note: What's hilarious is that the fromSlot int is passed to the method and it isn't even used right once. Fucking idiots.

    The source of this problem is bad coding. I'm looking at you, developers.

    Poor man's fix: Add bolt and arrow ids to stackable array.
    Reply With Quote  
     

  2. Thankful user:


  3. #2  
    Registered Member
    Join Date
    Jun 2010
    Age
    29
    Posts
    891
    Thanks given
    22
    Thanks received
    47
    Rep Power
    0
    more like a snippet, isn't it?
    hi
    Reply With Quote  
     

  4. #3  
    Registered Member
    Tyluur's Avatar
    Join Date
    Jun 2010
    Age
    26
    Posts
    5,103
    Thanks given
    1,818
    Thanks received
    1,767
    Rep Power
    2438
    Let me test this.
    Quote Originally Posted by blakeman8192 View Post
    Keep trying. Quitting is the only true failure.
    Spoiler for skrrrrr:

    Attached image
    Reply With Quote  
     

  5. #4  
    Registered Member
    Join Date
    Jan 2011
    Posts
    48
    Thanks given
    0
    Thanks received
    0
    Rep Power
    1
    verry nice dupefix,
    i added and it worked

    thx
    Owner Of PrivateScape V3.00
    E-Mail: [email protected]
    Private Scape Webclient !!
    Reply With Quote  
     

  6. #5  
    Community Veteran

    Dexter Morgan's Avatar
    Join Date
    Nov 2008
    Age
    28
    Posts
    4,419
    Thanks given
    1,184
    Thanks received
    757
    Rep Power
    3098
    So why not just make it
    Code:
    		if(!((c.playerItems[fromSlot] == itemID+1) && (c.playerItemsN[fromSlot] >= amount))) {
    			amount = c.getItems().getItemAmount(itemID);
    		}
    ?
    Reply With Quote  
     

  7. #6  
    Registered Member
    Join Date
    Jan 2011
    Posts
    719
    Thanks given
    156
    Thanks received
    91
    Rep Power
    32
    Thanks for this dupe fix lol, kinda forgot about this 1
    Reply With Quote  
     

  8. #7  
    Rune-Server Affiliate
    Genesis's Avatar
    Join Date
    Sep 2010
    Posts
    4,149
    Thanks given
    1,508
    Thanks received
    1,980
    Rep Power
    4944
    Thanks for the fix.
    Reply With Quote  
     

  9. #8  
    Registered Member Linksbro's Avatar
    Join Date
    Mar 2008
    Posts
    118
    Thanks given
    13
    Thanks received
    22
    Rep Power
    25
    Quote Originally Posted by Dagenham View Post
    So why not just make it
    Code:
    		if(!((c.playerItems[fromSlot] == itemID+1) && (c.playerItemsN[fromSlot] >= amount))) {
    			amount = c.getItems().getItemAmount(itemID);
    		}
    ?
    The dupe revolves around obtaining two stacks of stackable items. Because you are ignoring fromSlot, this will still allow the dupe to work. If you wanted to do it this way, you would use
    Code:
    amount = c.playerItemsN[fromSlot];
    Reply With Quote  
     

  10. #9  
    Registered Member
    Join Date
    Sep 2009
    Posts
    388
    Thanks given
    20
    Thanks received
    21
    Rep Power
    18
    Nice find bro
    Reply With Quote  
     

  11. #10  
    Banned

    Join Date
    Nov 2009
    Posts
    1,800
    Thanks given
    7
    Thanks received
    18
    Rep Power
    0
    Quote Originally Posted by linksbro View Post
    assumed knowledge: Complex 3d array manipulation and the javafx infrastructure
    Even with my prior knowledge of this I found this tutorial a struggle, think you could make it easier to follow?
    Reply With Quote  
     

Page 1 of 2 12 LastLast

Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Similar Threads

  1. [PI] Arrow Dupe Fix
    By itz fannypak in forum Snippets
    Replies: 24
    Last Post: 10-13-2013, 02:23 PM
  2. PI arrow dupe please?
    By jake3393 in forum Help
    Replies: 3
    Last Post: 11-12-2010, 02:25 AM
  3. [PI] Arrow dupe fix
    By PI Tutorials in forum Tutorials
    Replies: 15
    Last Post: 08-16-2010, 06:58 PM
  4. Arrow Dupe
    By Goro in forum Help
    Replies: 31
    Last Post: 08-10-2010, 09:35 PM
  5. PI arrow dupe fix
    By Arithium in forum Help
    Replies: 8
    Last Post: 08-06-2010, 10:57 PM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •