Poll

[holder poll, doesn't count for anything] Pick a favorite website

Drunk Ron Swanson
This is Why I'm Broke

Author Topic: CityMod  (Read 22757 times)

Compiler or decompiler you still have to look at the exe to make it.

Not with your own TGE.

Welcome to Trinick's guide to how handicapped Thorfin25 is.

This was an idea, and I was bound to test it. Thank you for testing this already, made my life easier.

But lets say this is 100% true and proven, TGE is open source. You can alter it to keep code 31 as multiplication instead of it being shift right. It'll take a long ass time to do so, but you could go through every used operation in your code for this.
« Last Edit: December 29, 2013, 02:16:19 AM by Thorfin25 »

Not with your own TGE.
no not with your own tge because badspot changed the algorithm enough that a regular TGE would be virtually useless.

no not with your own tge because badspot changed the algorithm enough that a regular TGE would be virtually useless.

Again, not trying to alter any of blocklands files, simply an add-on.

But lets say this is 100% true and proven, TGE is open source. You can alter it to keep code 31 as multiplication instead of it being shift right. It'll take a long ass time to do so, but you could go through every used operation in your code for this.

Congratulations, you'd be picking up on the old work of Computermix. Here is a list of steps you'd have to perform to read a DSO as per Computermix's documentation, it'd be the same for writing one:

1). Read the version of the DSO (the first four bytes visible in a hex editor)
2). Read the count of the global string table (second four bytes)
3). Read all the global strings available (Decrypt this!)
4). Read the size of the function float table
5). Read the function float table
6). Read the size of the function string table
7). Read the function string table (DECRYPT THIS TOO!)
8). Read the count of the global float table
9). Read the float table
10). Read the size of the code section
11). Read the line break pair count
12). Read the code section, etc
13). Read the ident count (idk what ident is)
14). Read the "idents"

Congratulations, you'd be picking up on the old work of Computermix.

Just like I thought, it is possible. I haven't seen him in awhile and I figure he never did finish any of this then. I can see why, quite the process.

he never did finish any of this. I can see why, quite the process.

Exactly. The reason I posted this wasn't to help you, it was to show you that it's futile to go down this path. Sorry, but your CityRP mod isn't so precious that it needs to be encrypted and protected. Frankly, plenty of other coders could probably replicate the functions of your mod perfectly just by playing your server. There's no point to encrypting your add-ons, and there's a reason why Badspot has locked compile. Blockland add-on code is supposed to be open source.

Thank you for actually shedding light on this.

No problem. Sorry for coming off like a pretentious ass, I just wanted to make it clear that you shouldn't waste your time.

13). Read the ident count (idk what ident is)
14). Read the "idents"

Also, it's an Indent Protocol

I don't.. think so.

The Ident Protocol is a protocol for identifying users of TCP (internet) connections. There's no reason I can think of that DSOs would store arbitrary internet connection identities.

Who cares, useless to try anyways.

Lol.  I log on to see you guys trying to encrypt CityMod/decrypt DSO's.  When I said earlier that I thought about "encrypting" my code, I meant it purely as a joke.  CityMod isn't that special, nor will any add-on ever be or need to be.

Either way, iirc, trying to compile a DSO is revokable too.

Also, it's an Indent Protocol
I don't.. think so.

The Ident Protocol is a protocol for identifying users of TCP (internet) connections. There's no reason I can think of that DSOs would store arbitrary internet connection identities.

Ident stands probably for identifier respectively in this case the instructions that parses the DSO. What I mean is, that those "identifiers" are helping the compiler to understand the TorqueScript code to determine what is what and also dig through the source to determine file structure. For example, OP_CREATE_OBJECT refers to the creation of a new object, so if our (not compiled yet) source was something about creating a datablock, the compiler for DSO would most likely use this opcode. If you have knowledge about all opcodes and know how the process works, you're actually able to make a kind of DSO "Disassembler" or maybe even decompile it, but as trinick already explained, the decompilation process is quite annoying. I may be completely wrong on this matter, as I never made any research on this, but at least I tried. And every day, we do learn something new, don't we?

are you guys seriously trying to compile this? lol

are you guys seriously trying to compile this? lol
No. Please read again through the whole topic.

I help you:
Lol.  I log on to see you guys trying to encrypt CityMod/decrypt DSO's.  When I said earlier that I thought about "encrypting" my code, I meant it purely as a joke.  CityMod isn't that special, nor will any add-on ever be or need to be.

Either way, iirc, trying to compile a DSO is revokable too.
Exactly. The reason I posted this wasn't to help you, it was to show you that it's futile to go down this path. Sorry, but your CityRP mod isn't so precious that it needs to be encrypted and protected. Frankly, plenty of other coders could probably replicate the functions of your mod perfectly just by playing your server. There's no point to encrypting your add-ons, and there's a reason why Badspot has locked compile. Blockland add-on code is supposed to be open source.