need help making my range/2hander pker!

Discussion in 'RuneScape 3 Cheating' started by giedrius107, Feb 17, 2009.

need help making my range/2hander pker!
  1. Unread #1 - Feb 17, 2009 at 3:39 AM
  2. giedrius107
    Joined:
    Apr 26, 2008
    Posts:
    122
    Referrals:
    0
    Sythe Gold:
    0

    giedrius107 Active Member
    Banned

    need help making my range/2hander pker!

    ok so i started making a range/2hander and i have been using seagull owner on rsbot but i find it messes up quit often what script should i use? he is only like cmb 16 i think...only 31str atm and i wanna get it up fast what script should i use?

    please also include a link to the script or post the script please

    thanks
     
  3. Unread #2 - Feb 17, 2009 at 3:43 AM
  4. Cho
    Joined:
    Sep 1, 2008
    Posts:
    650
    Referrals:
    0
    Sythe Gold:
    0

    Cho Apprentice

    need help making my range/2hander pker!

    I used Seagull Owner, let it run, and it got me to 40 40 1 on my pure. What does the script actually do when it messes up?
     
  5. Unread #3 - Feb 17, 2009 at 3:46 AM
  6. TheChrist
    Joined:
    Jun 9, 2007
    Posts:
    150
    Referrals:
    0
    Sythe Gold:
    0

    TheChrist Active Member

    need help making my range/2hander pker!

    Make sure you get the script fix.

    Try this as your .class file (make sure to recompile).

    Code:
    import java.awt.*;
    import java.util.*;
    import java.util.List;
    import com.speljohan.rsbot.bot.Bot;
    import com.speljohan.rsbot.script.*;
    import com.speljohan.rsbot.script.wrappers.*;
    import com.speljohan.rsbot.accessors.*;
    
    public class Seagullown3r extends Script {
    
        private final int KILLCHICKENS = 0;
        private final int KILLSCRIPT = 1;
        private int action = 0;
        
        private RSTile playerPosition = null;
        private int standingCount = 0;
        
        private int[] CHICKENID = {6115, 6116};
        private int FEATHERID = 314;
        private int[] STEELARROW = {886};
        
        private RSTile chickenTile = new RSTile(3028, 3235);
        
        public String getAuthor( ) {
            return "Ruski&Alche001";
        }
    
        public String getName() {
            return "SeaGull Own3r";
        }
    
        public String getScriptCategory() {
            return "Combat";
        }
    
        public double getVersion() {
            return 1.0;
        }
        
        public boolean onStart(String [] args) {
            log("Started RuskisChickenKiller");
            return true;
        }
    
        public int loop() {
        
        action = getAction();    
            switch(action) {
                case KILLCHICKENS:                
                    runControl();
                    RSItemTile arrow = getNearestGroundItemByID(5,STEELARROW);
                    int randomNum = random(0, 5);
                    if(randomNum > 4 && arrow != null) {
                        atTile(arrow, "Steel arrow");
                        return random(900, 1400);
                    }                
                    if(getMyPlayer().getInteracting() != null) {
                        return random(300, 450);
                    }            
                    
                    RSNPC chicken = getNearestNextNPCByID(CHICKENID);            
                    if(chicken != null) {
                        if(chicken.getInteracting() != null && getMyPlayer().getInteracting() == null) {                        
                            return random(100, 200);
                        }                    
                        
                        if(getMyPlayer().getInteracting() == null) {                    
                            clickNPC(chicken, "attack");
                            return random(800, 1400);
                        }                    
                        return random(200, 400);
                    }                
                    return random(500, 1000);
                                
                case KILLSCRIPT:
                    log("stopping scripts");
                    stopAllScripts();
                    return random(100, 200);
            }        
            
        return random(400, 800);        
        }
        
        private int getAction() {
            if(distanceTo(chickenTile) < 50) {
                return KILLCHICKENS;
            } else {
                return KILLSCRIPT;
            }                
        }
        
        private void checkPlayerPosition(RSPlayer player) {
            try {
                RSTile currentPosition = player.getLocation();
                if (currentPosition.equals(playerPosition)) {
                    standingCount++;
                }
                if (!currentPosition.equals(playerPosition)) {
                    playerPosition = currentPosition;
                    standingCount = 0;
                }
                switch (standingCount) {
                    case 15:
                        setCameraRotation(getCameraAngle() + random(30, 180));
                        break;
                    case 30:
                        if(canReach(chickenTile, false)) {
                            walkTileMM(chickenTile);
                            wait(400, 600);
                        }
                        break;
                    case 50:
                        log("Standing still for too long, stopping script");
                        action = KILLSCRIPT;
                        break;
                }
            } catch (Exception e) {
                System.out.print("checkPlayerPosition(RSPlayer) error: " + e);
            }
        }
            
        private void runControl() {
            if (!isRunning() && getEnergy() > random(20, 30)) {
                setRun(true);
            }
        }
        
        public RSItemTile getNearestGroundItemByID(int range, int[] ids) {
            int pX = getMyPlayer().getLocation().getX();
            int pY = getMyPlayer().getLocation().getY();
            int minX = pX - range;
            int minY = pY - range;
            int maxX = pX + range;
            int maxY = pY + range;
            int dist = 100;
            RSItemTile nItem = null;
            for (int x = minX; x <= maxX; x++) {
                for (int y = minY; y <= maxY; y++) {
                    if (Calculations.canReach(new RSTile(x,y), false)){
                        RSItemTile[] items = getGroundItemsAt(x, y);
                        for (RSItemTile item : items) {
                            int iId = item.getItem().getID();
                            for (int id : ids) {
                                if (iId == id) {
                                //    log(""+id+" at "+x+","+y);
                                    if (distanceTo(new RSTile(x,y)) < dist){
                                        dist = distanceTo(new RSTile(x,y));
                                        nItem = item;
                                    }
    
    
    
                                }
                            }
                        }
                    }
                }
            }
            return nItem;
        }
        
        private RSNPC getNearestNextNPCByID(int... ids) {
            int Dist = 20;
            RSNPC closest = null;
            int[] validNPCs = Bot.getClient().getNPCIndexArray();
            NPC[] npcs = Bot.getClient().getNPCArray();
    
            for (int element : validNPCs) {
                if (npcs[element] == null) {
                    continue;
                }        
                RSNPC Monster = new RSNPC(npcs[element]);
                try {
                    for (int id : ids) {
                        if (id != Monster.getID() || Monster.isInCombat() || Monster.getInteracting() != null) {
                            continue;
                        }
                        int distance = getRealDistanceTo(Monster.getLocation(), false);
                        if (distance < Dist) {
                            Dist = distance;
                            closest = Monster;
                        }
                    }
                } catch (Exception e) {}
            }    
            return closest;
        }
        
        private boolean clickNPC(RSNPC npc, String action) {
            if (npc == null) {
                return false;
            }
            RSTile tile = npc.getLocation();
            if (!tile.isValid()) {
                return false;
            }
    
            try {
                Point screenLoc = npc.getScreenLocation();
                if (distanceTo(tile) > 6 || !pointOnScreen(screenLoc)) {
                    turnToTile(tile);
                }
                if (distanceTo(tile) > 20) {
                    walkTileMM(tile);
                    return false;
                }
                for (int i = 0; i < 12; i++) {
                    screenLoc = npc.getScreenLocation();
                    if (!npc.isValid() || !pointOnScreen(screenLoc)) {
                        return false;
                    }
                    moveMouse(screenLoc, 5, 5);
                    if (getMenuItems().get(0).toLowerCase().contains(npc.getName().toLowerCase())) {
                        break;
                    }
                    if (getMouseLocation().equals(screenLoc)) {
                        break;
                    }
                }
                List<String> menuItems = getMenuItems();
                if (menuItems.isEmpty()) {
                    return false;
                }
                for (int a = 0; a < menuItems.size(); a++) {
                    if (menuItems.get(a).toLowerCase().contains(npc.getName().toLowerCase())) {
                        if (menuItems.get(0).toLowerCase().contains(action.toLowerCase())) {
                            clickMouse(true);
                            return true;
                        } else {
                            clickMouse(false);
                            return atMenu(action);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.print("clickNPC(RSNPC, String) error: " + e);
                return false;
            }
            return false;
        }
        
    }
     
  7. Unread #4 - Feb 17, 2009 at 3:48 AM
  8. giedrius107
    Joined:
    Apr 26, 2008
    Posts:
    122
    Referrals:
    0
    Sythe Gold:
    0

    giedrius107 Active Member
    Banned

    need help making my range/2hander pker!

    well when its going sometimes i turn back to it and hes off wondering around port sarim clicking on the ocean.......
     
  9. Unread #5 - Feb 17, 2009 at 3:59 AM
  10. Sindrefyrn
    Joined:
    Apr 17, 2008
    Posts:
    2,542
    Referrals:
    11
    Sythe Gold:
    0

    Sindrefyrn Power, Wisdom and Courage.
    Do Not Trade

    need help making my range/2hander pker!

    Hmm.. Mabye train some by hand? :p
    And use power cower to attack/strength after that.
     
< Rsbot on Laptop | Quick script request/possible link? >

Users viewing this thread
1 guest


 
 
Adblock breaks this site