Space strategy
I'm looking to do a space strategy game, initially based off of Science Fiction books concerning space combat. I want to basically make your ship entirely modular and technology proceed not in single dvances, but in a fluid line(you reserch fusion rockets, and the efficiency/power of your fusion rockets is proportional to the time that you spent researching.) I do plan doing it in 3d, and eventually I realized that it was kind of similar to homeworld. Of course, I then realized that while homeworld was a great game, it had interface issues. I went back and played it, and found that this was mostly due to short clipping distances, and low resolution, but also I found it annoying that you could get somehting in the middle of the screen, but if it moved, and left the battle, the camera followed it. This is kind of annoying to me. Even if you focus on the whole battle, it could move out far enough to be annoying, all becuase of a single ship. I would like a camera control system that was more intuitive and useful than this, possibly multiple viewpoints like a 3d model editor, but of course it would have to be much easier to use, with a much quicker learning curve. Another thing that annoyed me was the movement system. it tended to encourage 2+1d thinking rather than actual 3d thinking. for those who haven't played it, homeworld has a key m to move, whereupon you get a 3d circle around your ship or group, with other ships represented as circles on that grid, and vertical lines drawn to them, telling you how far away vertically they were from that grid. I'd be looking for the sort of thing that would allow you to forget which way was down(there'd be an option to set an arbitrary down, for those who don't think 3d so easy. I don't know if I could deal with real-3d :) ) I thought about having a 3d grid system, with little cubes at regular intervals, but that is kind of ugly, although that's not a strong opinion. I don't mind pressing m to move though. I intend to have calculation assisted movement, for orbital movement and such. a coolscenario presented in a 2d game I saw once was to have 2 ships in opposite orbits around a center of mass. I'd like that sort of thing, but it's hard to calculate 3d orbits in your head. even 2d orbits take a bit of getting used to. (and by "calculate in your head" I mean intuit:) ) I'd like some kind of line drawing thing, but I need some better UI ideas for that. a player could plan a path before taking it. at some point ther'd be a menu for entering various standard orbits, and modifying orbits and so on, but I need a real RTS UI, if posssible. Thanks for your ideas!
O_o ...Homeworld was perfect.
^_^
I like your ideas, perhaps hexagonal shapes would be better than cubes for a 3d mapping system. Also you need your ships to turn on their axis, once your ships are facing different directions you lose your sense of direction.
But don't you dare say a word about homeworld!!! ^^
^_^
I like your ideas, perhaps hexagonal shapes would be better than cubes for a 3d mapping system. Also you need your ships to turn on their axis, once your ships are facing different directions you lose your sense of direction.
But don't you dare say a word about homeworld!!! ^^
Frankly, I thought homeworld's UI is what made that game work. I can't imagine anyone making a more intuitive interface to 3D movement orders.
Really? maybe it's just me, now, 6 years after I played it the first time looking at the clipping distances and resoulution. I loved that game though. I'm just now playing through cataclysm and homeworld, and I'm amazed by how much story and gameplay are in there.
Even so, what do you think about computer assisted course-plotting through gravitational fields? I know that there will be several different ways of doing it, including dead reckoning, but I just have difficulty thinking ogf somehtingbetween that and openingup a dialog box with a picture of the planet and your course and six orbital parameter entry fields. (I'll hav both, but I need something cthat can be done quickly with minumum risk)
Even so, what do you think about computer assisted course-plotting through gravitational fields? I know that there will be several different ways of doing it, including dead reckoning, but I just have difficulty thinking ogf somehtingbetween that and openingup a dialog box with a picture of the planet and your course and six orbital parameter entry fields. (I'll hav both, but I need something cthat can be done quickly with minumum risk)
Computer assisted would be good, but leaving enough for the player to do could be very tricky.
Of course the player is doing something!!! She is deciding the course! but it's easier if the the computer calculates it for her. Sort of like a goto order in more terrestrial RTS, only you have to goto an orbit and particular place in that orbit, instead of a location. in space, becuase nothing slows down of it's own accord, speed and course IS location. Location changes from moment to moment without anyone thinking about it, even without engines running. but to change speed, you either have to be near something massive(thus, orbits), or have some kind of engine running. I pretty much know how to do this, but I don't know the kind of interface that users would want. Recommend a cursory understanding of orbital mechanics for this, but the interface should be so intuitive that you don't need such an understanding.
The game is 3d, so it would kind of be hard to do a hex grid in space. it could be done, but it would be hard. much easier to do a cubical grid, simply because it coincides with a cartesian coodinate system. What I meant by cubes was that there hould be a waypoint at every vertice of the xyz grid. This is useful because it does not require an extra step if you want to move in 3d instead of 2d. as howeworld did.
The game is 3d, so it would kind of be hard to do a hex grid in space. it could be done, but it would be hard. much easier to do a cubical grid, simply because it coincides with a cartesian coodinate system. What I meant by cubes was that there hould be a waypoint at every vertice of the xyz grid. This is useful because it does not require an extra step if you want to move in 3d instead of 2d. as howeworld did.
Well, I'm not completely sure that I know what your exact problem is, but as far as UI considerations for space strategy games I can offer up a few suggestions. Take what I say with a grain of salt, though, since I'm working on more of a hybrid strategy/space sim game, not a straight RTS. Some of this might be useful to you, though, or you might have already thought about it.
In any case, I decided to completely ignore Homeworld-style or RTS-style movement orders since I'm not sure how much sense they make in space. There'd hardly ever be any need to move a ship to a certain position in space, only to a position relative to another object.
So, instead of picking a point in space and having the ship move there, all movement orders require a point of reference of some sort. "Move to within weapons range" of an object, "Move to within 500km" of an object, and so on. In the same vein, a ship could be told to maintain a parallel course with another object, shadow it, or to enter into an orbit around it. This seemed like a necessary compromise for me since I'm using psuedo-realistic physics and I didn't want to bother the player with the complexities that entails.
Although I haven't considered the details of this yet, I also want to implement player-set 'nav points' for situations where fine movement control is required. I'll probably use a system something like homeworld in this case - select a location for the nav point on a 2d map and then use a supplementary key to move it 'up' and 'down' the third axis. Nav points would function just like any other object in the game world, so ships could be given movement orders relative to them.
Finally, for more fine-tuned ship control, I'm letting players set their exact heading in degrees, including roll. While the player's setting the ship's heading, but before actually executing the order, a line points out from the player's ship to give an idea of the direction the ship will be going in after the heading change. I'm not sure how much interest that'll be to you, though, since it'd probably be a pain in a real strategy game where you're controlling a whole bunch of ships.
Also, while I like the idea of making up and down somewhat meaningless, keep in mind that you'd realistically want some sort of reference plane that ships could be 'above' or 'below'. It just makes sense as a navigation aid.
Anyway, those are just a few of the solutions I've come up with while working on the same problem.
In any case, I decided to completely ignore Homeworld-style or RTS-style movement orders since I'm not sure how much sense they make in space. There'd hardly ever be any need to move a ship to a certain position in space, only to a position relative to another object.
So, instead of picking a point in space and having the ship move there, all movement orders require a point of reference of some sort. "Move to within weapons range" of an object, "Move to within 500km" of an object, and so on. In the same vein, a ship could be told to maintain a parallel course with another object, shadow it, or to enter into an orbit around it. This seemed like a necessary compromise for me since I'm using psuedo-realistic physics and I didn't want to bother the player with the complexities that entails.
Although I haven't considered the details of this yet, I also want to implement player-set 'nav points' for situations where fine movement control is required. I'll probably use a system something like homeworld in this case - select a location for the nav point on a 2d map and then use a supplementary key to move it 'up' and 'down' the third axis. Nav points would function just like any other object in the game world, so ships could be given movement orders relative to them.
Finally, for more fine-tuned ship control, I'm letting players set their exact heading in degrees, including roll. While the player's setting the ship's heading, but before actually executing the order, a line points out from the player's ship to give an idea of the direction the ship will be going in after the heading change. I'm not sure how much interest that'll be to you, though, since it'd probably be a pain in a real strategy game where you're controlling a whole bunch of ships.
Also, while I like the idea of making up and down somewhat meaningless, keep in mind that you'd realistically want some sort of reference plane that ships could be 'above' or 'below'. It just makes sense as a navigation aid.
Anyway, those are just a few of the solutions I've come up with while working on the same problem.
Wow, this is a though one!
Representing accurate 3D information in a 2D screen is really hard. If you think about it, in most space shooters like Freelancer, when fighting, you never really have a sense of which way is your base or where you came from.
You play it as 2D+1, as if everything on the screen was 2D (point + click to shoot), and the perceived distance to an object is only used to know if it's in range to shoot it or not (or how much it takes to move to it). You never really have a 3D sense of where everything is.
With that in mind, it's easy to see why most approaches end up being less than intuitive.
Now, I don't claim to be the master of all knowledge, these suggestions are just some ideas that make sense to me but I can't guarantee will solve the problem I described.
One idea would be ditching the usual notion of the RTS overhead map, since it seems so hard to implement. This is pretty radical so I'd say there's a 50-50 chance this is the way to go.
A possible implementation would be grouping objects together in discrete groups. One group would be a task force moving from one planet to another, another one would be a planet and all ships or space stations orbiting it.
Your camera would only be centered around one of these groups at a time, and you'd always have a pretty good overview of each group, and move around freely (maybe orbiting) within it.
Homeworld offers an option that is quite similar to this, although it doesn't make the distinction between groups automatically. What makes this any different?
The radar/map would be overlaid over the screen, with a key like caps lock to toggle it. In real 3D. Imagine a big sphere surface around the group you're centered on right now; there would be a dot in this sphere for the enemy base, another one for the incoming enemies, etc (automatic grouping would make sure the map sphere is not too cluttered). A dot could be bigger or smaller to give you a sense of distance. It could be compared to a map of the stars as seen from Earth.
So, you'd have a notion of the relative direction and distance between the relevant space objects. This would be much more useful than an overhead map!
There's room for improvement, but as the core of a new system I think it could turn out to be pretty intuitive!
Representing accurate 3D information in a 2D screen is really hard. If you think about it, in most space shooters like Freelancer, when fighting, you never really have a sense of which way is your base or where you came from.
You play it as 2D+1, as if everything on the screen was 2D (point + click to shoot), and the perceived distance to an object is only used to know if it's in range to shoot it or not (or how much it takes to move to it). You never really have a 3D sense of where everything is.
With that in mind, it's easy to see why most approaches end up being less than intuitive.
Now, I don't claim to be the master of all knowledge, these suggestions are just some ideas that make sense to me but I can't guarantee will solve the problem I described.
One idea would be ditching the usual notion of the RTS overhead map, since it seems so hard to implement. This is pretty radical so I'd say there's a 50-50 chance this is the way to go.
A possible implementation would be grouping objects together in discrete groups. One group would be a task force moving from one planet to another, another one would be a planet and all ships or space stations orbiting it.
Your camera would only be centered around one of these groups at a time, and you'd always have a pretty good overview of each group, and move around freely (maybe orbiting) within it.
Homeworld offers an option that is quite similar to this, although it doesn't make the distinction between groups automatically. What makes this any different?
The radar/map would be overlaid over the screen, with a key like caps lock to toggle it. In real 3D. Imagine a big sphere surface around the group you're centered on right now; there would be a dot in this sphere for the enemy base, another one for the incoming enemies, etc (automatic grouping would make sure the map sphere is not too cluttered). A dot could be bigger or smaller to give you a sense of distance. It could be compared to a map of the stars as seen from Earth.
So, you'd have a notion of the relative direction and distance between the relevant space objects. This would be much more useful than an overhead map!
There's room for improvement, but as the core of a new system I think it could turn out to be pretty intuitive!
I think it is effective to set headings for your ship, becuase There will only be one ship. It will be strategy because of the speed at which the game progresses, as well as the complexity that each individual ship has. I want each ship to have several components, or even be in several pieces, which I guess would make it several ships.
I love your idea, jotaf, about the sphere over the group you are centered on, and think I can improve on it. instead of around your current group, it will be sized to exactly fill the screen, and be semi-transparent. The symbols used on it would be different enough from the view through it that it would be easily distinguishable. Everything within a certain distance, at the moment I am thinking 10,000 Kilometers will be appropriate, will be displayed inside the sphere, and everything outside of that will be grouped and displayed on the surface of the sphere. I think it may prove neccessary to draw lines from the surface or center of the sphere to objects, like in homeworld. This 10,000km sphere has several other purposes, and will be centered on the player's bridge, so a particular group being looked at will not neccessarily be centered. It will have a diffeent colored symbol representing it's location within the sphere.
There will be several other "worlds" outside of yours, each one holding an enemy ship or fleet, each 10,000 km in diameter. Each will be drawn onto the outside of the map-sphere as a single dot, and drawn onto the starfield as a dot. Planets will be the exception, and will be rendered not as a point, but as an actual sphere, even if outside your world-sphere.
I really like the idea of a line going out from your ship, and simply entering a course change. That is what I will do. That line will extend far beyond your ship, through the entire solar system, curving of curse, for gravity. I also, however, need something for orbital mechanics. instead of a course change, I need to be able to request a higher orbit, or one with more inclination, and a type of transfer orbit to get there. Actually, ths could be done the same way. Just have 6 parameters for the desired orbit, and if neccessary, the optimization of the transfer orbit, along with a parameter for how much optimization to require for the transfer orbit. Perfect! Thank you for the idea!
I noticed htat when I posted this, I didn't get very many meaningful replies at first. What could I do to get meaningful replies sooner?
I love your idea, jotaf, about the sphere over the group you are centered on, and think I can improve on it. instead of around your current group, it will be sized to exactly fill the screen, and be semi-transparent. The symbols used on it would be different enough from the view through it that it would be easily distinguishable. Everything within a certain distance, at the moment I am thinking 10,000 Kilometers will be appropriate, will be displayed inside the sphere, and everything outside of that will be grouped and displayed on the surface of the sphere. I think it may prove neccessary to draw lines from the surface or center of the sphere to objects, like in homeworld. This 10,000km sphere has several other purposes, and will be centered on the player's bridge, so a particular group being looked at will not neccessarily be centered. It will have a diffeent colored symbol representing it's location within the sphere.
There will be several other "worlds" outside of yours, each one holding an enemy ship or fleet, each 10,000 km in diameter. Each will be drawn onto the outside of the map-sphere as a single dot, and drawn onto the starfield as a dot. Planets will be the exception, and will be rendered not as a point, but as an actual sphere, even if outside your world-sphere.
I really like the idea of a line going out from your ship, and simply entering a course change. That is what I will do. That line will extend far beyond your ship, through the entire solar system, curving of curse, for gravity. I also, however, need something for orbital mechanics. instead of a course change, I need to be able to request a higher orbit, or one with more inclination, and a type of transfer orbit to get there. Actually, ths could be done the same way. Just have 6 parameters for the desired orbit, and if neccessary, the optimization of the transfer orbit, along with a parameter for how much optimization to require for the transfer orbit. Perfect! Thank you for the idea!
I noticed htat when I posted this, I didn't get very many meaningful replies at first. What could I do to get meaningful replies sooner?
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement