I'm looking for some functionality that would allow all users of a site to schedule online multiplayer gaming sessions that other users can sign up for, with various features as set forth below. This would be used by a pretty small community that plays one computer game (plus its sequel). I am trying to get an idea what a project would cost, to see if it is even feasible for my yet-to-be determined budget (I fear that it might not be, as the budget will probably be small). I was able to accomplish much of what I need with current modules, but there are some gaps in what the modules can do.

Depending on cost, I guess there are two possible ways to go. One would be to fill in the gaps in the setup I have with current modules. The second would be to build this from scratch mostly.

I'll start by describing the general scope, and at the end I'll explain what I was able to do with current modules (and the two things I've been unable to accomplish with current modules).

So, to start, the features we need are this:

- any registered user can schedule a gaming session (i.e. event)
- the person scheduling the gaming session can decide the parameters of that session (number of players, "flavor" of the game, game products needed to participate, etc), and have that information appear in the listing for that session/event.
- other users wanting to participate in the session can sign up to play, and that user's sign-up info will then appear in an attendance list.
- when signing up to play in a session, the user will enter information that will be viewable to all other site users who look at that session listing, such as the name of the character that he will use in the session, his character's class, etc.
- users can search for sessions based on the criteria entered by people scheduling sessions
- when scheduling sessions, users can specify games as Open (anyone can participate), Invite Only (users need an invitation from the session organizer in order to participate), or Application Only (users need to send an application to the session organizer, and be accepted, to participate)
- If a session is "Invite Only", the organizer should be able to send invitations from the session page to users (of his choosing).
- If a session is "Application Only," the organizer should be able specify an application question that will appear within the session specifications. Other users should be able to click somewhere on the session page to fill in application info and have the application sent to the game organizer.
- The session page should display an attendance list, showing the info of all users who have already signed up up for the session (including character name, class, etc.), so that all site users can determine what roles are needed, and whether the session interests them.
- a player can cancel his own registration for a session
- the organizer of a session can cancel the registration of anyone participating in that session
- preferably, this would use CCK and/or taxonomy features, so I could build in added functionality later, as needed (better searching and sorting, etc.)

I've been able to get most of the above functionality with CCK, and the Signup and RSVP modules, with two main hurdles:

1) The RSVP module allows an organizer to send out invites. The development version will even automatically add somebody to the Signup attendance list when the invitation is accepted. The problem is that an event has to be an "Open" event for this to work. If it is a "Closed" event, the RSVP will return an error message when it tries to add someone to the attendance list. So, hurdle #1 would be to alter the RSVP module so that it will add Invitees to the attendance list even when an event is Closed. This would enable an organizer to set an Invitation or Application game as "Closed," and only add specific players.

2) I need a way, after a game is set as an Application game, for players to simply click on an "Apply" link and send in applications to the session organizer. Right now it has to be done manually, by sending a private message.

So, any suggestions on what something like this would cost (either modifying existing modules or from scratch) would be appreciated. I'm a Drupal noob, but trying to learn, so please go easy. I don't think we'd have a problem with any modules that are made being freely released.

Comments

Eshilon Design Inc’s picture