Take a quick look:
To simplify the stored procedure for making the Connections list (will be renamed Exits), I redefined room connections as being one way (hmm, I should rename the columns to reflect that). Now, if you want to be able to walk back and forth between two rooms, it needs two connections, one for A-to-B and one for B-to-A. This actually makes sense, as it will allow for a compelling feature regarding room connections, i.e. something akin to "Shoots and Ladders".
Shouldn't be hard to make the People Here list for each of the rooms. Something like
create procedure proc_GetUsersHere
from aspnet_Users as a, UserStats as b
where a.UserID = b.UserID
and b.RoomID = @RoomID;
Items Here would be similar.
I'm going to introduce a few user roles. There are the obvious User and Admin, but I think I'm going to define Limited and Unlimited content creators as well. This will be done through the ASP.NET Membership Roles system, if I can figure out how to administer it properly.
Hmm, just reallized that I could still create a telnet interface for this MUD, and have it running on the same database with no compromises. Schweet, like candy. I might make a thin-client, too. That's what this project is all about, using standard .NET controls to build a fully featured game.