Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • 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
0
Question by OwenKuhn · Aug 04, 2014 at 07:30 PM · networkingmultiplayerscenessynchronization

Multiplayer client and server aren't talking to each other properly after changing scenes

So my game starts out with a character selection/stage selection scene. Everything seems to work fine there, but once I actually load up the stage the problem begins.

So the level loads correctly on both systems, and the selected characters instantiate properly, but after that, they disagree with each other. The server can move his own character on his own screen just fine, but he doesn't move at all on the client's screen.

The client meanwhile, can't move his own character on either screen, but that's a secondary concern, since I think once I fix the first problem the second problem will fall into place.

Here's the relevant code as far as I can tell: Starting the server:

 function StartServer()
 {
     Network.InitializeServer(numPlayers+1, listenPort, !Network.HavePublicAddress());
     MasterServer.RegisterHost(typeName, gameName);
 
     var ply: PlayerInfo = GameObject.FindObjectOfType(PlayerInfo);
     var go : GameObject = empty;
     players[Network.player] = go;
 }

client joins the server:

 function OnPlayerConnected(player: NetworkPlayer) 
 { 
     var ply: PlayerInfo = GameObject.FindObjectOfType(PlayerInfo);
     var go : GameObject = empty;
     players[player] = go;
     networkView.RPC("updatePlayers", RPCMode.All, player);
 }

Instantiating the objects (Server):

 function spawnCharacters()
 {
     for (var j in players.Keys)
     {
         player1 = Network.Instantiate(players[j], Vector3.up*3, Quaternion.identity, 0);
         playersField[j] = player1;
     }
 }

loading the level looks like this:

 function stageSelect()
 {
             if (GUILayout.Button("Tutorial"))
             {
                 networkView.RPC("LoadLevel", RPCMode.All, "Tutorial");
             }
 }
 
 @RPC
 function LoadLevel (level : String)
 {
     Application.LoadLevel(level);
 }

for simplicity, right now the command is this

 if (Input.GetButton(RIGHT))
     playersField[Network.player].transform.Translate(Vector2(1,0));

When I load up a server and a client, the character will move in the server's window but not the client's.

Comment
Add comment
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

0 Replies

· Add your reply
  • Sort: 

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.

Follow this Question

Answers Answers and Comments

2 People are following this question.

avatar image avatar image

Related Questions

Unity networking tutorial? 6 Answers

Beginner's Networking Questions 0 Answers

Easiest way to sync a boolean variable across multiple Android app instances? 2 Answers

How to sync a ball, where two players kick it in turns? (Multiplayer game using UNET) 0 Answers

Help| Sync' boolean variable (Friendly Fire) 0 Answers


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