Wednesday, January 30, 2008

UT3's Mutator layout

The UT3 Mutator layout has changed quite a bit from the previous games. Previously a mutator could belong to a mutator group (or not). When a mutator is in a group only a single mutator from that group can be selected. Not a major deal to organize that for the WebAdmin.

In UT3 the mutators have a list of groups they can be long to. Additionally a mutator also has a gametype filter, meaning that it's only available for a selection of gametypes. The gametype filter isn't a major deal, except for caching of the list. The organizing of the mutators based on groups is a bit of a pain. The groups can have overlapping sets. For example

  • Group 1
    • Mutator 1
    • Mutator 2
    • Mutator 3
  • Group 2
    • Mutator 1
    • Mutator 4
    • Mutator 5
  • Group 3
    • Mutator 2
    • Mutator 5
    • Mutator 6

When mutator 1 is selected, mutators 2 to 5 can not be selected. So, how to organize this using HTML. Should the user be able to select, for example, mutator 2 and thereby deselecting mutators the mutators belonging in groups 2 and 3. And how to disable/process this. UnrealScript does not provide good graph processing methods. But also the HTML processing is a bit difficult. A single group can be managed using radio elements. But selecting a mutator from a given group should also deselect conflicting mutators.