Brace For Impact : starship combat gameplay prototype

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki
rogerborg
Admin
Posts: 3590
Joined: Mon Oct 09, 2006 9:36 am
Location: Scotland - gonnae no slag aff mah Engleesh
Contact:

Brace For Impact : starship combat gameplay prototype

Post by rogerborg »

Brace For Impact
Game mechanics prototype
Win32 single player demo

Brace For Impact will be, Invisible Sky Giant willing, a non-massively multiplayer online game of starship combat.

However, before I invest time in specifying, designing and implementing the game proper, I've lashed up a game mechanics prototype of the tactical combat. Any and all comments and suggestions are most welcome.

This is not an alpha, beta, gamma, delta or any other version of the final game. It is a hacked up disposable single-player demo to define and exercise the "big gun" style of combat mechanics that I am aiming for. This demo won't be developed any further, except as a testbed for rapid prototyping.

The feel should be similar to WWII naval combat. Guns fire in plunging arcs. Yes, in space. It's due to a reverse polarity flux variance in the subspace plasma McGuffin. The 2D-ish sprite nature of this demo is deliberate; the game should be fun before any nice models are added.

In this demo, you are driving a heavy cruiser, alongside a friendly battleship. The enemy consists of a heavy carrier plus a light torpedo cruiser. The goal is to explore the mechanics: you can't die, nor can you kill the enemy ships. The CVA has a limited number of fighters though.

Screens:
Torps! Torps all over my face!
Image

Humping the CVA - eat high angle rain.
Image

OK, enough teasing:
feel free to download the (version 6) Windows demo.

Frequently Expected Questions
Q: Why is nothing dying?
A: It's just an open-ended game mechics demo; the explosions indicate when armour has been breached and when ships would take damage in a real version. A running damage total is shown at the top of the screen as of version 4.

Q: How do I play as the other ships?
A: You don't. Adding fighter operations would involve too much UI for this demo.

Q: How do I hit things?
A: Left clicking produces a deliberately rough firing solution. Use WSAD to rotate and elevate your guns to produce better firing solutions. The UI is minimalist - your gun angles are shown at the top left. Guns are more inaccurate if fired while you are turning.

Q: How do I select torps / anti-fighter guns?
A: Torps are in your secondary battery (T), and your tertiary battery (Y) has an anti-fighter mode. To shoot at fighters, select your tertiary battery (Y). Watch for the red shell / shell splashes 'splashes' rather than yellow shells / blue splashes. An angle of about 38-42 degrees should get hits. Lead the fighters' shadows, not the fighter images themselves.

Q: No, seriously, I can't hit the fighters.
A: Hitting fighters with shells is supposed to have a learning curve. Try buddying up with the battleship. It has better point defence - the automatic little fast red shots - and combining your point defence gives a better chance of eating fighters rather than just sending them home damaged. The CVA will run out eventually.

Q: This is impossible! I can't concentrate on anything.
A: It's an artificially dense environment - you're being dropped in at the deep end. The pathetic 'AI' is rigged to fight at closer ranges than a cautious human would, so it's all a bit frantic. In the game proper, players will start out in small destroyer vs destroyer battles without waves of fighters or CLG's spamming torps all over the place, so there will be time to learn to deal with the mechanics.

Q: When is the next version available?
A: Anywhere between 6 months and never. After this prototype, I'll be going back to the requirements and design. The server and network architecture is going to be the big issue, not the bangs and whistles.
Last edited by rogerborg on Fri Apr 04, 2008 5:49 pm, edited 7 times in total.
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
MasterGod
Posts: 2061
Joined: Fri May 25, 2007 8:06 pm
Location: Israel
Contact:

Post by MasterGod »

Neat mini game though I skipped the first screen and just pressed anything :P
Image
Dev State: Abandoned (For now..)
Requirements Analysis Doc: ~87%
UML: ~0.5%
rogerborg
Admin
Posts: 3590
Joined: Mon Oct 09, 2006 9:36 am
Location: Scotland - gonnae no slag aff mah Engleesh
Contact:

Post by rogerborg »

PRESS F1 FOR HELP AT ANY TIME. :P
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
ecsos
Posts: 30
Joined: Mon Feb 04, 2008 8:02 am

Post by ecsos »

it works well; how would you tell what angle you are aiming at visually compared to the fighters in the real game?
cdrwolfe
Posts: 100
Joined: Thu Nov 15, 2007 5:38 pm
Location: Cranfield University

Post by cdrwolfe »

Awesome, thats damn cool.

How do you control AI wise movement of Capital and smaller ships i would be interested to know for my demo.

Regards Wolfe
BlindSide
Admin
Posts: 2821
Joined: Thu Dec 08, 2005 9:09 am
Location: NZ!

Post by BlindSide »

Omg Rogerberg released a game demo. :shock: (Actual insite into said demo coming soon.)

EDIT: Ok time for the critique :D

First impressions:

1. Use subfolders, chucking everything in one big folder is ugly.
2. You opened a 1024x768 window on my 1024x768 resolution laptop screen. I recommend you use a smaller window or go fullscreen (Comeon, you know you want to :wink: ).
3. Found the initial use of the interface cumbersome, especially not having the camera following the actual ship around automatically. Also, use a pow2 texture for your help screen because it looks distorted on my computer.

Lasting impressions:

1. Its bloody awesome, I love the particle effects and the colourful feel, the selection of different turrets and torpedos brings alot of depth into it, and the AI is pretty damn realistic. If this game is polished up, and I mean a decent UI, user configuration, actually caring about the users feelings, then it would be a winner. :D
ShadowMapping for Irrlicht!: Get it here
Need help? Come on the IRC!: #irrlicht on irc://irc.freenode.net
Halifax
Posts: 1424
Joined: Sun Apr 29, 2007 10:40 pm
Location: $9D95

Post by Halifax »

I have to agree with BlindSide on all his points up there. It was also very cumbersome because I couldn't read the help menu, so I just pushed buttons like MasterGod.
TheQuestion = 2B || !2B
Monochrome
Posts: 122
Joined: Thu Oct 19, 2006 11:43 am

Post by Monochrome »

This is good but very very confusing, especially basic ship control. Remember the first feature a good game should have is to be user friendly, no matter how complex the actual gameplay is. The concept of controlling the totality of a battlecruiser is very interesting but it should be made on a less messy way. This can be achieved by reflecting upon the supposition of commanding a real battlecruiser.

Commanding a battle cruiser isnt all about a magic keyboard. Its about issuing orders to a crew. So even though steering the ship should follow the regular command protocol (arrow keys/WASD to move), other actions like firing a weapon or aiming the guns should attempt to reproduce the action of delivering an order to a crew instead, that operates most controls on supposedly real spaceship. So i think it would be a good idea to set a delay between issuing the fire order and the actual fulfilment of the action in which the player could actually cancel the order by pressing the same button or a "cancel last order" button. Aiming should also be automatic by scrolling trough the various possible targets, only the weapons would take time to aim themselves according to the way your ship is facing instead of controling aim directly. The current system that features two sets of directional keys, one to aim and another one to steer, not only requires lots of pratice to master, but its also very frustrating to operate correctly.

By implementing such features, gameplay would be seriously simplified while turning it into a more tactical experience at the same time, since the player would have to time their fire commands according to ship speed and coordinates.

One of my favorite naval battle games is Sid Meyer's Pirates!. Here's a screenshot:
Image

As you can see the whole ship is operated with the numpad keys (though you can use the arrow keys to steer and spacebar to fire aswell). So 7, 1 and 3 switch between weapons 4 and 5 steer the ship and 8 and 2 control the throttle. Aiming is controlled by the AI that considers the nearest target and your ship's position.

Now this system is quite simple but it works really nice and it can be really engaging while still mantaining a relatively easy learning curve. Not saying you should fully adapt it on your project, because there's a lot of different features that simply wouldnt be compatible, but i still think the basics on steering and switching weapons should be taken into consideration because they are very good and easy to learn. For basic 2D ship control, this system is perfect.


Image

Now this is a screenshot from Star Wars Empire at War. Its an RTS that attempts to reproduce both Star Wars space battles and ground battles. Though i consider this game to be a poor RTS, I think it has some features that would be funny to implement on your project. Those green dots on that space cruiser are markers for the ship's hardpoints or "bogies". They represent single parts of the ship that can be targeted specifically in order to provoke a specific type of damage (IE, you destroy the engine, the ship is unable to move. Destroy the laser batteries, the ship is unable to fire). I believe the whole game could benefit from a system like this, by implementing a mouse driven semi-automatic target system (mouse to select target, AI controls the aim), since it would allow a rich selection of strategic moves while engaging battleships



Resuming all this TL;DRness in one point, here's my ideal control scheme:

WASD/Arrow Keys - Steering/Throttle

Q,E - Select Previous/Next Target (this would be useful for distant targets that are currently not on screen

M - View detailed battle map (Displays a full map of the battlefield including all friendly and enemy ship positions which will be targeted on the battlescape if you select them here.

1, 2, 3 - Select Weapon

V - Select all weapons (if you want to fire them all at once on a designated target

Spacebar - Fire Weapon(s)

Left Mouse Button - Select Target/Hardpoint


This way we can achieve a balance between strategic and arcade gameplay while improving the overall experience and simplifying the controls.
Last edited by Monochrome on Sun Mar 30, 2008 1:10 pm, edited 6 times in total.
arras
Posts: 1622
Joined: Mon Apr 05, 2004 8:35 am
Location: Slovakia
Contact:

Post by arras »

Wohooo!!! ...demo by angry Scotsman!
The feel should be similar to WWII naval combat.
Finally some refreshing idea in the sea of those endless PRG and other Gees projects! You really have my sympathy for that. Besides I am fun of WWII history, naval combat including.

As for impressions: Yes, it relay have little bit of that WWII battleship duels feeling.

UI is horrible and initial screen unreadable on my laptop but combat mechanics is very good. It might be bit arcadish but may be thats what you aim for.

You should definitely make mouse to be more involved in controls and makes controls less dependent on keyboard. But I guess thats what you going to do. Directing guns by mouse is good it just have bit small precision (like it would work only in angles of dozens degrees).

Just one question: Is this going to be pseudo 3D or full 3D with movement and view in to all directions?

I really hope this interesting project will no die unfinished. Good luck :)
rogerborg
Admin
Posts: 3590
Joined: Mon Oct 09, 2006 9:36 am
Location: Scotland - gonnae no slag aff mah Engleesh
Contact:

Post by rogerborg »

Thanks for the great feedback, it's been really useful. I've uploaded a modified version based on (some) of your excellent comments.

Some feedback-back:
ecsos wrote:it works well; how would you tell what angle you are aiming at visually compared to the fighters in the real game?
It's deliberately vague. Carriers will be able to select an altitude for their fighters, and flak will have to be aimed to intercept them, based on a judgement of their height above their shadow.

I understand that it's confusing when you're dropped right in it, but if everything is too obvious or assisted, then it makes the learning curve too shallow. Bear in mind that new players shouldn't have to worry about it, as bigger (more experienced) ships will be taking the brunt of fighter attacks. The game proper will feature more passive starfighters (scouts and circling interceptors) that can be used for target practice.

BlindSide wrote:1. Use subfolders, chucking everything in one big folder is ugly.
2. You opened a 1024x768 window on my 1024x768 resolution laptop screen. I recommend you use a smaller window or go fullscreen (Comeon, you know you want to :wink: ).
3. Found the initial use of the interface cumbersome, especially not having the camera following the actual ship around automatically. Also, use a pow2 texture for your help screen because it looks distorted on my computer.
Done, done, fair point, done.

I forgot to say: 'H' pans the camera back to your ship, and locks on it until you pan it manually with the arrow keys. I've now set it up so that panning by pushing the cursor to the screen edge keeps the camera position relative to your ship; only pressing an arrow key unlocks the camera.

It's still not ideal, and will need some more tuning and testing. A mini-map or radar is pretty obviously lacking. Ideas gratefully received. ;)

Monochrome wrote:The concept of controlling the totality of a battlecruiser is very interesting but it should be made on a less messy way. This can be achieved by reflecting upon the supposition of commanding a real battlecruiser. Commanding a battle cruiser isnt all about a magic keyboard. Its about issuing orders to a crew. So even though steering the ship should follow the regular command protocol (keys to move), other actions like firing a weapon or aiming the guns should attempt to reproduce the action of delivering order to a crew instead, that operates most controls on supposedly real spaceship. So i think it would be a good idea to set a delay between issuing the fire order and the actual fulfilment of the action in which the player could actually cancel the order by pressing the same button or a "cancel last order" button.
That's superb feedback; thanks for taking the time to detail it. It's re-assuring, as I'd been having very similar thoughts. However, rather than having a delay before each action, I'm leaning towards a cooldown between actions.

Also, for gameplay reasons, I'm not putting a cooldown/delay on manual aiming or firing, as that forms the core skill element of the game. Turning and click-aiming, yes. Movement already has an effective delay as it takes time to change speed.

Monochrome wrote:Aiming should also be automatic by scrolling trough the various possible targets, only the weapons would take time to aim themselves according to the way your ship is facing.
Unfortunately, that's exactly the opposite of the gameplay experience that I want to present. I feel there are plenty of click-to-win games. If you don't have to do the aiming yourself, then you're just grinding numbers in a database.


arras wrote:UI is horrible
Sorry about that; I don't want to get sucked into spending too much time on it just now. I've put the selected battery and angle on the cursor now, but I really don't want to get sucked too far into it. However I'd be open to ideas for a useful UI.
arras wrote:It might be bit arcadish but may be thats what you aim for.
I'm erring on that side just now, but I may tone it down a little. Bear in mind that the 'AI' here is fighting well within its maximum range. In the real game, capital ships will likely fight mostly offscreen, with scout starfighters and escort ship screens being critical to success.

arras wrote:You should definitely make mouse to be more involved in controls and makes controls less dependent on keyboard.
Hmm, it's a compromise. I'm demoing both methods to see which works. I definitely don't want a click-to-win interface, and I'm not sure that there's much more that could be loaded onto the mouse. For example, I could put speed or even gun elevation on the wheel, but then where do I put zoom?

arras wrote:Directing guns by mouse is good it just have bit small precision (like it would work only in angles of dozens degrees).
Hmm, that's an interesting idea. Each click currently produces an elevation within a +/- 10% deviation from the ideal elevation, but using a non-random but highly stepped value would work too. I'll bear that one in mind.

arras wrote:Just one question: Is this going to be pseudo 3D or full 3D with movement and view in to all directions?
It'll be psuedo. It's really a naval game in space. 3D movement (and aiming) pops the compexity up to a level beyond that which I personally find fun. It's fine for first person starfighter games, but I'm not keen on it in 3rd person.

Thanks again!
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
arras
Posts: 1622
Joined: Mon Apr 05, 2004 8:35 am
Location: Slovakia
Contact:

Post by arras »

Some ideas:

I do not like key control of this kind of games at all. Control itself have mostly nothing to do with realism and it distract player from concentrating on tactics. Well unless it is arcade game. I do not complain if controls are dual and I can select method which suits me better. Mouse or keyboard.

For movement (speed course) I suggest you to put some WWII looking gauges (or something more futuristic looking but in WWII theme) where you can with mouse click select speed and helm angle. Sort of Access of the Deep controls if you ever played that game.

Some buttons/selectors for gun type / ammo type wont hurt at all too.

Nice possible feature would be to add rangefinders in to game. They could be used the same way as real ones on WWII ships. Longer you trace enemy ship with your rangefinders more accurate your aiming is (Like in real WWII combat).

Adding some upgrades like guncontrol radar for better accuracy would make it also bit more interesting. Or radar timed fusses for AA fire. Or some other small features which can be bought with experience points or something like that.

You can add mines and minelaying ships in to game.

Some more advanced damage model would also not hurt. Like independent damage for turrets, engines, helm, hull and so on. You would be able to disable enemy turrets with some lucky shots for example. Or loose your own.

With above implemented also some kind of damage repair management would be possible. Like ability to allocate your repair teams in to certain parts of your ship.

That would of course require some better GUI, in form of pop up windows for example.
pc0de
Posts: 300
Joined: Wed Dec 05, 2007 4:41 pm

Post by pc0de »

Nice work, I like it.

fwiw, it runs very well full screen at 1280x1024 (AMD Athalon 4000+, GeForce 6800 GT).
Could not open sound file: resources/crash.wav
Q: Where is the source?
A: You wouldn't want to see it. It's... unpleasant.
I'd personally still be interested in having a peek...
rogerborg
Admin
Posts: 3590
Joined: Mon Oct 09, 2006 9:36 am
Location: Scotland - gonnae no slag aff mah Engleesh
Contact:

Post by rogerborg »

arras wrote:I do not like key control of this kind of games at all. Control itself have mostly nothing to do with realism
It's not really a realism argument, it's to provide a learning curve. My goal is that guns should be usable with left clicks - particularly the short ranged guns on early-game ships - but that using keys will provide more accuracy, for those players that want to take the time to learn them.

arras wrote:and it distract player from concentrating on tactics. Well unless it is arcade game.
Well, it's not a simulation, since starships are (with the exception of the Star Trek documentaries) fictional. ;)

That's a very good point though, and well taken.

arras wrote:For movement (speed course) I suggest you to put some WWII looking gauges (or something more futuristic looking but in WWII theme) where you can with mouse click select speed and helm angle. Sort of Access of the Deep controls if you ever played that game. Some buttons/selectors for gun type / ammo type wont hurt at all too.
Yes, I'll be doing that.


arras wrote:Nice possible feature would be to add rangefinders in to game. They could be used the same way as real ones on WWII ships. Longer you trace enemy ship with your rangefinders more accurate your aiming is (Like in real WWII combat).
Indeed. In this case, it would be the longer you leave your guns layed on any particular rotation, as I really do want to avoid any sort of click-to-win.

arras wrote:Adding some upgrades like guncontrol radar for better accuracy would make it also bit more interesting. Or radar timed fusses for AA fire. Or some other small features which can be bought with experience points or something like that.
Those are generally good options, but perhaps not for this particular game: I'd like to keep it skill rather than 'gear' based as much as possible.

arras wrote:You can add mines and minelaying ships in to game.
That's a stretch goal. First person to mention cloaked ships gets 5 minutes in the sin bin. ;)

arras wrote:Some more advanced damage model would also not hurt. Like independent damage for turrets, engines, helm, hull and so on. You would be able to disable enemy turrets with some lucky shots for example. Or loose your own.

With above implemented also some kind of damage repair management would be possible. Like ability to allocate your repair teams in to certain parts of your ship.
That's a core part of the requirements: all damage will be on a component basis. I dislike simply reducing a damage counter until things suddenly blow up: starship deaths should be protracted and painful.

It's not obvious, but even in this demo, the ships have bow / flank / stern / top directional armour.


arras wrote:That would of course require some better GUI, in form of pop up windows for example.
Indeed, but GUIs are a time sink, so I'll punt on that until I've got the requirements firmed up.


pc0de wrote:
Could not open sound file: resources/crash.wav
Q: Where is the source?
A: You wouldn't want to see it. It's... unpleasant.
I'd personally still be interested in having a peek...
Hmm, not sure how that happened. Thanks, I've uploaded a new version with that file added. It's also got the source file. One file, 130Kb. It has comments though. I think it has 4 of them. ;)
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
Monochrome
Posts: 122
Joined: Thu Oct 19, 2006 11:43 am

Post by Monochrome »

rogerborg wrote:Unfortunately, that's exactly the opposite of the gameplay experience that I want to present. I feel there are plenty of click-to-win games. If you don't have to do the aiming yourself, then you're just grinding numbers in a database.
Technically you would still have to aim by steering the ship to the correct position and i must say its a real bitch to steer and aim at the same time. This system wouldnt involve a flawless aim. Clicking would only assing the target, so it would be up to you to position your ship correctly. Also considering that not only the guns fire in plunging arcs and that other ships move, if you made cannon rotation a lot slower (because heavy canons are usually slow to turn) it would involve skill to switch target and steer effectively to obtain a decent aim. It would also help if heavy cannons were side only like on an ancient battleship, but this is just a suggestion.
Dorth
Posts: 931
Joined: Sat May 26, 2007 11:03 pm

Post by Dorth »

One thing is, with environment aware gui, you can overload the mouse to ddo all the keys can do, without making it point and click. For example, imagine a donut representing your turret on your ship. Clicking on the screen outside the donut will slowly aim your ship toward there. Clicking on the donut will rotate the turret toward that angle at the same speed as the keys. Right or left clicking in the middle of the donut will increase or lower the angle by the same amount/speed as the keys. Add dragging and you can complexify this plentifold while still leaving it mouse intuitive. This way, someone can play with only a mouse and still enjoy the complexity of the game. It then becomes pretty easy to make a controller friendly version or so. ;) GL and GW
Post Reply