Jump to content
Sign in to follow this  
lightspeed_aust

Mission Security - is there a way?

Recommended Posts

I am pushing ahead to try to make a coop tournament for the community.

Working on the scoring concept and missions but I have a challenge -

..........

Coop Team A plays the mission - the mission must be available to play on their machine.

Coop Team A passes the mission to Coop Team B when they have completed their attempt and this allows Team B to know/practice the mission prior to insertion. (They can cheat).

..........

Is there a way or does anyone have some suggestions about how we might get around this loophole?

Is it possible to have something on a server so that the mission would only work on a particular server so having the mission wouldn't help Team B.

thanks in advance

Lighty.

Share this post


Link to post
Share on other sites

Yes, you have an addon that's required for the mission, that only you give out at a known time.

Until team B are given that addon, they can't load or play the mission.

Share this post


Link to post
Share on other sites

I think it should be relatively easy with the help of two addons - script libraries:

1. Server-side only addon

...containing scripts to generate the mission by creating all server-side units/objects/objectives/tasks/etc, AND for sending appropriate "commands" to clients in order to create all client-side things.

2. Client-side addon

...listening for the server "commands" on the client machines in order to create all appropriate client-side things.

...and instead of sending "commands", you can send whole scripts which could be then compiled and run on the clients.

This way all mission related info would be stored safely on the server, and players/participants wouldn't be able to get their hands on it.

If we forget about possibility of recording and then analyzing/decoding network traffic during mission init (which is probably out of the question for 99% of players), it should be pretty safe solution.

Share this post


Link to post
Share on other sites

ok well that sounds very positive - i will need some assistance with this if anyone is interested to help.

my hope is i can get this to a professional level and perhaps get some endosement from BIS in the way of gifts for the teams who display outstanding coop skills.

Share this post


Link to post
Share on other sites

I really need a scripter to champion this cause.

Just need something that will help to protect mission until team plays it - if its relatively easy to do this.

But alas, I do not have these skills nor knowledge of how to go about such a thing.

thanx

Lighty.

Share this post


Link to post
Share on other sites

obvious solution, passworded server.

if mission is big, you could just remove the mission.sqm file from the mission folder, then have the players download the mission and recive a link when allowed for the mission.sqm for so to open it in MP editor, add in the mission.sqm and then save it and move it to correct MP Missions folder.... lot of work, but could be worth it if mission is VERY big...

They will still be able to "spy" on the scripts used etc unless you remove them aswell....

But what you are asking for is something that goes against everything Arma series stands for, namely free modability, so i dont support this request at all, and i dont see any solution for you exept from passworded servers or admin managed mission emails wich is no big deal.

Share this post


Link to post
Share on other sites

Thanx for advice on the first half of your post.

And I'll forgive you for the second part even though you were being a dick. I fully support modability, I have been modding for ghost recon and Arma communities for the last 6-8 years now. The reason I wanted the secure missions was to host a coop tournament. And my experience of modding communities in most cases is ppl help eachother. Merry Xmas to you too.

Lighty

Edited by Lightspeed_aust

Share this post


Link to post
Share on other sites

Honestly the only solution is keeping everything on a server-side addon. Technically, this will not be as easy as just making the mission. You basically not only need to create everything with scripts (place hardly anything in the editor), but also put those scripts into a mod, which of course requires knowing how to actually make scripts available via a mod.

Another, not-as-safe alternative, is to make the mission random, but use a seed that the spectator enters (tournament will have a spectator, right?) and use that seed to randomize everything. Since nobody knows the seed until the mission starts (in fact, you can make it so they never know the seed since only the official tournament spectator needs to know it), they will never know what is going to happen.

However, randomizing a mission based on a seed value is something that will require some serious coding work in itself, since the game doesn't naturally support it as far as I know. That is, you'll have to write your own (or implement an existing algorithm) for a random number generator that generates random numbers based on a seed value, to use instead of the game's default random function.

This solution doesn't require addons and is actually 100% safe if you have a trusted spectator in the mission to enter the seed, but is much more difficult to code. Another advantage of this method is that it lets people actually download and play your mission as much as they want without breaking your tournament, since they do not know the seed value that will be used in the tournament. On top of it, they will be able to play the same thing again for fun if they wish, and you can always provide the option to have a random seed generating if there is no spectator in the game. This will also make you and the community happier, as you can keep using the missions in an easy way after the tournament is over while still having a safe tournament environment, plus you can recycle the mission for the next tournament by simply changing the seed value.

Of course, implementing it into an existing randomized mission should not be too difficult, since all you have to do is replace every call for random with a call to your new random number generating function that uses the seed entered by the spectator, and leaving everything else almost intact.

Just a quick thing to keep in mind - No matter how much you will try, the game does have some serious inherent randomness that will make a uniform tournament level experience be impossible to truly make. If you use any smart AI scripts such as UPSMON then randomness is greatly increased even with the exact same enemy starting positions and zone placement.

Edited by galzohar

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×