Thread: Searching client for PI-Netty Framework

Results 1 to 8 of 8
  1. #1 Searching client for PI-Netty Framework 
    Registered Member Zond's Avatar
    Join Date
    Feb 2011
    Age
    29
    Posts
    434
    Thanks given
    85
    Thanks received
    6
    Rep Power
    4
    Got this: http://www.rune-server.org/runescape...pes-fixed.html
    Took this client: http://www.rune-server.org/runescape...ore-fixes.html
    But using this client I can't hit npc (npc can hit me).
    Is this problem server sided? If not, what client should I use?
    Learning
    Reply With Quote  
     

  2. #2  
    Banned

    Join Date
    Aug 2007
    Posts
    4,130
    Thanks given
    0
    Thanks received
    64
    Rep Power
    0
    change the npc bits to 14

    and tell me if you get any problems
    Reply With Quote  
     

  3. #3  
    Registered Member Zond's Avatar
    Join Date
    Feb 2011
    Age
    29
    Posts
    434
    Thanks given
    85
    Thanks received
    6
    Rep Power
    4
    Quote Originally Posted by word View Post
    change the npc bits to 14

    and tell me if you get any problems
    Checked server and client sided like this - http://www.rune-server.org/runescape...ml#post2396454 (there is reference to server sided part) both client and server is already 14 bits.
    Learning
    Reply With Quote  
     

  4. #4  
    Respected Member

    Revil's Avatar
    Join Date
    Nov 2010
    Age
    30
    Posts
    4,860
    Thanks given
    3,715
    Thanks received
    2,228
    Rep Power
    5000
    Quote Originally Posted by Senpai View Post
    Spoiler for Bug Fixes:


    Forgot to re-add attacking NPCs so replace process in Client class with:
    Code:
    public void process() {
    		if(followId > 0) {
    			getPA().followPlayer();
    		} else if (followId2 > 0) {
    			getPA().followNpc();
    		}
    
    		if (System.currentTimeMillis() - lastPoison > 20000 && poisonDamage > 0) {
    			int damage = poisonDamage/2;
    			if (damage > 0) {
    				sendMessage("The poison damages you");
    				if (!getHitUpdateRequired()) {
    					setHitUpdateRequired(true);
    					setHitDiff(damage);
    					updateRequired = true;
    					poisonMask = 1;
    				} else if (!getHitUpdateRequired2()) {
    					setHitUpdateRequired2(true);
    					setHitDiff2(damage);
    					updateRequired = true;
    					poisonMask = 2;
    				}
    				lastPoison = System.currentTimeMillis();
    				poisonDamage--;
    				dealDamage(damage);
    			} else {
    				poisonDamage = -1;
    				sendMessage("You are no longer poisoned.");
    			}	
    		}
    
    		if(System.currentTimeMillis() - specDelay > Config.INCREASE_SPECIAL_AMOUNT) {
    			specDelay = System.currentTimeMillis();
    			if(specAmount < 10) {
    				specAmount += .5;
    				if (specAmount > 10)
    					specAmount = 10;
    				getItems().addSpecialBar(playerEquipment[playerWeapon]);
    			}
    		}
    
    		getCombat().handlePrayerDrain();
    
    		if(System.currentTimeMillis() - singleCombatDelay >  9900) {
    			underAttackBy = 0;
    		}
    		if (System.currentTimeMillis() - singleCombatDelay2 > 9900) {
    			underAttackBy2 = 0;
    		}
    
    		if(System.currentTimeMillis() - restoreStatsDelay >  60000) {
    			restoreStatsDelay = System.currentTimeMillis();
    			for (int level = 0; level < playerLevel.length; level++)  {
    				if (playerLevel[level] < getLevelForXP(playerXP[level])) {
    					if(level != 5) { // prayer doesn't restore
    						playerLevel[level] += 1;
    						getPA().setSkillLevel(level, playerLevel[level], playerXP[level]);
    						getPA().refreshSkill(level);
    					}
    				} else if (playerLevel[level] > getLevelForXP(playerXP[level])) {
    					playerLevel[level] -= 1;
    					getPA().setSkillLevel(level, playerLevel[level], playerXP[level]);
    					getPA().refreshSkill(level);
    				}
    			}
    		}
    
    		if (inWild()) {
    			int modY = absY > 6400 ? absY - 6400 : absY;
    			wildLevel = (((modY - 3520) / 8) + 1);
    			getPA().walkableInterface(197);
    			if (Config.SINGLE_AND_MULTI_ZONES) {
    				if (inMulti()) {
    					getPA().sendFrame126("@yel@Level: " + wildLevel, 199);
    				} else {
    					getPA().sendFrame126("@yel@Level: " + wildLevel, 199);
    				}
    			} else {
    				getPA().multiWay(-1);
    				getPA().sendFrame126("@yel@Level: " + wildLevel, 199);
    			}
    			getPA().showOption(3, 0, "Attack", 1);
    		} else if (inDuelArena()) {
    			getPA().walkableInterface(201);
    			if (duelStatus == 5) {
    				getPA().showOption(3, 0, "Attack", 1);
    			} else {
    				getPA().showOption(3, 0, "Challenge", 1);
    			}
    		} else if (inBarrows()) {
    			getPA().sendFrame99(2);
    			getPA().sendFrame126("Kill Count: " + barrowsKillCount, 4536);
    			getPA().walkableInterface(4535);
    		} else if (inCwGame || inPits) {
    			getPA().showOption(3, 0, "Attack", 1);
    		} else if (getPA().inPitsWait()) {
    			getPA().showOption(3, 0, "Null", 1);
    		} else if (!inCwWait) {
    			getPA().sendFrame99(0);
    			getPA().walkableInterface(-1);
    			getPA().showOption(3, 0, "Null", 1);
    		}
    
    		if(!hasMultiSign && inMulti()) {
    			hasMultiSign = true;
    			getPA().multiWay(1);
    		}
    
    		if(hasMultiSign && !inMulti()) {
    			hasMultiSign = false;
    			getPA().multiWay(-1);
    		}
    
    		if(skullTimer > 0) {
    			skullTimer--;
    			if(skullTimer == 1) {
    				isSkulled = false;
    				attackedPlayers.clear();
    				headIconPk = -1;
    				skullTimer = -1;
    				getPA().requestUpdates();
    			}	
    		}
    		
    		if(hitDelay > 0) {
    			hitDelay--;
    		}
    		
    		if(hitDelay == 1) {
    			if(oldNpcIndex > 0) {
    				getCombat().delayedHit(oldNpcIndex);
    			}
    			if(oldPlayerIndex > 0) {
    				getCombat().playerDelayedHit(oldPlayerIndex);				
    			}		
    		}
    		
    		if(attackTimer > 0) {
    			attackTimer--;
    		}
    		
    		if(attackTimer == 1){
    			if(npcIndex > 0 && clickNpcType == 0) {
    				getCombat().attackNpc(npcIndex);
    			}
    			if(playerIndex > 0) {
    				getCombat().attackPlayer(playerIndex);
    			}
    		} else if (attackTimer <= 0 && (npcIndex > 0 || playerIndex > 0)) {
    			if (npcIndex > 0) {
    				attackTimer = 0;
    				getCombat().attackNpc(npcIndex);
    			} else if (playerIndex > 0) {
    				attackTimer = 0;
    				getCombat().attackPlayer(playerIndex);
    			}
    		}
    
    		if(isDead && respawnTimer == -6) {
    			getPA().applyDead();
    		}
    
    		if(respawnTimer == 7) {
    			respawnTimer = -6;
    			getPA().giveLife();
    		} else if(respawnTimer == 12) {
    			respawnTimer--;
    			startAnimation(0x900);
    			poisonDamage = -1;
    		}	
    
    		if(respawnTimer > -6) {
    			respawnTimer--;
    		}
    		if(freezeTimer > -6) {
    			freezeTimer--;
    			if (frozenBy > 0) {
    				if (PlayerHandler.players[frozenBy] == null) {
    					freezeTimer = -1;
    					frozenBy = -1;
    				} else if (!goodDistance(absX, absY, PlayerHandler.players[frozenBy].absX, PlayerHandler.players[frozenBy].absY, 20)) {
    					freezeTimer = -1;
    					frozenBy = -1;
    				}
    			}
    		}
    		if(teleTimer > 0) {
    			teleTimer--;
    			if (!isDead) {
    				if(teleTimer == 1 && newLocation > 0) {
    					teleTimer = 0;
    					getPA().changeLocation();
    				}
    				if(teleTimer == 5) {
    					teleTimer--;
    					getPA().processTeleport();
    				}
    				if(teleTimer == 9 && teleGfx > 0) {
    					teleTimer--;
    					gfx100(teleGfx);
    				}
    			} else {
    				teleTimer = 0;
    			}
    		}	
    	}
    Forgot to patch something that causes a dupe. In TradeAndDuel class under

    Code:
    c.tradeResetNeeded = true;
    add:

    Code:
    CycleEventHandler.getSingleton().addEvent(this, new CycleEvent() {
    				public void execute(CycleEventContainer container) {
    					if(c.inTrade && c.tradeResetNeeded){
    						Client o = (Client) PlayerHandler.players[c.tradeWith];
    						if(o != null){
    							if(o.tradeResetNeeded){
    								c.getTradeAndDuel().resetTrade();
    								o.getTradeAndDuel().resetTrade();
    								container.stop();
    							} else {
    								container.stop();
    							}
    						} else {
    							container.stop();
    						}
    					} else {
    						container.stop();
    					}
    				}
    
    				@Override
    				public void stop() {
    					c.tradeResetNeeded = false;
    				}
    			}, 1);
    mts.
    Reply With Quote  
     

  5. Thankful user:


  6. #5  
    Registered Member Zond's Avatar
    Join Date
    Feb 2011
    Age
    29
    Posts
    434
    Thanks given
    85
    Thanks received
    6
    Rep Power
    4
    Quote Originally Posted by Revil View Post
    mts.
    ha, thanks.
    But I got problems with "inCwGame", found at castlewars.java "boolean isInCw(Client player) {" so what I need to give as argument when I am in client.java.
    Code:
    isInCw(?)
    Learning
    Reply With Quote  
     

  7. #6  
    Respected Member

    Revil's Avatar
    Join Date
    Nov 2010
    Age
    30
    Posts
    4,860
    Thanks given
    3,715
    Thanks received
    2,228
    Rep Power
    5000
    can you screenshot the error?
    Reply With Quote  
     

  8. #7  
    Registered Member Zond's Avatar
    Join Date
    Feb 2011
    Age
    29
    Posts
    434
    Thanks given
    85
    Thanks received
    6
    Rep Power
    4
    Quote Originally Posted by Revil View Post
    can you screenshot the error?
    ...
    If I comment out those two castlewars if's then all works fine.
    Learning
    Reply With Quote  
     

  9. #8  
    Registered Member Zond's Avatar
    Join Date
    Feb 2011
    Age
    29
    Posts
    434
    Thanks given
    85
    Thanks received
    6
    Rep Power
    4
    My bad, pasted bug fixes in wrong source...
    Learning
    Reply With Quote  
     


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. Is there a 718 client for Pi?
    By Saiyn in forum Help
    Replies: 2
    Last Post: 10-05-2012, 02:01 AM
  2. Web Client for [PI] $5
    By lost viking in forum Buying
    Replies: 2
    Last Post: 07-14-2012, 08:28 PM
  3. [REQ] Runelimited Client for PI
    By MarkQ in forum Requests
    Replies: 0
    Last Post: 07-10-2011, 12:02 PM
  4. [Galkon's] I need client for PI
    By zivkovic in forum Help
    Replies: 4
    Last Post: 04-29-2011, 09:09 PM
  5. Creating a Client & Server in JBoss's Netty framework
    By Virus X3 in forum Application Development
    Replies: 2
    Last Post: 05-25-2010, 05:46 AM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •