IMG

 
IMG
IMG   IMG
  Welcome to GTAForums! Be sure to check out the Grand Theft Auto V Forum.

You are not registered! (If you are, click here to login) Registering is fast, free and easy and allows you to instantly reply to any topic on GTAForums.
Why wait? Click here to register your own unique username and become part of the ever-growing community!


( Log In | Register | Revalidate Validation E-mail )
Quick Log-In:
  IMG
       
>
Forum Rules GTA Modification Forums

Please post mod releases in the Mod Showroom

GTAGarage.com
free mod hosting from GTANet, simply login with your GTAForums account details

GTAModding.com
GTANet's modding wiki

GTA Modding Chatroom
provided by irc.gtanet.com (Don't have an IRC client? Click here)


Pages: (2) [1] 2   ( Go to first unread post ) Reply to this topicStart new topicStart Poll

 How to lock a cs file?

 VC CLEO
 
JACK JONES  
Posted: Monday, Jul 9 2012, 15:40
Quote Post


Booom!!!
Group Icon
Group: Members
Joined: Dec 6, 2011

sr.gif

XXXXX



I know that this question has been asked for several times and yes I did read those topics but I still don't know how to do it. I tried to create a new label with a hex but the file is still decompiling with no problems. So what should I do?

This post has been edited by JACK JONES on Monday, Jul 9 2012, 15:43
PM
  Top
 

 
Michael-Knight1  
Posted: Monday, Jul 9 2012, 15:50
Quote Post


Never Give UP
Group Icon
Group: Members
Joined: Jul 8, 2012

gr.gif

XXXXX



QUOTE (JACK JONES @ Monday, Jul 9 2012, 15:40)
I know that this question has been asked for several times and yes I did read those topics but I still don't know how to do it. I tried to create a new label with a hex but the file is still decompiling with no problems. So what should I do?

you must create your own opcode to lock the cleo file confused.gif
But Can Be Open , Just when Ignore Unknown
Users WebsitePM
  Top
 

 
JACK JONES  
Posted: Monday, Jul 9 2012, 15:58
Quote Post


Booom!!!
Group Icon
Group: Members
Joined: Dec 6, 2011

sr.gif

XXXXX



I don't know how to do that. Can you share the knowledge?
Off topic: Are you really MK1 (the one that has those posts full of comedy that make us laugh so hard) or you just using similar name?

PM
  Top
 

 
Michael-Knight1  
Posted: Monday, Jul 9 2012, 16:09
Quote Post


Never Give UP
Group Icon
Group: Members
Joined: Jul 8, 2012

gr.gif

XXXXX



QUOTE (JACK JONES @ Monday, Jul 9 2012, 15:58)
I don't know how to do that. Can you share the knowledge?
Off topic: Are you really MK1 (the one that has those posts full of comedy that make us laugh so hard) or you just using similar name?

Yes , That's Me But Many Ppl Know Michael Knight From KR 80's lol...
ok simple , Go To This Topic http://www.gtaforums.com/index.php?showtopic=362463

don't forgot Download Quick Opcode

This post has been edited by Michael-Knight1 on Monday, Jul 9 2012, 16:14
Users WebsitePM
  Top
 

 
JACK JONES  
Posted: Monday, Jul 9 2012, 16:42
Quote Post


Booom!!!
Group Icon
Group: Members
Joined: Dec 6, 2011

sr.gif

XXXXX



Thanks but that's for San Andreas. I need it for Vice City?
So you are a German. I guess the fellows were right - you are definitly not from America. Okey - tell us something on germany.
PM
  Top
 

 
Michael-Knight1  
Posted: Monday, Jul 9 2012, 16:47
Quote Post


Never Give UP
Group Icon
Group: Members
Joined: Jul 8, 2012

gr.gif

XXXXX



QUOTE (JACK JONES @ Monday, Jul 9 2012, 16:42)
Thanks but that's for San Andreas. I need it for Vice City?

So Just Use Microsoft Visual Studio C++ tounge.gif
QUOTE (JACK JONES @ Monday, Jul 9 2012, 16:42)

So you are a German. I guess the fellows were right - you are definitly not from America. Okey - tell us something on germany.

OH rolleyes.gif rolleyes.gif ! All People Know This now tounge.gif

This post has been edited by Michael-Knight1 on Monday, Jul 9 2012, 16:55
Users WebsitePM
  Top
 

 
Bad.boy!  
Posted: Monday, Jul 9 2012, 17:04
Quote Post


SA modder
Group Icon
Group: Members
Joined: Jun 20, 2010

nl.gif

XXXXX



@MK Could you write a few sentences in German, about how to use a toilet*?
*About a toilet because there isn't an example of that for you to copy

@OP
Ignore him, just put hex between jumps.

Something like this:
CODE
thread "lock"

:start
jump @code

hex
   BB 01 02
end

:CODE
// bla bla


This post has been edited by Bad.boy! on Monday, Jul 9 2012, 17:06
PM
  Top
 

 
Link2012  
Posted: Monday, Jul 9 2012, 17:06
Quote Post


Wut?
Group Icon
Group: Members
Joined: Jan 30, 2011

ba.gif

XXXXX



lol, no need to download new opcodes, just insert a invalid in the hex block
CODE
hex
FFFF01
end


But that thing is so easy to bypass...
PMMSN
  Top
 

 
JACK JONES  
Posted: Monday, Jul 9 2012, 18:29
Quote Post


Booom!!!
Group Icon
Group: Members
Joined: Dec 6, 2011

sr.gif

XXXXX



Look I know it's gonna sound strange but it's not working. And I already tried it before - I put the invalid hex after jump but my SB decompils with no problem ("ignore unknown" was not checked!). Does this method work only with "high level coding" (or a hard coding) that SilentPL is using in his replies? Because I still didn't learn that sort of coding. Speaking of which - where can I find the tutorial and why is that method better than the easy coding?


This post has been edited by JACK JONES on Monday, Jul 9 2012, 19:02
PM
  Top
 

 
Link2012  
Posted: Monday, Jul 9 2012, 19:34
Quote Post


Wut?
Group Icon
Group: Members
Joined: Jan 30, 2011

ba.gif

XXXXX



No, this doesn't has nothing to do with high-level, high-level will be translated to low-level by the compiler anyway, it's just clear and easiest to understand, also I don't know why III Coding Community worry too much about high-level, it's so simple.

Did you tried my post?
I tried badboy version and decompiled well, I think badboy have some mistake, because 01BB opcode exist tounge.gif
PMMSN
  Top
 

 
JACK JONES  
Posted: Monday, Jul 9 2012, 19:54
Quote Post


Booom!!!
Group Icon
Group: Members
Joined: Dec 6, 2011

sr.gif

XXXXX



QUOTE
Did you tried my post?

Yes I did but the same thing happend.
QUOTE
I tried badboy version and decompiled well, I think badboy have some mistake, because 01BB opcode exist

What do you mean - I don't see that opcode in his post?
PM
  Top
 

 
Bad.boy!  
Posted: Monday, Jul 9 2012, 21:02
Quote Post


SA modder
Group Icon
Group: Members
Joined: Jun 20, 2010

nl.gif

XXXXX



Didn't notice, and I just digged trough my old post and came up with a good example:

QUOTE
QUOTE (oksa8 @ Thursday, Jun 7 2012, 22:26)
Actually, I would encourage people NOT to lock their scripts, it allows others to take a look and learn from it. And even if you lock your script, it can still be stolen.

But, there's one simple way, and it's simple to by-pass. Just add new label somewhere, some random hex-code in there and compile. But remember, there should NOT be any jumps to that label, otherwise it'll crash.

Not some random hex, you have to fool Sanny Builder.

Here is an example:
CODE
{$CLEO .cs}

0000:

:START
jump @ACTUAL_CODE

hex
   A4 03 09 48 41 48 41 00
end

:ACTUAL_CODE
// Random opcodes to show the result
0003: shake_camera 40
0007: 7@ = 0.0
000D: $TEMPVAR_Z_COORD -= 0.5
jump @START


It will decompile in this:
CODE
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP
0002: jump @HAHA_17
03A4: name_thread 'HAHA'
0728: NOP
0300: unsupported_in_sa
0007: 0.0 = 512@(284@,6i)
0000: NOP
023F: unsupported_in_sa
hex
00 01 FE FF FF FF


But the best thing to do is to report the mod stealers and keep your files open. Looking at examples can help people.
PM
  Top
 

 
JACK JONES  
Posted: Tuesday, Jul 10 2012, 06:54
Quote Post


Booom!!!
Group Icon
Group: Members
Joined: Dec 6, 2011

sr.gif

XXXXX



I red that topic before I even start mine and it didn't help me either. I compiled your whole code as a new scrypt for SA and the SB is decompiling. I'm doing something wrong. What does this mean: "// Random opcodes to show the result"? Should I somehow convert that hex value into the 4byte and store it into a variable or what?
PM
  Top
 

 
Bad.boy!  
Posted: Tuesday, Jul 10 2012, 08:18
Quote Post


SA modder
Group Icon
Group: Members
Joined: Jun 20, 2010

nl.gif

XXXXX



No, that was just to show the result. You just have to insert hex between every jump.

Like this:
CODE
{$CLEO .cs}

0000:

:START
jump @ACTUAL_CODE

hex
  A4 03 09 48 41 48 41 00
end

:ACTUAL_CODE
0003: shake_camera 40
0007: 7@ = 0.0
000D: $TEMPVAR_Z_COORD -= 0.5
jump @NEXT

hex
  A4 03 09 48
end

:NEXT
0687: clear_actor $PLAYER_ACTOR task
0689: set_car 95@ remove_componentA 1 visible_effect_flag 0
068D: get_camera_position_to $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3
0698: set_car 543@ repair_componentB 4
if
0686:   car 89@ attached
jf @NEXT2

hex
   D2 06 09 6F
end

:NEXT2
068E: get_camera_target_point_to $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3
0698: set_car 543@ repair_componentB 4
jump @ACTUAL_CODE


If someone tries to open your script with "ignore unknown" they'll see this:
CODE
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP
0002: jump @HAHA_17
03A4: name_thread 'HAHA'
0728: NOP
0300: unsupported_in_sa
0007: 0.0 = 512@(284@,6i)
0000: NOP
023F: unsupported_in_sa
hex
00 01 CC FF FF FF
end
03A4: name_thread 'H‡ '
hex
03 5F 2C 01
end
0698: set_car 543@ repair_componentB 4
00D6: if
0686:   car 89@ attached
004D: jump_if_false @HAHA_104
06D2: 'oŽ$(,˜' = -1744753662 // @v = string
0306: unsupported_in_sa
021F: unsupported_in_sa
0404: unsupported_in_sa
0002: jump @HAHA_17


As some people might have noticed I always enter a opcode and a string. Sanny Builder will think that the next 8 bytes will be text, but it is code so SB get's confused. But after a few opcodes it'll read normal again and you have to put new hex, as you can see in the above example.
PM
  Top
 

 
JACK JONES  
Posted: Tuesday, Jul 10 2012, 13:19
Quote Post


Booom!!!
Group Icon
Group: Members
Joined: Dec 6, 2011

sr.gif

XXXXX



I understand what you did - you converted the opcodes that SB cannot recognize to hex and puted them between jumps in order to prevent normal decompiling. But it ain't gonna work again. I compiled that code you gave me but still nothing (I had to change the local variables because the SB didn't wanna compile the number higher then 33).


This post has been edited by JACK JONES on Tuesday, Jul 10 2012, 13:22
PM
  Top
 

 
Ashwin the new boy  
Posted: Tuesday, Jul 10 2012, 13:52
Quote Post


I am The Most Confused Person
Group Icon
Group: Members
Joined: Nov 14, 2010

ia.gif

XXXXX



i know some Good Tricks
Check your inbox wink.gif
Users WebsitePM
  Top
 

 
oksa8  
Posted: Tuesday, Jul 10 2012, 14:03
Quote Post


Just call me Oksu
Group Icon
Group: Members
Joined: Sep 30, 2010

sf.gif

Member Award




QUOTE (Ashwin the new boy @ Tuesday, Jul 10 2012, 16:52)
i know some Good Tricks
Check your inbox wink.gif

Sweet! wow.gif














Oh yeah, you only gave those tips for him, and not for public where even more people could learn from...
Users WebsitePM
  Top
 

 
Ashwin the new boy  
Posted: Tuesday, Jul 10 2012, 14:46
Quote Post


I am The Most Confused Person
Group Icon
Group: Members
Joined: Nov 14, 2010

ia.gif

XXXXX



first thing is Script can't be Locked,
they can only be encrypted so that Game can understand it but not the Decompiler,
Secondly, no matter How hard a Modder try t encrypt his Code,
others can still Read it after Spending a little to MORE time,

Let me Share some info

Here is my first script that i had Tried to LOCK (U KNO WT I MIN)
http://ashwin.dmon.com/external/BLOWALL.cs
it simply Change 'BIGBANG' to 'BLOWALL' (VC Cheat)
& Explode all vehicles Except your

spend some Minutes by Decompiling,
tell me if u like the Trick & want to know
PM me if you already know,
Users WebsitePM
  Top
 

 
Wesser  
Posted: Tuesday, Jul 10 2012, 16:55
Quote Post


The complexity simplifier, the efficiency optimizer
Group Icon
Group: Members
Joined: Aug 19, 2006

eu.gif

Member Award




I wouldn't say it on public cause I'm in favour of Open Sourcing, but the XOR encryption/decryption is just right for you. It inverts each byte bits according to a magic keyword which nobody knows. Ofcourse, you need to build an ASI plugin to decrypt the encripted scripts before the game parse them. Follow this video for more information.

It may be a feature of NSB. I'll think about it.

This post has been edited by Wesser on Tuesday, Jul 10 2012, 17:04
PMMSNPlayStation Network
  Top
 

 
Bad.boy!  
Posted: Tuesday, Jul 10 2012, 17:54
Quote Post


SA modder
Group Icon
Group: Members
Joined: Jun 20, 2010

nl.gif

XXXXX



@Wesser
I won't do that if I were you. Encrypting a cleo file is overkill. If someone wants to copy and publish it on another site, they will. If someone wants to edit it a bit to make it look like they made it, they won't get past the corrupt hex. Also if you give someone the possibility to easily lock their mods, they will. Even for the most simple mods they'll encrypt it. In that way no one can learn from mods anymore. And how did you want to do it anyway, it'll take one asi per mod/author. Or you do it in one asi, so that you have to write the password somewhere.

@Ashwin
QUOTE
QUOTE
I tried badboy version and decompiled well, I think badboy have some mistake, because 01BB opcode exist

What do you mean - I don't see that opcode in his post?

If he can't see opcodes in hex, it'll be impossible to make your script. And he asked how to lock it, not how to unlock it.

@JACK JONES
QUOTE
I compiled that code you gave me but still nothing (I had to change the local variables because the SB didn't wanna compile the number higher then 33).


Could you post the decompiled code? Or is compiling the problem?

@People who are still reading

This is a spoiler! Don't scroll down if your planning to decompile Ashwin's code. (scroll down fast)




















0000:
05DF: write_memory 6849967 size 1 value 88 virtual_protect 0
05DF: write_memory 6849968 size 1 value 92 virtual_protect 0
05DF: write_memory 6849969 size 1 value 103 virtual_protect 0
05DF: write_memory 6849970 size 1 value 69 virtual_protect 0

:NONAME_92
0001: wait 0 ms
00D6: if
00E0: player $PLAYER_CHAR driving
004D: jump_if_false @NONAME_92
03C1: 0@ = player $PLAYER_CHAR car

:NONAME_120
00D6: if
00E0: player $PLAYER_CHAR driving
004D: jump_if_false @NONAME_181
0001: wait 0 ms
00D6: if
05EE: key_pressed 76
004D: jump_if_false @NONAME_120
03F5: set_vehicle 0@ apply_damage_rules 0
0001: wait 5000 ms
03F5: set_vehicle 0@ apply_damage_rules 1
0002: jump @NONAME_120

:NONAME_181
01C3: remove_references_to_car 0@ // Like turning a car into any random car
0002: jump @NONAME_92











































































END
PM
  Top
 

 

0 User(s) are reading this topic (0 Guests and 0 Anonymous Users)

0 Members:

Pages: (2) [1] 2 

Topic Options Reply to this topicStart new topicStart Poll
Search topic for posted by (exact match)



 
IMG IMG