Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


CE 6.5 bugs
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Next
 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine
View previous topic :: View next topic  
Author Message
mgr.inz.Player
I post too much
Reputation: 218

Joined: 07 Nov 2008
Posts: 4438
Location: W kraju nad Wisla. UTC+01:00

PostPosted: Thu Feb 18, 2016 7:09 am    Post subject: Reply with quote

@DB, what you think about this (groupscan OutOfOrder modification ):
https://github.com/cheat-engine/cheat-engine/commit/ef697eb9ed30ea7a3590072cf8237ab4cb90d3d7

_________________
Back to top
View user's profile Send private message MSN Messenger
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Thu Feb 18, 2016 3:14 pm    Post subject: Reply with quote

When using the debugger, the 'Execute till return' should stop on the return. I think I understand the reasoning for the change, but it can be confusing at first.

Also, one particular, 64bit target tends to crash when using the execute till return feature. It doesn't always happen, but when it does, it seems as if the return address may be wrong, or the code has shifted or something.

Thanks.
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Fri Feb 19, 2016 2:44 am    Post subject: Reply with quote

mgr.inz.Player wrote:
@DB, what you think about this (groupscan OutOfOrder modification ):
https://github.com/cheat-engine/cheat-engine/commit/ef697eb9ed30ea7a3590072cf8237ab4cb90d3d7

i'll check it out (not sure wh ycurrentoffsetEqualToZeroExist but i'll do some debugging)

_________________
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
View user's profile Send private message MSN Messenger
Csimbi
I post too much
Reputation: 92

Joined: 14 Jul 2007
Posts: 3102

PostPosted: Fri Feb 19, 2016 3:01 am    Post subject: Reply with quote

What do I need to build CE nowadays?
Someone had a build script, too - is that still working?

I'd like to check why CE tables are not opened when the process is selected.
I could also use a hint on which unit includes this code.

Thanks!
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 457

Joined: 09 May 2003
Posts: 25262
Location: The netherlands

PostPosted: Fri Feb 19, 2016 3:14 am    Post subject: Reply with quote

the ce source section has a link somewhere.
also the latest lazarus release can almost compile it fully with some winsock exceptions. (just comment it out)

the table open suggestion still works for me.

https://github.com/cheat-engine/cheat-engine/blob/master/Cheat%20Engine/MainUnit.pas#L2473
https://github.com/cheat-engine/cheat-engine/blob/master/Cheat%20Engine/MainUnit.pas#L2652

it checks the my cheat tables folder in your user folder. Perhaps you have an username it can't handle

_________________
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


Last edited by Dark Byte on Fri Feb 19, 2016 3:16 am; edited 1 time in total
Back to top
View user's profile Send private message MSN Messenger
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Fri Feb 19, 2016 3:16 am    Post subject: Reply with quote

Csimbi wrote:
I'd like to check why CE tables are not opened when the process is selected.
-If you're referring to the prompt that asks if you'd like to open the corresponding cheat table that applies to the selected process, it will work as intended if you place your cheat tables inside C:\Users\Username\Documents\My Cheat Tables.
Back to top
View user's profile Send private message
Csimbi
I post too much
Reputation: 92

Joined: 14 Jul 2007
Posts: 3102

PostPosted: Fri Feb 19, 2016 4:26 am    Post subject: Reply with quote

++METHOS wrote:
Csimbi wrote:
I'd like to check why CE tables are not opened when the process is selected.
-If you're referring to the prompt that asks if you'd like to open the corresponding cheat table that applies to the selected process, it will work as intended if you place your cheat tables inside C:\Users\Username\Documents\My Cheat Tables.

Yup, it's broken, I know.
That's one of the things I'd like to fix and then I'd like to add a choice, too when multiple tables exist with the same name.
Back to top
View user's profile Send private message
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Fri Feb 19, 2016 4:32 am    Post subject: Reply with quote

Csimbi wrote:
Yup, it's broken, I know.
That's one of the things I'd like to fix
-Being able to choose the default folder would be nice. Very Happy

Csimbi wrote:
and then I'd like to add a choice, too when multiple tables exist with the same name.
-Not sure how that would work.
Back to top
View user's profile Send private message
Csimbi
I post too much
Reputation: 92

Joined: 14 Jul 2007
Posts: 3102

PostPosted: Fri Feb 19, 2016 4:56 am    Post subject: Reply with quote

++METHOS wrote:
Csimbi wrote:
Yup, it's broken, I know.
That's one of the things I'd like to fix
-Being able to choose the default folder would be nice. Very Happy

DB told me at some point that it's there and I can confirm that it works.
It came up because CE was always recreating a suspicious directory called 'My Cheat Tables' for everyone to see Wink
Just move all your tables anywhere else, and open it from the new location.
CE will remember that and won't re-create the suspicious directory.
Problem is, it won't look for existing tables anymore.
That's one thing I'd like to fix.

++METHOS wrote:
Csimbi wrote:
and then I'd like to add a choice, too when multiple tables exist with the same name.
-Not sure how that would work.

Easy-peasy.
You create tables like:
Code:
Borderlands2.ct
Borderlands2-AimLock.CT
Borderlands2_dev.ct
Borderlands2-TechnoJacker.CT

When you attach CE to the Borderlands2.exe process, it'll pop up a dialog showing the list of these, asking which one do you what.

I.e. findfirst/findnext are fed with Borderlands2*.ct rather than Borderlands2.ct
Here's a possibly broken pseudocode:
Code:
filenamebase=changefileext(filename,"")+'*.ct';
if (first=findfirst(filenamebase)!=NULL)
{
    // Additional, new mechanism when multiple files are found
    if (next=findnext(filenamebase)!=NULL)
    {
        do dialogwithlist.list.add(this) while (next=findnext(filenamebase)!=NULL);
        dialogwithlist.showmodal();
    }
    // Current mechanism when one file is found
    else
    {
        dialog.showmodal();
    }
}



Or, at least, that's how I think it should work. Maybe, if there's enough time/interest add a preview of the table comments as well(?).
I gotta take a look first and for that, I'd like to set up a devenv first.

BTW, is there a devenv image available for download (so I would not have to get and install everything myself)?

Thanks!
Back to top
View user's profile Send private message
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Fri Feb 19, 2016 6:32 am    Post subject: Reply with quote

Csimbi wrote:

Easy-peasy.
You create tables like:
Code:
Borderlands2.ct
Borderlands2-AimLock.CT
Borderlands2_dev.ct
Borderlands2-TechnoJacker.CT

When you attach CE to the Borderlands2.exe process, it'll pop up a dialog showing the list of these, asking which one do you what.
-Oh, okay. I see what you mean. It would be useful.
Back to top
View user's profile Send private message
mgr.inz.Player
I post too much
Reputation: 218

Joined: 07 Nov 2008
Posts: 4438
Location: W kraju nad Wisla. UTC+01:00

PostPosted: Fri Feb 19, 2016 8:29 am    Post subject: Reply with quote

Dark Byte wrote:
mgr.inz.Player wrote:
@DB, what you think about this (groupscan OutOfOrder modification ):
https://github.com/cheat-engine/cheat-engine/commit/ef697eb9ed30ea7a3590072cf8237ab4cb90d3d7

i'll check it out (not sure wh ycurrentoffsetEqualToZeroExist but i'll do some debugging)


Check those lines:
Code:
      variablesize:=groupdata.blocksize;
      if groupdata.outoforder and groupdata.outoforder_aligned then
        fastscanalignsize:=variablesize; //else use the given alignment

That means it will overwrite BA groupscan command (and the default BA:4) for all groupscan commands with OOO:A.


After removing that "IF" lines, I can use "BS:16 OOO:A" to find all 16bytes structures which are at address XXXXXXX4, or XXXXXXX8, or XXXXXXXC. Without that modification it can only find those 16bytes aligned - XXXXXXX0.



currentoffsetEqualToZeroExist check can help to filter out not needed results. Example:

(first twelve results)

_________________
Back to top
View user's profile Send private message MSN Messenger
panraven
Grandmaster Cheater
Reputation: 55

Joined: 01 Oct 2008
Posts: 941

PostPosted: Sat Feb 20, 2016 12:40 pm    Post subject: Reply with quote

Should Defined Symbol applied to every instance in a custom command input, instead of only last one?
Same for ce 6.4.

Code:
{$lua}
function AA_TestPrint(s,sc)
  if s=='' or s:lower()=='test' or sc==true then return end
  print(s)
  return ''
end
if autoAssemble('testWrite(TEST)') then unregisterAutoAssemblerCommand('testwrite') end
registerAutoAssemblerCommand('testwrite',AA_TestPrint)

{$asm}

[ENABLE]
define(hack,12345)
testWrite(AOBScanRegion(hack+100,hack+200,1b 1c 1d))
define(cave,XXXXX)
testWrite(cave 1 hack 2 hack 3 hack no more hack cave)

//print:
//AOBScanRegion(hack+100,12345+200,1b 1c 1d)
//cave 1 hack 2 hack 3 hack no more 12345 XXXXX
[DISABLE]

_________________
- Retarded.
Back to top
View user's profile Send private message
mgr.inz.Player
I post too much
Reputation: 218

Joined: 07 Nov 2008
Posts: 4438
Location: W kraju nad Wisla. UTC+01:00

PostPosted: Sat Feb 20, 2016 1:47 pm    Post subject: Reply with quote

From the CE source:


Code:
function replacetoken(input: string;token:string;replacewith:string):string;
var tokens: tstringlist;
    i,j: integer;
begin
  result:=input;
  tokens:=tstringlist.Create;
  try
    tokenize(input,tokens);
    for i:=0 to tokens.Count-1 do
      if tokens[i]=token then
      begin
        j:=integer(tokens.Objects[i]);
        result:=copy(input,1,j-1)+replacewith+copy(input,j+length(token),length(input));
      end;

  finally
    tokens.free;
  end;
end;


Looks like function replacetoken doesn't replace all instances. In the last iteration it uses not altered input. So all previous iterations are ignored. Looks like a bug. I think it should operate on result variable only, and loop inverted.






My patch:
Code:
Index: autoassembler.pas
===================================================================
--- autoassembler.pas   (revision 2301)
+++ autoassembler.pas   (working copy)
@@ -273,12 +273,12 @@
   result:=input;
   tokens:=tstringlist.Create;
   try
-    tokenize(input,tokens);
-    for i:=0 to tokens.Count-1 do
+    tokenize(result,tokens);
+    for i:=tokens.Count-1 downto 0 do
       if tokens[i]=token then
       begin
         j:=integer(tokens.Objects[i]);
-        result:=copy(input,1,j-1)+replacewith+copy(input,j+length(token),length(input));
+        result:=copy(result,1,j-1)+replacewith+copy(result,j+length(token),length(result));
       end;
 
   finally






result:
Code:
AOBScanRegion(12345+100,12345+200,1b 1c 1d)
XXXXX 1 12345 2 12345 3 12345 no more 12345 XXXXX



Sent 'pull request' https://github.com/cheat-engine/cheat-engine/pull/58

_________________


Last edited by mgr.inz.Player on Sun Feb 21, 2016 3:53 pm; edited 1 time in total
Back to top
View user's profile Send private message MSN Messenger
Csimbi
I post too much
Reputation: 92

Joined: 14 Jul 2007
Posts: 3102

PostPosted: Sun Feb 21, 2016 4:12 am    Post subject: Reply with quote

Some error saying "Consistency error" "count too big" popped up and CE went zombie.

I had a reversed structure open in the structure dissect window, with a lot of child structures open (these were a mix of reversed and auto-created structures).
Then, I figured CE would close all of them up so I selected the same structure from the Structure menu.
That's when the error popped.

Please note that I have both cleanup boxed checked (see picture below).

Thanks for fixing!

I'll try to repeat it later on today, gotta run out for a while.

Edit:
100% repeatable; added the error dialog below.
Result seems to be the same with and without having the debugger attached.

Issue #434 in Mantis.

Windows 7 x64 SP1
CE 6.5.0.3; x64



CE_Struct_Error.png
 Description:
error dialog
 Filesize:  6.44 KB
 Viewed:  10658 Time(s)

CE_Struct_Error.png



CE_Struct_settings.png
 Description:
 Filesize:  16.96 KB
 Viewed:  10676 Time(s)

CE_Struct_settings.png


Back to top
View user's profile Send private message
++METHOS
I post too much
Reputation: 92

Joined: 29 Oct 2010
Posts: 4197

PostPosted: Sun Feb 21, 2016 7:27 am    Post subject: Reply with quote

When bulk-adding a large number of addresses with 'Open dissect data with selected addresses' from inside the 'Changed addresses' window, the address fields are hosed, and/or do not even show up.

Thanks.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine All times are GMT - 6 Hours
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Next
Page 9 of 10

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites