bind linking
BindImportedFunctions will linking functions between modules.
But is there any solution to save the linking bytecode ?
for example:
SysModule:
void cmd1() {}
void cmd2() {}
void cmd3() {}
.
.
.
void cmd11() {}
script:
import void cmd1() from SysModule;
import void cmd2() from SysModule;
void main()
{
cmd1();
cmd2();
}
the building sequence in the test_saveload.cpp
is
1. load SysModule and build
2. load script and build
3. BindImportedFunctions
4. Save script bytecode (but didn't save cmd1(), cmd2() bytecode )
Is there any way to save the linked and runnable bytecde ?
In my env. , all of my scripts are pre-building to bytecodes to prevent
hacking. But In the coding time, modules cross-linking is everywhere.
So, it will be very useful, if there was some solution like c++ linker to
linking modules, removing unusable function(cmd3()~cmd11()), and output to
single bytecode.
I know that using c/c++ will be easier than angel script.
But the well-known native X86 machine code is easy to reverse/trace/hack than
self-defined script bytecode.
I don't know how to achieve this goal with angel script,
any suggestion will be welcome.
What I think you want is a linker. The Bind functionality in AngelScript is for dynamically binding functions between modules loaded separately.
You can still use your pre-compiler script modules, but you have to load all of them, and perform the binding each time you load your application.
Anyway, don't fool yourself into thinking that your code will be any safer from hacking/reverse engineering just because you use pre-compiled scripts instead of compiled C++ code. It may be a little tougher for the hacker to get past the first part, but once that is done the instruction set for the scripting language is much simpler than that of assembler. Also, since AngelScript is open source it won't be difficult to get the structure and meaning of the pre-compiled bytecode.
You probably need to think of other ways to protect your code. Obfuscation only works for the most inexperienced hackers.
Regards,
Andreas
You can still use your pre-compiler script modules, but you have to load all of them, and perform the binding each time you load your application.
Anyway, don't fool yourself into thinking that your code will be any safer from hacking/reverse engineering just because you use pre-compiled scripts instead of compiled C++ code. It may be a little tougher for the hacker to get past the first part, but once that is done the instruction set for the scripting language is much simpler than that of assembler. Also, since AngelScript is open source it won't be difficult to get the structure and meaning of the pre-compiled bytecode.
You probably need to think of other ways to protect your code. Obfuscation only works for the most inexperienced hackers.
Regards,
Andreas
AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement