View previous topic :: View next topic |
Author |
Message |
akumakuja28 Master Cheater Reputation: 16
Joined: 28 Jun 2015 Posts: 432
|
|
Back to top |
|
|
predprey Master Cheater Reputation: 24
Joined: 08 Oct 2015 Posts: 486
|
Posted: Thu Jul 21, 2016 2:12 am Post subject: |
|
|
thanks. was there any change from just now before the previous thread was taken down?
|
|
Back to top |
|
|
akumakuja28 Master Cheater Reputation: 16
Joined: 28 Jun 2015 Posts: 432
|
Posted: Thu Jul 21, 2016 2:20 am Post subject: |
|
|
predprey wrote: | thanks. was there any change from just now before the previous thread was taken down? |
Forgot the 64 bit check. Some people still use the 32bit version.
_________________
|
|
Back to top |
|
|
++METHOS I post too much Reputation: 92
Joined: 29 Oct 2010 Posts: 4197
|
Posted: Thu Jul 21, 2016 4:38 am Post subject: |
|
|
Very clever. Good work!
I probably won't ever use this, just because I have no need to, but I think it's a really nice contribution. I noticed that you included an option to save load/auto-load on startup...does that mean that people can permanently save their color changes?
Thanks for sharing.
|
|
Back to top |
|
|
akumakuja28 Master Cheater Reputation: 16
Joined: 28 Jun 2015 Posts: 432
|
Posted: Thu Jul 21, 2016 11:09 am Post subject: |
|
|
++METHOS wrote: | Very clever. Good work!
I probably won't ever use this, just because I have no need to, but I think it's a really nice contribution. I noticed that you included an option to save load/auto-load on startup...does that mean that people can permanently save their color changes?
Thanks for sharing. |
Permanent? Kinda the extension creates two .ini files one file is the colors stores
the other is a check file for the state of auto load. Upon startup it checks the auto load state. If its true it activates the color change. This happens so fast its "permanent" like. But completely optional.
Too bad you will never use it? But it is just visual mod. More so its a test of the waters for a Future project which is geared more towards the users of CE vs us creators.
Thanks for the reps predprey and methos.
_________________
|
|
Back to top |
|
|
++METHOS I post too much Reputation: 92
Joined: 29 Oct 2010 Posts: 4197
|
Posted: Thu Jul 21, 2016 11:26 am Post subject: |
|
|
Yeah, that's basically what I meant as far as a permanent solution...i.e. not having to always set the changes.
As far as not using it, I only say that because I don't really have any desire to change the colors of the interface. A few years ago, I might have felt differently, but these days, I don't do much in the way of customization. I guess I'm getting old.
Nonetheless, I do think it's cool and it's a great contribution. CE just keeps getting better and better.
Incorporating LUA functionality in to CE was a great idea. I just wish I had time to learn it. Maybe some day.
|
|
Back to top |
|
|
akumakuja28 Master Cheater Reputation: 16
Joined: 28 Jun 2015 Posts: 432
|
|
Back to top |
|
|
++METHOS I post too much Reputation: 92
Joined: 29 Oct 2010 Posts: 4197
|
Posted: Thu Jul 21, 2016 12:58 pm Post subject: |
|
|
Thanks. I will surely check it out if I can ever get around to doing more and learning more about it.
Yeah, I knew you were trying to learn, which is why this plugin is so impressive to me. I agree about most of the documentation that's available. I think the same is true for other things, non-LUA related, as well.
|
|
Back to top |
|
|
Merlini Advanced Cheater Reputation: 2
Joined: 12 Jun 2016 Posts: 53
|
Posted: Thu Jul 21, 2016 4:47 pm Post subject: |
|
|
Thank you very much for this.
I've been having problem with visibility issues with CE and this is perfect.
|
|
Back to top |
|
|
predprey Master Cheater Reputation: 24
Joined: 08 Oct 2015 Posts: 486
|
Posted: Thu Jul 21, 2016 6:00 pm Post subject: |
|
|
Web_Check_ADD_List_Companion seems to cause a short freeze of ~1-1.5 seconds when it executes. Not sure if it's me only.
|
|
Back to top |
|
|
Dark Byte Site Admin Reputation: 458
Joined: 09 May 2003 Posts: 25291 Location: The netherlands
|
Posted: Thu Jul 21, 2016 7:06 pm Post subject: |
|
|
if you have a slow connection that can happen. That's why I recommend using createNativeThread() when fetching pages from the web
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.
Like my help? Join me on Patreon so i can keep helping |
|
Back to top |
|
|
akumakuja28 Master Cheater Reputation: 16
Joined: 28 Jun 2015 Posts: 432
|
Posted: Thu Jul 21, 2016 9:51 pm Post subject: |
|
|
Dark Byte wrote: | if you have a slow connection that can happen. That's why I recommend using createNativeThread() when fetching pages from the web |
Uh oh I got a Dark Byte response. I did notice a small lag with the web check on startup so a timer was used to execute the code 12 seconds after start. But a lag of 1.5 seconds is enough to think its going to crash.
I will get a fix out with dark byte's recommendation.
_________________
|
|
Back to top |
|
|
predprey Master Cheater Reputation: 24
Joined: 08 Oct 2015 Posts: 486
|
Posted: Fri Jul 22, 2016 2:56 am Post subject: |
|
|
I've been wondering, how did you find those instructions that you inject at?
EDIT: ok, i found the address to the onClick function i want by looking at the lua stack using tostring(function). do you know of any documentation on the structure of the lua stack?
|
|
Back to top |
|
|
akumakuja28 Master Cheater Reputation: 16
Joined: 28 Jun 2015 Posts: 432
|
Posted: Fri Jul 22, 2016 1:03 pm Post subject: |
|
|
predprey wrote: | I've been wondering, how did you find those instructions that you inject at?
EDIT: ok, i found the address to the onClick function i want by looking at the lua stack using tostring(function). do you know of any documentation on the structure of the lua stack? |
Finding Injections: I used a partial "AOB" scan using "readBytesLocal(address,bytecount, ReturnAsTable)"
1.Return as Table was set to true. Scanned 10000 bytes.
2."table.concat" into a string with no spaces.
3.used "string.find" to locate the pattern of bytes
4. Performed a Math procedure to divide the "string.find", locating the start of CE code I wanted.
5. Did a little more math to isolate the offset.
6. Rinse and repeat.
7. Same basic concept as asm "AOB" injections. Unfortunately an AOB for "Local" was not in CE so I made one.
8. Then just used "writeIntegerLocal()" to do the color edit.
Second Question:
I dont know what on click function you are referring too.
"Lua Stack" ??
Oh and the update is out with the Web Check FIX.
_________________
|
|
Back to top |
|
|
predprey Master Cheater Reputation: 24
Joined: 08 Oct 2015 Posts: 486
|
Posted: Fri Jul 22, 2016 2:02 pm Post subject: |
|
|
akumakuja28 wrote: | Oh and the update is out with the Web Check FIX. |
thanks
akumakuja28 wrote: | Finding Injections: I used a partial "AOB" scan using "readBytesLocal(address,bytecount, ReturnAsTable)"
1.Return as Table was set to true. Scanned 10000 bytes.
2."table.concat" into a string with no spaces.
3.used "string.find" to locate the pattern of bytes
4. Performed a Math procedure to divide the "string.find", locating the start of CE code I wanted.
5. Did a little more math to isolate the offset.
6. Rinse and repeat.
7. Same basic concept as asm "AOB" injections. Unfortunately an AOB for "Local" was not in CE so I made one.
8. Then just used "writeIntegerLocal()" to do the color edit.
Second Question:
I dont know what on click function you are referring too.
"Lua Stack" ?? |
1st Qns:
I meant how did you find where the color asm instructions were in CE. I did not look into what exactly the instructions were doing but I assume they are responsible for loading the colors of CE, right? So did you find the instructions by searching CE's memory for the color codes or some other method?
2nd Qns:
I was trying to hook into CE's set hotkey function. So with tostring(getMainForm().SetHotkey1.onClick) I could get an address to the part of the Lua stack that contains the address to CE's instruction. e.g.
function: 000000001EBEA9A0 >> Pointer to Structure in Lua Stack
At 000000001EBEA9A0+0x14 is address to the hotkey instruction in CE.
However for memory record the pointer is a direct pointer to pointer of the memory record in CE's memory.
userdata: 00000000DEC248B0 >> Pointer to Structure in Lua Stack
At 00000000DEC248B0 is address to memory record structure in CE's memory.
I did not know what the other values pushed onto the Lua execution stack were, so I was looking for documentation on comprehending the stack behavior.
|
|
Back to top |
|
|
|