Skip to main content
Version: Next

Client / server field groups

In the same table, client and server can receive different columns. This is controlled by ##group (and table-level groups set by engineering).

How to fill

On the ##group row, for each column:

CellMeaning
cClient only
sServer only
c,sBoth sides
EmptyAt field level usually means both sides (table-level rules differ slightly—follow engineering notes)

Example:

##varidnameiconpricedrop_weight
##typeintstringstringintint
##groupc,scc,ss
##IDNameIconPriceDrop weight
1001Goldicons/gold0100

Intuitive export result:

SideRoughly includes
Clientid, name, icon, price
Serverid, name, price, drop_weight

(icon is c only; drop_weight is s only.)

Table-level groups

Engineering may also mark a whole table as client-only or server-only. Then that table does not appear in the other side’s export. Follow the table notes they supply.

How to think while filling

Content typeCommon group
Display name, icon, description, quality colorc or c,s
Drop weights, crit formula params, anti-cheat thresholdsUsually s
Ids and foreign keys used by both sidesc,s or empty

Principles:

  • If unsure, ask engineering. Do not leave everything empty for convenience, then complain about client package size or numbers being unpacked.
  • Do not mark “server-only weights” as c.
  • After changing groups, regenerate; old client data does not update by itself.

Not the same as “do not export this row”

MechanismControls
##groupWhich side gets a column
Row-leading tag / ## comment rowWhether a row is exported (see engineering docs on tags; or treat the whole row as a comment)