Help me to understand RPC Multiplayer

Hello,

First,
When i must use [RPC] on function? how i can know when it needs;

Example: I want all players to see one special effect, i have one function who do that. ExShowEffect.

[RPC]
public static void ExShowEffect(GameObject particleObject)
{
     foreach(GameObject player in ONLINEPLAYERS)
     {
        GameObject b = Instantiate(particleObject, player.transform.position);
     }
}

This pseudo-code is right?

Second,
I want to create a small web-multiplayer game. I wan’t to create one global room where all will join there, there will no be option for “Start server” to clients.

Is that possible without having Master server? i want, just who log-enter game to see each other, thats only.

First: Start by reading the documentation:
http://docs.unity3d.com/Documentation/ScriptReference/RPC.html
Second: Maybe, but the master server was made for this purpose so why not use it. Remember that you will also need Nat Punchthrough. I don’t see how you can achieve that without a master server.

My mistake, i thought Master server was something different.

But! because i will upload my game on my web-site and not on any deticaded server.
That means i can’t have server-listener for clients.

Any tutorial; im newbie with network programming.