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 


Need For Speed - Most Wanted
Goto page Previous  1, 2, 3 ... 17, 18, 19, 20  Next
 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking
View previous topic :: View next topic  

How many of you have h0zed a NFS-MW save game, in the name of haxX0ring?
Frequently
33%
 33%  [ 1 ]
A few, but not many...
0%
 0%  [ 0 ]
This one time... At Band Camp...
0%
 0%  [ 0 ]
What's an NFS-MW save game?
0%
 0%  [ 0 ]
Do you have wall hakus!? I NEED WALLLLL HCKUSSS
66%
 66%  [ 2 ]
Total Votes : 3

Author Message
gnagna2000
Cheater
Reputation: 0

Joined: 12 Dec 2005
Posts: 32

PostPosted: Tue Jan 03, 2006 5:45 pm    Post subject: Reply with quote

Zhoul wrote:
gnagna2000 wrote:
i'm agree, VB is dirty Very Happy, well comparing it with ADA or another high level type languages, VB is like @$#%§$
Waiting for you to admit - its quicker for small projects =)

hahaha, yeah, of course it's quicker, but it depend of what project :p
Back to top
View user's profile Send private message
JONG
Expert Cheater
Reputation: 0

Joined: 30 Nov 2005
Posts: 130

PostPosted: Wed Jan 04, 2006 12:47 am    Post subject: Reply with quote

cparty wrote:

@JONG: you can grab the +12 trainer source and see how the guy did his stuff here: http://toca.game-editing.net


Welcome back !

I was download it and try to learn, thanks you very much.
Back to top
View user's profile Send private message
Zhoul
Master Cheater
Reputation: 1

Joined: 19 Sep 2005
Posts: 394

PostPosted: Thu Jan 05, 2006 11:04 pm    Post subject: Reply with quote

Been havin some seriously crazy shit happenin IRL - but ill return to this project ASAP - within the week folks.

The reason this one is taking so long, is because I'm simultaniously building out the trainer to be a "General/Global" trainer. One that can easily be modified from the trainer front end, rather then create new ones for each game that comes out Wink
Back to top
View user's profile Send private message AIM Address
Ultimate
GTH Moderator
Reputation: 0

Joined: 16 Oct 2005
Posts: 443
Location: Netherland and Damn Proud of it!

PostPosted: Thu Jan 12, 2006 6:00 am    Post subject: Reply with quote

lol i got a save game of cdparty
Back to top
View user's profile Send private message
Zhoul
Master Cheater
Reputation: 1

Joined: 19 Sep 2005
Posts: 394

PostPosted: Sat Jan 14, 2006 1:55 am    Post subject: Reply with quote

lol - I got teh autoassembler.dll implementation in teh trainer...
Back to top
View user's profile Send private message AIM Address
gnagna2000
Cheater
Reputation: 0

Joined: 12 Dec 2005
Posts: 32

PostPosted: Sat Jan 14, 2006 3:08 am    Post subject: Reply with quote

hehe, nice, a trainer that allow self modifications Very Happy
Back to top
View user's profile Send private message
cparty
Expert Cheater
Reputation: 0

Joined: 01 Dec 2005
Posts: 219

PostPosted: Sat Jan 14, 2006 4:17 am    Post subject: Reply with quote

verrrry nice work Zhoul Smile probably going to work on improving the heightmap this weekend.
Back to top
View user's profile Send private message
Zhoul
Master Cheater
Reputation: 1

Joined: 19 Sep 2005
Posts: 394

PostPosted: Sat Jan 14, 2006 3:26 pm    Post subject: Reply with quote

gnagna2000 wrote:
hehe, nice, a trainer that allow self modifications Very Happy
Actually gnagna - What I'm really shooting for with this trainer, is a trainer, which can be pretty much re-configured for games similar. Cool The source, reflects this as well.

cparty wrote:
verrrry nice work Zhoul probably going to work on improving the heightmap this weekend.
There something wrong with the current height map? Working great for me, but I've not tested it extensively.

- Zhoul
Back to top
View user's profile Send private message AIM Address
cparty
Expert Cheater
Reputation: 0

Joined: 01 Dec 2005
Posts: 219

PostPosted: Sat Jan 14, 2006 4:51 pm    Post subject: Reply with quote

Zhoul wrote:
There something wrong with the current height map? Working great for me, but I've not tested it extensively.

It should work in most places, but there are still spots where I never drove, kind of like the detail work Wink
Back to top
View user's profile Send private message
Zhoul
Master Cheater
Reputation: 1

Joined: 19 Sep 2005
Posts: 394

PostPosted: Thu Jan 19, 2006 7:16 pm    Post subject: Reply with quote

*EDIT* - VB Module and DB's ceautoassembler.dll have been moved to this post:
http://forum.cheatengine.org/viewtopic.php?p=38115#38115

The trainer is indeed coming along... Slowly but surely - as I'm moving here in the next 2 weeks (across country - bout' 2500+ miles from where I currently reside).

By now: Most of you have probably already moved onto other games as have I a bit - but I'm still keeping this trainer going. If anyone has ever seen the south park episode where Cartman's trapper keeper started integrating everything into itself, then you'll have an idea of the vision I have for *the* mack daddy of trainers (until some other kid 1/2 my age comes along and 1up's meh).

Back a few months ago, I wanted to make a good Visual Basic Project file that could be the 'shell' and start-point of any trainer. As of more recent, the idea hit me that the trainer, in EXE form, could be a trainer for darn near any game. That's the reason this project is taking me so long... simply because it's not about building a trainer for NFS-MW, more-so a 'universal trainer'.

Here's a picturte of current status:

That, showing the Auto Assembler DLL implementation I created, then ripped completely out, re-designed and re-implemented. The previous version was going to use about 20 text boxes and the registry to save/load non-default data to/from. I didn't like this approach at all, furthermore, it completely went against the universal trainer theory, as most the code was behind forms, and not in modules. When I ripped it out, I re-focusd on the 'global vision', and now it only uses 1 Rich Text Box to display any scripts, which are loaded from a \AScripts\ folder Wink

I also made a module specifically to handle autoassemble.dll - simply because the DLL, imho, is very 'basic'. No, not basic, as in any other autoassemble DLL could convert scripts better. Basic, as in how you interact with the DLL. I've had to build a pretty big module to support it Razz Features Include:

- A "Pre-Function" to the DLL's own CEAutoASM function. The new function handles nulls, and does a lot of other checking/pre-work, just before it calls CEAutoASM
- Support for up to 99 scripts by default (although the possibilities are endless)
- Module contains a few special functions, which 'operate' controls in a project. For instance: When loading the scripts, if you pass the function a link to a tab strip , which resides on a form, it will auto-populate the tab-strip with semi-references to the scripts. You can also specify a check box control array, and it will populate the captions of those with the script name, and unhide them (i.e. incase you had 20 check-mark boxes, but only 10 current scripts. The best part of this function is you can use any piece of it, and choose to not use specific parts. I.e. If I wanted to handle my own tab strips or other forms of visual control, I simply pass a Null to the function - where I'd usually pass object tabStrip1


I'm attaching modAutoAssembler.bas to this post. Here are some of the functions:

- CEInit(lngPassedPID As Variant, lngPassedPHandle As Variant) As Boolean
You're only supposed to use the Initialize function, once per game session. I needed a way to keep track of this, so I wrote this pre-function. Basically - you can keep running it over and over, and it knows/remembers the process ID it last connected to - knows to compare that with the current process ID, and if different, re-connect... but if the same, just return a true and not run CEInitialize


- Public Function Assemble_Script(strPassedScript As String, bolPassedEnable As Variant, intPassedAllocID As Variant) As Long
For those who dont know what this DLL is yet, it basically takes a script (string) , and can enable/disable them, just like in Cheat Engine. In fact, Dark Byte ripped the exact code from CE - modified it a bit for DLL form, and voila... we now have a way to use AutoAssemble scripts, in the code of our choosing Wink
This is the pre-function that eventually calls CEAutoASM. CEAutoASM simply takes the script, a true/false for enable/disable , and a variable to put an Allocation ID into - to be passed back to , in this case, Visual Basic. If that didn't confuse you - you're 1 step ahead of me when I first heard it.. but then again, dark byte was talking in Delphi lingo, and I'm just a /random_code_monkey who understood him not.
Back to the function itself: Notice how all the paramaters are defined as Variants? You can pass *this* function nulls for certain parm's - and the function will auto-calc the results (applies in 'logical' cases only.. calling the function with 3/3 null paramaters would be... illogical...)

- GetScriptName(ByVal strScript As String) As String
This is of my own creation. Notice, in the screenshot up above, how the first line is...
// Code - Unlock All Parts/Cars
But, the "Unlock all Parts/Cars seems mis-colored? Ahh, in non-jpg form, you can see the trainer automatically set the text color for the name, to red (as opposed to the rest of it which is black). If you look at the tab below the script, you'll see the caption is "Unlock All Parts/Cars".
Whats happening:
When the module function loads the scripts - if you've set it to populate any of the controls (tabs, check boxes, etc) - then it uses the GetScriptName function to parse out the script name. It pulls this information from the first line, but in a semi-intelligent way.
- There is a constant defined in the module, called strPreScriptName. Here's the line in the module...
Public Const strPreScriptName = "// Code - "
- GetScriptName uses this string to...
-- Confirm that the script's first characters match it... If not, then the script is given a "Default" name.
-- Ahh, but if so, it then nabs the first line - and chops off whatever is defined in strPreScriptName (in this case, // Code - )


- CheckEnableScript(ByVal strScript As String) As Boolean
- Pass it a script
- Returns false, if the script doesn't have an [enable] section. Its actually smart enough to 'ignore' any commented out [enable]'s. I.e. say I started a new script and had an enable, then commented it out - the script would be seen as a non-enable script. This is very important later, when writing an interface (as non-enable scripts don't 'get' an alloc ID, and you don't need to 'disable' them. It's the difference bewteen making a check box for a cheat that does something when you check it, but nothing when you uncheck it, or , smartly assigning that specific script to a command button instead Wink
- Returns true, if the script has [enable], anyhere in the script, but the catch is, it must be on the start of a new line (which is how it damn near always is anyhow... for i dont think it works any other way).

- chkAScriptReset(ByRef chkBox_Control As Variant)
This function will do varios disabilitating things to the CheckBox control group that it is passed. I use it to hide and clear all check-boxes , before re-populating them (you know, in the case of a new script being added, etc).

- AScript_Save(Optional objTargetRTB As Variant = Null, Optional intScriptNum As Variant = Null, Optional bolPromptUser As Boolean = True) As String
When viewing/editing the scripts in the trainer, there is 1 sole Rich Text Box that loads the scripts. If ever you want to save one of your scripts, simply call this function, pass it a text box (RTF or normal text) name, and a true/false , as to if you want error/success messages or not. (if you were to write a function that mass-saved all your scripts, you surely wouldn't want 2-3 possible pop-ups per script.)

- AScript_Load(ByRef objRTB_Control As Variant, Optional tabStrip_Control As Variant = Null, Optional intTabNum As Integer = 1, Optional chkBox_Control As Variant = Null) As Boolean
Ahh, this one here... That's my baby... Still in it's infancy and can already do so much. This is the function that loads the scripts from file, then parses out the information to various, user specified destinations. Load only the scripts into memory - or maybe you want to also add that data to a tabStrip, so pass it a tab strip object... or maybe you want to populate a set of checkboxes... simply pass it the control array name.

If you need any help using these functions, do let me know. What I would suggest though, is trying out the AutoAssembler.dll , then looking at the module, as that is the time when total enlightenment will occur.

- Zhoul

p.s.

Also adding the AutoAssembler.dll I'm using. Place it in %windir%\System32


Last edited by Zhoul on Mon Jan 23, 2006 2:29 am; edited 1 time in total
Back to top
View user's profile Send private message AIM Address
gnagna2000
Cheater
Reputation: 0

Joined: 12 Dec 2005
Posts: 32

PostPosted: Fri Jan 20, 2006 5:36 am    Post subject: Reply with quote

Shocked
lol Zhoul, i got the same idea, but it was a worthless project in my mind, nobody will use it and it will be a wasted time :-/
so what i did is only a static library for manipulating memory for myself for future trainers, so i won't need to code everything from scratch
only 2 simple classes to use:
CheatHEX for manipulating asm hex form (well, making an asm parser script will be a waste of time too, for me) and methods to check if it's enabled or not and methods to activate it or deactivate it
CheatVAL for freezing value in memory
example:
char array for initial values and changed values
Code:
static char BustedINIT[] = {0x75};
static char BustedCHANGE[] = {0xEB};

and then the constructor
Code:
static CheatHEX * busted = new CheatHEX(0x00443BB0, BustedINIT, BustedCHANGE, 1);

Same thing for CheatVAL but without the char array, only by value parameters
Back to top
View user's profile Send private message
Zhoul
Master Cheater
Reputation: 1

Joined: 19 Sep 2005
Posts: 394

PostPosted: Mon Jan 23, 2006 2:02 am    Post subject: Reply with quote

*EDIT* - Found an issue with the module (sorta) and fixed it. The lngAllocID() array was not being updated by the module, but by the form code. This would cause the module to not work properly, if you didn't handle the lngAllocID variable yourself, when using enable scripts. Like I said though, this has been fixed in the new module attached to this post.

gnagna2000 wrote:
lol Zhoul, i got the same idea, but it was a worthless project in my mind, nobody will use it and it will be a wasted time :-/
Well aye... In the end, this is all for myself. I don't really expect anyone to use it in it's entirety. More-so an example of how to do it, so they can rip code chunks or modules from it.

Since my last post, I have split up the main module into several modules, so the code is easier to read/understand and different 'pieces' can be used without having to load one big module.

modAdvancedTextEditing (Contains function(s) that automatically set the cut/copy/paste/etc availability on right-clicks.)
modAutoAssembler (Defines autoassembler.dll functions, new functions which make using the DLL much easier, and script loading from .txt file functions)
modNumlockControl (NumLock Control functions)
modProcessReadWrite (Defines Write4Bytes/Read4Bytes/WriteBytes/Etc)
modRegistryFunctions (Defines RegRead/RegWrite/RegDelete and contains the single function that loads/saves all features on other forms)
modTrainerAPI (Main Trainer API)
modTrainerMap (associated with frmMap)

More separation from modTrainerAPI to new modules to follow (i.e. modSound , etc)

I have also completely relocated the map feature from the main form to a new form/module, since most people won't be using that in most trainers.

An interesting note:
All of the check-boxes you can see in the screenshot below, are auto-populated by the function that loads the auto-assemble scripts from .txt files. This function (AScript_Load) is in modAutoAssembler. It loads the scripts into an array of strings, plus, if you pass it references to a TabStrip and/or a CheckBox control array, it will auto-populate those as well. The script name comes from the very first line in the script files, which should be something like...
// Code - Unlock All Parts/Cars!
In this case, the function will pull any characters after '// Code - ' as the script name and populate this in the tabstrip/checkboxes. The pre-string (// Code - ) can be changed in the module as well, but is surely the default.

This is the proper format for a script.
Code:
// Code - Infinite Nitro/Speedbreaker

[ENABLE]

//Nitro Sub - NOP
00692B01:
nop
nop
nop
nop

//Speedbreaker Write
006EDE03:
fstp [esi+0000008C]


[DISABLE]

//Nitro Sub
00692B01:
fsub dword ptr [esp+2c]

//Speedbreaker Write
006EDE03:
fstp [esi+00000084]


Also: If all you want to do is push bytes, or arrays of bytes, try something like this...
Code:
// Code - Set Milestones/Race Wins to 20 when read.

// Repalces: 005DD1C0 - Set Milestones/Race Wins to 20 when read (Orig: 0FB74118C3CCCCCCCCCCCCCC New: C74118140014000FB74118C3 )

[ENABLE]
005DD1C0:
db C7 41 18 14 00 14 00 0F B7 41 18 C3

[DISABLE]
005DD1C0:
db 0F B7 41 18 C3 CC CC CC CC CC CC CC


A note on using AScript_Load and AScript_Save:
Function: AScript_Load
- AScript_Load(ByRef objRTB_Control As Variant, Optional tabStrip_Control As Variant = Null, Optional intTabNum As Integer = 1, Optional chkBox_Control As Variant = Null) As Boolean

Usage:
This function accepts 4 paramaters.
- objRTB_Control - Should be a reference to a Rich Text Box control. You can add this control to your project by going to the "Project" menu, then "Components", then check-mark "Microsoft Rich Text Box Control 6.0 (SP6)", then "Ok". Once you do this, you will now have the Rich Text Box Control in your toolbox. If you named your rich text box rtbAScript , then that is what you will pass as the paramater.
- *optional* tabStrip_Control - If you have a tab-strip you'd like to load with the names of each script, pass the name of the tabstrip, Ex: TabStrip1
- *optional* intTabNum - This would be the tab number you want selected when loading is complete. 1 = the first tab, and so-on. If the tab doesn't exist, the first (or no) tab is selected.
- *optional* chkBox_Control - This must be a reference to a Check Box Control Array. Make one check-box, give it a name, then copy/paste that same check-box, and when prompted 'Do you want to create a control array?', choose yes.

Examples:
The following would simply load the scripts into memory, from file.
AScript_Load frmAscript.rtbAScript
The following would load the scripts into memory, populate TabStrip1 which is found on frmAScript, populate chkAScript (check box array) names with the script names.
AScript_Load frmAScript.rtbAScript, frmAScript.TabStrip1, 1, frmMain.chkAScript

Note:
The module does not define what the checkboxes or the tabstrip does. It simply populates the captions/tabs.


**EDIT**

Picture and module removed.

Both can ben found on the post after this one.


Last edited by Zhoul on Wed Jan 25, 2006 1:49 am; edited 1 time in total
Back to top
View user's profile Send private message AIM Address
Zhoul
Master Cheater
Reputation: 1

Joined: 19 Sep 2005
Posts: 394

PostPosted: Wed Jan 25, 2006 1:43 am    Post subject: Reply with quote

*EDIT* - v0.7.0 B is now out! Link updated below.
*EDIT 2* - v0.7.0 C has been released. Links updated.
http://www.reefermagnets.com/trainers/prog/nfsmw/NFSMW_Trnv070-C.zip

One great feature about this trainer is the fact that you can enable any cheat before you launch the game, and it will auto-enable once it gains process-attachment.

*Note* F4 and F5 (to save and goto location) is broken right this moment, while I re-design the entire hot-key code and new interface. (That's right, all future trainers will give the user the ability to modify hot-keys/options/anything!) You can still press the buttons on the form, but unless you're *in* NFS-MW, the goto location button won't work properly.

*UPDATE* In 0.7.0C - Not only do the F4 and F5 keys work once more, but there is also a feature implemented that waits until the game is in focus, to send the goto command! This is a great (and enabled by default) feature that lets those of you with only 1 PC, click and goto locations in NFS-MW.

*Note 2* All trainers I create are specifically fashioned for a 2 PC setup. They don't have to be run like this, but just ask CParty how much mo'betta it is Cool

Make sure you extract the entire contents, as the Auto-Assemble scripts that are used, and the required system files are in this zip as well.

It's not anywhere near done, but here is the pre-release source-code that matches this version. (Not posted on the main-site yet... That's right.. only here folks)
http://www.reefermagnets.com/trainers/prog/nfsmw/NFS-MW_Pre-Release_VB_Source_v070-C.zip

This is a pretty good example of how to use DarkBytes ceautoassembler.dll . The module included (modAutoAssemble.bas) is a pretty snazzy controller of the DLL as well. The module doesn't reference anything outside itself specifically, unless a function calls for an object to work with (i.e. the AScript_Load function asks for a rich text box and optional an check box control array and/or Tabstrip to populate).

- Zhoul



NFS-MW-Trn-v070A-Main.JPG
 Description:
 Filesize:  33.98 KB
 Viewed:  76522 Time(s)

NFS-MW-Trn-v070A-Main.JPG



nfs-mw-trn-v070a-ascript.jpg
 Description:
 Filesize:  65.05 KB
 Viewed:  76529 Time(s)

nfs-mw-trn-v070a-ascript.jpg



NFS-MW-Trn-v070A-Map.JPG
 Description:
 Filesize:  131.37 KB
 Viewed:  76522 Time(s)

NFS-MW-Trn-v070A-Map.JPG



NFS-MW-Trn-v070A-Settings.JPG
 Description:
 Filesize:  50.5 KB
 Viewed:  76523 Time(s)

NFS-MW-Trn-v070A-Settings.JPG


Back to top
View user's profile Send private message AIM Address
Zhoul
Master Cheater
Reputation: 1

Joined: 19 Sep 2005
Posts: 394

PostPosted: Fri Jan 27, 2006 1:12 am    Post subject: Reply with quote

Markers! I've pinned down some info about the markers in memory and how they function. CParty provided me with the start address 0091D928 and said that each 'upgrade' would be 12 bytes long... I found that this is actually like a 'list', that can be added to in any order.

The 12 bytes work like this:
XX 00 00 00 00 00 00 00 01 00 00 00
Where XX is the 'Marker Type'. The next set of 4 bytes always seems to be 00's. The final 4 bytes determines if the marker has been 'used by the player yet'. Each time you get a new marker, 12 bytes is added to this 'area' of memory. I have figured out what most of the marker numbers mean, but I gotta sleep sometime Wink

*NOTE* - If you want multiples of the same marker, you must make new 12 byte values for each one. In the script below, it add's 1 of everything except for "Impound Strike Slot Add Markers", which it adds 5 of (number 14). Feel free to change these as you wish.

I'm also not sure if the marker numbers go up past 14 (hex) as that was the 'biggest' number in my list. I have determined that the below Auto-Assemble script will add 1 marker for each category , when you enter the shops back room area. (once you run this script, go to the shop, and you'll see an option to 'enter back room').

It seems like cparty's unlock items codes already put the unique visual and parts into the normal list (when not in back room) but - the unique preformance upgrades can only be purchased in the back room (or force mem hacked into your car).


// Code - Give 1 of each marker (Visit shop after enabling).
// First 4 bytes: XX 00 00 00 - Where XX = Byte value of marker type
// Next 4 bytes 00 00 00 00 - Always 00 00 00 00
// Next 4 bytes 01 00 00 00 - Either 01 for 'not used' or 00 for 'used'
//
// Marker Types
// 01 - Preformance Upgrade - Brakes
// 02 - Preformance Upgrade - Engine
// 03 - Preformance Upgrade - Nitrous
// 04 - Preformance Upgrade - Turbo
// 05 - Preformance Upgrade - Suspension
// 06 - Preformance Upgrade - Tires
// 07 - Preformance Upgrade - Transmission
// 08 - Custom Parts - Body
// 09 - Custom Parts - Hoods
// 0A - Custom Parts - Spoilers
// 0B - Custom Parts - Rims
// 0C - Custom Parts - Roof Scoops
// 0D - Custom Visual - Gauges
// 0E - Custom Visual - Vinyls
// 0F - Custom Visual - Decals
// 10 - Custom Visual - Paint
// 11 -
// 12 -
// 13 -
// 14 - Impound Strike - Slot Add

[enable]
0091D928:
db 01 00 00 00 00 00 00 00 01 00 00 00
0091D934:
db 02 00 00 00 00 00 00 00 01 00 00 00
0091D940:
db 03 00 00 00 00 00 00 00 01 00 00 00
0091D94C:
db 04 00 00 00 00 00 00 00 01 00 00 00
0091D958:
db 05 00 00 00 00 00 00 00 01 00 00 00
0091D964:
db 06 00 00 00 00 00 00 00 01 00 00 00
0091D970:
db 07 00 00 00 00 00 00 00 01 00 00 00
0091D97C:
db 08 00 00 00 00 00 00 00 01 00 00 00
0091D988:
db 09 00 00 00 00 00 00 00 01 00 00 00
0091D994:
db 0A 00 00 00 00 00 00 00 01 00 00 00
0091D9A0:
db 0B 00 00 00 00 00 00 00 01 00 00 00
0091D9AC:
db 0C 00 00 00 00 00 00 00 01 00 00 00
0091D9B8:
db 0D 00 00 00 00 00 00 00 01 00 00 00
0091D9C4:
db 0E 00 00 00 00 00 00 00 01 00 00 00
0091D9D0:
db 0F 00 00 00 00 00 00 00 01 00 00 00
0091D9DC:
db 10 00 00 00 00 00 00 00 01 00 00 00
0091D9E8:
db 11 00 00 00 00 00 00 00 01 00 00 00
0091D9F4:
db 12 00 00 00 00 00 00 00 01 00 00 00
0091DA00:
db 13 00 00 00 00 00 00 00 01 00 00 00
0091DA0C:
db 14 00 00 00 00 00 00 00 01 00 00 00
0091DA18:
db 15 00 00 00 00 00 00 00 01 00 00 00
0091DA24:
db 16 00 00 00 00 00 00 00 01 00 00 00
0091DA30:
db 14 00 00 00 00 00 00 00 01 00 00 00
0091DA3C:
db 14 00 00 00 00 00 00 00 01 00 00 00
0091DA48:
db 14 00 00 00 00 00 00 00 01 00 00 00
0091DA54:
db 14 00 00 00 00 00 00 00 01 00 00 00
0091DA60:
db 14 00 00 00 00 00 00 00 01 00 00 00


[disable]
// Disable nothin'

- Zhoul
Back to top
View user's profile Send private message AIM Address
cparty
Expert Cheater
Reputation: 0

Joined: 01 Dec 2005
Posts: 219

PostPosted: Fri Jan 27, 2006 3:55 am    Post subject: Reply with quote

umm, I hope you didn't "waste" too much time in figuring out which codes represent which marker. Because we discussed it already in this huge NFS thread, I thought you knew about it: http://forum.cheatengine.org/viewtopic.php?p=29895#29895

Anyway 11 is the "get out of jail" and 15 the "impound release" marker
I believe that 12 & 13 are the money/pinkslip marker but those get instantely zeroed out after picking. So we could try to put a couple of those in and see if we get the BL cars for "free" without choosing the pinkslip marker when beating a BL racer.
If I remember correctly 16 would be a valid markertype too, every other value would just crash the game.

Im currently decoding the "progress" bit coding of the game, this determines which BL racer will show as defeated, unlocks junkmanparts, unlock car for completing special events etc.
I already have the number how it looks when 100% is reached, it is used in the unlock all parts/unlock special parts code and should indeed give access to all which could be accessed via the unique markers.

I also try to pin down where the number of races done is stored (the number to reach to challenge the BL racers), but EA seem to have hidden this one very well, looks also like it depends on several values. I don't mean the "lock" and "done" symbols on the races, those start at 0B57AADF, but their values aren't intuitive. I use a 0% and 100% save to see how to switch them on/off.
This could be used to unlock all races (probably usefull for the challenges).

NOTE: I saw in the past that this address can change, as well as the address of the bonus markers. It does it very rarely but it does.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking All times are GMT - 6 Hours
Goto page Previous  1, 2, 3 ... 17, 18, 19, 20  Next
Page 18 of 20

 
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