Tuesday, July 3, 2012

Outline of Game Progression

Due to the recent playtest, I probably should cover the basics for game progression.  The game progression can be broken into to three distinct categories: the tutorial, the fighter progression and the rank progression.


The tutorial, at least it appears at this point, will be missions dedicated to the training of new pilots.  These missions will be relatively specialized and will probably not be reused later in the game.  I dislike the idea of non-reusuable code; however, it's a necessity.  The tutorials will be broken down into two categories: Basic Flight School and Combat Flight School. 

Basic Flight School will represent the training any pilot will receive to fly a spacecraft.  These mission will include: basic physics (turn, thrust and familiarity with the game physics), landing, utilizing the radar, basic weapon control (guns, missiles and countermeasures) and waypoint navigation.  These tutorials will be conducted in a Scorpion class fighter (Mark 1).  This fighter will have a relatively slow turning rate and less thrust than the Viper fighter craft currently represented in the game. 

Combat Flight School will represent training needed for combat pilots in the Colonial Fleet.  Like the Basic Flight School, these missions will involve flying a Scorpion Class Fighter (Mark 1).  Missions will include: evasive manuevering, special attack manuevers (strafing, zero thrust attacks and burst fire), multiple craft combat, battlestar engagements and advanced landing techniques (landing on a moving platform).  In addition, there will be a capstone tutorial mission.  This mission will involve a blown tutorial mission; the player will be forced into actual combat with Cylon Raiders. 

Upon completion of the tutorial missions, the player will be able to select his or her first real assignment from a list of battlestars (limited to smaller destroyer class vessels), assigned a Scorpion Class Fighter and awarded the rank of Ensign (maybe Lieutenant depending on the performance during the tutorials).

Fighter Progression

Fighters in the game will serve two purposes.  First, they represent a player's progression and achievement in the game.  With the acquisition of prestige, the player will be able to select more advanced fighters in the game and gain a sense of accomplishment.  Second, the fighter progression gradual increase the player's skills.  The Scorpion Class Fighter (Mark 1) is a relatively slow (both in turning power and overall thrust) to the more advanced Viper; consequently, it is an easier fighter to fly.  It does not require as much player skill as the more advanced fighters.

Here is the basic fighter progression:

Scorpion mk1 (slowest turn rate and thrust power)
Scorpion mk2 (slightly improved turn rate, thrust power and structure)
Viper mk1 (another improvement representing a significant increase in turning power and thrust)
Viper mk2 (most advanced fighter)
Viper mk3 (a tank version; slower turn and thrust; has a significant advantage in structure)

Each ship progression will push the player's skill to improve.  The Scorpions will be relatively easy to control due to their turn and thrust limitations.  The Vipers will be more challenging to players.  These fighters will be extremely responsive and will require more from the player to fly properly.

Rank Progression

Like fighter progression, rank progression has the same two purposes: give a player a sense of achievement and train the player for more difficult tasks.  As a player increases in rank, missions will become more difficult.  This difficulty will be achieved through a changing dynamic in mission goals and enemies.  Early ranks will involve missions with a great deal of support.  Player will fly missions involving defense of a mission target and will receive support from non-player fighters (either immediately or over a period of time).  Later ranks will involve more offensive mission objectives with diminishing support from non-player fighters. 

The current rank structure is:


In addition, there are two (at least) other ranks not available to players.  These are:



  1. This all sounds great, although I don't see why aspects of the tutorial missions can't be re-used later - it all depends on the granularity. I mean if there are certain kinds of drones that are used in tutorial mission, can't these pop up in later gameplay as part of a more complex plot? Or can't later plots involve having to work with other novice pilots who you have to protect from the toasters who have managed to invade the training mission area?

    In general my concern is that as a playtester I won't be able to effectively evaluate your AI without having some way of learning how to fly :-)

  2. I just see a potential problem in the event manager. Missions will utilize an event manager. The tutorial events will be unique to the tutorial missions. Instead of checking for tutorial events every mission; it would be easier to have a dedicated event manager for the tutorials. It's been planned for awhile now; I just don't like thinking about it. It's still alittle early for actual mission construction (tutorial or otherwise) at this stage.

    Once I get the basic AI done, I will create the sound manager script. With the sound manager, I can create the basic skeleton for the event manager (and a good portion of the resource manager required to make the event manager work). With a functional event manager, I can start with some tutorial missions.

    I'm not going to jump the gun and create tutorials before the program is ready for it. I did that during class to meet deadlines. I had to go back and restucture alot of stuff and create an entirely new prototype as a consequence. I plan on the next prototype to mirror this prototype very closely. Currently, I believe that I'll have to rewrite the AI managers and event managers; however, most of the other scripts should stay relatively intact. I might have to remap some keys (which is just a keystroke at this point - for the most part) and do other minor tweaks.

    It's just going to take some time to get to the tutorials. I got the AI routine up to the selection of a target (minus collision avoidance). Manuevering is the largest part; however, I'll be able to utilize the previous prototype in developing the new manuevering routines. I'm avoiding the avoidance routines at this point. Avoiding collisions using a raycast can present some problems; I'll put that off till everything else is done.

  3. Oh. I'll also need to make a waypoint system before working on the tutorial missions...

  4. fair enough - I think it will just be difficult for others to help you evaluate the AI effectiveness if they can't learn how to play the game, but if you're more comfortable working on the AI first that's the way you should go. However I'd still be concerned that the AI should be fitting the tutorial rather than the other way round. Seems to me the game will succeed or fail based on the progression that takes the novice player to a more advanced player, and that the AI should be evaluated on whether it helps support that progression rather than anything else, but that's just my $0.02 :-)

  5. I guess I have four systems that absolutely need to be developed for a meaningful playtest: AI, Waypoints, Event Manager and Resource Manager. All four are affect each other. The Resource Manaager, Event Manager and Waypoint systems are more important to early tutorial missions. The AI routines become more important with later tutorial missions. The most important is the resource manager, and I don't think I can create a decent Resource Manager without an idea of the necessary parameters of an AI and the other systems (I've already added a couple of variables to the mix).

    All the development so far has revolved around developing a good resource manager (and to a lesser extent a good event manager). Ultimately, the goal of this prototype is to develop a working resource manager. It's really the lynchpin that will allow the project to progress beyond it's current point.