Forward unto Chapter 3

Finally.

An update!

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.

Timeline feature

20180730_desktop_timeline

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.

People database

20180802_desktop_person.png

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.

Capture
Example of the classes used for data representation in the website’s backend

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

sketch

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

2067_UESPA_voyager_default

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

2085_UESPA_polaris_default

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

2097_UESPA_patterson_default

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!

3d.png
A very early RT rendition

Upcoming stuff!

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.

Advertisements

Brains Eden (2018)

As of 4PM Monday 16th July, I’ve concluded my first game jam! Four team members and I headed down to Anglia Ruskin University in Cambridge for 3 nights to take part in the Brains Eden Gaming Festival and game jam. With the set theme of “unreliable”, we set to work on an approximately 30-hour build spread across Friday afternoon, most of Saturday, and Sunday morning to afternoon.

It all started with waking up half 4AM on Friday morning to make the meet up with two of the three other team members needing to go by car at 6AM. It took about 4 hours to get from Treforest to Cambridge. We picked up the fourth on the way, and meet up with the fifth there. Once we got there and checked in, we sat in talks from the COO of Frontier Developments, a successful interned employee of Ubisoft Massive, and a veteran Brains Eden jammer. I took away the aim to innovate with a social game and a no-word story, and that I most of all needed to have fun! When the jam started at 4PM that day, we spent about two or three hours spinning ideas and planning. We were mostly tired from the early start, but we had some good ideas. We first tried a pirate ship idea where players could form a crew on a ship midbattle. The game was to be online multiplayer based with tense action, fulfilling the social aspect of our aims. We had to abandon the idea due to Unity engine networking being blocked by the campus firewall, and we realised the entire idea wasn’t refined enough anyway. After about another hour of planning, we eventually formed the current idea.

“Fistful of ‘Nanas” is a Western-style multiplayer game – you play as a monkey about duke it out over a barrel of bananas. To satisfy the social aim, we tried to innovate by not having any of the players know which monkey they and the rest of the players are, but make it have incentives for the players to try and communicate through a limited medium. The game is played with Nintendo Joy-Cons, so we made it so you can press the +/- button to find out which monkey you are by making the controller vibrate your player number in an interval pattern. Then to communicate with the other players to either propose alliances or confuse them, you can use the analog stick to ‘nudge’ other players.

20180715_01.png
Fistful of ‘Nanas opening screen, showing the map you play on, the barrel of bananas you fight over, and the general art style we were able to pull off considering the team was entirely made of programmers.

The monkeys were seen in game in a clockwise circle around the barrel that corresponded to players 1 through 4. The four ‘normal’ buttons on the controller are then used to select your target. Once everyone has selected (you can tell who doesn’t by seeing which player does not have a banana over their head), the game will reveal who shot who, show who died, and who won the round (shown by victory dances that include twerking)! Whilst the game did not win us any prizes on the last day there, it will be a good portfolio piece, and the stress and enjoyment of developing the game in a limited amount of time will be a fond memory and valuable experience for years to come!

Other notable things about our time in Cambridge include the after-party at the Centre for Computing History (sunday), and the final day’s (monday) talks from Frontier Developments, ARM, and HyperX. The Centre for Computing History was amazing! Having a soft-spot for older machines made the place feel like a dream home, and the free pizza and drinks provided by the Brains Eden! Below are some of my favourite picks from the place!

This slideshow requires JavaScript.

Other than some misfortunes with my teammate’s car back in Treforest, the entire time there was just about the best experience I have had in a long time! I deffo hope to make a return next year! Thanks to Brains Eden and Anglia Ruskin University for setting up and hosting such a wonderful event, thanks to our lecturer Dr. Mike Reddy for getting the band together and taking us, and thanks to the teammates (Jack Smerdon, Jake Passmore, Nicky Jones, and Steven Sparkes) for the collective effort and the bants we had!

Also, the game will be on my portfolio (http://khalidali.co.uk/fon) soon so you can read more details and see more images of it. I aim to have the page ready by the end of the week.

Two more stations

Today brings two more space stations, the “Missing Sector” drydock and the “Jumping Spider” starbase.

Missing Sector

Named after the Missing Sector Orb Web spider, the second drydock design of the game takes a ‘rib cage’ approach to illuminating the encased ship. It is designed to be stationary unlike False Widow on my last post, although both are about the same size.

Jumping Spider
20180621_1449
Named after the spider species of the same name, this is a test starbase that will be used for developing the needed scripts for later ones. Its far from a perfect model, but it will make a great placeholder for the time being! Its about 4 kilometres from top to bottle and can fit a fair amount of ships inside.

So, what are starbases?
Starbases are huge support facilities that function as unified command centres, repair and replenishment stations, cold storage, and staging areas. In size, they typically dwarf all starships, carry several thousand personnel, and the largest can even contain multiple starships inside! The game will make extensive use of starbases as major hubs and places for the Player to dock at.

I’m planning six unique types, starting with a further development of Jumping Spider as the largest type. The five others will vary in size and purpose. I’ll be showcasing some of them next week, so stay tuned!

 

False Widow Drydock

The next addition to the game is a bigass space station.

The “False Widow” drydock.

20180619_1224
Drydock in orbit of Tholia III, with a Dew Drop-class explorer docked

A bit about drydocks
In reality, drydocks are huge basins that can be flooded to allow ships to dock, and then drained to expose the ship’s hull for repair work or painting. They can be also used to build ships in ‘dry’ conditions before being set afloat. Drydocks in the Star Trek universe serve the same purpose, but are based in space (no shit, I know). False Widow is the first of about four designs of Tholian drydocks to be created, which will serve as repair and replenishment stations for the player to dock in.

Common characteristics between all four drydock designs will be traditional Tholian principles (three hull ‘arms’), thrusters for orbit adjustment, and a large array of lighting. Each hull arm has one or two large illumination pads at the mid-section used to light up the docked ship, and a single smaller lighting pad at the absolute end used to help ships navigate in without colliding with the station. In Unity, the lighting effects for both types of pads are constructed with emissive material (absolute white, emission value of 1/no HDR because I don’t want it to be too blinding), point lighting to allow the effect to shine on the docked ship’s hull (absolute white, range of 4, intensity of 1), and post-processing bloom (determined by the game’s selected quality settings).

The False Widow
Whilst False Widow will share most of its design elements with future drydock designs, this one is unique in that it will have a fully functional Warp drive that allows it to travel to other solar systems to rebase itself. This means that you might see them pop up in solar systems adjacent to the sites of major ship battles where servicing ships close to the front lines is urgently needed. Current planned number of False Widows to be put into the game are about 10 operational , 20 for scenic purposes (they’ll look the same but are inoperable for the player since they already have an NPC ship in them), and a further 5 as damaged, destroyed or abandoned.

 

 

Some juicy specs:

  • Length: 850 metres to 1.1 kilometres (final scale TBD)
  • Mass: 1.7 to 2.5 million metric tonnes
  • Occupants: 1,200 (normal), 4,500 (wartime)
  • Maximum speed: Warp 6


And finally…

At this point in time, the design is still not fixed. The model has been imported only for lighting testing, collider testing, and so that the interaction scripts can be developed and tested. As with my last post, I’ll leave you with a quick video showcasing the drydock in perspective view.

 

It’s gonna be a big one!

So, “Tholian Simulator” (working title) is gonna be a big and a fairly ambitious project.

For starters, what is a ‘Tholian’?
Tholians are a species from Star Trek. They have only been seen on screen twice but are heavily featured in an episode of the MMORPG Star Trek Online. Despite their (IMO) under utilization in the canon Star Trek universe, I’ve been quite the Tholian fanboy for a while since they are really unique compared to most sci-fi aliens and with this project I hope to give them the creative ‘platform’ that does them justice! 😀

GTholian2
Tholian pilot from Star Trek: Enterprise episode “In a Mirror, Darkly”


The game

It is gonna to be a cultural simulator. It will detail Tholian society in a way faithful to what little is known from their two on-screen appearances and STO, but will greatly expand on that. To that end, it might be different to the expectations others may have of the Tholians and will largely contradict non-canon Star Trek material (like novels and most other games). I consider this a way for me to be creative!

It will feature ground and space action. On the ground, you’ll be focused on doing your part for Tholian society, help explore strange new worlds, and ultimately work your way to the top of the Assembly! In space, you’ll be engaging in galactic politics and diplomacy and of course space combat!

Current stage of progress
Right now, the game still is being planned out before large-scale development – the lore, outline of the game, how things, etc etc. However, I’m already testing game concepts in Unity (my choice of engine for all this) as we speak. Base systems for ship operations, lighting paradigms, and custom shaders for enhanced visuals are all being developed right now.

First three ships
As part of the lore development, a number of ship designs have been lined up from canon/STO and some that were sketched out are modelled and implemented!

20180612_1244_01
From left to right; Dew Drop explorer, Black Lace freighter, and Funnel Web destroyer

Planned subspecies
In order to further flesh out Tholian society (and especially their homeworld), I’ve decided to plan Tholian subspecies that have unique abilities for ground exploration and ground combat (if I choose to implement it)!

Tholian fly

This “fly Tholian” is based on a design by Norsehound on DeviantART. It’s still very similar right now, but it will be developed down the line.

A parting video!
Here’s a video of the lighting effects and firing FX for your viewing pleasure. Just bear in mind this is still early days! 🙂

Stay tuned for more!

Introduction to Tholian Simulator

Whilst I anticipate working on Path to 2265 will mostly keep me busy over the summer, I want to also work on something else to spice up my break from UNI (from now until September).

Enter Tholian Simulator. At its core, will be an alien cultural simulator centered around the Tholian species from the Star Trek universe and a way for me to practice 3D modelling, physics programming, and lighting/effects design & setup. I’m developing for my own personal entertainment (and for my portfolio as a demonstration of capability). I plan to start blogging about its development alongside Path to 2265 development from this point onwards.

Disclaimers & legal
The game is not intended to be nor will ever be released for the general public’s use. This game is based within the Star Trek universe, but is by no means a Star Trek product – this game is NOT endorsed, sponsored or affiliated with CBS Studios Inc., Paramount Pictures Inc. or Cryptic Studios/Perfect World Entertainment, or any other person or company that has a license to use and/or create with the brand name “Star Trek” and its related and copyrighted content. The development and use of this game is for personal recreational use, and any copyrighted material has been included under the legally acknowledged terms of “fair use”. No copyright infringement is intended. Any opinions expressed on this blog, past to present to future, are strictly my own and do not represent the aforementioned persons or companies that have a license to officially associate and create with Star Trek-related intellectual property.