Tech Talk: How we’re building IFS2

Written Bydulac
Published On

Hello dear reader, it’s a bit of a different post today. We’ve recently started building out a lot of new features on obsidianfleet.net that’ll let you manage your sim, add mission summaries, create your manifest and ultimately result in you having a unique sim page within IFS2. I (du Lac) have been getting asked how we’re making it happen so I thought I’d do a little walk-through of the platform, tools and kit that’s making it all work behind the scenes.

Hosting/Server Platform

When we decided to create IFS2, we also looked at our hosting provider and switched from Hostgator, our host for many years, to Siteground. Moving to Siteground provided some immediate advantages – we moved to a more powerful and more resilient server architecture, which should significantly reduce the risk of database failures taking the site out (it’s happened before) and also allows us to scale up to something crazy like 250,000 visitors a month without breaking a sweat. It also allowed us to look at changing IFS2 over to PHP7 and HTTP/2, which brought about a 10x increase in performance over our IFS1 installation on our previous server. We’ve also utilised Cloudflare’s global Content Delivery Network (CDN) so you’re served content from somewhere closer to your location than the server in London and to improve our uptime. We’ve tested this quite extensively across the globe and the load times were reduced from something like 15 seconds in Australia to 6, and I can measure the total amount of downtime in minutes. I’m quite happy with how it’s all worked out really.

IFS2 and WordPress

You’ve probably heard me and various members of the Fleet talking about “WordPress” and “Toolset” at various points over the past year, and I’ve been asked a few times what these things are. So the majority of this post is being devoted to explaining these two.

Wayyy back when we announced IFS2 on Obsidian Day 2017, we spoke briefly about how we’d decided to build our site using WordPress. WordPress is probably the single-biggest Content Management System used today on the Web – roughly 30% of all sites use it in some form or another – and it’s something both us and our friends in Bravo Fleet decided would be an ideal platform to develop on – BF for BFMS, and us for IFS2. It’s flexible enough to allow us to bolt-on extra items, develop unique interfaces and ultimately end up with a website that’s bespoke to both organisations. Plus, it’s WordPress so we know it’s going to be maintained going forward, there’s plenty of support available and it’s responsive enough to be used across all platforms. Add in the plugins and security that comes with it, and it’s a no-brainer. The issue with WordPress is, out of the box, it won’t support a Fleet so you need to do some developing.

and Toolset?

To help us build IFS2, we tried a few different development kits for WordPress before deciding on Toolset. Toolset provides us with an all-in-one development platform for WordPress and cuts our development time down significantly – it lets us build features without the need to write tons of code and custom functions to make stuff work. Without it, we’d have been stuck scratching our heads, writing loads of custom code and we’d not be where we are today.

Toolset lets us set up what’s called “Custom Post Types” in WordPress. These are basically like extra database tables which contain information relevant to that item. In our case, that’s things like sim, character, department, task force, etc. and then lets us build relationships between them, so we can link a TF to a TG to a Sim to Characters. Then we’re able to do things like link a CO to a sim, link monthly reports, link knowledgebase articles, etc. so we can build a sim page. Something a little like this …

Coming soon to a CO near you …

The sim page itself is also built using the Toolset suite, letting us create data-driven layouts and loops for things like crew and missions. It also is used on a lot of our front-end stuff like the slider, the forum post, recent replies block, etc. as well as the Characters functions we released late last year. It also lets us build custom entry forms for these, so you’ve already used it on the monthly report forms, the character creation screens, news submission forms, etc.

As you can see from the teaser image above, we’re in the middle of our testing for the sim pages, which also include version 1 of the manifest system. This will let you add characters who your crew have created in IFS2 to your sim, and link to their biographies on IFS2. It’ll also provide a mission summary area where you can provide visitors with an overview of what goes on on your sim, and provide a link back to your sites for each mission so people can find out more. We’re also linking the monthly reports to this screen so you’ll be able to click from here as a CO and more importantly, no longer have to type your sim name in twice, and it’ll also provide an archive of your monthly reports.

We’re currently working on the front-end forms for this now, so hopefully we can roll it out to everyone soon. I’m hoping to avoid CO’s having to view something like this when you want to make a change …

This is what it looked like for Admiral Sharr …

The good news is now we’ve got some of this stuff in testing, we can finally revisit things like the Open Positions List!

I’d like to say thankyou to you all for your patience, to the Toolset team for making this stuff both easier and possible and also while I’m here – if anyone wants to volunteer themselves and their crew to be guinea pigs for this test, please contact me on Discord or email at dulac@ this site.

If you want to see what Toolset’s about and how it’d make life easy to build complex sites on WordPress, visit https://www.toolset.com