IFS3 – The Deep Dive

Written Bydulac
Published On
Services Main

Welcome to a rather long blog entry. IFS3 launched a little under two weeks ago, so today we’re doing a deep dive into it. We’ll look at the why, the what, and how it’ll be used going forward.

The technical why

We launched IFS2 in the summer of 2017. IFS2 represented a total departure from IFS1. To recap:

  • Moved from Mambo to WordPress for the Content Management System. Mambo was 18 years old by that point and a security nightmare
  • Deployed Toolset as the development stack within WordPress. Toolset, generously provided for free from OnTheGoSystems, allowed us to quickly develop a basic control/data structure for IFS2
  • We developed IFS2 from a concept to a minimum viable product in the space of 8 weeks.
  • Swapped a lot of the custom theme work out for a theme called YouPlay, then we moved to Neve from ThemeIsle. Neve’s great. We love Neve. But …
  • Our mobile audience has increased 600% in the five years since we deployed IFS2. While Neve’s great on a phone, Toolset’s rendering wasn’t as good.

However, as we’ve advanced we’ve hit various blocks, issues and the world’s moved on technology wise. The introduction of the Block Editor in WordPress had quite a large impact on our front-end rendering tech in Toolset – Toolsets effectively went into an 18-month hibernation this past summer to allow OTGSystems to see where WordPress is going so it can respond accordingly. Also we were starting to experience quite a technical overhead for some fairly basic functions and random failures in the way IFS2 would render stuff. So, reason 1 – technical freeze on our core application design system and issues arising from how our CMS was evolving.

MyCharacters
IFS2, early edition

The business case for why

The business case is a little more nuanced. For that we need to look at how the market, technology and appetite for games has evolved over the last 21 years of Obsidian Fleet.

  • We’ve moved quite significantly from writing being a mostly solo endeavour in Play-by-Email to a collaborative effort in Nova.
  • The net effect of the above is that the quantity of posting has decreased, but the need for an immersive, collaborative writing experience has become a “front and centre” need.
  • There was a 15 year gap in the production of any new Trek that moved the story forward. This led to a steady, but noticeable decline in the audience for Trek RP, and Star Trek Online
  • There’s a huge technological overhead in Nova 2. While it may be the benchmark in Trek RPG, it’s incredibly fussy to install, modify and struggles with newer server platforms (PHP 8 and MariaDB 10.6).
  • There’s also a huge single point of failure with Nova. Anodyne Productions is mostly a single person operation, and mostly focused now on Nova 3. If they decide to call it a day, that’ll affect the entire community as-is.
  • Nova’s a proprietary system, so if a GM wanted to switch platforms, it’s not as simple as it could be.
  • More recently, we’ve been seeing a trend for GM’s to not want to have to set up Nova’s, or needing to do so has put them off completely. Other fleets have responded to this by using overspecced shared hosting, at a not-too-inconsiderable cost to them, to host Nova sites for their players. Conversely, other fleets have gone in a radically different direction, abandoning the concept of individual games completely in favour of a single writing community.

The Requirements

So taking all this into account, we could identify our baseline requirements for a new version of IFS.

  • Improve the user experience, both on desktop and on mobile
  • Bridge the gap between a single writing community and people to group together and write together on a game through the creation of a collaborative writing platform within IFS.
  • Incentivise prospective GM’s to be able to just “Turn up and Game”, removing a lot of the technical overhead needed to manage a game.

The Design of IFS3

With these requirements in mind, plus some of the lessons learned and developments in WordPress, we decided we needed to move away from the Toolset platform to develop IFS3. This required an element of mapping out our existing data formats, migrating them to our new development stack, Metabox, and then adding the extra functionality needed to meet the objectives. To support a more modern layout, we also switched from Neve to a completely custom theme. We then decided to harness the best-of-breed technologies in Cloudflare’s global content delivery network and WebP imagery to ensure that wherever you are in the world, the site content is quickly accessible – rather than you having to request content from a server in Europe when you’re several thousand miles away. The net result of this is a fully responsive layout with a typical page load time of less than 2.5 seconds in most countries in the world.

Search has also been significantly improved. Powered by ElasticSearch, it returns results quickly and accurately from everywhere in the site.

… and the non-techie bits?

To improve the gaming experience, we’ve developed two new, core pieces of functionality within IFS3. We’re calling these Stories and Chapters. They’re broadly equivalent to Missions and Posts in Nova. Each game within IFS3 (we’ve moved away from sims, though it still pops up in the backend) can have an unlimited number of stories attached, and each story can be made up of any number of chapters. A GM can set up a story, attach it to their game, and a player can choose to attach the chapter they’re writing to that story. To improve the speed of retrieval and storage efficency, these are all housed within custom database tables because of the way WordPress handles custom post functionality – let’s just say it wouldn’t be good if every story was stored in the usual WordPress way.

We’ve also expanded WordPress’ core functionality so that multiple authors can be attached to a single chapter, post or DB article, and set up an editorial workflow that will notify the authors whenever one of those post types is updated – and more importantly it’ll tell you who updated it and when. There’s also space for writers to comment on the work they’re creating so it becomes a truly collaborative experience for everyone.

We also reworked manifests. Ranks are now a switchable field within your manifest so if you’re not playing a game with ranks, you can switch it off. Crew can now be reordered just by dragging them to the appropriate spot and it shows in that order on the game page. We’ve also made it so that each game can now have multiple manifests attached. Want to dock your ship at a player station in Star Trek? Easy! Link your manifest and it shows on the station page. Write a chapter, add it to the story the GM’s set up for you on the station. That’s it. No more meta-Novas, no more registering and setting up extra logins, it’s quick and it’s simple.

Last but by no means least, we’ve expanded the functionality on a game page compared to IFS2’s game pages. GM’s can now write game updates which will appear on the game page, as well as submit news for the front page of the website. There’s also some customisable elements on the game page for logos, a cover art area, and a more customisable description.

Last? What about Reports? Characters?

Characters got a fresh lick of paint, that’s about it. They were in a pretty good place already. We’re thinking about how we can customise the front-end depending on the game, but that’s a longer-term project.

Reports? They’re gone. All we’re asking for, data wise, is for GM’s to submit their SPM each month. There is a but …
As a trade-off, we’re expecting GM’s to do the following:

  • If a game is Play-by-Discord, or Tabletop, we expect you to use IFS3 to show activity. For example, transcripts, links to podcasts or videos. Play by Forum must link the forums clearly so prospective players can browse the game.
  • If a game is Play-by-Web (Nova), we expect you to use the story function to showcase and link your missions to your game from the IFS3 game page so players can easily see what’s going on in your game.
  • We expect all GM’s to keep their game pages on IFS3 current and with fresh game updates, and regularly submit news, features, etc. for inclusion on the front page and on social media.

Why are we asking this? Our success as a fleet depends on your success as a GM. You represent the beating heart of the fleet, and a significant part of the reason why players come to Obsidian Fleet. For the fleet to grow and prosper, we need to be visibly raising the profile of the fleet, and our games, and showcasing why people should come and write/roll/talk with us. More content = more traffic = more potential players.

We’ll be following this up with GM’s after the Christmas Holidays with a view to IFS3 pages being updated and working towards the new expectations by the end of January 2023, and also having a round table conversation on social media, engagement and sustainable recruiting in the New Year.

The Future

We’re not done with IFS3, this is the start of the journey. We’ve got a few more things to work on including the Database, which is currently undergoing a full rebuild (editors note: as this went live, the early version of the Fleet DB did too). We’re also working on a replacement for My IFS, which will include some front-end submission and editing capability for characters, chapters, database articles and news. The Fleet Academy is also undergoing some changes from marked assignments to a portfolio-based journey for prospective GM’s and to self-taught and ungraded material for new players.

Comments/Questions?

This is part of one of our Round Table discussions on Discord – you can talk about it here.