08-06-2006 11:04
The only thing I've thought of that seems to be missing from what is otherwise a very good group update, is some kind of scripted control?
Currently LSL lets you add/remove people your parcel access list, really however what we need is the same thing, but for groups. Now I realise that the roles complicate this a little bit, however, the simplest solution is to have it piggy-back the current invitation system.
ie:

key llAddToGroup(key id);
key llRemoveFromGroup(key id);

Both of these trigger dataserver events via the usual group mechanism, and are treated as though the owner of the object the script belongs to performed the action (so their role is used). The dataserver reply is simply an integer cast as a string either TRUE or FALSE for accepted/rejected. So if your role does not allow it, then the dataserver event returns failure, otherwise success, and the action is carried out.

These would be extraordinarily handy for running rent-based systems. For example, I am hoping to set up an apartments complex. One of the problems though is that if someone is squatting or littering a parcel, it can be very difficult to detect. To prevent littering while allowing people to use their rooms would require a group, however inviting them as required is a very cumbersome and annoying procedure (and kind of defeats the purpose of an automated system). The alternative is open-enrolment, however this does not solve the problem of people putting down what they want and leaving things lying as they please since they can join the group too.
If you could have a script add/remove users to and from the apartments group (or even a group for each individual apartment) then it would allow for open style enrolment (ie the script adds the room owner and anyone they add to their allowed list) without the problem of absolutely anyone getting in.

Figured I'd post it here since the group features are upcoming, and it would make them even more powerful than they already are, allowing for a good deal of scripted land control that currently does not exist. With this it's a case of setting auto-return and having a sensible script handle new users (who'd be added with a default level).
_____________________
Computer (Mac Pro):
2 x Quad Core 3.2ghz Xeon
10gb DDR2 800mhz FB-DIMMS
4 x 750gb, 32mb cache hard-drives (RAID-0/striped)
NVidia GeForce 8800GT (512mb)