SRL Archive - Research & Development Lounge

PulseBot


NKN

2013-05-23 22:07:52

PulseBot

Welcome to my development thread for PulseBot. I started this project a few months ago, but didn't get very far due to my lack of Java experience. I've picked up new know-how about the language, and looked at my code. It was horrid and ugly, so I decided to re-write it this time. I'm planning to get a little more in-depth with this over the course of the next few weeks/months. I want to get SRL's input into my bot. This won't become a full-fledged organization like Powerbot or TRiBot, but more for a learning experience for myself and any other developer. Well, that's it to the intro to PulseBot.
Website
http://pulsebot.org/forums


Source Code
https://github.com/JJdeGroot/PulseBot


Features

Injection
Oldschool

Leave any comments with what you need/want in PulseBot, and we'll see if we can manage to throw it in.



Developers

NKN
@J J


If you would like to apply to become a developer for PulseBot, leave a post, PM me, or add me on Skype. Not everyone will be accepted.



Current Activity(In order of dominance)


Re-programming the core of the bot.

tealc

2013-05-23 22:12:54

Cool…Do you have a paypal? Are you planning on posting the original code so people can help with rewriting it.

Olly

2013-05-23 22:13:00

NKNBot just sounds weird to me…. :(

NKN

2013-05-23 22:13:58

From: tealc
Cool…Do you have a paypal? Are you planning on posting the original code so people can help with rewriting it.

https://github.com/NKNScripts/nknbot

Current code.
From: Ollybest
NKNBot just sounds weird to me…. :(

idk what to name it.
Suggestions?

Flight

2013-05-23 22:22:45

From: Ollybest
NKNBot just sounds weird to me…. :(


I agree. How about something unique, like PulseBot? When you decide on a name post an update here and I'll try and come up with a quick & simple logo for it.

Also, I haven't worked with a java bot since the original RsBot by Speljohan (very intelligent person). But if I get some basic knowledge under my belt I'd be happy to whip up some scripts for you.

NKN

2013-05-23 22:25:34

From: Flight
I agree. How about something unique, like PulseBot? When you decide on a name post an update here and I'll try and come up with a quick & simple logo for it.

Also, I haven't worked with a java bot since the original RsBot by Speljohan (very intelligent person). But if I get some basic knowledge under my belt I'd be happy to whip up some scripts for you.

I really like that name. If no one can come up with anymore, I'll use that one. :D

grats

2013-05-23 23:08:20

name it GRATSBOT after an amazing guy I know

I could help with some web stuff, I like to do it for fun and I have no friends so give me something to do plz

US Marine

2013-05-23 23:31:11

Send me your PayPal. I don't mind helping. ;)

<3

I agree on GRATSBOT for name.

Hazzah

2013-05-23 23:43:03

HazzahBot?

Haha

rj

2013-05-23 23:58:48

Could I be considered a developer if I am just learning to script for it? :S

Flight

2013-05-24 00:12:24

From: grats
name it GRATSBOT after an amazing guy I know

I could help with some web stuff, I like to do it for fun and I have no friends so give me something to do plz


I would vouch for Grats' web-awesomeness.

From: Officer Barbrady
Could I be considered a developer if I am just learning to script for it? :S


That wouldn't make much sense, would it?

Silentcore

2013-05-24 00:13:35

DirtyBot..lol
anyway goodluck with everything, looking foward.

Flight

2013-05-24 00:35:07

What do you think of this, NKN?


Took me under 5 minutes. :spot:

Silentcore

2013-05-24 01:11:24

From: Flight
What do you think of this, NKN?


Took me under 5 minutes. :spot:

May I ask what program that is. I'm just curious.

Flight

2013-05-24 01:28:51

From: Silentcore
May I ask what program that is. I'm just curious.


Just some program called Logo-maker.

Hoodz

2013-05-24 03:10:43

Nice! I dont know how long this bot will last but im going to learn java next year. So if its still up in a year then i try to write some scripts :)

Laimonas171

2013-05-24 05:20:21

I have logo suggestion as well : )

[IMG]http://laimonas171.com/rs/pb/pulsebotA.png[/IMG]
[IMG]http://laimonas171.com/rs/pb/pulsebotB.png[/IMG]
[IMG]http://laimonas171.com/rs/pb/pulsebotC.png[/IMG]

Shatterhand

2013-05-24 05:56:38

Looks interesting. :)

happy hippo

2013-05-24 06:52:19

From: Laimonas171
I have logo suggestion as well : )

[IMG]http://laimonas171.com/rs/pb/pulsebotA.png[/IMG]
[IMG]http://laimonas171.com/rs/pb/pulsebotB.png[/IMG]
[IMG]http://laimonas171.com/rs/pb/pulsebotC.png[/IMG]

Cool design :)

NKN

2013-05-24 06:52:38

From: Flight
What do you think of this, NKN?


Took me under 5 minutes. :spot:

Looks great man. :)
From: grats
name it GRATSBOT after an amazing guy I know

I could help with some web stuff, I like to do it for fun and I have no friends so give me something to do plz

Might have to hit you up on that. Interested in running/teaching me to run the PulseBot site?
From: US Marine
Send me your PayPal. I don't mind helping. ;)

<3

I agree on GRATSBOT for name.

Uhh, you don't have to donate, but it's [email]NKNScripts@gmail.com[/email]

samerdl

2013-05-24 07:10:43

Yes support, i would love to learn some java script/java language coding, i don't have tribot vip nor do i trust any other botting website.

Would really love to see something like Injection around simba forums, knowing this community there would be tons of guides for it too, do you have a donate option? like 'click here to donate' am a noob when it comes to paypal.

NKN

2013-05-24 07:23:54

From: grats
name it GRATSBOT after an amazing guy I know

I could help with some web stuff, I like to do it for fun and I have no friends so give me something to do plz


From: US Marine
Send me your PayPal. I don't mind helping. ;)

<3

I agree on GRATSBOT for name.


From: samerdl
Yes support, i would love to learn some java script/java language coding, i don't have tribot vip nor do i trust any other botting website.

Would really love to see something like Injection around simba forums, knowing this community there would be tons of guides for it too, do you have a donate option? like 'click here to donate' am a noob when it comes to paypal.

I'll make a donate button now.

samerdl

2013-05-24 07:34:08

From: NKN
I'll make a donate button now.



Thanks if its 20$ i can give some, its no biggie.. I would love to see some injection bot going around and i'd love to help you out.

US Marine

2013-05-24 08:09:23

From: NKN
I'll make a donate button now.


Cool man, I donated 5$. Hope it helps!!!!

grats

2013-05-24 08:20:03

From: NKN
Looks great man. :)

Might have to hit you up on that. Interested in running/teaching me to run the PulseBot site?

Uhh, you don't have to donate, but it's [email]NKNScripts@gmail.com[/email]


yea just let me know. I work full time.. from right nowish to 3:30pm mountain

got the whole summer of nothing but that

Haxz

2013-05-24 08:50:47

Looks great! Time to read some Java scripting tuts, hope there are some out there.

Turpinator

2013-05-24 16:26:28

Is there a "meh" option on the vote?

I mean… I totally support what you want to do, but i think the poll question is rather ?specific?…

NKN

2013-05-24 16:29:38

From: US Marine
Cool man, I donated 5$. Hope it helps!!!!

Thanks man, helps a lot. :)
From: grats
yea just let me know. I work full time.. from right nowish to 3:30pm mountain

got the whole summer of nothing but that

Sure, I'm off school in two weeks(June 5th.) Talk then? ;)
From: Haxz
Looks great! Time to read some Java scripting tuts, hope there are some out there.

:P The API has a long way to go.
From: Turpinator
Is there a "meh" option on the vote?

I mean… I totally support what you want to do, but i think the poll question is rather ?specific?…


I dunno how to edit polls.

grats

2013-05-24 19:33:49

From: NKN
Thanks man, helps a lot. :)

Sure, I'm off school in two weeks(June 5th.) Talk then? ;)

:P The API has a long way to go.


I dunno how to edit polls.


yea sounds good

Ian

2013-05-24 19:44:06

Design suggestion for PulseBot logo: Maybe incorporate a pulse in it somewhere?

Don't use this (probably copyrighted), but to give you an idea:

grats

2013-05-24 20:15:00

could take daily commits in a database and graph it as a pulse

and.. make it into a dynamic image as the logo

EngageTheRage

2013-05-24 20:50:10

sounds pretty cool man, would be interested in helping out, i could really do with a java project :)

NKN

2013-05-24 20:51:51

From: grats
could take daily commits in a database and graph it as a pulse

and.. make it into a dynamic image as the logo

Going to make a pulse the loading screen for it.
From: EngageTheRage
sounds pretty cool man, would be interested in helping out, i could really do with a java project :)


Add me on Skype: NKNScripts

John

2013-05-24 21:02:34

Go NKN! A bot developer has to start somewhere and I believe you have found the perfect place to start :)

Haxz

2013-05-24 21:07:04

From: NKN

:P The API has a long way to go.


I'm willing to wait for a reliable walking and positioning bot! Tribot blocked me from cloudflare I believe and none of the staff reply PMs :(

Will donate when I can!

grats

2013-05-24 21:10:10

From: NKN
Going to make a pulse the loading screen for it.


Add me on Skype: NKNScripts


what loading screen, for runescape?
not sure what loads

NKN

2013-05-24 21:20:10

From: grats
what loading screen, for runescape?
not sure what loads


When dumping theclasses, downloading gamepack, ect

grats

2013-05-24 21:21:41

From: NKN
When dumping theclasses, downloading gamepack, ect


oic I am 2 derp for that

NKN

2013-05-24 21:49:03

From: grats
oic I am 2 derp for that


lawl.

So yeah, get on Skype tomorrow or something

grats

2013-05-24 21:53:40

From: NKN
lawl.

So yeah, get on Skype tomorrow or something


yep, afternoon I'll be on for sure, have to do some work at office in the morning

King

2013-05-24 22:43:43


I got bored, I can make a video of the text appearing with a pulse line flowing behind it if you like?

The Mayor

2013-05-24 22:54:16

From: King
I got bored, I can make a video of the text appearing with a pulse line flowing behind it if you like?


Looks great :)

King

2013-05-24 22:56:23

From: The Mayor
Looks great :)


Thanks :) HMU with any GFX, Ill do em free when Im spare!

Brandon

2013-05-25 10:02:29

:o Nice thread. Didn't see this until the tag so thanx for that. If you need anything, just drop me a line. Can donate some code or help if you need as well (doubt you need help but the offer is there :D).

NKN

2013-05-25 13:15:53

From: Brandon
:o Nice thread. Didn't see this until the tag so thanx for that. If you need anything, just drop me a line. Can donate some code or help if you need as well (doubt you need help but the offer is there :D).

Maybe to make things look pretty, I'm absolute trash at JFrames and Swing lol.

Hoodz

2013-05-25 18:59:06

I can try to make a logo for you tomorrow.

NKN

2013-05-25 19:16:33

From: hoodz
I can try to make a logo for you tomorrow.


Okie Dokie.

Also, everyone welcome @J J to the development team!(Sorry for the second mention J J)

J J

2013-05-26 06:35:36

From: NKN
Okie Dokie.

Also, everyone welcome @J J to the development team!(Sorry for the second mention J J)

Thanks :) I will mainly be working on the "layout" for now.. so getting multiple tabs to work, having a toolbar where you can select certain stuff to debug, etc. It all depends on my time though :P

NKN

2013-05-26 10:07:40

Everyone also welcome
@JPHamlett to the scene as a developer!

grats

2013-05-27 00:35:03

From: Flight
What do you think of this, NKN?


Took me under 5 minutes. :spot:


I like this more than what the forum has now

Kevin

2013-05-27 00:47:10

So, where do I apply? :p

NKN

2013-05-27 01:02:15

From: Kevin
So, where do I apply? :p


Skype atm

J J

2013-05-27 16:19:35

It does now load a new tab with old school straight away. Got 9 tabs working then my CPU maxed out lol.


Resource cleaning up is something I'm looking into next. I did get the CPU to drop after removing but it did not clear any RAM for some reason. Hmmm

StickToTheScript

2013-05-27 16:28:02

This is awesome. I will happily fill any open positions. :-)

NKN

2013-05-27 16:28:33

From: J J
It does now load a new tab with old school straight away. Got 9 tabs working then my CPU maxed out lol.


Resource cleaning up is something I'm looking into next. I did get the CPU to drop after removing but it did not clear any RAM for some reason. Hmmm


97% CPU, Tab 10 crashed after I opened tab 16

grats

2013-05-27 16:43:56

From: lemonjews
cant wait to steal the cup of tea with pulse bot ._.


how is this guy not banned yet

NKN

2013-05-27 17:19:12

From: grats
how is this guy not banned yet


Because
#TeamRunehack

Ontopic:

Injection has been started. ETA: Few weeks

Hazzah

2013-05-27 17:52:39

NKN for president!

Justin

2013-05-27 17:57:10

From: NKN
Because
#TeamRunehack

Ontopic:

Injection has been started. ETA: Few weeks


There is no TeamRunehack.

Raiden702

2013-05-27 18:05:18

Look forward to this, let me know if you need some GFX!

Hoodz

2013-05-27 18:15:05

Sorry nkn for not making the logo, im just really busy. Btw i want to learn java online (for now) what do you suggest to watch?

NKN

2013-05-27 18:44:28

From: hoodz
Sorry nkn for not making the logo, im just really busy. Btw i want to learn java online (for now) what do you suggest to watch?


Boston Tutorials

[XoL]

2013-05-27 18:45:20

On that homepage, center it all and put the buttons on the left side (Standard web design mechanics, will make it much more "familiar" for people, even if they never visited your site)

grats

2013-05-27 18:58:19

From: [XoL]
On that homepage, center it all and put the buttons on the left side (Standard web design mechanics, will make it much more "familiar" for people, even if they never visited your site)


Probably redo it all, I was just bored as hell last night at like 3am and made it with the image pulse thing to mess with css3

NKN

2013-05-27 19:18:10

From: [XoL]
On that homepage, center it all and put the buttons on the left side (Standard web design mechanics, will make it much more "familiar" for people, even if they never visited your site)


Getting some people to do some gfx for it.

Sin

2013-05-27 19:39:29


Big image, sowwy.
Thoughts?

grats

2013-05-27 19:49:57

From: Sin

Big image, sowwy.
Thoughts?


That image is very small.. big? lol

I think it is pretty cool, I am too easy going on ui stuff that's why I don't do it though, so you'll have to ask more of a critic person

Sin

2013-05-27 19:53:13

I can resize it later, NKN didn't give me any specific size.

NKN

2013-05-27 19:56:39

From: Sin
I can resize it later, NKN didn't give me any specific size.


I like it.

grats

2013-05-27 19:58:02

From: Sin
I can resize it later, NKN didn't give me any specific size.


yea I'm on 1x 2560x1440 and 3 other 1080p monitors, so web stuff usually all looks like shit to me unless it dynamically changes :crying:

Justin

2013-05-27 20:22:05

Can't wait to see some development :)

grats

2013-05-27 20:42:21

From: Justin
Can't wait to see some development :)


same, the screenshots so far are pretty cool looking, I honestly got no idea what the bot is about… rofl. but I like to see all the people here be productive instead of do drugz and watch tv

Sin

2013-05-27 20:43:34

From: grats
same, the screenshots so far are pretty cool looking, I honestly got no idea what the bot is about… rofl. but I like to see all the people here be productive instead of do drugz and watch tv


420killcopsdodrugs69allday

grats

2013-05-27 20:46:30

oh also I can do web design, just someone draw the website on photoshop and label stuff as button etc first, you know?

Flight

2013-05-27 21:33:23

Hey NKN, what made you decide to go with Injection as opposed to Reflection?

NKN

2013-05-27 21:33:42



The string written at 200,200 is the player display name.

The first hook of the bot has been implemented. :)


From: Flight
Hey NKN, what made you decide to go with Injection as opposed to Reflection?


I only know Injection, I don't know reflection, that's why. :3
There weren't any reflection tutorials, only Injection, so that's all I learned.

brownlove

2013-05-27 23:42:38

this is going to be so amazing once I can do things with it ._.

like stealing a cup of tea in Runescape errmmaaagawwd

Sjoe

2013-05-27 23:58:52

From: NKN


The string written at 200,200 is the player display name.

The first hook of the bot has been implemented. :)




I only know Injection, I don't know reflection, that's why. :3
There weren't any reflection tutorials, only Injection, so that's all I learned.


Atleast censor the username NKN ….

kevin33

2013-05-28 00:09:56

From: Sjoe
Atleast censor the username NKN ….

Haha wonder what TK will think of this one :P

grats

2013-05-28 00:09:57

From: Sjoe
Atleast censor the username NKN ….


He rolls hard, life of a thug

looking good though, this is progressing pretty quickly

Sjoe

2013-05-28 00:32:33

From: kevin33
Haha wonder what TK will think of this one :P


Especially without his authorisation :p

Hoodz

2013-05-28 02:24:29

From: NKN
Boston Tutorials

Thanks, going to check them in a month.

The Mayor

2013-05-28 03:14:34

From: Sjoe
Especially without his authorisation :p


Hope they don't link that account to my ip :unsure:

P1nky

2013-05-28 04:58:01

Sounds awesome and wish you luck! I wish I could participate, although no knowledge dealing with JAVA, mind if you tell me where you started and how you learned the language? Maybe some links that got you to where you are. I would love to learn and input and dedicate my knowledge to this project :D

NKN

2013-05-28 06:29:43

From: Sjoe
Atleast censor the username NKN ….

But then the hook is like I didn't even do it. D: It hooks the display name.
He can't get banned, it wasn't botting. D:
From: P1nky
Sounds awesome and wish you luck! I wish I could participate, although no knowledge dealing with JAVA, mind if you tell me where you started and how you learned the language? Maybe some links that got you to where you are. I would love to learn and input and dedicate my knowledge to this project :D


I picked up Java from just writting random things in it,so lots of google, then heading over here and reading their guides.:http://javahacking.org/forum/index.php?/forum/9-tutorials/

Sjoe

2013-05-28 06:31:09

From: NKN
But then the hook is like I didn't even do it. D: It hooks the display name.
He can't get banned, it wasn't botting. D:


I hope nobody rats it out :p

Justin

2013-05-28 06:36:29

From: Sjoe
I hope nobody rats it out :p

Posted on HLF. Bad luck mate.

Anyway @NKN; Keep it up :D

StickToTheScript

2013-05-28 09:28:29

From: justin
posted on hlf. Bad luck mate.

Anyway @nkn; keep it up :d


hlf?

samerdl

2013-05-28 09:47:53

ah sorry was away for a bit and busy with other things, gave some 5$ hope it helps!

Itankbots

2013-05-28 11:02:21

From: StickToTheScript
hlf?


High level forums

StickToTheScript

2013-05-28 15:34:56

From: Itankbots
High level forums


Thanks! Now, care to explain a bit more?

Wetish

2013-05-28 15:53:34

From: StickToTheScript
Thanks! Now, care to explain a bit more?


http://services.runescape.com/m=rswiki/en/High_Level_Forums

Kevin

2013-05-28 16:11:42

From: StickToTheScript
Thanks! Now, care to explain a bit more?


Basically it's the one part of the community Jagex actively listens to. Bot reports there actually get looked into more often than elsewhere.

NKN

2013-05-28 16:19:53

From: samerdl
ah sorry was away for a bit and busy with other things, gave some 5$ hope it helps!


Thanks man. :)

StickToTheScript

2013-05-28 16:37:19

From: Kevin
Basically it's the one part of the community Jagex actively listens to. Bot reports there actually get looked into more often than elsewhere.


From: Wetish
http://services.runescape.com/m=rswiki/en/High_Level_Forums


Thanks guys! Good to know!

Sk1nyNerd

2013-05-29 11:51:42

well looks like i have a reason to stop procrastinating java and start learning now :P haha looks awesome and your making progress fast! wish i could help out.

in the mean time of all the development would you consider offering a trusted thread page that offered/sold simba scripts to start building a 'fan base' and reputation? and one where users could request a script?

it might take away that your main goal is injection for a bit but just a food for thought

NKN

2013-05-29 15:54:10

From: ibot_dung11
well looks like i have a reason to stop procrastinating java and start learning now :P haha looks awesome and your making progress fast! wish i could help out.

in the mean time of all the development would you consider offering a trusted thread page that offered/sold simba scripts to start building a 'fan base' and reputation? and one where users could request a script?

it might take away that your main goal is injection for a bit but just a food for thought

I don't think directing PulseBot to Simba scripts would be a good idea. We have our hands full developing PulseBot, and can't maintain the level of dedication needed to uphold private/sold scripts.

Hazzah

2013-05-30 01:34:42

I don't think the issue here is the botting aspect, more along the lines of the breaking ToS aspect.

From: jagex
8. Intellectual property rights and ownership
Jagex®, RuneScape®, War of Legends® and FunOrb® are registered trade marks of Jagex Limited in the United Kingdom, the United States and other countries. All third party trade marks are the property of their respective owners.

You must not reverse-engineer, decompile or modify any Jagex Product client software in any way (except to the extent allowed by applicable law). You must not use a modified/customised version of the client software or attempt to copy, transfer or sub-license it. You must not create or provide any other means by which any Jagex Product may be played by others (including, without limitation, replacement or modified client/server software, server emulators). Please note that any such activity may constitute civil wrongs and/or criminal offences, and we reserve the right to take such action as appropriate in the circumstances should we become aware that such offences are being committed.

NKN

2013-05-30 06:35:48

From: Hazzah
I don't think the issue here is the botting aspect, more along the lines of the breaking ToS aspect.


Discussed this already. ;)
http://pulsebot.org/forums/index.php?/topic/7-what-will-pulse-bot-run/

I can run 07 but not EoC.

Hazzah

2013-05-30 14:15:07

From: NKN
Discussed this already. ;)
http://pulsebot.org/forums/index.php?/topic/7-what-will-pulse-bot-run/

I can run 07 but not EoC.


Ahhh, thanks. Injecting doesn't count as modifying the client, or have the courts found that injecting into a client is not malicious in itself?

rj

2013-05-30 15:49:20

From: Hazzah
Ahhh, thanks. Injecting doesn't count as modifying the client, or have the courts found that injecting into a client is not malicious in itself?


It is, because he is painting on the screen so hes at-least "hacking" the canvas

NKN

2013-05-30 15:58:57

From: Officer Barbrady
It is, because he is painting on the screen so hes at-least "hacking" the canvas


False.
I'm not.

Not yet, anyway.

Hazzah

2013-05-30 17:52:34

So I'm still confused. Is injecting covered under modifying the game client?

How does injection work? Do you inject into the java that runs the game, or into the client itself?

NKN

2013-05-30 18:00:14

From: Hazzah
So I'm still confused. Is injecting covered under modifying the game client?

How does injection work? Do you inject into the java that runs the game, or into the client itself?


I inject my own code into the games code, then run the game.
So before it was:
Runescape Code > Applet
Now it's:
Runescape Code > My Code > Applet

In a nutshell anyway

n3ss3s

2013-06-02 04:50:24

From: Hazzah
So I'm still confused. Is injecting covered under modifying the game client?


Yes, injection is modifying the game client

NKN

2013-06-02 14:22:00

Whew, no longer requires an xboot.


Changed the superClass of the runescape canvas to my canvas. :)
Can run the .jar and it works with canvas painting.

Laimonas171

2013-06-03 06:46:18

@grats update homepage :)

J J

2013-06-04 04:10:28

From: NKN
Whew, no longer requires an xboot.


Changed the superClass of the runescape canvas to my canvas. :)
Can run the .jar and it works with canvas painting.

Yay :) Major improvement for "stupid" users that can just double click and expect everything to work without a .bat file.

grats

2013-06-04 07:09:13

From: Laimonas171
@grats update homepage :)


your code is so messed up -.-

Laimonas171

2013-06-04 11:14:23

From: grats
your code is so messed up -.-


http://rs.laimonas171.com/pulse < works on any browser. if you not able to understand that doesn't mean it's messed up ^^

NKN

2013-06-04 16:05:17

From: Laimonas171
http://rs.laimonas171.com/pulse < works on any browser. if you not able to understand that doesn't mean it's messed up ^^


Erm. grats is one of the best web designers I know. I think he understands it. :'(

Kevin

2013-06-04 16:11:00

I won't lie… It is kinda nice that Laimonas' version is more friendly to "smaller" browsers as opposed to what is currently in place.

Laimonas171

2013-06-04 16:33:16

From: NKN
Erm. grats is one of the best web designers I know. I think he understands it. :'(


Not so good if he cannot figure out simple code even if it's messy ( i not getting paid for that and done that just to help on my free time) :D
edit: no offence though. i'm not saying he is bad or sth. I would like to see his designs :)
From: Kevin
I won't lie… It is kinda nice that Laimonas' version is more friendly to "smaller" browsers as opposed to what is currently in place.

Thank you. though it's most likely standart for resolution. may be not so cool at full hd. but still all object will be on their places. just with more 'empty' space.
Edit: by standart i mean most of current loptops and some of desktops has resolutions belove 1920x1080 (fullhd) so did for that. but i will work on full hd like i said above.

grats

2013-06-04 18:33:28

From: Laimonas171
http://rs.laimonas171.com/pulse < works on any browser. if you not able to understand that doesn't mean it's messed up ^^


Because web is forgiving..


no doctype
wrong html tag
missing a div close?
none of your tables are closed
</link> ? no need, in fact favicons are pushed by webserver headers, they don't need to be in code at all
you're linking directories with # tags? wat

From: Kevin
I won't lie… It is kinda nice that Laimonas' version is more friendly to "smaller" browsers as opposed to what is currently in place.


both are his versions.. what's more friendly? The fact I made the current ones bottom float at the bottom..? that changes nothing…..

From: Laimonas171
Not so good if he cannot figure out simple code even if it's messy ( i not getting paid for that and done that just to help on my free time) :D
edit: no offence though. i'm not saying he is bad or sth. I would like to see his designs :)

Thank you. though it's most likely standart for resolution. may be not so cool at full hd. but still all object will be on their places. just with more 'empty' space.
Edit: by standart i mean most of current loptops and some of desktops has resolutions belove 1920x1080 (fullhd) so did for that. but i will work on full hd like i said above.


Wtf do you mean I can't figure it out even if it's messy? I CAN FIGURE IT OUT, that's why it's so disgusting.. it's like reading an essay by a 3 year old, there are mistakes all over and it's horrible to look at

NKN

2013-06-04 21:30:21

Added PulseMarket

:)

Vac

2013-06-04 21:44:06

From: Laimonas171
[website link] < works on any browser. if you not able to understand that doesn't mean it's messed up ^^


Holy shit that thing is ugly. I guarantee the only thing grats doesn't understand about it is why a website with 5 elements can't pass a validator.

Laimonas171

2013-06-05 05:04:39

From: grats

no doctype
wrong html tag
missing a div close?
none of your tables are closed
</link> ? no need, in fact favicons are pushed by webserver headers, they don't need to be in code at all
you're linking directories with # tags? wat


no doctype > used templete saved in notepad++ as default
missing div close? where?
wrong html tag > used templete saved in notepad++ as default
none of your tables are closed > first table miswrote </table> to <table> and second one was copy/paste, since it's pretty much the same tables just class is a little bit diferent.(you should be smart enough to see that)…
</link> >i have no idea why i did that.
you're linking directories with # tags? wat > it's in my server, so i redirect them to nowhere. not to directories.

so or you playing 'very smart' or you are really daf.
edit:and even so, code you posted was very first sketch.

From: grats


Wtf do you mean I can't figure it out even if it's messy? I CAN FIGURE IT OUT, that's why it's so disgusting.. it's like reading an essay by a 3 year old, there are mistakes all over and it's horrible to look at


what i said, if you not able to fix that code in 20-30minutes (by your need, to add meta's and other shit you need) you cannot figure it out. And again, didn't go with w3 standarts since do quick respond. if you can do better please do and stop whining. we already have a lot of smartass'es here.

grats

2013-06-05 08:07:38

It's easier to do stuff correctly the first time, your site has errors all over it too.

Laimonas171

2013-06-05 08:10:03

From: grats
It's easier to do stuff correctly the first time, your site has errors all over it too.


I understand, nobody is perfect ;)

But again, i know most of these, things, my problem is only that i'm lazy, no need to judge me for that :P

http://validator.w3.org/check?uri=http%3A%2F%2Frs.laimonas171.com%2Fpulse%2F&charset=%28detect+automatically%29&doctype=Inline&group=0

NKN

2013-06-08 01:25:53

Started the basics for something I've been working on for three days, thank god.

Should finish learning the rest within the next week or two.

xtrapsp

2013-06-14 04:20:24

From: Laimonas171
I understand, nobody is perfect ;)

But again, i know most of these, things, my problem is only that i'm lazy, no need to judge me for that :P

http://validator.w3.org/check?uri=http%3A%2F%2Frs.laimonas171.com%2Fpulse%2F&charset=%28detect+automatically%29&doctype=Inline&group=0


Don't criticise Greg if he is right… even I spotted those problems. Also you shouldn't be using a table

p.s

<table class='header' style='text-align:left; width:100%;'>

Why not use <th>?

Laimonas171

2013-06-14 05:56:02

From: xtrapsp
Don't criticise Greg if he is right… even I spotted those problems. Also you shouldn't be using a table

p.s

<table class='header' style='text-align:left; width:100%;'>

Why not use <th>?


because it has no header. it's not neccesary element for each table. depends on structure. I use it for styles, not for showing data.

edit: btw it would be hard to not see it then it's marked in red + you should read all post I explained most of it why i did mistakes. + i fixed them long time ago.

xtrapsp

2013-06-14 09:10:59

From: Laimonas171
because it has no header. it's not neccesary element for each table. depends on structure. I use it for styles, not for showing data.

edit: btw it would be hard to not see it then it's marked in red + you should read all post I explained most of it why i did mistakes. + i fixed them long time ago.


To be honest you shouldn't have been using a Table to achieve that anyway.

Laimonas171

2013-06-14 16:41:37

From: xtrapsp
To be honest you shouldn't have been using a Table to achieve that anyway.


That's optional, i wanted table not div. here is not rules for that.

count to potato

2013-06-14 16:59:37

Interesting! I'll be watching this carefully and I think I'd like to donate once I get some money!

NKN

2013-06-14 19:15:39

A few minutes ago, PulseBot.org was DDoS'd, so I turned the security of the website up. This might disallow some users from accessing the site, if it does just PM me please.

xtrapsp

2013-06-15 05:44:24

From: Laimonas171
That's optional, i wanted table not div. here is not rules for that.


http://webdesign.about.com/od/layout/a/aa111102a.htm

Laimonas171

2013-06-15 05:59:25

From: xtrapsp
http://webdesign.about.com/od/layout/a/aa111102a.htm


That's not the rule.
edit: http://validator.w3.org/check?uri=http%3A%2F%2Frs.laimonas171.com%2Fpulse%2F&charset=%28detect+automatically%29&doctype=Inline&group=0

edit2: p.s in current design only this "Nested Tables Load More Slowly than CSS for the Same Design" may apply from you super duper website. all other options there fails.

J J

2013-06-15 09:09:10

Made some improvements to the layout yesterday.
When you hover on the + button to add a tab or on the x button to close a tab it will turn red. Also mad the whole bar smaller, more aesthetic :P


and on a tab

grats

2013-06-15 10:47:41

From: Laimonas171
That's optional, i wanted table not div. here is not rules for that.


There's a reason nearly all forum softwares in existence dropped tables 5 + years ago


From: NKN
A few minutes ago, PulseBot.org was DDoS'd, so I turned the security of the website up. This might disallow some users from accessing the site, if it does just PM me please.


wow -.-

we need to cloudflare (not ghetto cloudflare like it is now) a dedicated server, tbh

Brandon

2013-06-15 12:11:18

From: J J
Made some improvements to the layout yesterday.
made the whole bar smaller, more aesthetic :P



You can also change the insets for the look and feel to remove the spaces around the tabbed component/applet.


UIManager.getDefaults().put("TabbedPane.contentBorderInsets", new Insets(0, 0, 0, 0));
UIManager.getDefaults().put("TabbedPane.tabsOverlapBorder", false);

Removes the gap between your applet and your tab component.. aka the space around your applet/component. Up to you though. Just thought I'd mention it.

Laimonas171

2013-06-15 12:37:05

From: grats
There's a reason nearly all forum softwares in existence dropped tables 5 + years ago


none of those tables hold data which helps to SEO or sth. like i said here is no rules. i do not say tables are best or sth though..

grats

2013-06-15 13:45:49

From: Laimonas171
none of those tables hold data which helps to SEO or sth. like i said here is no rules. i do not say tables are best or sth though..


Don't get all butthurt at me and derep me because you can't grasp basic concepts

J J

2013-06-16 06:26:50

From: Brandon
You can also change the insets for the look and feel to remove the spaces around the tabbed component/applet.


UIManager.getDefaults().put("TabbedPane.contentBorderInsets", new Insets(0, 0, 0, 0));
UIManager.getDefaults().put("TabbedPane.tabsOverlapBorder", false);

Removes the gap between your applet and your tab component.. aka the space around your applet/component. Up to you though. Just thought I'd mention it.

Oh nice, I have been playing with the insets to get the close button (x) and add button (+) like they are now. I'll definately play around with the insets for the tabbed pane, thanks!

Laimonas171

2013-06-16 09:44:47

From: grats
Don't get all butthurt at me and derep me because you can't grasp basic concepts


Thats not about butthurd, i hear you scream but i cannot see anything you can do :D

more then week, and you have done no changes to homepage.

edit:in other works, i spend to much time here arguing with you, so just gfy and show some magic you "know".

Flight

2013-06-16 10:39:08

Easy fellas, let's keep it civil shall we?

NKN

2013-06-16 10:50:52

From: Flight
Easy fellas, let's keep it civil shall we?

^This post

What's done is done. D:

J J

2013-07-14 17:15:17

I'm really getting the hang of injection, detection patterns and understanding the RuneScape class hierarchy tree.
I've now managed to create pretty stable hooks for Player#getName, NPC#getName, Client#getPlayers and Client#getNPCs

PulseBot has been started!

Jar location: http://oldschool11.runescape.com/gamepack_758473.jar
Code name: client

Loading parameters...
image http://www.runescape.com/img/rsp777/oldschool_ani.gif
java_arguments -Xmx256m -Xss2m -Dsun.java2d.noddraw=true -XX:CompileThreshold=1500 -Xincgc -XX:+UseConcMarkSweepGC -XX:+UseParNewGC
boxbgcolor black
separate_jvm true
centerimage true
boxborder false
2 0
4 5
1 311
3 false
7 http://www.runescape.com/slr.ws?order=LPWM
8 0
9 true
6 0
5 true
haveie6 true

Analyzing has started!
[ Canvas ]
^ bp extends java/awt/Canvas
+ replaced Canvas with RSCanvas
[ Node ]
^ fk extends java/lang/Object
[ CacheableNode ]
^ fn extends fk
[ CacheableNodeQueue ]
^ fz extends java/lang/Object
[ NodeHashTable ]
^ fs extends java/lang/Object
[ NodeQueue ]
^ fk extends java/lang/Object
[ NodeQueue ]
^ fg extends java/lang/Object
[ NodeQueue ]
^ fs extends java/lang/Object
[ NodeCache ]
^ fu extends java/lang/Object
[ Renderable ]
^ cg extends fn
[ Actor ]
^ as extends cg
[ Model ]
^ dw extends cg
[ Player ]
^ d extends as
* getDefinition() -> Lfx; d.m
Created normal method getDefinition returns ()Lorg/pulsebot/injection/interfaces/IPlayerDefinition;
* getName() -> Ljava/lang/String; d.y
Created normal method getName returns ()Ljava/lang/String;
* getModel() -> Ldw; d.r
[ PlayerDefinition ]
^ fx extends java/lang/Object
[ NPC ]
^ g extends as
* getDefinition() -> Lav; g.y
Created normal method getDefinition returns ()Lorg/pulsebot/injection/interfaces/INPCDefinition;
[ NPCDefinition ]
^ av extends fn
* getName() -> Ljava/lang/String; av.s
Created normal method getName returns ()Ljava/lang/String;
[ Client ]
^ client extends bs
* getNPCs() -> [Lg; client.bs
Created static method getNPCs returns ()[Lorg/pulsebot/injection/interfaces/INPC;
* getPlayers() -> [Ld; client.ga
Created static method getPlayers returns ()[Lorg/pulsebot/injection/interfaces/IPlayer;
[ GameShell ]
^ bs extends java/applet/Applet

Dumping injected classes.

Le_don

2013-07-24 23:45:12

NKN - why don't you use OVH Kimsufi for hosting? They're cheap and 5tb bandwidth a month.

NKN

2013-07-25 22:27:59

From: Le_don
NKN - why don't you use OVH Kimsufi for hosting? They're cheap and 5tb bandwidth a month.


We are planning to use ovh. We currently do not have the funds to purchase a dedicated server, so we are running off of @Justin's VPS which he's kindly shared to us for the time being.

We will have enough ad revenue soon to cash out with google. Few more clicks and we'll be at it.

Le_don

2013-07-25 22:34:57

From: NKN
We are planning to use ovh. We currently do not have the funds to purchase a dedicated server, so we are running off of @Justin's VPS which he's kindly shared to us for the time being.

We will have enough ad revenue soon to cash out with google. Few more clicks and we'll be at it.


Ah right, good luck!

I would recommend a Kimsufi dedicated server, really cheap. The others are pretty expensive.

I've got a server for a while with a few Ip's I can set you up on if you need to for whatever reason. Let me know.

J J

2013-07-28 08:14:46

Been working on the layout for a while. I've also made a JavaFX layout now instead of Swing. Here is a comparison, what looks better? Both can obviously be styled more :P

Swing

JavaFX

But the layout is not the only thing we have been working on..

Analyzing has started!
[ Canvas ]
^ bp extends java/awt/Canvas
+ replaced Canvas with RSCanvas
[ Node ]
^ fk extends java/lang/Object
* getID() -> J fk.dz
created getID returns ()J
* getNext() -> Lfk; fk.em
created getNext returns ()Lorg/pulsebot/injection/interfaces/INode;
* getPrev() -> Lfk; fk.di
created getPrev returns ()Lorg/pulsebot/injection/interfaces/INode;
[ CacheableNode ]
^ fn extends fk
* getNext() -> Lfn; fn.cp
created getNext returns ()Lorg/pulsebot/injection/interfaces/ICacheableNode;
* getPrev() -> Lfn; fn.co
created getPrev returns ()Lorg/pulsebot/injection/interfaces/ICacheableNode;
[ HashTable ]
^ fs extends java/lang/Object
* getCache() -> [Lfk; fs.m
created getCache returns ()[Lorg/pulsebot/injection/interfaces/INode;
* getSize() -> I fs.y
created getSize returns ()I
[ LinkedList ]
^ fg extends java/lang/Object
* getNext() -> Lfk; fg.y
created getNext returns ()Lorg/pulsebot/injection/interfaces/INode;
* getPrev() -> Lfk; fg.m
created getPrev returns ()Lorg/pulsebot/injection/interfaces/INode;
[ Queue ]
^ fz extends java/lang/Object
* getHead() -> Lfn; fz.y
[ Cache ]
^ fu extends java/lang/Object
* getCacheableNode() -> Lfn; fu.y
created getCacheableNode returns ()Lorg/pulsebot/injection/interfaces/ICacheableNode;
* getHashTable() -> Lfs; fu.k
created getHashTable returns ()Lorg/pulsebot/injection/interfaces/IHashTable;
* getQueue() -> Lfz; fu.n
created getQueue returns ()Lorg/pulsebot/injection/interfaces/IQueue;
* getRemaining() -> I fu.d
created getRemaining returns ()I
* getSize() -> I fu.m
created getSize returns ()I
[ Renderable ]
^ cg extends fn
* getHeight() -> I cg.bv
created getHeight returns ()I
[ Actor ]
^ as extends cg
[ Model ]
^ dw extends cg
[ Player ]
^ d extends as
* getName() -> Ljava/lang/String; d.y
created getName returns ()Ljava/lang/String;
* getModel() -> Ldw; d.r
created getModel returns ()Lorg/pulsebot/injection/interfaces/IModel;
[ NPC ]
^ g extends as
[ Client ]
^ client extends bs
* getNPCs() -> [Lg; client.bs
created getNPCs returns ()[Lorg/pulsebot/injection/interfaces/INPC;
* getPlayers() -> [Ld; client.ga
created getPlayers returns ()[Lorg/pulsebot/injection/interfaces/IPlayer;
* getGroundItems() -> [[[Lfg; client.hv
created getGroundItems returns ()[[[Lorg/pulsebot/injection/interfaces/ILinkedList;
[ GameShell ]
^ bs extends java/applet/Applet

Dumping injected classes.

The identifying is done based on tree hierarchy and bytecode patterns. We need to do investigate more about multipliers and then we can work on Actor, where the location is stored. Player and NPC both extend Actor so once we hooked that field we can debug the local position of all players and npcs. If we also hook the base-x and base-y position stored in client we can debug all positions as proper tiles already I think :)

BobboHobbo

2013-07-28 08:45:12

The Swing style looks more.. professional compared to the java fx, just my 2 cents!

NKN

2013-07-28 22:40:33

@J J you're gonna wanna hear this too.

Alright so, I've been speaking with an experienced bot maker, and from that, I've completely gutted my PulseBot project folder.

I'm starting to write the updater as its own, use a better pattern searcher, incorporate the modscript(Which will let Simba use the hooks as soon as we find them.)

I'll be heading on vacation tomorrow for a week, so I won't really have much time to work on PulseBot.


And a note for JJ: You get a week long break it seems, we've been doing stuff wrong, so we'll have to change a lot up, I'd rather you not continue and then have to rewrite more than we already have to. :(

J J

2013-07-29 04:43:53

From: BobboHobbo
The Swing style looks more.. professional compared to the java fx, just my 2 cents!

Alright, thanks for your opinion :) One thing that is important is that the people that will eventually be scripting for PulseBot would need to create GUI's with JavaFX if we made it all JavaFX. Most people seem to use GUI Builders though and the JavaFX ones seem to be better than Swing. And the people that made them by hand like me, can easily adapt to JavaFX.

From: NKN
@J J you're gonna wanna hear this too.

Alright so, I've been speaking with an experienced bot maker, and from that, I've completely gutted my PulseBot project folder.

I'm starting to write the updater as its own, use a better pattern searcher, incorporate the modscript(Which will let Simba use the hooks as soon as we find them.)

I'll be heading on vacation tomorrow for a week, so I won't really have much time to work on PulseBot.


And a note for JJ: You get a week long break it seems, we've been doing stuff wrong, so we'll have to change a lot up, I'd rather you not continue and then have to rewrite more than we already have to. :(

Alright, part of the learning process. I'll work a bit more on the UI and on some other stuff. Plenty of stuff to work on such as the script loader etc.

Before we are done it will probably take a few rewrites so we have everything optimised with the new knowledge we have every time we get a few steps further :P

samerdl

2013-07-29 05:21:31

I hope you guys haven't been intentionally clicking ads… Google can detect that and ban your account for it.. They let you reach 100$ in revenue then ban you and never pay you…

Adbrite doesn't, adbrite will pay you regardless of bannage.

NKN

2013-07-29 06:55:29

From: samerdl
I hope you guys haven't been intentionally clicking ads… Google can detect that and ban your account for it.. They let you reach 100$ in revenue then ban you and never pay you…

Adbrite doesn't, adbrite will pay you regardless of bannage.

Oh well, we'll see then won't we. :3

J J

2013-07-31 10:20:16

Been working on the JavaFX based layout, after looking and learning more about CSS I've managed to create this layout:

Pretty happy with the result. Because everything is custom I still need to make custom handlers to actually minimize and close the application. Will also need to write a custom drag listener to be able to drag it around the screen.

You need to customize a lot if you want to get rid of the window border around like this

Since NKN is on holiday I will be doing some user interface related stuff. I'll work on a script selector soon (Hit run, select script, start script. Not a SDN lol)

EDIT: here is a fake image how it would look like once everything is done and you are able to run scripts:

Sjoe

2013-07-31 13:08:28

Looks great JJ!

J J

2013-07-31 20:25:42

From: Sjoe
Looks great JJ!

Thanks man ;) I have some trouble to add the RuneScape applet to the JavaFX application.. because it is a Swing component. After a few hours of researching and attempting I started on making the script loader.

Using a predefined package for the scripts it can do this
Loading scripts!

File name: TestScript.class
Class name: TestScript
Class loader: java.net.URLClassLoader@cde6570
Loaded class: class org.pulsebot.script.TestScript
Super name: org.pulsebot.script.Script
Found script: TestScript
Annotation type: org.pulsebot.script.ScriptManifest
Found ScriptManifest: @org.pulsebot.script.ScriptManifest(category=[unassigned], version=1.0, author=JJ, name=JJ's Herblore, description=Trains your herblore)

TRiBot forces you to use the script.* package. But other bots like Powerbot you choose whatever package you want. So I've been working on something to get the package of the class.. it's harder than you might expect. But with the help of @Brandon; we have something hackish working now.

Loading scripts!

File name: TestScript.class
Class name: TestScript
Class loader: java.net.URLClassLoader@cde6570
Did not find class: TestScript (wrong name: org/pulsebot/script/TestScript)
Full class name: org/pulsebot/script/TestScript

In the exception it shows how the package name should be.. so you can extract it from there and load it properly…. Well that concludes method #1 , tomorrow I will be researching to find a cleaner method.

Oh yeah another method I tried is looking at the bytecode. Then somewhere in there is the package and you can extract it. It worked fine for a couple random class files I picked but @Brandon; sent me another one and it didn't work for that one.
Loading scripts V2!

File name: TestScript.class
Class name: TestScript
File bytes: [B@cde6570


Bytecode: ** removed **
Class index: 36
Package name: **bytecode**org/pulsebot/script/**bytecode**
Matcher group #0: 3
Matcher group #0: org/pulsebot/script
Did not find class: TestScript (wrong name: org/pulsebot/script/TestScript)
Full class name w/ package: org/pulsebot/script/TestScript

Brandon

2013-08-01 04:23:51

@J J;


package test;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;

/**
* @author Brandon
*/
public class CLoader extends ClassLoader {

public CLoader() {
super(CLoader.class.getClassLoader());
}

public String getFullClassName(byte[] data) throws IOException {
return defineClass(null, data, 0, data.length, null).getName();
}

public String getFullClassName(String classFileName) throws IOException {
return this.getFullClassName(Files.readAllBytes(Paths.get(classFileName)));
}
}


package test;

/**
*
* @author Brandon
*/
public class Test {

public static void main(String[] args) throws Exception {
String path = "C:/Users/Brandon/Desktop/Test.class";
CLoader L = new CLoader();
System.out.println(L.getFullClassName(path)); //prints Fully qualified class name.
}
}

Works by passing null to the classloader's defineClass function. The above the best possible way of getting the fully qualified class name from an array of bytes/file without using ASM/Reflection/BCEL, etc..

If you don't like that, you can finish my Cpp class reader:

#include <iostream>
#include <fstream>
#include <vector>

template <typename T>
T ReadPointer(char*& Pointer)
{
T Result = *(reinterpret_cast<T*>(Pointer));
Pointer += sizeof(T);
return Result;
}

template <typename T>
void WritePointer(char*& Pointer, const T& Value)
{
*(reinterpret_cast<T*>(Pointer)) = Value;
Pointer += sizeof(T);
}

struct ConstantPool
{
int type;
std::string name;
ConstantPool* arg1;
ConstantPool* arg2;
short index1, index2;
std::string strValue;
int intValue;
std::int64_t longValue;
float floatValue;
double doubleValue;

ConstantPool() {}
ConstantPool(char* &Pointer) {this->Read(Pointer);}
void Read(char* &Pointer);
};

void ConstantPool::Read(char* &Pointer)
{
switch(type = static_cast<int>(ReadPointer<std::uint8_t>(Pointer)))
{
case 1:
{
name = "Ascii";
int Length = ReadPointer<short>(Pointer);
while (Length > 0)
{
char C = ReadPointer<char>(Pointer);
strValue += C;
Length--;
}
}
break;

case 2:
{
name = "Unicode";
int Length = ReadPointer<short>(Pointer);
while (Length > 0)
{
char C = ReadPointer<char>(Pointer);
strValue += C;
Length--;
}
}
break;

case 3:
name = "Int";
intValue = ReadPointer<int>(Pointer);
break;

case 4:
name = "Float";
floatValue = ReadPointer<float>(Pointer);
break;

case 5:
name = "Long";
longValue = ReadPointer<std::int64_t>(Pointer);
break;

case 6:
name = "Double";
doubleValue = ReadPointer<double>(Pointer);
break;

case 7:
name = "Class";
index1 = ReadPointer<short>(Pointer);
index2 = -1;
break;

case 8:
name = "String";
index1 = ReadPointer<short>(Pointer);
index2 = -1;
break;

case 9:
name = "Field Reference";
index1 = ReadPointer<short>(Pointer);
index2 = ReadPointer<short>(Pointer);
break;

case 10:
name = "Method Reference";
index1 = ReadPointer<short>(Pointer);
index2 = ReadPointer<short>(Pointer);
break;

case 11:
name = "Interface Reference";
index1 = ReadPointer<short>(Pointer);
index2 = ReadPointer<short>(Pointer);
break;

case 12:
name = "Name And Type";
index1 = ReadPointer<short>(Pointer);
index2 = ReadPointer<short>(Pointer);
break;
}
}

typedef struct
{
int MagicNumber;
short MinorVersion;
short MajorVersion;
short ConstantPoolCount;

} ClassFile;

int main()
{
std::fstream File("C:/Users/Brandon/Desktop/test.class", std::ios::in | std::ios::binary);
if (File.is_open())
{
File.seekg(0, std::ios::end);
std::vector<std::uint8_t> Data(File.tellg());
char* Ptr = reinterpret_cast<char*>(&Data[0]);
File.seekg(0, std::ios::beg);
File.read(Ptr, Data.size());

/**Check Magic Number.**/
ClassFile BaseInfo = {0};
BaseInfo.MagicNumber = ReadPointer<int>(Ptr);
BaseInfo.MinorVersion = ReadPointer<short>(Ptr);
BaseInfo.MajorVersion = ReadPointer<short>(Ptr);
BaseInfo.ConstantPoolCount = ReadPointer<short>(Ptr);
if (BaseInfo.MagicNumber == 0xBEBAFECA)
{
std::cout << "Magic Number: " << BaseInfo.MagicNumber << "\n";
std::cout << "Minor Number: " << BaseInfo.MinorVersion << "\n";
std::cout << "Major Number: " << BaseInfo.MajorVersion << "\n";
std::cout << "Const Pool Size: " << BaseInfo.ConstantPoolCount << "\n";
std::vector<ConstantPool> ConstPool;

for (int I = 0; I < BaseInfo.ConstantPoolCount - 1; ++I)
{
ConstPool.push_back(ConstantPool(Ptr));
if (ConstPool.back().type == 5 || ConstPool.back().type == 6)
++I;
}

std::cout << "Access Flags: " << ReadPointer<short>(Ptr);
}

File.close();
}
}

J J

2013-08-01 09:41:34

Thanks Brandon :D And I will just use your Java code hehe. I got a few responses at Powerbot regarding JavaFX and adding the RuneScape applet.. Since JavaFX 2.0 it is impossible to add a Swing component to JavaFX. You can do the opposite though and I have tried. But when resizing it does not scale well and it does also eat more memory.

So I decided to look around for a custom Look & Feel and ended up going with substance.

It looks pretty similar to TRiBot now because TRileZ does also use substance, except he uses a different theme. Gray/blue is what we wanted.. think we are better off using a look and feel, saves a lot time. Another major thing is that everything else will also be launched in this style. So the Script Manager will be in the same style straight away, just like other GUI's that scripters might make some time in the future.

J J

2013-08-01 11:38:39

Made good progress with the Script selector. Can now load any class that is in the script folder regardless what the original package of the class is. So scripters won't be forced to use the scripts.* package or something like that.


Now it's time to make dinner and go to the gym. When I'm back I will work on adding stuff to filter scripts.
If you have any advice what order the column names should be, let me know! If I should add any more fields let me know aswell. :)

NKN

2013-08-05 16:43:32

Got back from my vacation, working on the remake of PulseBot now.

We're planning to move PulseBot from injection to reflection, and once we finish a beta build, we're going to release the entire bot/updater under a GNU license to the public.

J J

2013-08-05 16:51:06

Yup. The whole bot is going to be open source! A summary of the progress I've made over the past few days:

Account Manager: adding, editing and removing does work. All changes will immediately be made visually aswell as on the files on your computer.


Script Selector: the script loader can load scripts from ANY package as long as they are in the PulseBot script folder. So you are not restricted to using the scripts.* package or anything. Running scripts works, but I'm still working on stopping, pausing and repeating the scripts.


Boot screen: when you start up PulseBot you will see a pulse animation. It will immediately download the RuneScape gamepack but during these few seconds you will see this animation :)


Nebula

2013-08-05 17:07:25

not trying to be a dick or anything but howabout you actually work on the reflection itself, and then worry about the inferances/designs/leech-friendly stuff.

and why the rip zyzz… he's trash not even worth remembering

Kevin

2013-08-05 17:09:07

From: Nebula
not trying to be a dick or anything but howabout you actually work on the reflection itself, and then worry about the inferances/designs/leech-friendly stuff.

and why the rip zyzz… he's trash not even worth remembering


NKN is the guy working on the reflection itself and together they are deciding direction - however, in the meanwhile, isn't it better to do some gui work from JJ's standpoint as opposed to doing nothing at all?

NKN

2013-08-05 17:13:38

From: Nebula
not trying to be a dick or anything but howabout you actually work on the reflection itself, and then worry about the inferances/designs/leech-friendly stuff.

and why the rip zyzz… he's trash not even worth remembering

I'm working on the reflection/updater part at the moment.

Nebula

2013-08-05 17:17:11

From: NKN
I'm working on the reflection/updater part at the moment.


oh ok, and y u no make this project for simba, so that us pascalers can use it

NKN

2013-08-05 17:34:33

From: Nebula
oh ok, and y u no make this project for simba, so that us pascalers can use it


you're slow there Nebula.

i am making it 4 simba.

simba is going to use same hooks pulsebot does

Nebula

2013-08-05 17:44:47

From: NKN
you're slow there Nebula.

i am making it 4 simba.

simba is going to use same hooks pulsebot does


ooh

yay

<3 nkn

Nebula<3'sreflection/injection

currently using dscale collector with some reflection stuff @Flight posted

4-500k ($1)/hour

kty
*****Nebula Scale-Collector*****
Running For: 46 Minutes and 44 Seconds
Scales Collected: 419
Scales Per Hour: 537
********************************

Brandon

2013-08-05 18:10:48

From: Nebula
oh ok, and y u no make this project for simba, so that us pascalers can use it


This actually bothers me.. I don't wanna hijack NKN's thread but it should be his choice whether or not he shares anything with Simba/SRL/etc..

It is nice that he is but he really isn't obliged to. It is a separate bot after all..

Gala

2013-08-05 19:09:04

I hope "RIP zyzz" is meant as ironically as "bieberfever".

@topic
nice to hear it will be open source!

NKN

2013-08-05 19:23:15

From: Gala
I hope "RIP zyzz" is meant as ironically as "bieberfever".

@topic
nice to hear it will be open source!


Off topic a bit, but what is this "RIP zyzz?"

Gala

2013-08-05 19:40:21

From: NKN
Off topic a bit, but what is this "RIP zyzz?"


Google zyzz.
Overhyped disco "pumper" kid.

Justin

2013-08-05 21:19:33

From: NKN
Off topic a bit, but what is this "RIP zyzz?"


Off topic: Zyzz was amazing. Research him :)

On topic; How's the updater coming along?

NKN

2013-08-05 21:28:51

From: Justin
Off topic: Zyzz was amazing. Research him :)

On topic; How's the updater coming along?


Well, I'm gutting it at the moment, I should be able to work on the updater tomorrow.

A bunch of it required a rework to work with a modscript

Soon though, soon. :)

J J

2013-08-06 04:52:01

From: Nebula
not trying to be a dick or anything but howabout you actually work on the reflection itself, and then worry about the inferances/designs/leech-friendly stuff.

and why the rip zyzz… he's trash not even worth remembering

NKN was on holiday and during that time I decided to work on the Account Manager, Script Selector and overall UI of PulseBot.
I didn't work on the updater because NKN had plans to rewrite some stuff together with a friend of him that made a bot.

You could have checked page 6 to check the updater progress.
Analyzing has started!
[ Canvas ]
^ bp extends java/awt/Canvas
+ replaced Canvas with RSCanvas
[ Node ]
^ fk extends java/lang/Object
* getID() -> J fk.dz
created getID returns ()J
* getNext() -> Lfk; fk.em
created getNext returns ()Lorg/pulsebot/injection/interfaces/INode;
* getPrev() -> Lfk; fk.di
created getPrev returns ()Lorg/pulsebot/injection/interfaces/INode;
[ CacheableNode ]
^ fn extends fk
* getNext() -> Lfn; fn.cp
created getNext returns ()Lorg/pulsebot/injection/interfaces/ICacheableNode;
* getPrev() -> Lfn; fn.co
created getPrev returns ()Lorg/pulsebot/injection/interfaces/ICacheableNode;
[ HashTable ]
^ fs extends java/lang/Object
* getCache() -> [Lfk; fs.m
created getCache returns ()[Lorg/pulsebot/injection/interfaces/INode;
* getSize() -> I fs.y
created getSize returns ()I
[ LinkedList ]
^ fg extends java/lang/Object
* getNext() -> Lfk; fg.y
created getNext returns ()Lorg/pulsebot/injection/interfaces/INode;
* getPrev() -> Lfk; fg.m
created getPrev returns ()Lorg/pulsebot/injection/interfaces/INode;
[ Queue ]
^ fz extends java/lang/Object
* getHead() -> Lfn; fz.y
[ Cache ]
^ fu extends java/lang/Object
* getCacheableNode() -> Lfn; fu.y
created getCacheableNode returns ()Lorg/pulsebot/injection/interfaces/ICacheableNode;
* getHashTable() -> Lfs; fu.k
created getHashTable returns ()Lorg/pulsebot/injection/interfaces/IHashTable;
* getQueue() -> Lfz; fu.n
created getQueue returns ()Lorg/pulsebot/injection/interfaces/IQueue;
* getRemaining() -> I fu.d
created getRemaining returns ()I
* getSize() -> I fu.m
created getSize returns ()I
[ Renderable ]
^ cg extends fn
* getHeight() -> I cg.bv
created getHeight returns ()I
[ Actor ]
^ as extends cg
[ Model ]
^ dw extends cg
[ Player ]
^ d extends as
* getName() -> Ljava/lang/String; d.y
created getName returns ()Ljava/lang/String;
* getModel() -> Ldw; d.r
created getModel returns ()Lorg/pulsebot/injection/interfaces/IModel;
[ NPC ]
^ g extends as
[ Client ]
^ client extends bs
* getNPCs() -> [Lg; client.bs
created getNPCs returns ()[Lorg/pulsebot/injection/interfaces/INPC;
* getPlayers() -> [Ld; client.ga
created getPlayers returns ()[Lorg/pulsebot/injection/interfaces/IPlayer;
* getGroundItems() -> [[[Lfg; client.hv
created getGroundItems returns ()[[[Lorg/pulsebot/injection/interfaces/ILinkedList;
[ GameShell ]
^ bs extends java/applet/Applet

Dumping injected classes.

But a big part is going to be rewritten and we will also switch to reflection.

From: Gala
I hope "RIP zyzz" is meant as ironically as "bieberfever".

@topic
nice to hear it will be open source!

All accounts are pretty much meant ironically. But yesterday it was exactly 2 years ago that Zyzz died. I don't actually track that myself but I track my progress on bodybuilding.com and read the Misc section once in a while and saw a thread about Zyzz and that it has been 2 years today (yesterday..).

xtrapsp

2013-08-06 06:20:49

Neb, get off their balls. If you have a complaint make your own bot. JJ and NKN are doing this for free and for experience. What are you doing towards it?

J J

2013-09-13 15:56:41

We've been slacking for a month but I've started updating some code and the interface. This has significantly reduced the PulseBot jar; it's now 305 kB :)

Account Manager

Bot Interface

Script Selector

The Killer

2013-09-13 15:59:56

Should make the pin number only and limit it to 4 chars, you know what retards are like…
Should make lampskill a dropdown box too.
But good work nice to see some work on what I thought was a lost project.

NKN

2013-09-13 18:31:32

From: The Killer
Should make the pin number only and limit it to 4 chars, you know what retards are like…
Should make lampskill a dropdown box too.
But good work nice to see some work on what I thought was a lost project.


I've been seriously slacking. School work and football takes me the rest of the day when I get home. I'm going to try and work out a schedule with @J J sometime this weekend to get going on it.

Gala

2013-09-14 10:19:06

gj jj. Really like the gui.

NKN

2013-10-19 16:08:20

Released PulseBot source.

Cheddy

2013-10-20 09:51:18

Hey @NKN Thanks for releasing source =)

I have modified the output so that it is in a format the simba can use directly. I will make it so that it saves it to a file later. Are there any more analysers for fields? (I suck at reverse engineering)

// Updater For SRL (Based Off Pulsebot (I Take No Credit / This Just OutPuts It Into A Format Simba Can Use Without An External Parser)

Const

//Format ==> Variable = 'Data'; //Data Type (Links To Another Class)

{Node}

Class_Node = 'fu';


{CacheableNode}

Class_CacheableNode = 'fn';


{Renderable}

Class_Renderable = 'cy';


{Model}

Class_Model = 'df';


{Actor}

Class_Actor = 'ah';


{NodeHashTable}

Class_NodeHashTable = 'fa';


{Player}

Class_Player = 'v';

Field_PlayerGetModel = 'v.z'; //df

Field_PlayerGetName = 'v.g'; //String


{NPC}

Class_NPC = 'c';

Field_NPCGetDefinition = 'c.g'; //aa


{NPCDefinition}

Class_NPCDefinition = 'aa';


{Client}

Class_Client = 'client';

Field_ClientGetLocalNPCs = 'client.bo'; //c

Field_ClientGetLocalPlayers = 'client.gn'; //v

NKN

2013-10-20 10:35:57

From: fish1328
Hey @NKN Thanks for releasing source =)

I have modified the output so that it is in a format the simba can use directly. I will make it so that it saves it to a file later. Are there any more analysers for fields? (I suck at reverse engineering)

// Updater For SRL (Based Off Pulsebot (I Take No Credit / This Just OutPuts It Into A Format Simba Can Use Without An External Parser)

Const

//Format ==> Variable = 'Data'; //Data Type (Links To Another Class)

{Node}

Class_Node = 'fu';


{CacheableNode}

Class_CacheableNode = 'fn';


{Renderable}

Class_Renderable = 'cy';


{Model}

Class_Model = 'df';


{Actor}

Class_Actor = 'ah';


{NodeHashTable}

Class_NodeHashTable = 'fa';


{Player}

Class_Player = 'v';

Field_PlayerGetModel = 'v.z'; //df

Field_PlayerGetName = 'v.g'; //String


{NPC}

Class_NPC = 'c';

Field_NPCGetDefinition = 'c.g'; //aa


{NPCDefinition}

Class_NPCDefinition = 'aa';


{Client}

Class_Client = 'client';

Field_ClientGetLocalNPCs = 'client.bo'; //c

Field_ClientGetLocalPlayers = 'client.gn'; //v


There are a ton more fields/classes I haven't hooked. I just wrote these up for testing purposes. I need to go rewrite my analyzers after getting some feedback from more experienced bot developers.

Cheddy

2013-10-20 11:26:59

Yeh, I know there are loads more :D I was trying to find a method for analysing baseX and baseY. In both the client class and the actor. Any ideas? Oh, and Idk how to get multis :/ I haven't done de-obs for years. I guess one method would be to find the scenarios where it requires the actual value of a variable and catch that. Another way would be to find the most used multi and test it. The possibilities are endless :)

Cheddy

2013-10-20 16:59:50

Ok, I have made some adjustments. Added some fields, learnt how to get multis and methods :D And the finished result (- some other hooks I have yet to add, such as GetPlane, and the render info). The next stage is:
A: To add the remaining analysers
B: To make it so that it auto uploads the hooks to github/pastebin

Oh, I probably won't release my updater… (Mainly cause its so badly laid out that it wont let me export it as a jar, so I have to use it from within the IDE :D)



Const

{Node}

Class_Node = 'fu'; //[Extends] Object

Field_NodeGetNext = 'ex'; //fu

Field_NodeGetID = 'da'; //J

Field_NodeGetPrev = 'du'; //fu


{CacheableNode}

Class_CacheableNode = 'fn'; //[Extends] fu

Field_CacheableNodeGetNext = 'ct'; //fn

Field_CacheableNodeGetPrev = 'cq'; //fn


{Stream}

Class_Stream = 'dr'; //[Extends] fu

Method_GetUnsignedLEShort = 'af'; //(I)I
Method_GetShort = 'as'; //(B)I
Method_GetString = 'aj'; //(I)Ljava/lang/String;

{Renderable}

Class_Renderable = 'cy'; //[Extends] fn

Field_RenderableGetHeight = 'bw'; //I
Multiplier_RenderableGetHeight = -163277425;


{Character}

Class_Character = 'ah'; //[Extends] cy

Field_CharacterGetHitDamages = 'am'; //I[]

Field_CharacterGetText = 'aq'; //String

Field_CharacterGetPathY = 'bc'; //I[]

Field_CharacterGetPathX = 'bo'; //I[]

Field_CharacterGetLocalX = 'x'; //I
Multiplier_CharacterGetLocalX = 135784575;

Field_CharacterGetLocalY = 'k'; //I
Multiplier_CharacterGetLocalY = 349308153;

Field_CharacterGetAnimation = 'ag'; //I
Multiplier_CharacterGetAnimation = -1068851659;

Field_CharacterGetMaxHealth = 'ab'; //I
Multiplier_CharacterGetMaxHealth = 984722601;

Field_CharacterGetHealth = 'ao'; //I
Multiplier_CharacterGetHealth = 2041372558;

Field_CharacterGetInteracting = 'ay'; //I
Multiplier_CharacterGetInteracting = -1946153975;


{CacheableNodeQueue}

Class_CacheableNodeQueue = 'fl'; //[Extends] Object

Field_CacheableNodeQueueGetHead = 'g'; //fn


{NodeHashTable}

Class_NodeHashTable = 'fa'; //[Extends] Object

Field_NodeHashTableGetNodes = 'm'; //fu[]

Field_NodeHashTableGetSize = 'n'; //I


{NodeQueue}

Class_NodeQueue = 'fm'; //[Extends] Object

Field_NodeQueueGetHead = 'g'; //fu

Field_NodeQueueGetCurrent = 'm'; //fu


{NodeCache}

Class_NodeCache = 'fb'; //[Extends] Object

Field_NodeCacheGetCacheableNode = 'g'; //fn

Field_NodeCacheGetQueue = 'n'; //fl

Field_NodeCacheGetHashTable = 'r'; //fa

Field_NodeCacheGetRemaining = 'v'; //I

Field_NodeCacheGetSize = 'g'; //fn


{Model}

Class_Model = 'df'; //[Extends] cy

Field_ModelGetTrianglesX = 't'; //I[]

Field_ModelGetTrianglesY = 'f'; //I[]

Field_ModelGetTrianglesZ = 'b'; //I[]

Field_ModelGetVerticesX = 'i'; //I[]

Field_ModelGetVerticesY = 's'; //I[]

Field_ModelGetVerticesZ = 'w'; //I[]


{StringStorage}

Class_StringStorage = 'er'; //[Extends] Object


{ItemDefinition}

Class_ItemDefinition = 'af'; //[Extends] fn

Field_ItemDefinitionGetGroundActions = 'q'; //String[]

Field_ItemDefinitionGetInventoryActions = 'c'; //String[]

Field_ItemDefinitionGetName = 't'; //String


{Item}

Class_Item = 'o'; //[Extends] cy


{ObjectDefinition}

Class_ObjectDefinition = 'av'; //[Extends] fn

Field_ObjectDefinitionGetName = 'b'; //String

Field_ObjectDefinitionGetActions = 'au'; //String[]


{NPCDefinition}

Class_NPCDefinition = 'aa'; //[Extends] fn

Field_NPCDefinitionGetActions = 'k'; //String[]

Field_NPCDefinitionGetName = 'i'; //String

Field_NPCDefinitionGetID = 'n'; //I
Multiplier_NPCDefinitionGetID = 345436077;


{NPC}

Class_NPC = 'c'; //[Extends] ah

Field_NPCGetDefinition = 'g'; //aa


{PlayerDefinition}

Class_PlayerDefinition = 'fp'; //[Extends] Object

Field_PlayerDefinitionGetAppearanceIndices = 'f'; //I[]

Field_PlayerDefinitionGetAppearance = 'g'; //I[]


{Player}

Class_Player = 'v'; //[Extends] ah

Field_PlayerGetName = 'g'; //String

Field_PlayerGetDefinition = 'm'; //fp

Field_PlayerGetModel = 'z'; //df

Field_PlayerGetLevel = 'av'; //I
Multiplier_PlayerGetLevel = -1174152085;


{Region}

Class_Region = 'cn'; //[Extends] Object

Field_RegionGetSceneObjects = 'd'; //cd[]

Field_RegionGetSceneTiles = 'i'; //cs[][][]


{SceneTile}

Class_SceneTile = 'cs'; //[Extends] fu

Field_SceneTileGetTilePlane = 'g'; //I
Multiplier_SceneTileGetTilePlane = 1989033141;

Field_SceneTileGetSceneObjects = 'b'; //cd[]


{GameObject}

Class_GameObject = 'cd'; //[Extends] Object

Field_GameObjectGetRenderable = 'i'; //cy


{Widget}

Class_Widget = 'ff'; //[Extends] fu

Field_WidgetGetRelativeX = 'o'; //I
Multiplier_WidgetGetRelativeX = -257616485;

Field_WidgetGetRelativeY = 'h'; //I
Multiplier_WidgetGetRelativeY = -1372983597;


{Mouse}

Class_Mouse = 'bb'; //[Extends] Object

Field_MouseGetX = 'r'; //I
Multiplier_MouseGetX = 2059580159;

Field_MouseGetY = 'n'; //I
Multiplier_MouseGetY = 1941465825;

Field_MouseLastPressedState = 'd'; //I


{Keyboard}

Class_Keyboard = 'bh'; //[Extends] Object


{Client}

Class_Client = 'client'; //[Extends] bo

Field_ClientGetNPCIndices = 'client.gt'; //I[]

Field_ClientGetMenuCount = 'client.ik'; //I
Multiplier_ClientGetMenuCount = -1342266087;

Field_ClientGetMenuActions = 'bl.o'; //String[]

Field_ClientGetMenuOptions = 'p.p'; //String[]

Field_ClientGetBaseX = 'i.cl'; //I
Multiplier_ClientGetBaseX = 1356069417;

Field_ClientGetBaseY = 'c.cv'; //I
Multiplier_ClientGetBaseY = -1364280751;

Field_ClientGetWidgets = 'ff.g'; //ff[][]

Field_ClientGetCamPitch = 'aa.fp'; //I
Multiplier_ClientGetCamPitch = 1540110941;

Field_ClientGetCamYaw = 'au.fc'; //I
Multiplier_ClientGetCamYaw = -1659749133;

Field_ClientGetCamPosX = 'fh.fs'; //I
Multiplier_ClientGetCamPosX = 1918943187;

Field_ClientGetCamPosY = 'k.fy'; //I
Multiplier_ClientGetCamPosY = -1953236587;

Field_ClientGetCamPosZ = 'ds.ft'; //I
Multiplier_ClientGetCamPosZ = 786518251;

Field_ClientGetLocalPlayer = 'fs.hj'; //v

Field_ClientGetCompassAngle = 'client.du'; //I
Multiplier_ClientGetCompassAngle = 1348192319;

Field_ClientGetMapOffset = 'client.ec'; //I
Multiplier_ClientGetMapOffset = 1061860279;

Field_ClientGetMapScale = 'client.fv'; //I
Multiplier_ClientGetMapScale = -1976506507;

Field_ClientGetMenuX = 'hh'; //I
Multiplier_ClientGetMenuX = 1738846423;

Field_ClientGetMenuY = 'hr'; //I
Multiplier_ClientGetMenuY = 1662299309;

Field_ClientGetMenuWidth = 'hv'; //I
Multiplier_ClientGetMenuWidth = 1583740445;

Field_ClientGetMenuHeight = 'ic'; //I
Multiplier_ClientGetMenuHeight = 1214887953;

Field_ClientIsMenuOpen = 'hn'; //Z

Field_ClientGetPacketStream = 'cq'; //do

Field_ClientGetCurrentLevels = 'client.hz'; //I[]

Field_ClientGetMaxLevels = 'client.hq'; //I[]

Field_ClientGetExperiences = 'client.hb'; //I[]

Field_ClientGetEnergy = 'jx'; //I
Multiplier_ClientGetEnergy = 434436556;

Field_ClientGetWeight = 'jj'; //I
Multiplier_ClientGetWeight = -259584445;

Field_ClientGetLocalPlayers = 'client.gn'; //v[]

Field_ClientGetLocalNPCs = 'client.bo'; //c[]



BigRedJapan

2013-11-23 05:06:51

Is PulseBot OVer?

NKN

2013-11-23 07:21:25

From: Rules of Joe
Is PulseBot OVer?


Development is just slowed. I didn't predict my classwork schedule

BigRedJapan

2013-11-23 13:32:32

I See well I support! Just wanted to see Java based Bot come out!!!

xtrapsp

2013-11-26 05:44:23

From: NKN
Development is just slowed. I didn't predict my classwork schedule


It's over.

Hoodz

2013-11-26 06:08:42

From: xtrapsp
It's over.


its taking to long now yes :(

samerdl

2013-12-01 01:28:17

It's all over guys, i hope you all learned stuff. Rip my 5$ lmao, nah just kidding. Glad you guys gave this a try for as long as you did.

NKN

2013-12-01 08:19:44


Class Hook: Node ft
Class Hook: CacheableNode fw
Class Hook: Renderable cr
Class Hook: Model db
Class Hook: Actor ao
Class Hook: NodeHashTable fh
Class Hook: Player f
Field Hook: f.w PlayerDefinition Lfk; -1
Field Hook: f.s PlayerModel Ldb; -1
Field Hook: f.i PlayerName Ljava/lang/String -1
Class Hook: PlayerDefinition fk
Class Hook: NPC y
Field Hook: y.i NPCDefinition Law; -1
Class Hook: NPCDefinition aw
Class Hook: Client client
Field Hook: client.bs NPCArray [Ly; -1
Field Hook: client.gd PlayerArray [Lf; -1

Hooks haven't broke.
Rewriting a few of the analyzers, fixing the instruction searcher, going to try and hook maybe tile(?)
Dunno yet, keep checking github for updates.

Hoodz

2013-12-01 08:39:18

From: NKN

Class Hook: Node ft
Class Hook: CacheableNode fw
Class Hook: Renderable cr
Class Hook: Model db
Class Hook: Actor ao
Class Hook: NodeHashTable fh
Class Hook: Player f
Field Hook: f.w PlayerDefinition Lfk; -1
Field Hook: f.s PlayerModel Ldb; -1
Field Hook: f.i PlayerName Ljava/lang/String -1
Class Hook: PlayerDefinition fk
Class Hook: NPC y
Field Hook: y.i NPCDefinition Law; -1
Class Hook: NPCDefinition aw
Class Hook: Client client
Field Hook: client.bs NPCArray [Ly; -1
Field Hook: client.gd PlayerArray [Lf; -1

Hooks haven't broke.
Rewriting a few of the analyzers, fixing the instruction searcher, going to try and hook maybe tile(?)
Dunno yet, keep checking github for updates.

Nice but i rather have a working reflection include because i dont know how to script in java. :p

NKN

2013-12-01 09:02:49

From: hoodz
Nice but i rather have a working reflection include because i dont know how to script in java. :p


I'll finish updater then work on reflection include.
idk