The online racing simulator
To any would-be LFS Tweak developers
(51 posts, closed, started )
To any would-be LFS Tweak developers
Hi guys

I know there a few of you that have looked into creating your own version of this somewhat notorious app.

If you have made any useful progress with a recent version of LFS (W onwards), please drop me a PM, I'd like a chat.


Cheers

Edit: I have got sorted what I needed now, no need for any others to PM me. Thanks.
PM sent
Since it is a moderator asking, I'll ask what is "allowed" from such an app? Ie. if someone would release a "tweak" that can edit all properties of all cars, would that be OK here?
or bespoke for all the cars would that be useful?
Quote from Kegetys :Since it is a moderator asking, I'll ask what is "allowed" from such an app? Ie. if someone would release a "tweak" that can edit all properties of all cars, would that be OK here?

I was trying to keep this separate from my moderator status but since you're asking:

* Any stat editing should be fine, if you're playing with variables that have never been editible before you might want to run it by me (or another mod)
* No encrypted values are being edited, as that would seem to be circumventing part of the unlocking mechanism
* No body/mesh editing, the only allowable visual change would be spoke design like in bespoke
* License checking essential, using a method that not only checks that LFS is unlocked, but checks that the registered username is licensed, too
* It must not be discussed how it works on these forums, no memory address to be shared here, etc. The less people poking around with the memory, the better.
* Just personal preference here: think of an original name

A couple of notes from Scawen (he was talking to Fonnybone at the time but the point is still valid):
Quote from Scawen :
One thing that Mekanik for Patch Q could have, is to enforce a change in one of the demo cars, no matter what your settings, it should change at least one bit in one of the demo cars.

The reason for this, is that LFS does a checksum on the demo cars, and so that the hotlap is then marked by LFS as "modified" and will not be uploadable to LFS World.

Also the online hosts are then marked as modified and that's helpful too.

To be clear : the existing "modified" checksum is on the demo cars.

So, the point is this :

NO MATTER what car the user wants to modify, it MUST modify a demo car at least by a tiny fraction, even if it's imperceptible - as i said, only one bit needs to change.

This one regarding tweak for 0.5V:
Quote from Scawen :I've no problem with a tweak thing - obviously as long as it can't be used for online cheating, and can only be used with equally modded hosts. And the other rules, like we don't want body editing.

Quote from Bob Smith : * Any stat editing should be fine, if you're playing with variables that have never been editible before you might want to run it by me (or another mod)

By 'stat' do you mean all values LFS has defined for a car outside the model? That includes:
- Flags like diff limits, passenger presence, etc.
- Car type and engine specs
- Default setups and colors
- weight center, fuel tank & driver position, configurations (open roof and such), etc. values.
- the car "skeleton" (not model) where suspension parts are attached and (I think) the weight is defined
- wheel and axle settings, suspension geometry and rims
- aerodynamics

Many of those do visual changes too like tire size obviously, but without modifying the model...

Quote :No encrypted values are being edited, as that would seem to be circumventing part of the unlocking mechanism

Would this be allowed without circumventing it? Or, would it be allowed to do a "copy" of a licensed car over a demo car so that the encrypted values would not be edited but only copied to demo car which then could be edited?


Quote :...checks that the registered username is licensed, too

This would need some form of online check I think from LFS website? That would be alot of hassle to do and would be very easy to circumvent anyway.
I don't see a problem with any of those stats (yes, properties is the better, correct term) you listed.

Quote from Kegetys :Or, would it be allowed to do a "copy" of a licensed car over a demo car so that the encrypted values would not be edited but only copied to demo car which then could be edited?

I don't see what that would achieve, if you're only copying the properties, which would potentially all editible anyway? Or did you mean copy the model too? I'd need to talk to the other mods on that.

Quote from Kegetys :This would need some form of online check I think from LFS website? That would be alot of hassle to do and would be very easy to circumvent anyway.

Well the current implementation of 'license checking' only seems to check if LFS is unlocked. Demo users are out but crack users still get to play. We'd rather they didn't. If it can be easily cracked, then at least they'll have to go out and get a crack for this app too. Of course if you can think of any workable alternative solution, then I'm listening.
Quote from Bob Smith :
"Or, would it be allowed to do a "copy" of a licensed car over a demo car so that the encrypted values would not be edited but only copied to demo car which then could be edited?"

I don't see what that would achieve, if you're only copying the properties, which would potentially all editible anyway? Or did you mean copy the model too? I'd need to talk to the other mods on that.

The car properties include a property which tells the game which model is used, so if, say, all RA properties are copied to the XRT then the "XRT" both behaves and looks exactly like the RA since it will then use the RA model too...
OK 2 potential issues I see there:

1. If that would allow demo racers to access licensed content, then that's definately ruled out. That all stems back to having solid license protection, if sorted, then it would seem to make no difference (although perhaps a little odd in practise).

2. I'm still unsure how doing that gets around the car specs being encryted for the licensed cars so they become editable. Perhaps if you want to fill in some more technical details by PM? (I don't think having that info public is best)
Quote from Bob Smith :2. I'm still unsure how doing that gets around the car specs being encryted for the licensed cars so they become editable. Perhaps if you want to fill in some more technical details by PM? (I don't think having that info public is best)

I think he means tweaking a demo car to have the same exact specs as the RA, and then swapping the models.
OK, but if those specs were encrypted in the first place, where do you get them from?
well they got to lie decrypted somewhere ... or else how would your computer be able to use them
Quote from Shotglass :well they got to lie decrypted somewhere ... or else how would your computer be able to use them

A very good answer, actually. Hmm. /me ponders
Which values are the 'encrypted' values?

As for protection you could probably wriggle something with the PubStat system or something in that direction.
Once a value is in the memory, it is pretty much unencrypted, isn't it? I can't imagine it would be too fast if LFS decrypted the information on-the-fly. And then, the information would lie unencrypted somewhere anyway.
You probably CAN use the encrypted data (when you find it unencrypted). But SHOULD you? This whole thing is because the devs don't want demo users to have access to S2 cars, let alone modify them.

Thus, if tweak is a secure uncrackable program, that can verify beyond reasonable doubt that the user is a bonefide S2 user, then you're more likely to be allowed to make Tweak for all cars than if your tweak is a buggy throw together of VB code that doesn't really care if the users is a demoer, a cracker or legit.

Knowing the difference between can and should is important here, and attempting to stick to the dev's morals and ideas.
Someone care to explain what the encrypted data is? Is everyone talking about the licenced car variables?

Because these variables/values are plain to see..
Uh... didn't bob say, such a program has to check if there's a S2 licence available on the computer? So why do you worry about demo users having access to S2 content?

As Bob an many other said, they can get access by cracks... :/
So I don't see the point here...
Quote from Rooble :Someone care to explain what the encrypted data is? Is everyone talking about the licenced car variables?

Because these variables/values are plain to see..

Values like turbo on/off toggle, tire dimensions, engine type (inline, flat, V), suspension type (macperson, trailing arm etc), powerband and so on. Those are all encrypted stuff I think. Someone please correct me if I'm wrong.
Quote from tristancliffe :Thus, if tweak is a secure uncrackable program, that can verify beyond reasonable doubt that the user is a bonefide S2 user

well i doubt that this is even possible at all ... plus you should keep in mind that any cracker is a lost customer anyway its not like tweak will make them buy lfs even less than they already dont

Quote from Rooble :Someone care to explain what the encrypted data is? Is everyone talking about the licenced car variables?

Because these variables/values are plain to see..

afaik the data is encrypted in whichever file its saves in and only get decrypted at start up if the copy of lfs youre using is unlocked
with a demo copy you afaik should not be able to find the bf1s values anywhere

Quote from Azaazaa :Values like turbo on/off toggle, tire dimensions, engine type (inline, flat, V), suspension type (macperson, trailing arm etc), powerband and so on. Those are all encrypted stuff I think. Someone please correct me if I'm wrong.

not after lfs is loaded ... decrypting them all the time whenever theyre needed would be utter madness
Quote from Shotglass :not after lfs is loaded ... decrypting them all the time whenever theyre needed would be utter madness

Without hardware decryption, that is. But I don't think the devs broke into my house and installed a special processor. The only difficult part about editing stuff in LFS is that you have to search through tens of millions of bytes.
Quote from wheel4hummer :The only difficult part about editing stuff in LFS is that you have to search through tens of millions of bytes.

which is a pretty stupid and unsystematic approach to the problem tbh

something tells me kegetys has a rather more clever method of doing it
Quote from Shotglass :which is a pretty stupid and unsystematic approach to the problem tbh

How else are you going to find the values to edit? How do you think kegetys found the values to edit? Unless you are implying that LFS uses some sort of datablock system, where the size of the block and type of block and then the data.
Quote from wheel4hummer :How else are you going to find the values to edit? How do you think kegetys found the values to edit?

running it through a debugger and finding the appropriate bits of assembly worth reading i assume
i doubt anyone could figure out how a unkown encryption without seeing the crypting code at work
This thread is closed

To any would-be LFS Tweak developers
(51 posts, closed, started )
FGED GREDG RDFGDR GSFDG