The solution is pretty obvious in hindsight. Have them send an item variable for each slot, and allow the schema to treat arbitrary fields as a single variable.
Implement a numeric field called aggregationGroup for schema fields. Schema fields that share an aggregationGroup (that isn't NULL), will be combined for cpv and cgv.
Duplicate values within a player record should not be counted.
[ ] Add logic for aggregating on new field. Remove data for field from array after combining.
[ ] Update admin form to allow admins to set this field on schema fields.
The solution is pretty obvious in hindsight. Have them send an item variable for each slot, and allow the schema to treat arbitrary fields as a single variable.
Implement a numeric field called
aggregationGroup
for schema fields. Schema fields that share anaggregationGroup
(that isn't NULL), will be combined forcpv
andcgv
.Duplicate values within a player record should not be counted.