Difference between revisions of "Guilds"

From SWGANH Wiki
Jump to: navigation, search
Line 13: Line 13:
 
:*Player clicks on "create guild". '''CLIENT SENDS''' ObjectMenuSelectMessage with button id 185.
 
:*Player clicks on "create guild". '''CLIENT SENDS''' ObjectMenuSelectMessage with button id 185.
  
:*The '''SERVER SENDS''' a SuiCreatePageMessage:Script.inputBox([http://paste.swganh.org/viewp.php?id=20070705193023-6cbd2c60a6ecefe3257d9c5427afae6d Example]). This displays a small box to the player asking them to enter a name for their guild.  
+
:*The '''SERVER SENDS''' a SuiCreatePageMessage:Script.inputBox([http://paste.swganh.org/viewp.php?id=20070705193023-6cbd2c60a6ecefe3257d9c5427afae6d onGuildCreateNameResponse]). This displays a small box to the player asking them to enter a name for their guild.  
  
:*Player enters a name and presses the OK button. '''CLIENT SENDS''' SuiEventNotification with the window ID and the submitted text, in this case OK meaning the player pressed ok.
+
:*Player enters a name and presses the OK button. '''CLIENT SENDS''' SuiEventNotification with the window ID and the submitted name.
 +
 
 +
:*The server then quickly checks to make sure no other guilds exist with this name and that it doesn't contain any profanity or starwars faction names. Everything checks out and the '''SERVER SENDS'''SuiCreatePageMessage:Script.inputBox(http://paste.swganh.org/viewp.php?id=20070705194741-c6bb72342e7fad9a418f1849a41bc14d onGuildCreateAbbrevResponse).

Revision as of 19:48, 5 July 2007

A short guide from the packet perspective on to how to tie the many systems of the swg client together to achieve guilds.


Step1: The Setup

When each player zones into a region regardless if they are part of a guild or not they get the GILD 3. It contains a list of all the guild id and tags for every guild on the server. This packet can sometimes get very large but its used so that when someone has a guild tag displayed you see it. How this works is that when a player is a member of a guild there is a variable in the CREO6 that contains the id of the guild they belong too. It uses the information in the GILD3 to know what tag to display next to their name.


Step2: Creating the guild

  • Player brings up guild terminal's radial and sever checks to see if it has been associated with a guild yet. If finds that it has not and returns the "create guild" radial. SERVER SENDS ObjController 147h -- OptionID 7(EXAMINE) and OptionID 185 (@guild:menu_create).
  • Player clicks on "create guild". CLIENT SENDS ObjectMenuSelectMessage with button id 185.
  • The SERVER SENDS a SuiCreatePageMessage:Script.inputBox(onGuildCreateNameResponse). This displays a small box to the player asking them to enter a name for their guild.
  • Player enters a name and presses the OK button. CLIENT SENDS SuiEventNotification with the window ID and the submitted name.