🔒 Locked
preventing lua hacking
Advertisement
Original Post
I''m working on a game project, and I am considering using Lua to script it. But theres a problem. When I eventually release a competed game, I do not want just anyone easily reverse engineering my AI etc. Is there any way to prevent this, such as encrypting scripts etc??
Thanks alot!
-dtekfoo
Lua allows you to compiler your scripts. If that is what you mean.
But to adding your own compression to your program and place all your scripts within it.
If someone wants to get into your scripts they will. That is life. So the more layers of security you put behind your application the easier it is to sway the rookie crackers. But those that are determined will, regardless of how extreme you want to go.
[edited by - Borfaux on May 25, 2003 2:31:52 PM]
But to adding your own compression to your program and place all your scripts within it.
If someone wants to get into your scripts they will. That is life. So the more layers of security you put behind your application the easier it is to sway the rookie crackers. But those that are determined will, regardless of how extreme you want to go.
[edited by - Borfaux on May 25, 2003 2:31:52 PM]
I'm planning to use lua down the road. My anti-hack idea was to simply compare the client scripts with the server scripts (in on-line play) to see if they are the same. If they differ the client will auto-matically download the "proper" script. So hacked files will be replaced as they should be.
Script files are so small it would take no time at all the transfer the memory. So why not eh?
As for single player hacking... who cares? They're not hurting anyone. Let them fuck with the engine as much as they want. They might come up with some fun stuff.
[edited by - MindCode on May 26, 2003 1:20:05 PM]
Script files are so small it would take no time at all the transfer the memory. So why not eh?
As for single player hacking... who cares? They're not hurting anyone. Let them fuck with the engine as much as they want. They might come up with some fun stuff.
[edited by - MindCode on May 26, 2003 1:20:05 PM]
You couldn''t do that while in game play.
Lets say you browse around, find a game and login to it. The server that it''s under checks the scripts that it going to load. You can''t give it different files than you intend to use, and you can''t switch the files afterword because they will already have been loaded. Even if you copy-paste the modified files after they''re replaced it won''t do you any good because the engine is already using the real ones.
The only way to really hack anything is to fuck with the binaries themselves. If anyone attempts that, then I say "good luck".
Lets say you browse around, find a game and login to it. The server that it''s under checks the scripts that it going to load. You can''t give it different files than you intend to use, and you can''t switch the files afterword because they will already have been loaded. Even if you copy-paste the modified files after they''re replaced it won''t do you any good because the engine is already using the real ones.
The only way to really hack anything is to fuck with the binaries themselves. If anyone attempts that, then I say "good luck".
Heh, true dat. it may not be worth the trouble to encrypt it. As for keeping it server side, I''m trying to keep from spending too much money on server banks. For this reason, I think i''ll just make it client-client, and have the host act as a "server". This way, the only server I need is to connect peeps to their games.
This once again brings up the problem of scripts, since the host will be running all AIs. But as you guys have said so well, who cares? Heck, I could even write a mod so that people could program + compile AI scripts and pit them against each other. Thx 4 the wisdom guys.
This once again brings up the problem of scripts, since the host will be running all AIs. But as you guys have said so well, who cares? Heck, I could even write a mod so that people could program + compile AI scripts and pit them against each other. Thx 4 the wisdom guys.
Could you guys help me out wit one more thing? I''ve been thinking about what I should script, and what I should hardcode.
Guess I forgot to tell you guys, my game is a 3D rts much like starcraft (cept 3D). Besides scripting my AI, I am going to script each unit. I am considering having a different script for each distinct unit, and loading an instance every time a new unit is created. Is this alright? Hopefully it won''t put too much strain on the system, wit maybe 100 scripts running at once. If this is going to be a problem, what is my best alternative?
Also, is there anything else that I should script? (ie weapons, user interface etc?)
Thx a bunch!
-dtekfoo
Guess I forgot to tell you guys, my game is a 3D rts much like starcraft (cept 3D). Besides scripting my AI, I am going to script each unit. I am considering having a different script for each distinct unit, and loading an instance every time a new unit is created. Is this alright? Hopefully it won''t put too much strain on the system, wit maybe 100 scripts running at once. If this is going to be a problem, what is my best alternative?
Also, is there anything else that I should script? (ie weapons, user interface etc?)
Thx a bunch!
-dtekfoo
I wouldn''t load a new instance for each unit. Load one and have all instances of that unit share it. You will save memory that way. Unless there is some reason that the scripts need be unique to each unit (which I wouldn''t see why), then I think it would be the best way to go.
Topic Locked
This topic has been locked by a moderator. New replies are not allowed.
Sign in to reply to this topic.
Advertisement