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

IceKontroI

Registered
  • Content Count

    1,160
  • Joined

  • Last visited

  • Days Won

    13
  • Feedback

    100%

IceKontroI last won the day on July 13

IceKontroI had the most liked content!

Community Reputation

303 Excellent

1 Follower

About IceKontroI

  • Rank
    Taking the Turing test ???
  • Birthday 03/01/1994

Personal

  • Sex
    Male
  • Location
    USA
  • Bio
    What loser actually writes a bio?

Recent Profile Visitors

3,514 profile views
  1. I just sneak into peoples' houses and plug ethernet cables into their routers when they're not home to get my IP addresses.
  2. If the account is valuable to you, then probably shouldn't use keep botting, just be happy you still have it. Otherwise, might as well keep botting and see what happens.
  3. Yes, the framework is completely finished, but a few things are preventing me from releasing it for public use. There are 4 major roadblocks: I'm unsure of what the best way to dispatch events is. Currently I get the OSRS Client's Canvas and call canvas.dispatch(event) but that method is pretty rudimentary and isn't tab proof. I'm sure there's a significantly more realistic way of doing it but I lack the TRiBot and RuneScape framework knowledge to improve on it. I don't know when the OSRS Client has Java AWT Focus (KeyEvents should only be sent when in focus). I'm unable to set the "scancode" value of a KeyEvent because Reflection cannot be used in TRiBot Scripts. KeyEvents all have an int variable called "modifier" which is an indication of what mouse buttons and keyboard keys were being held down at the time of a KeyEvent being generated. I don't have access to this value and I know TRiBot tracks it. I'd need a method that returns that value in order to create proper KeyEvents. First two I've opened up suggestion issues on Gitlab, the third will be tricky to implement. All Windows machines have scancode values, so it's a red flag that a Windows OS bot doesn't send KeyEvents with values on that variable.
  4. On Windows, when a key is held down, the OS waits 500 milliseconds before repeatedly typing the key on a 33 millisecond loop cycle. If this behavior or something similar is not represented in the method you are using, you shouldn't use it.
  5. EDIT: Might be a small issue, if you're using tabs to run your farm the key press events will likely be messed up. I've not yet been able to find a workaround for this issue yet. There are tons of small bugs like this I need to fix, will be in contact when I do.
  6. It's integrated into other systems I designed, but If there's demand for it I can isolate it and publish a standalone version open source for all to see and use. I do need to be 100% confident it won't cause bans though, so validating may take a good long while.
  7. It's in development, working prototype is almost complete. I'll need to do significant testing before I can release this publicly, however, to ensure safety.
  8. Haha, can't really give that up. But I'm now at a stage where I'm analyzing all the components of the script, looking for optimizations. Tribot typing was the first thing that struck me as unrealistic.
  9. Currently, TRiBot's Keyboard class types as if the player only has one finger. I wrote an alternative set of functions to get around this. Asynchronous typing (multiple keys held down independently) Uses the standard american keyboard system (TRiBot uses some non-standard values) When you are trying to send a KeyEvent to a Java AWT Component, it needs to be the focus holder. So if the last thing you clicked on was your computer's desktop, and then tried to type a message in-game, it wouldn't type anything. You'd have to click on the game client, and then type the message. Currently I have no way of knowing if the game is "in focus" like that. I can't release this framework without that feature because it could increase banrates. Can we get an API method implemented "Game.hasFocus()"? This would be extremely useful in checking things like that.
  10. @Rileyz One thing that really bugs me is that it's hard to develop my own version of TRiBot methods because of lack of access to basic building block methods. For example, in writing my own typing functions, I found I couldn't continue because the functions that are supposed to simulate key events either weren't available directly, or were attached to other methods so I couldn't use them without making compromises. I also have no way of checking if the game client has the mouse's focus, which is necessary when sending key events, or checking if a mouse wheel event can be sent. I've got tons of reworked TRiBot methods that incorporate extremely detailed and realistic antibans but I can't release them to the community in their current incomplete state. I also can't complete my own personal scripts to a satisfactory level for this reason.
  11. I have no hard evidence for or against Jagex monitoring KeyEvents. I'm doing this to be thorough, and to future-proof against them doing it in the future.
  12. I can perfectly emulate human KeyEvents (I think). There's just one difference that I'm aware of: java.awt.event.KeyEvent[KEY_PRESSED,keyCode=81,keyText=Q,keyChar='q',keyLocation=KEY_LOCATION_STANDARD,rawCode=81,primaryLevelUnicode=113,scancode=16,extendedKeyCode=0x51] on canvas1 java.awt.event.KeyEvent[KEY_PRESSED,keyCode=81,keyText=Q,keyChar='q',keyLocation=KEY_LOCATION_STANDARD,rawCode=81,primaryLevelUnicode=113,scancode=0,extendedKeyCode=0x51] on canvas1 First is human, second is bot. I can't change the scancode value. It's a private transient field in the KeyEvent class. I was able to change rawCode, primaryLevelUnicode, and extendedKeyCode using AWTAccessor.getKeyEventAccessor(), but there's nothing for scancode there. Anyone know how to do this without reflection? Or how to use reflection in a TRiBot script? Thanks! PS: Anyone know why the OSRS Canvas keeps changing? It seems to get replaced by a new Canvas every so often, especially when a new TRiBot tab is generated. I dynamically retrieve it for each event I generate to ensure it's correct, but I was just curious.
  13. Oh yeah boy am I deep in the weeds. That's interesting, it means Jagex is monitoring KeyEvents as they should. It would certainly be a useful thread to read, if you stumble upon it please PM me, I'd be 100% interested. As far as integration, I'm only using the raw typing methods, but I'm using them frequently. Analyzing TRiBot's Keyboard class revealed it wasn't asynchronous (player basically types with 1 finger). I made my own typing function that uses sendType(), sendPress(), and sendRelease() assuming that they would only send the events, and nothing else. Turns out they press shift if the char to type requires it (and sometimes even if it doesn't), and have some issues with timestamps being 1000+ millis off from when the event should have fired. In the end, I figure things would just be smoother for me if I just did everything myself. Currently I can generate KeyEvents that are indistinguishable (I think) from human ones. I use AWTAccessor.getKeyEventAccessor() to change the RawCode, PrimaryLevelUnicode, and ExtendedKeyCode which are otherwise private fields. Still can't change ScanCode value though unfortunately. Sometimes I notice that the canvas variable name changes from canvas1 to canvas2 which makes me think I'm using the wrong canvas cause it changes on me (more testing needed).
×
×
  • Create New...