Introductory Single Player Campaign

So since I feel that single player is one way we can probably get a lot more people interested, I started throwing ideas together for a small campaign (I figured 3 missions long, but with lots of branching…will be explained).

My basic idea is essentially Deus Ex the RTS in WWII. I’m thinking a heavy RPG influence, and with as much player freedom/options for dealing with problems as we can manage, and thus, re-playability.

[size=150]Theorized features[/size]
This is how I somewhat ‘dreamed’ it, as an ideal.

  • RPG elements
    [list][*]player character specialities (linguist, radioman, engineer, political connections, intelligence - pick one at game start, that character trait changes how you approach problems)
  • Persistent unit stats from map to map, unit names
  • Player “reputation” or “morality”; affected by player responses
  • Command points earned by accomplishing objectives
  • Orders to units issued from player avatar - got to be near them to issue commands, otherwise they stay still or follow queue. Radio allows commands from far away (hence, radioman specialty provides a rather different gameplay)
    ]“Depot” map that can be loaded between games to spend your command points and get new recruits[/:m]
    ]Heavy emphasis on player freedom/consequences of choices. Blowing up a bunch of buildings to deny enemy cover or remove a sniper keeps your casualties low, but negatively impacts your ‘reputation’ and thus other player characters will be more hostile (ie, if you are forced to surrender, heavily negative rep players will be executed out of hand and the game ends there, neutral or positive rep might end up in a POW camp escape level). I want the game to feel like it reacts to what people decide to do (and in ways that make clear that there’s no clean or “moral” way to progress).[/:m]
    ]Interactions with ‘locals’ with no really clear answer
  • Using a house for cover (eject family and keep low casualties, avoid house and sustain more casualties?)
  • Plant mines near a house?
  • Demolish buildings to kill a sniper?
  • Hijact an aid convoy?
  • Tote around captured enemies or ‘eliminate’ them?
    ]“Branching” progression structure based on those player choices - choice of initial character, approach to various ingame problems, which objectives get completed and how, how many casualties sustained…so on and so forth.[/*:m][/list:u]

[size=150]Required coding[/size]
This is all just by my initial estimation.

  • Adapt Zerg’s Exp tracker to store surviving units, health, other stats - done, I’ll commit game_persistentUnits.lua soonish. Only bad part is that its a widget, and thus disabling it would break this aspect of gameplay. I still need to code mission spawner (adaptation of hq spawner) to grab units from persistentUnits’ output and spawn them with appropriate stats.
  • Garrisonable buildings (neutral units placed on the map that switch teams when units are ordered into them, I’d imagine).
  • Conversation system (click on NPC, they say something, you have 1-4 options to respond, they respond based on what you pick)
  • “Talking head” message system - so you can receive messages from HQ/nearby characters without stopping the game (think a picture of the character next to text in the message box + voiceover)
  • Player tracker/game master code - tracks conversations choices, important action choices, various stats like what units you own, kills, casualties sustained)
  • World interaction menu (click, options: converse, order to surrender,
  • Surrender functionality (player and bot) - done, just call GG.Surrender(unitID, escapeTime) in whatever situation you like and that unitID will be set to GAIA team on hold position and hold fire. If they are left alone for longer than escapeTime, they will revert to their original team. “left alone” means no unit in a 500 elmo radius (1.5 SMG range)
  • Goal/objective list, updated in-game
  • Set up AppLauncher (or something similar) to read from a text file and pick the appropriate next mission - Spring.Rehost is coming next engine version, which can do the same thing (but better!)
  • Command radius; orders only go when you’re (your avatar) within ‘earshot’ of your units, or they’re near a radioman. - done, just need to adapt one of the ‘range’ widgets to show said radius.

[size=150]Required content [/size]

  • Voice acting. Lots.
  • A player avatar skin (modified engineer)
  • Dialogue/script writing
  • More civilians/animals/building features would be gravy.

This is WIP, of course. Any ideas/feedback/input most appreciated. I’d really like to keep the duration of the campaign fairly short, but go very ‘deep’ in terms of different ways to play through.

Edit: a brainwave to tie into that web-based thing that tobi and journ and I discussed a little while ago; we could do small ‘installments’ of 2-3 missions, upon finishing them our AppLauncher or whatever goes over the player choices and stats and spits out a code. Said code would be a password to a subforum here, which would contain the next ‘pack’ for that particular set of choices.

Give some kind of list for needed civilian features so I can model them.

I think you’re onto something there Nemo. But at the same time, I think you’re aiming a little too far into the dedicated RTSRPG genre than can easily be handled by Spring, not simply through the programming needed (that can always be overcome) but by the limitations of the Spring engine on delivery.

What I’d like to see is a somewhat larger-scaled version of your idea. Rather than dealing with individual units in a Commando-style small-team-of-soldiers game, I think it’d be interesting to try and pull it off from a larger standpoint where you are commanding essentially similar numbers of forces as in a standard multiplayer game; dozens of tanks, infantry, artillery and support vehicles, with each having the same sort of “macroized” version of the carry-over skills, experience and veterency.

I don’t like the idea of the “player avatar”, particularly if it’s just a simple engineer/footsoldier. Of all the various RTS games I’ve played, C&C’s approach – where you are an omnipresent commander situated away from the battlefield essentially ordering your armies from behind a desk – is the most flexible; you can command large forces across huge battlefields or direct a single Commando on precision maneuvers.

Remember, we need to work in conjunction with the Spring engine’s strengths and avoid its weaknesses. Spring does not do the tiny nuances of command and control very well at all - its strongpoint is in the macro-scale, controlling large numbers of units of various kinds doing various things.

Why not start with a more generic campaign and work up from there? A single, relatively simple flowing campaign from one mission to the next with some choice/action-based consequences of simple flavour (for instance, completing mission A a certain way brings you to mission B1; completing mission A a different way brings you to mission B2), incorporating some carry-over unit stats/experience – basically the foundation of it which can then be worked on.

As a side-note, from a militarist perspective, it would be interesting to incorporate the carry-over units into the unit aquisition part before each mission. The idea is, at the start of the campaign you’d start with however many command points and be able to select however many units (probably of limited type). Each subsequent mission, you get more command points based on your performance; on the next mission, you can reselect your surviving units for free/reduced cost and select new units to bolster your forces each time; essentially, from one mission to the next, you have the same core force (if you don’t get them all killed every mission) which becomes increasingly experienced and efficient, as well as some newer units as you inevitably lose SOME stuff (and continually add more to your force). In the meantime, the more missions into the campaign you go, more units become available (you won’t be able to get Tiger II’s on the first mission for instance). Then you can speckle in some cool other missions like controlling a small team of Commandos (completely unrelated to your real “army” which will pickup on the next mission).

I don’t know what you’re planning with the multiplayer aspect of these missions – co-op? vs? I still think we should provide “Multiplayer Missions” which allow players to start quick games assuming sides in a set battle. That should be easy, we’ve done it already.

Maybe allow carryover of experience (per unit type), not actual units? So if all your tanks had 10 exp in total at the end of a mission, in the next one your tanks will have 10/<number_of_tanks> starting exp? Same for infantry, artillery, ships? This way player’s force won’t grow too large and the bonus won’t be too decisive, but still noticeable.

Where did this go, it would still be useful.