[QUOTE="FakeByte, [/QUOTE]
-One way to do this in unity are asset bundles, but they can’t include scripts.
If you want to also distribute new scripts to users then the easiest way would be to serve those scripts ina language that does not require recompiling whole assemblies like c#.
-So they can include Json files right? (since Json is not a script)
If you want to also distribute new scripts to users then the easiest way would be to serve those scripts ina language that does not require recompiling whole assemblies like c#.
Where I work we use python for all of our gameplay scripts, that way we can change the scripts and send them to users on mobile without the need for them to update the app in the playstore.
Well that is good to know. At the moment I do not know Python but I understand it can be convenient to write some game logic with it so you can do changes and there is no need to recompile nor to rebuild.
I may give it a try and I don’t even need to re-write the whole game in Python(unrealistic for now) to test it out…
I suppose just some scripts. And there is a good use for everything in the world of programming.
I may fit Python somewhere in the project…
All of this won’t prevent hacking though, if an attacker wants your code then he can connect with his game and you will send it to him anyway,
so that he can play, he won’t need to hack any server.
What we do at work is to compile our python scripts to bytecode and then change the opt code to make it more secure.
Yep, someone on an other forum explain to me that even if my JSON data after being deserialized is stored directly on the heap(in this case),
other technics like memory tampering (like Cheatengine),
functions detouring, DLL injection/tampering would make it possible to get the data anyway.
But then I realize, all the work could be about revoking access to the server. Since the game requires an account, that (bad/hacker)user account could be deleted. Even if he has managed to get all the data locally once, next time he plays, the game won’t be able to access what it needs nor updated content. Then the hacker could create a new account and restart all over and so on… but all his progress or virtual currency accumulated in-game would be lost since he starts from a new account. Does this has a point? (it would be a limited game experience to say the least)
I realize that cheating and hacking should not be concern on a new project or a game that is not big yet,
so I may not focus much on that, but I am always curious about that subject as
it affects business and also because I feel it requires to think ahead when it comes to planning the overall architecture of a game.
At least, a lot of my data if out of the game (level, animation, character appearance, enemy behavior, weapon data etc…)
and that can allow a more flexible pipeline and the implementation of many great idea like the one mention with the use a Python.