HeroEngine Forums
Welcome, Guest. Please login or Register for HeroCloud Account.

Author Topic: "You have been disconnected" message on attempted persisted node creation  (Read 743 times)

Maldris

  • General Accounts
  • *
  • Posts: 49
    • View Profile

ok, I have been working on a quest system of the last while, recently when I added a chat command to add quests to the quest log I initially had no problems (other than having to work out logical errors in the way the quests progressed)

Then one day I signed in and told the character node to set-up the questlog (I delete it after I'm done testing each time until the system is bug free) then told it to create a quest (the same testing quest Id been using). At this point, I got a disconnect error. Upon trying to reconnect to the server I found I was unable to (until some time later) and recieve an error message (image attached)

Today I added several printLn statements through the code from the start of the chat command, all the way through. I then deliberately reproduced the bug in the hope it would spit out the printLn statements and Id find where the error was. Unfortunately none of the printLn output messaged showed up in the console before I disconnected. I also recieved a different error when I tried to reconnect.

The interesting part about all this is that when I am able to sign in again, the quest system is set-up and the nodes exist as though it executed it all correctly, however it kicking the user whenever they receive a quest is not really a good feature :P

I've attached here the console error I receive when I disconnect as well as the two different errors I've received trying to login

17:32:10: Refreshing serverScriptOrganizer.
17:33:40: !ERROR!System:Connection to Server Lost: Connection Lost
17:33:40: !ERROR!System:GUIGhostInterface::Build(RFIF): GOM ERROR: GOM::addNodeFromPrototype (10554): error: with InternalException message 'Unable to create an instance from the prototype(1000000291), as it is not a valid prototype id.' node=1000000290
17:33:40: !ERROR!System:GUIGhostInterface::Build: Failed to create GUI control. name=GUIPanel
      
Has anyone else experienced this kind of issue? or can anyone advise me as to what may have happened?
Logged

Maldris

  • General Accounts
  • *
  • Posts: 49
    • View Profile

ok, over the last few days I've been testing this. As the last the day I've been commenting most of the systems code out and uncommenting it section at a time to figure out what's causing the crash.

Obviously it turned out to be the last line of the whole system. Then the last line of that method that it called.

Ultimately it was in this method:

Code: [Select]
method _addWaitToReplicationGroup(wait as NodeRef of Class Wait_Request)
  println("wait is: " + wait)
  replicationGroup as NodeRef of Class _ReplicationGroup = me._getReplicationGroup( true )
  if not replicationGroup._IsNodeReplicated(wait)
    println("wait is not replicated")
    replicationGroup._ReplicateNode(wait)
  .
.

specifically the line:

Code: [Select]
replicationGroup._ReplicateNode(wait)

which confuses me as literally the same line is used to replicate other parts of the stage without issue.
I have checked, all the replication parameters are set correctly on the class wait_request. I'm truly confused as to what is going wrong. Would anyone have any suggestions?
Logged

Maldris

  • General Accounts
  • *
  • Posts: 49
    • View Profile

ok, finally remembering to come back and update this, we figured out what was causing the problem, after rebuilding the system to make use of a new spec layout.

at some point or another, the timer field had accidentally been setup and marked for replication. When the system started replicating the timer is when the client crashed.

fortunately it was never intended for hte timer to be replicating, its marking as such was purely accidental, however I thought I would complete this post in the event that anyone else has a similar issue in the future, and to ensure that staff are aware of this issue.
Logged