Is there a way to send a pre determined gump layout to the client using the typeid? I've noticed that the virtue gump is sent by the client when you select the virtue button on the paper doll as well as the client options gumps. Or are these gumps restricted to the client?
 
The virtue gump that appears when you click on the paperdoll is not predefined in the client, it exists in the scripts under Virtues - "VirtueInfoGump" and "VirtueStatusGump".

When you click the button on your paperdoll it triggers the eventsink "VirtueGumpRequest" on your server, you can send any response you like from ServUO, or none at all.

The client options (Alt+O or request from paperdoll) are hardcoded in the client and not handled by the emulator at all.
 
Yea, gotcha and found that is called in PacketHandlers.cs. Its being called from one of the pre-determined gumps, in that case, a gump with a type id of 461. I've seen a list of gump ids here: http://ruosi.org/gumpguide/index.xml

So, back to my original question, are these gumps pre-determined on the client? And if so, is there a way to call these?
 
As I said in my previous post, no, these are not predetermined in the client. The gumps are sent from ServUO.

The table you linked are probably the specific type IDs on OSI. From what I know, TypeID of a gump is only useful for the server to send packets which ask "Please close all gumps of this type". They may be useful for assistants like UOSteam/EUO on the client side also.

The type ID used by RunUO/ServUO etc is determined by the hash code of the gump's (full) class name:
Code:
public static int GetTypeID( Type type )
{
	return type.FullName.GetHashCode();
}
 
Last edited:
Gotcha, and that's what I figured. I was poking around to see if these gumps were created client side like the login humps and the preferences gumps.
 
Back