PDA

View Full Version : CoreRPG issue with GM releasing PCs - layoutControls() doesn't operate correctly



Trenloe
April 27th, 2015, 01:24
This appears in CoreRPG and so I'd guess that this occurs in all CoreRPG based rulesets.

When the GM clears the owner of a PC and that PC is currently being used by a player (i.e. their portrait is shown on the desktop) the code to rebuild the control often doesn't work correctly. The layoutControl function in desktop\scripts\characterlist.lua rebuilds the controls, but User.getAllActiveIdentities() doesn't work correctly for the client where the PC was selected before having the ownership cleared. This results in the portraits being show on that client's desktop being incorrect - sometimes resulting in the user being unable to select any other PCs they control. Sometimes they can get it back by releasing all of their current PCs and re-activating them from the character selection screen, but usually they have to restart FG.

Steps to reliably recreate:

Create a new CoreRPG campaign.
Add 6 characters.
Log in one client and select 3 characters.
Login another client and select 3 characters.
The GM clears the owner of one of the characters.

The above will reliably result in the client where the character ownership was cleared from not displaying the remaining character entries correctly on the desktop. Sometimes the GM side doesn't show the correct number of activated characters also.

Looks like there's either an issue in the node.removeHolder(owner); process in campaign\scripts\charselect)host_entry.lua or the User.getAllActiveIdentities() in desktop\scripts\characterlist.lua.