Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Buy OSRS Gold

Sell OSRS Gold


  • Content Count

  • Joined

  • Last visited

  • Feedback


Community Reputation

12 Good

About XmQ

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. I am not sure if I understand you correctly but are you looking for #toLocalTile() or what ever it is called?
  2. That is true indeed. The way you are explaining it makes sense. Price seems good!
  3. IMO, asking 10 dollars for a quest script is a lot, especially if you don't give the option (even if it's not perfect) to fight the boss automatic. Nonetheless, good script to have around on Tribot!
  4. Mostly I agree with you. I am not quite sure though if you saw the wilderness emblem farmer script. It seems to me a lot of scripts could be programmed way more logical. It really isn't that hard to break conditions mid walking if done properly. You could write a listener to listen for players, if players are found and it's in a certain condition then break walking and do something different. (as example) Of course it's a edge case and most simple scripts don't need it, however, I may expect scripts that are used by big farms have something to win by this. It's one thing they lose items but it's another if the account gets banned of stupid shit like in the videos
  5. You are not vip. You need to be vip to load local scripts. Also you are not using the right framework.
  6. A few days have passed. Made a listener of it. It's not finished because it has some small bugs. However, it works for 95%. Green is our loot, red is somebodies else loot.
  7. What does line 45 from namegenerator class do?
  8. I don't think a delay would solve the issue. I am going to make a fully working loot snippet. Keeping track of lurers etc. Fun project I think!
  9. No, it won't. It will pickup items in their close proximity but anything outside a few tiles would be hard to see and won't be noticed, directly. Scripts are doing stupid shit with looting. This is a way to make it less stupid.
  10. Learn the basics! Takes a few hours but you''ll understand a lot more!
  11. Today I saw a few videos from Sirpugger, a youtuber who is trying to break scripts / bots. I was kind of suprised there are still bots that break or start doing weird when people drop certain items that are on the pickup-list. package scripts.priv.scripts.npclooter; import org.tribot.api2007.types.RSCharacter; import org.tribot.api2007.types.RSTile; import org.tribot.script.ScriptManifest; import org.tribot.script.interfaces.Painting; import scripts.priv.psvxe.api.types.Npc; import scripts.priv.psvxe.framework.listeners.npclistener.NpcEvent; import scripts.priv.psvxe.framework.listeners.npclistener.NpcListener; import scripts.priv.psvxe.framework.script.AbstractScript; import java.awt.*; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; @ScriptManifest(name = "Npc lootTester", category = "Testing", version = 0.0, description = "Test,", authors = "XmQ") public class Manager extends AbstractScript implements Painting, NpcListener { Map<Integer, RSTile> npcList = new HashMap<>(); ArrayList<RSTile> lootingTiles = new ArrayList<>(); @Override public void onStart() { super.onStart(); } @Override public int onLoop() { try { for (RSTile tile : lootingTiles) { if (tile != null) { if (me().getPosition().equals(tile)) { lootingTiles.remove(tile); } } } } catch (Exception e){ println("No tiles left!"); } RSCharacter character = me().getInteractingCharacter(); if(character != null) { if(character.isInteractingWithMe() && me().isInCombat()) { if (!npcList.containsKey(character.getIndex())) { npcList.put(character.getIndex(), character.getPosition()); } else { if(npcList.containsKey(character.getIndex()) && character.getPosition() != npcList.get(character.getIndex()).getPosition()){ npcList.replace(character.getIndex(), character.getPosition()); } } } } return 40; } @Override public void onPaint(Graphics g) { gfx.setGraphics(g); for(RSTile tile : lootingTiles) { if(tile != null){ g.setColor(Color.green); gfx.drawTile(tile); } } } @Override public void onNpcEvent(NpcEvent event, Npc npc) { switch (event){ case NPC_SPAWNED: break; case NPC_DESPAWNED: if(npcList.containsKey(npc.getIndex())){ if(!lootingTiles.contains(npc.getPosition())){ lootingTiles.add(npc.getPosition()); npcList.remove(npc.getIndex()); } } break; } } } I made a NPC listener, it tracks if a npc is despawned or has spawned. It wont be that hard to make something like that for yourself. If people really need it I could release that as a seperate snippet. This is how it works: If we are in combat and a npc is interacting with us we will add this npc to the npclist. (name and index of the npc) If the position from the npc changes the script will be replace it with the current (and latest) position. If the npc dies it will add the despawned position to the lootingtiles List. The painting interface will add some jucy colors to the tiles where our loot is. If the players stand on a tile from the lootingtiles it will be removed from the lootingtiles Use case could be that if there is a Grimy Ranarr on the ground, with a distance more than 2 tiles away from you, this Grimy Ranner will be ingored since it isn't on a tile where our loot could be. The code could be a lot better and it doesn't track if the loot is dropped directly after the npc despawns but that could be done with a simple timer. What I am trying to show here is that we can break the behaviour of picking up loot that isn't ours to make the bot more humanlike. Thanks for reading, cheers!
  12. Let's be honest, you don't have any java experience right? You are missing a few constants and variables. You are also having a few syntax errors due missing semicolons. Check the line with sleep(10). There is no semicolon. Also  import com.sun.prism.paint.Color; is an import we don't use for tribot at all as far as I know.
  13. And if you want to make a boolean to check if current screen is full screen check the total x and y bounds from small screen. If the bounds are more than the max bound size then full screen is being used.
  14. Let's do this. On mobile at the moment.. First things first. Declare this private RSInterface screenInterface = null; private int rootX; private int rootY; Then in your onStart method: screenInterface = Interfaces.get(163).getChild(0); if (screenInterface != null) { rootX = screenInterface.getAbsoluteBounds().x; rootY = screenInterface.getAbsoluteBounds().y; } And then in your onPaint graphics.drawString("test", rootX + 360, rootY + 28); Notice rootX and rootY Code is not mine. Got it from somewhere here. Forgot where from exactly.
  • Create New...