• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
Question by madmike6537 · Feb 18, 2013 at 03:59 AM · networkinginstantiaterpcauthoritative

Question about RPC's and Unity

Hello,

I am very new to networking and trying to wrap my head around how to use an RPC to instantiate a player. I am trying to have my server be "Authorative" so I want to have the client send an RPC to the server and have the server instantiate the player prefab.

So - how do I do this?

I see two ways of doing this, not sure which is right:

1) I could create an RPC on the client which has the instantiate function inside it and send that to the server. But I am not sure if the server would actually take that and call the instantiate command on the client? Confused there. Would be something like this:

 [RPC]
     void InstantiatePlayer (GameObject playerPrefab, Vector3 spawnLocation, Quaternion spawnRotation, int myGroup)
     {
         Network.Instantiate(playerPrefab, spawnLocation, spawnRotation, myGroup);
     }

OR

2) I would send a RPC from the client with a bool to the server, and when the server receives it sees that iWantToInsantiateAPlayer is true and it instantiates the player.

Thoughts on how this is done? Thanks.

Comment

People who like this

0 Show 0
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
Best Answer

Answer by Benproductions1 · Feb 19, 2013 at 12:44 AM

Hi!

For spawning a player on an authoritative network, you need a couple of things to happen:

  1. The player asks the server to spawn them. This is just going to be a function, depending on how you are handeling players, you want to send your identification to the server, so it knows who sent the RPC

  2. You want the server to recieve the RPC and confirm that the player can be spawned, where he will be spawned, with what, etc.

  3. The Server sends an RPC back to the client, and only to the client, the information about the spawn.

  4. The Server sends an RPC to all other player with only the information that they need to know

Since I gathered that you know how to write RPC, but not how to really use them, I will not give you an example, but instead challenge you to do it by yourself from here on :)

Hope you get it working, Benproductions1

Comment
madmike6537
AlucardJay

People who like this

2 Show 0 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

10 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Photon Network Instantiate Objects over Network 1 Answer

RPC sync issues 0 Answers

Objects instantiated by player owned object aren't owned by the player? 2 Answers

Deleting RPC objects 1 Answer

network.instantiating players using RPC calls 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges