No, Init is most definitely run on all machines ! The way to have it run on just the server is to put a gamelogic called server (or whatever) on your map and add this line to your script -
? !(local server) : exitGame logics are local ONLY to the server so the above line stops the script running on all but that machine.
Another trick if you're running a script on a playable unit is to add these lines -
_player = _this select 0
? _player != player : exitAgain, "player" is local only to each machine that each person is sitting at. This means that if I run a script at start called "IamSpartacus.sqs" then EVERY machine will run that script.
If this script is called from the Init field of (say) four playable units then EACH player's machine will have all four scripts running. The above lines at the start of the script will close of all versions of the script except the one that they're actually playing on (ie each person playing will be a unique "player").
MP is very annoying but it easy if you just remember that each and every machine is essentially running it's own version of the game all by itself. It runs it's own scripts, does its own physics and calculates its own results. Things that a player does are broadcast to the network so that each machine can keep running together.
This is normally invisible to the players, but problems occur if you call (say) a random function - the result of that call will be different on each machine. As I discovered once when I wrote a sandstorm script . . .
/
/
I hope that this isn't too far off topic but this should solve your problem - just use either of the above solutions and you should get just 10 mines, full stop.
cheers
roni / roni / roni / roni
(but on MY machine - roni)