Author Topic: App is live! Neon Dance  (Read 4589 times)

creativitysquare

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 41
    • View Profile
App is live! Neon Dance
« on: July 10, 2015, 09:05:46 PM »
Dear Aren

my hobby project is online.
I called it "Neon Dance"

Implements
TNet with Channel List and NGUI
I gave you credit in the credit section.

This is something i do in my spare time but i enjoy quite a lot.
My idea was to create a virtual night club to dance and chat and your tools proven to be amazing.

The only issue i still have is that (only from the app and not from the Unity Editor) the most of the time the first time connects but doesnt get me in the channel.
The second time all smooth. I am stuck and cannot understand this behaviour. ANy Clues?

@ All in this community, please download it, it is free and let me know what you think here.
Thanks a lot for your support
Eg

Method i call to join the channel:
  1. /// <summary>
  2.     /// Gos to d stage channel. any channel, match making
  3.     /// used also for neon dance online in which case the max player is set to 2
  4.     /// </summary>
  5.     private void JoinDChannel(){
  6.  
  7.         SM.play_effect_select1 ();
  8.         if (mGP.INTERNAL_SONGS_MODE) {
  9.             //\\\\\\\\\\\\\\\\\\\\\
  10.             stm.StopCurrentSong ();
  11.  
  12.             stm.StartRandomSong (Utils.SELECT_RANDOM_SONG, Utils.FORWARD);
  13.             if (mGP.GET_IS_CLASSIC_MODE_ON_ONLINE())
  14.                 stm.PauseCurrentSong();
  15.             //\\\\\\\\\\\\\\\\\\\\\    
  16.         }else{
  17.             //\\\\\\\\\\\\\\\\\\\\\
  18.             stm.StopCurrentSong ();
  19.             //\\\\\\\\\\\\\\\\\\\\\    
  20.         }
  21.         // music starts managed by OnNetworkJoinChannel in NMyConnectionManager????
  22.        
  23.  
  24.         Debug.Log ("[JoinDChannel]");
  25.  
  26.         //TNManager.playerName = mGP.GET_CHARACTER_NICKNAME (); settato gia in connessione
  27.        
  28.  
  29.         TNManager.JoinRandomChannel (NUtils.DANCING_STAGE_SCENE,
  30.                                      false,
  31.                                      mGP.GET_IS_CLASSIC_MODE_ON_ONLINE()?  NUtils.MaxPlayerPerChannel_NEONDANCE:NUtils.MaxPlayerPerChannel_FREESTYLE,
  32.                                      "");
  33.  
  34.         ChangeLabelOnButton(GameObject.FindGameObjectWithTag(NUtils.BT_JOIN_CHANNEL), "Getting you in...");
  35.        
  36.         #if UNITY_IPHONE
  37.         //  up localytics
  38.         if(mGP.GET_IS_CLASSIC_MODE_ON_ONLINE()) Localytics.tagEvent(AnalyticsEvents.GoToNeonOnlineChnnl);
  39.         else Localytics.tagEvent(AnalyticsEvents.GoToFreeStyleChnnl);
  40.         #endif
  41.  
  42.     }

COnnection Manager Class

  1. //-----------------------------
  2.  
  3. using UnityEngine;
  4. using TNet;
  5. using UnityTools = TNet.UnityTools;
  6. using System.IO;
  7. using System.Net;
  8. using System.Collections.Generic;
  9. using Prime31;
  10.  
  11.  
  12. public class NMyConnectionManager : TNBehaviour
  13. {
  14.     bool SERVER_CONNECTED = false;
  15.  
  16.     System.Collections.Generic.List<ChannelEntry> AllActiveChannels = new System.Collections.Generic.List<ChannelEntry>();
  17.  
  18.     public bool allowUDP = true;
  19.  
  20.     private NGenericButtons ngenButtons;
  21.    
  22.     private NGUIManager nGuiM ;
  23.  
  24.     private UITextList ChannelsTextList;
  25.  
  26.     float RefreshOffsetRate = 2.5f;
  27.     float NextRefreshUpdate = 0.0f;
  28.      /// <summary>
  29.      /// Never destroy this object
  30.      /// </summary>
  31.     void Awake () {
  32.  
  33.         // We don't want mobile devices to dim their screen and go to sleep while the app is running
  34.         Screen.sleepTimeout = SleepTimeout.NeverSleep;
  35.  
  36.         ngenButtons = GameObject.Find("__GameController").GetComponent<NGenericButtons>();
  37.  
  38.         nGuiM = GameObject.Find("__GameController").GetComponent<NGUIManager>();
  39.        
  40.     }
  41.  
  42.     // tag wallet amount
  43.     /// <summary>
  44.     /// i tag wallet amount here as this class moves around in the session and i tag it only once
  45.     /// </summary>
  46.     void Start(){
  47.  
  48.         #if UNITY_IPHONE
  49.        
  50.         // log localytics track title
  51.         Dictionary<string, string> dict = new Dictionary<string,string>();
  52.         dict.Add( AnalyticsEvents.WALLET_AMOUNT,  Wallet.GetTotalCoinsString());
  53.  
  54.         dict.Add( AnalyticsEvents.WALLET_AMOUNT_LTV,  Wallet.GetLifeTimeTotalCoinsString());
  55.        
  56.         Localytics.tagEventWithAttributes( AnalyticsEvents.WALLET, dict );
  57.         ////
  58.         #endif
  59.  
  60.     }
  61.  
  62.     /// <summary>
  63.     /// refresh
  64.     /// </summary>
  65.     void Update () {
  66.         if (Application.loadedLevelName == NUtils.LOBBY_SCENE) {
  67.                
  68.             if (Time.time > NextRefreshUpdate)
  69.             {
  70.                 if (SERVER_CONNECTED)
  71.                 {
  72.                     TNManager.client.BeginSend(Packet.RequestChannelList);
  73.                     TNManager.client.EndSend();
  74.                 }
  75.                 NextRefreshUpdate = Time.time + RefreshOffsetRate;
  76.             }
  77.         }
  78.     }
  79.  
  80.  
  81.     /// <summary>
  82.     /// On success -- join a channel.
  83.     /// </summary>
  84.     void OnNetworkConnect (bool success, string message)
  85.     {
  86.         Debug.Log ("[OnNetworkConnect]");
  87.        
  88.         if (success)
  89.         {
  90.             Debug.Log ("Connected ("+success+")- it is now possible to join a Channel");
  91.  
  92.             ngenButtons.DisplayNetworkMessages("Connected to Server");
  93.  
  94.             nGuiM.ShowChatWindow(true);
  95.  
  96.             // hide the connecting button
  97.             ngenButtons.HideShowButton(NUtils.BT_CONNECT, false);
  98.             // show channel button
  99.             ngenButtons.HideShowButton (NUtils.BT_JOIN_CHANNEL, true);
  100.  
  101.             SERVER_CONNECTED = true;
  102.             //   TODO
  103.             ///  COMMENT THIS BLOCK IN THE RELEASE AS THE CHANNELS MIGHT BE THOUSANDS LET
  104.             ///  TNET MANAGE EVERYTHING AUTOMATICALLY NO NEED TO SEE THE CHANNELS
  105.             ///  I WILL THOUGH FROM MY VERSION ON THE LAPTOP
  106.             ///
  107.             if (Application.loadedLevelName == NUtils.LOBBY_SCENE)
  108.                 TNManager.client.packetHandlers[(byte)Packet.ResponseChannelList] = OnChannelList;            
  109.             ///
  110.             ///   END OF BLOCK
  111.             ///
  112.             // Make it possible to use UDP using a random port
  113.             if (allowUDP)
  114.                 TNManager.StartUDP(Random.Range(10000, 50000));
  115.  
  116.             #if UNITY_IPHONE
  117.             //  up localytics
  118.             Localytics.tagEvent(AnalyticsEvents.SERVER_CONNECTED);
  119.             #endif
  120.         }else Debug.Log(message);
  121.     }
  122.  
  123.     /// <summary>
  124.     /// Disconnected? Go back to the menu.
  125.     /// </summary>
  126.     void OnNetworkDisconnect ()
  127.     {
  128.         Debug.Log ("[OnNetworkDisconnect]");
  129.         SERVER_CONNECTED = false;
  130.        
  131.         if (Application.loadedLevelName != NUtils.DISCONNECTED_SCENE)
  132.         {
  133.             Application.LoadLevel(NUtils.DISCONNECTED_SCENE);
  134.         }
  135.         //ngenButtons.DisplayNetworkMessages("You have been disconnected form the server");
  136.         #if UNITY_IPHONE
  137.         //  up localytics
  138.         Localytics.tagEvent(AnalyticsEvents.SERVER_DISCONNECTED);
  139.         #endif
  140.     }
  141.  
  142.     /// <summary>
  143.     /// Raises the network join channel event.
  144.     /// </summary>
  145.     void OnNetworkJoinChannel(bool success, string message){
  146.         Debug.Log ("[OnNetworkJoinChannel]" + success +" message "+ message);
  147.         // start the music only if you joined the channel
  148.         Debug.Log ("[ joined the channel now start the song ]");
  149.  
  150.  
  151.  
  152.     }
  153.    
  154.    
  155.    
  156.     /// <summary>
  157.     /// Raises the left channel event.
  158.     //TODO not working for me i have to disconnect server
  159.     /// </summary>
  160.     void OnNetworkLeaveChannel(){
  161.         Debug.Log ("[OnNetworkLeaveChannel]");
  162.    
  163.         //disconnect server
  164.         TNManager.Disconnect ();
  165.  
  166.     }
  167.  
  168.     /// <summary>
  169.     /// Raises the network player join event.
  170.     /// </summary>
  171.     /// <param name="p">P.</param>
  172.     void OnNetworkPlayerJoin(Player p)
  173.     {
  174.         Debug.Log(p.name + " has Joined Channel " + TNManager.channelID);        
  175.  
  176.  
  177.         #if UNITY_IPHONE
  178.         //  up localytics
  179.         Localytics.tagEvent(AnalyticsEvents.PLAYER_JOIN);
  180.         #endif
  181.     }
  182.  
  183.     /// <summary>
  184.     /// Raises the network player leave event.
  185.     /// </summary>
  186.     /// <param name="p">P.</param>
  187.     void OnNetworkPlayerLeave(Player p)
  188.     {
  189.         Debug.Log(p.name + " has Left Channel "+ TNManager.channelID);  
  190.         #if UNITY_IPHONE
  191.         //  up localytics
  192.         Localytics.tagEvent(AnalyticsEvents.PLAYER_LEAVE);
  193.         #endif
  194.     }
  195.  
  196.     /// <summary>
  197.     /// Raises the channel list event.
  198.     /// </summary>
  199.     /// <param name="response">Response.</param>
  200.     /// <param name="reader">Reader.</param>
  201.     /// <param name="source">Source.</param>
  202.     void OnChannelList(Packet response, BinaryReader reader, IPEndPoint source)
  203.     {
  204.         Debug.Log (" [OnChannelList] ");
  205.         AllActiveChannels.Clear();
  206.         int count = reader.ReadInt32();
  207.         for (int i = 0; i < count; ++i)
  208.         {
  209.             ChannelEntry _newChannelEntry = new ChannelEntry();
  210.             _newChannelEntry.id = reader.ReadInt32();
  211.             _newChannelEntry.count = reader.ReadUInt16();
  212.             _newChannelEntry.limit = reader.ReadUInt16();
  213.             _newChannelEntry.password = reader.ReadBoolean();
  214.             _newChannelEntry.persistent = reader.ReadBoolean();                  
  215.             _newChannelEntry.level = reader.ReadString();
  216.             _newChannelEntry.name = reader.ReadString();
  217.             AllActiveChannels.Add(_newChannelEntry);
  218.         }
  219.  
  220.         if (Application.loadedLevelName == NUtils.LOBBY_SCENE) {
  221.             ChannelsTextList = GameObject.Find("Chat Area").GetComponent<UITextList>();
  222.             ChannelsTextList.Clear();
  223.             foreach (ChannelEntry ce in AllActiveChannels)
  224.             {
  225.                 ChannelsTextList.Add("Channel #" + ce.id.ToString() + " - Dancers: " + ce.count + " - Dancers Limit: " + ce.limit);
  226.             }
  227.         }
  228.        
  229.     }
  230.  
  231.     /// <summary>
  232.     /// returns the first available channel, for match making automatico
  233.     /// If 0 then no channel available
  234.     /// </summary>
  235.     /// <returns>The available channel.</returns>
  236.     public int[] allChannelIDs = null;
  237.     public int FirstAvailableChannel(){
  238.  
  239.         int channelIDavailable=0;
  240.         int index = 0;
  241.         foreach (ChannelEntry ce in AllActiveChannels)
  242.         {
  243.             allChannelIDs[++index] = ce.id; // fill it up so i dont do it again
  244.  
  245.             if(ce.count < ce.limit){
  246.                 channelIDavailable = ce.id;
  247.                 break;
  248.  
  249.             }else{
  250.                 // no channel available
  251.                 // give me the id of the last one
  252.                 channelIDavailable = ce.id;
  253.             }
  254.         }
  255.         return channelIDavailable;
  256.     }
  257.  
  258.  
  259.  
  260.     ///
  261.     private struct ChannelEntry
  262.     {
  263.         public int id, count, limit;
  264.         public bool password, persistent;
  265.         public string level, name;
  266.     }
  267.  
  268.     /// <summary>
  269.     /// Finds the available channel.
  270.     /// Checks all channels and returns the first found with Max users less than Nutils limit
  271.     /// So channels will be busy and not with one person only
  272.     /// if no channel found give me the highest ID so i create a new one
  273.     /// </summary>
  274.     /// <returns>The available channel.</returns>
  275. //    public int FindAvailableChannel(){
  276. ////        foreach (ChannelEntry ce in AllActiveChannels)
  277. ////        {
  278. ////            if(ce.count < NUtils.MaxPlayerPerChannel){
  279. ////                return ce.id;
  280. ////            }else{
  281. ////                return 0; // no channel found, create your own - return max ID so we create a channel with differnt ID
  282. ////            }
  283. ////
  284. ////        }
  285. //    }
  286.  
  287.     ///
  288.  
  289.  
  290. }
  291.  

voncarp

  • Jr. Member
  • **
  • Thank You
  • -Given: 13
  • -Receive: 2
  • Posts: 91
    • View Profile
Re: App is live! Neon Dance
« Reply #1 on: July 11, 2015, 02:07:36 PM »
It would be much easier to download.  With a download link  ;)

creativitysquare

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 41
    • View Profile

yo_milo

  • Newbie
  • *
  • Thank You
  • -Given: 10
  • -Receive: 2
  • Posts: 36
    • View Profile
Re: App is live! Neon Dance
« Reply #3 on: July 12, 2015, 01:24:28 PM »
I will download it as soon as I have a chance.

ArenMook

  • Administrator
  • Hero Member
  • *****
  • Thank You
  • -Given: 337
  • -Receive: 1171
  • Posts: 22,128
  • Toronto, Canada
    • View Profile
Re: App is live! Neon Dance
« Reply #4 on: July 12, 2015, 08:10:25 PM »
Have you tried debugging the server-side to see what actually happens when your first join channel request comes in? Check what kind of response it sends out the first time and compare it to the second. Generally you should have your join channel call happen from OnNetworkConnect. Why idle outside a channel? Join a meeting channel of some sort.

creativitysquare

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 41
    • View Profile
Re: App is live! Neon Dance
« Reply #5 on: July 14, 2015, 03:51:47 PM »
Hi Aren

The log of the server is not helpful it simply says "connected" and after few seconds "disconnected".

The clients from Unity edito looks like this
before and after the connection taking place.

On the App instead I get only the first state where in the channel list windows i have the message "All available online stages" and after about 20 seconds it disconnects.

I have the connection in idle without joining a channel as the user may want to specify a channel name instead of joining a generic channel.

It looks almost as if while the message is "connected" is not really connected. On the server it shows the connection and the disconnection after several seconds.

As i said this behavior doesnt happen on the editor but only in the app and only the first time you run it...
very very strange...i cannot solve this puzzle

see pics attached

on the app the log from when the connection button is clicked is instead:

  1. [ConnectMe]
  2. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  3. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  4. UnityEngine.Debug:Log(Object)
  5. NGenericButtons:ConnectMe(String)
  6. NGenericButtons:ConnectMainServer()
  7. Callback:Invoke()
  8. VortexEffect:OnRenderImage(RenderTexture, RenderTexture)
  9. EventDelegate:Execute()
  10. EventDelegate:Execute(List`1)
  11. UIButton:OnClick()
  12. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  13. UnityEngine.GameObject:SendMessage(String, Object, SendMessageOptions)
  14. UICamera:Notify(GameObject, String, Object)
  15. UICamera:ProcessTouch(Boolean, Boolean)
  16. UICamera:ProcessTouches()
  17. UICamera:Update()
  18. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  19.  
  20. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  21.  
  22. [ChangeLabelOnButton] :BT_CONNECT_CONTAINER txt : Connecting...
  23. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  24. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  25. UnityEngine.Debug:Log(Object)
  26. NGenericButtons:ChangeLabelOnButton(GameObject, String)
  27. NGenericButtons:ConnectMe(String)
  28. NGenericButtons:ConnectMainServer()
  29. Callback:Invoke()
  30. VortexEffect:OnRenderImage(RenderTexture, RenderTexture)
  31. EventDelegate:Execute()
  32. EventDelegate:Execute(List`1)
  33. UIButton:OnClick()
  34. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  35. UnityEngine.GameObject:SendMessage(String, Object, SendMessageOptions)
  36. UICamera:Notify(GameObject, String, Object)
  37. UICamera:ProcessTouch(Boolean, Boolean)
  38. UICamera:ProcessTouches()
  39. UICamera:Update()
  40. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  41.  
  42. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  43.  
  44. Attempting to connect MAIN server
  45. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  46. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  47. UnityEngine.Debug:Log(Object)
  48. NGenericButtons:ConnectMainServer()
  49. Callback:Invoke()
  50. VortexEffect:OnRenderImage(RenderTexture, RenderTexture)
  51. EventDelegate:Execute()
  52. EventDelegate:Execute(List`1)
  53. UIButton:OnClick()
  54. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  55. UnityEngine.GameObject:SendMessage(String, Object, SendMessageOptions)
  56. UICamera:Notify(GameObject, String, Object)
  57. UICamera:ProcessTouch(Boolean, Boolean)
  58. UICamera:ProcessTouches()
  59. UICamera:Update()
  60. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  61.  
  62. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  63.  
  64. [OnNetworkConnect]
  65. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  66. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  67. UnityEngine.Debug:Log(Object)
  68. NMyConnectionManager:OnNetworkConnect(Boolean, String)
  69. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  70. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
  71. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
  72. System.Reflection.Module:filter_by_type_name_ignore_case(Type, Object)
  73. System.Reflection.MethodBase:Invoke(Object, Object[])
  74. UIFont:UsesSprite(String)
  75. TNet.UnityTools:Broadcast(String, Object[])
  76. TNManager:OnConnect(Boolean, String)
  77. TNet.OnConnect:Invoke(Boolean, String)
  78. TNet.UdpProtocol:OnSend(IAsyncResult)
  79. TNet.GameClient:ProcessPacket(Buffer, IPEndPoint)
  80. TNet.GameClient:ProcessPackets()
  81. TNManager:Update()
  82. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  83.  
  84. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  85.  
  86. Connected (True)- it is now possible to join a Channel
  87. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  88. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  89. UnityEngine.Debug:Log(Object)
  90. NMyConnectionManager:OnNetworkConnect(Boolean, String)
  91. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  92. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
  93. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
  94. System.Reflection.Module:filter_by_type_name_ignore_case(Type, Object)
  95. System.Reflection.MethodBase:Invoke(Object, Object[])
  96. UIFont:UsesSprite(String)
  97. TNet.UnityTools:Broadcast(String, Object[])
  98. TNManager:OnConnect(Boolean, String)
  99. TNet.OnConnect:Invoke(Boolean, String)
  100. TNet.UdpProtocol:OnSend(IAsyncResult)
  101. TNet.GameClient:ProcessPacket(Buffer, IPEndPoint)
  102. TNet.GameClient:ProcessPackets()
  103. TNManager:Update()
  104. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  105.  
  106. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  107.  
  108. [ShowChatWindow] True
  109. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  110. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  111. UnityEngine.Debug:Log(Object)
  112. NGUIManager:ShowChatWindow(Boolean)
  113. NMyConnectionManager:OnNetworkConnect(Boolean, String)
  114. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  115. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
  116. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
  117. System.Reflection.Module:filter_by_type_name_ignore_case(Type, Object)
  118. System.Reflection.MethodBase:Invoke(Object, Object[])
  119. UIFont:UsesSprite(String)
  120. TNet.UnityTools:Broadcast(String, Object[])
  121. TNManager:OnConnect(Boolean, String)
  122. TNet.OnConnect:Invoke(Boolean, String)
  123. TNet.UdpProtocol:OnSend(IAsyncResult)
  124. TNet.GameClient:ProcessPacket(Buffer, IPEndPoint)
  125. TNet.GameClient:ProcessPackets()
  126. TNManager:Update()
  127. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  128.  
  129. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  130.  
  131. [HideShowButton] :BT_CONNECT bool : False
  132. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  133. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  134. UnityEngine.Debug:Log(Object)
  135. NGenericButtons:HideShowButton(String, Boolean)
  136. NMyConnectionManager:OnNetworkConnect(Boolean, String)
  137. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  138. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
  139. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
  140. System.Reflection.Module:filter_by_type_name_ignore_case(Type, Object)
  141. System.Reflection.MethodBase:Invoke(Object, Object[])
  142. UIFont:UsesSprite(String)
  143. TNet.UnityTools:Broadcast(String, Object[])
  144. TNManager:OnConnect(Boolean, String)
  145. TNet.OnConnect:Invoke(Boolean, String)
  146. TNet.UdpProtocol:OnSend(IAsyncResult)
  147. TNet.GameClient:ProcessPacket(Buffer, IPEndPoint)
  148. TNet.GameClient:ProcessPackets()
  149. TNManager:Update()
  150. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  151.  
  152. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  153.  
  154. [HideShowButton] :BT_JOIN_CHANNEL bool : True
  155. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  156. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  157. UnityEngine.Debug:Log(Object)
  158. NGenericButtons:HideShowButton(String, Boolean)
  159. NMyConnectionManager:OnNetworkConnect(Boolean, String)
  160. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  161. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
  162. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
  163. System.Reflection.Module:filter_by_type_name_ignore_case(Type, Object)
  164. System.Reflection.MethodBase:Invoke(Object, Object[])
  165. UIFont:UsesSprite(String)
  166. TNet.UnityTools:Broadcast(String, Object[])
  167. TNManager:OnConnect(Boolean, String)
  168. TNet.OnConnect:Invoke(Boolean, String)
  169. TNet.UdpProtocol:OnSend(IAsyncResult)
  170. TNet.GameClient:ProcessPacket(Buffer, IPEndPoint)
  171. TNet.GameClient:ProcessPackets()
  172. TNManager:Update()
  173. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  174.  
  175. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)


onChannelList never gets called on the App and then it disconnects

  1. [OnNetworkDisconnect]
  2. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  3. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  4. UnityEngine.Debug:Log(Object)
  5. NMyConnectionManager:OnNetworkDisconnect()
  6. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  7. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
  8. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
  9. System.Reflection.Module:filter_by_type_name_ignore_case(Type, Object)
  10. System.Reflection.MethodBase:Invoke(Object, Object[])
  11. UIFont:UsesSprite(String)
  12. TNet.UnityTools:Broadcast(String, Object[])
  13. TNManager:OnDisconnect()
  14. TNet.OnDisconnect:Invoke()
  15. VortexEffect:OnRenderImage(RenderTexture, RenderTexture)
  16. TNet.GameClient:ProcessPacket(Buffer, IPEndPoint)
  17. TNet.GameClient:ProcessPackets()
  18. TNManager:Update()
  19. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  20.  
  21. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  22.  
  23. UnloadTime: 7.000708 ms
  24. GameVersion: LITE
  25. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  26. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  27. UnityEngine.Debug:Log(Object)
  28. NGenericButtons:Awake()
  29. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  30.  
  31. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  32.  
  33. other scene bfr CryptoPlayerPrefs.GetString(Utils.ENABLE_VOICE_INVIDEO) NO
  34. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  35. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  36. UnityEngine.Debug:Log(Object)
  37. NGenericButtons:SetVideoSetting()
  38. NGenericButtons:Awake()
  39. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  40.  
  41. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  42.  
  43. other scene bfr CryptoPlayerPrefs.GetString(Utils.SHOW_HUD_INVIDEO) YES
  44. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  45. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  46. UnityEngine.Debug:Log(Object)
  47. NGenericButtons:SetVideoSetting()
  48. NGenericButtons:Awake()
  49. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  50.  
  51. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  52.  
  53. other scene CryptoPlayerPrefs.GetString(Utils.ENABLE_VOICE_INVIDEO) NO
  54. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  55. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  56. UnityEngine.Debug:Log(Object)
  57. NGenericButtons:SetVideoSetting()
  58. NGenericButtons:Awake()
  59. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  60.  
  61. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  62.  
  63. ohter scene CryptoPlayerPrefs.GetString(Utils.SHOW_HUD_INVIDEO) YES
  64. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  65. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  66. UnityEngine.Debug:Log(Object)
  67. NGenericButtons:SetVideoSetting()
  68. NGenericButtons:Awake()
  69. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  70.  
  71. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  72.  
  73. >>>>>>>>>>>>>>>>iPhone generation iPhone6
  74. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  75. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  76. UnityEngine.Debug:Log(Object)
  77. NGUIManager:Awake()
  78. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  79.  
  80. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  81.  
  82. WARNING: Shader Unsupported: 'Hidden/Glow 11/Blur GL' - Pass '' shader state not supported
  83. WARNING: Shader Unsupported: 'Hidden/Glow 11/Blur GL' - Setting to default shader.
  84. Unloading 3 Unused Serialized files (Serialized files now loaded: 0 / Dirty serialized files: 0)
  85.  
  86. Unloading 311 unused Assets to reduce memory usage. Loaded Objects now: 863.
  87. Total: 13.143332 ms (FindLiveObjects: 0.121541 ms CreateObjectMapping: 0.118041 ms MarkObjects: 1.265208 ms  DeleteObjects: 11.366291 ms)
  88.  
  89. Level LoadedDISCONNECTED_SCENE
  90. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  91. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  92. UnityEngine.Debug:Log(Object)
  93. SoundTrackMngr:OnLevelWasLoaded()
  94. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  95.  
  96. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  97.  
  98. [StopCurrentSong] STOPPING 7
  99. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  100. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  101. UnityEngine.Debug:Log(Object)
  102. SoundTrackMngr:StopCurrentSong()
  103. NGUIManager:Start()
  104. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  105.  
  106. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
  107.  
  108. [PlayCurrentBcgSong] Play 7
  109. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  110. UnityEngine.Debug:Internal_Log(Int32, String, Object)
  111. UnityEngine.Debug:Log(Object)
  112. SoundTrackMngr:PlayCurrentBcgSong()
  113. NGUIManager:Start()
  114. System.Collections.Generic.DefaultComparer:Equals(DateTime, DateTime)
  115.  
  116. (Filename: /Users/builduser/buildslave/unity/build/artifacts/iPhonePlayer-armv7-il2cppGenerated/UnityEngineDebug.cpp Line: 56)
« Last Edit: July 14, 2015, 03:57:17 PM by creativitysquare »

ArenMook

  • Administrator
  • Hero Member
  • *****
  • Thank You
  • -Given: 337
  • -Receive: 1171
  • Posts: 22,128
  • Toronto, Canada
    • View Profile
Re: App is live! Neon Dance
« Reply #6 on: July 15, 2015, 12:48:56 AM »
After TNet establishes a connection, it can then send data -- and does so by sending Ping packets every couple of seconds. If 10 seconds go by without any packet, you get disconnected. I would suggest putting Debug.Logs to watch for packets being sent and received (on client and server side) to see if what the client sends actually arrives at the server.