I tried this: basically create a custom variable "game" and inject game.player into it. But it doesnt work.
Actually I think its a good thing that mods cant influence other mods on that level, but maybe im overseeing something trivial.
To your last question: sure, you can add any parameters in the call so you can transport more info to the other mods.
local _ame = game
local game = {}
game["player"] = _ame.players[1]
game["players"] = _ame.players
-- correctly prints someone1337
_ame.print(game["player"].name)
-- same as: game.player.name - but my mod fucks with the string "game.player"
-- still fails:
remote.call("creative-mode", "enable", game)
I cant come up with a way to inject a player-context into the remote call.
One idea i still have is to try monkey patching the other mods... But i dont understand the require/include mechanics of factorio good enought, but maybe im bored at some time and will look into it.