Planning of Chapter 3
As of this moment, you can see the outline for chapter here! It briefly describes what will be in the chapter and the current roster of ships to be featured. The chapter’s working title is “Starfleet”, and as you might expect will focus on the early years of United Earth Starfleet (UESF), through its stagnation at Warp 2.5 to the breakthrough of the NX project.
Some of the secondary topics will be the usual competition between starship design & manufacturing giants, the development of warp reactors, Earth’s colonial progress, and the beginning of the end of the Earth Cargo Service’s “space boomer” community. The planned ship roster is as follows:
- 2120 – Y-class freighter, as seen from Star Trek: Enterprise
- 2121 – “Archer’s Model” demonstrator, as seen from Star Trek: Enterprise
- 2127 – Neptune-class surveyor, mentioned but unseen from Star Trek: Enterprise and designed from scratch by me
- 2128 – DY-950-class multi-mission ship, referenced but unseen from Star Trek: The Next Generation and based off Kris Trigwell’s design
- 2130 – “BBI-993”-class explorer, referenced but unseen from Star Trek: The Next Generation and designed from scratch by me
- 2134 – “Warp Delta”-class destroyer, as seen from Star Trek: Enterprise
- 2137 – “Arctic One”-class research ship, as seen from Star Trek: Enterprise
- 2140 – “Sarajevo”-class transport, as seen from Star Trek: Enterprise
- 2143 – NX demonstrator, as seen from Star Trek: Enterprise (NX Alpha and NX Beta)
- 2145 – Bison-class adaptable ship, fanon design from Masao Okazaki’s Starfleet Museum
- 2146 – DY-1200-class multi-mission ship, referenced but unseen from Star Trek: The Next Generation and based of Kris Trigwell’s design
- 2149 – Z-class freighter, fanon design by me
Below is a little taster into some of those ships (click for credits)!
Status of Chapter 2
Chapter 2 is basically finished, although I’m wanting to give it one or two read overs in the near future and refine it a little more.
New and based in the History section is this timeline feature, which serves as an easy to digest overview of the events relating to the UE’s and the Federation’s starship history. It is updated and added upon as per the development of the chapters.
As mentioned in the last post from March, the latest part of the Database section was finally finished last night after 4 months of delays (not technical, just didn’t get around to it). It is inaugurated with pages on Alexi Zhukov and Zefram Cochrane, the founder of the UESPA and the first human to fly at warp, respectively.
(Technical) Internal data structure rework
Continuing the trend of offloading parts of the website to the MySQL database was resulting in multiple new classes and unique methods in the SearchEngine to accommodate the new data that was needing to be fetched and displayed. However, since a lot of them have basic properties in common (all data in the database have IDs, names, and a revised/last modified dates), I created a simple class inheritance structure to cull the amount of unique classes required. For non-programmers, this basically means that the classes (which are, in theory, data structures with a collection of functions inside) that represent the data used for different features of the website are coded to reuse code via a hierarchy of extensions. In the screenshot below, you can see an implemented but basic example of this in PHP used by the website. The class Data is known as the “superclass” (also referred to as a base or parent class) and it stores the most universal and shared variables of data – and functions (known as class methods) for accessing said data – needed by all other classes. Class TimelineEvent is then a subclass (or derived or child class), which extends from Data so it has all of Data’s variables and methods defined alongside its unique variables and methods. If these classes were completely separate, Data’s variables and methods would have to be written again inside an independent TimelineEvent class. Which will eventually (and would in my case) add up when you’re dealing with lots of data that share some properties but have their own unique ones as well.
I know to programmers of any object-orientated language this does not seem high tech and is a basic use of inheritance at best (since I’m not dealing with overriding methods or any complex design patterns etc. etc.), but I thought it was cool to mention none the less and shows how OO concepts can make life easier.
More stuff offloaded to the database
Organisations, the database section mentioned in the last post, has been offloaded to the database. Yet another step towards a completely dynamic MySQL database-driven website!
Instant matching of search terms
To improve the search experience, I’ve added the ability for it to automatically redirect you to the correct result if it is an obvious match. For example, entering UESPA will instantly take you to the United Earth Space Probe Agency page without seeing the rest of the results.
Possible settings/control panel page
As things with the website become more complex, I’ve been considering adding a settings page for user preferences such as how section togglers behave (are they always open or closed by default), or whether instant search matching is enabled or not. Other ideas for settings include native light and dark mode and a purpose-made reader mode. My options for storing these settings are either a user account system or simple cookies. A user account system would allow these settings to be portable across the user’s devices as long as they’re logged in, but just cookies would be much quicker to implement and I could avoid the headache of dealing with user account security. There’s deffo a bit to consider before deciding to proceed with this feature!
BBI-class early concept
As I’ve mentioned before, BBI is to be an RT-class successor and is in the same tubular lineage featuring Masao’s Bison-class of 2145. I drew this concept a few months ago and have not touched it until now since I’ve been busy elsewhere and my energies here were focused on getting chapter 2 finished. With chapter 3 finally upon us, I will be revisiting this design soon.
SS Voyager detail rework
In keeping with the changes to the designs below, Voyager‘s details have been reworked. The changes are better colour shading, added RCS thrusters, visible separation lines between hull panels, and a longer main hull with a curved transition from the habitable hull to the engine hull.
Polaris-class detail rework
Changes to Polaris are about the same as Voyager. The fore-most windows have also been shrinked, and some details moved about.
Patterson-class detail rework
Whilst also including the same sort of changes made to Voyager and Polaris, Patterson has been made to look more robust with a strengthened neck structure. The 250mm guns are now fitted to visible barbettes and the command hull has been ‘blunted’. Also finally, the UN logo has been replaced with a UESPA one!
Yoyodyne II-type reactor
The Yoyodyne II-type is written to be the DY-732-class’s reactor, and will also be used by several period ships. Read about it here!
RT-class 3D model
I have been considering using 3D models for content development, whether it is using them to screencapping sideviews clearly at certain sizes thanks to anti-aliasing or for using WebGL to provide interactive ships on the database. Not entirely sure yet, but I have been attempting to model my RT-class explorer design to test my competency and develop my skills. I do 3D modelling for my other game-related projects as well, so this could be mutually beneficial for me here and on my portfolio!
In the near future, the ship reports for the BBI and DY-950-class ships should be done. Alongside it, I’ll be deciding the final class names and production volumes for various Starfleet ships destined for chapter 3, and I will be beginning the design process for my Z-class ECS freighter. In the near-ish future, expect some more flesh to the UESPA database. I want to start including information about its divisions and composition, as well as its transformation into Starfleet. I also want plan database sections for ship components like weapons, shuttles, and impulse engines etc.
In the longer term, I will be pursuing the user preferences thingy I mentioned above. I will probably start with a mock-up of a user account system and go from there.