Now unlike the ECR system I built for NFQ which was a more old style menu system complete with random corruptions and purposeful slow down this was supposed to be a more up to date web based system, we wanted multiple people to be able to use it and for information to be able to be added by the Refs in the run up to the event, so what we wanted was a pretty regular CMS, it was for a small fictional organisation of like 200 people and it needed to be able to support multiple accounts, various storage of text locked to groups and accounts, and also displaying video and calendaring. (TODO: I’ll hopefully post a few screenshots of the final thing and edit them into this post later)I started with a base of Joomla 3, picked after playing about with WordPress, Drupal, Joomla, and WebGUI (from memory). It was picked because it has the look and feel of a corporate style CMS and it looked like it had the feature base we wanted (I should note for those reading along at home that all these software platforms are totally free should you wish to play with them, get a cheap VPS and have fun if you want :)). Now I had the advantage of being the only dev working on this, and it only needed to be up and running for a single event, this enabled me to make some speedy progress on dev work as all I had to do was fulfil the requirements and keep it going for 6 hours on the day, I notably didn’t have to engineer for long term support, patching, policy on articles, structure, cross browser support (I knew that every client was a particular version of Firefox), or anything else that matters if thinking about this kind of thing on a larger scale.
Now notably Jooma has quite a big plugin base, although a lot of those are only for Joomla version 2, which was a bit of a pain, however we eventually got what we wanted working by using a combination of the following things:
- Auto-Publish: circumvented normal workflow of editors “approving” articles so things just appeared
- CodoPM: allowed simple IM between users which included some clues
- JuBlog: allowed users to have their own private “notes” section easily, which contained clues, reports, and door access codes
- DPCalendar: allowed us to make calenders for the staff “shift” schedules, which included details of how many people were on site and how many had been disappearing if examined.
So that got hammered out pretty rapidly, the main structure and menus got created, grouped by department (so any user could see any file in their department) this meant there were several good options for accounts to break into – either by password guessing or by the “hacking” mechanic (more on that later). We’d bulk created the 200 or so accounts for members of staff, and every account that looked like players may want to break into it had been given a hand picked password and clues seeded into the environment to give them chances to make a guess for it. Additionally the staff list was given to them for free as part of the Reception Desk account the first machine they met was logged into – and it included a staff “Who’s Who” list so they could guess usernames from that.
In the end it wasn’t actually that ground breaking as a prop, it was a small install of a widely used CMS, I changed a few colours on the default template, one of the refs made a logo, I made sure that the menus on view were only visible to the accounts in each department. Also I made sure the Refs had an OOC account which gave them a menu button for getting access to the behind the scenes administration system that Joomla uses.
The joy of using widely used bits of software is you can make something that looks professional enough for a casual game pretty easily, you can usually get themes and clip art thats good enough, run things off a domain (or in this case off a subdomain as this finally gave us the excuse to buy an actual room13 domain name for running projects off), which also gives you the ability to bulk route email if you have your own server – and all that adds up to something that looks pretty awesome for players and that adds to the immersion :)