It seems I was able to spend somewhat less time on development during November than the last two "full-time" months, and this is somewhat reflected in the results. The main topics for this month are: Battle command and control improvements, related user interface (UI) work, and finally the addition of a fleet deployment phase to the beginning of battles. I had hoped to get some AI improvements and battle scenario setup between two fleets done as well, but those will be pushed on to December's todo list.
Here is the new feature highlight video (1080p, 60fps!):
Ship commands
In order to provide a meaningful tactical combat experience, I feel that the player should be able to have precise and fine grained control over the ships in his fleet. While the ships obviously need some basic AI logic so the player doesn't need to explicitly tell them to do every single thing, it should be possible to override most of this automatic decision making without taking full manual control of the ship.
As a another small step towards this feeling of total control, I have implemented two new commands to the game: "Turn towards", and module targets. The first basically just allows the player to set and lock the heading of the ship regardless of the action it is currently performing (moving, guarding, engaging) and comes in handy for eg. turning a less damaged side towards incoming fire. Module targets on the other hand mean that the ship will try to hit a specific module on the enemy ship rather than simply shooting at its center point.
Manual ship control
The manual ship control (moving, and firing) has been part of the game from the very beginning, but has not been really fleshed out before now. I have made UI elements that allow selecting what functions you control, and also displays state information. It is now possible to independently control movement (fly the ship), targeting (what to shoot), and weapons (aim and fire the guns). Weapon control is the most complex of these, so I will go to a bit more detail on that.
My original idea for weapon control was to have all weapon modules set to groups, and the player would select a primary and secondary group. Turrets in these groups would track the mouse and have keys bound to them that make the weapons fire. However, I found that selecting the groups would get confusing, and the players might want to control all available weapons at once as well, so I decided to implement the following system. The player needs to enable weapons control, and then select any groups he wants to manage. The weapons in the selected groups will then track the mouse and fire with a (bindable) generic key or mouse button while unselected groups will continue to automatically fire at the current target.
UI and deployment
A considerable portion of the time was spent on the manual ship control user interface. There are also some minor improvements such as much more clear selection indicators (rings) for ships. Another major feature on the road to battle scenarios and battle sandbox mode is the now implemented battle deployment phase/mode.
The deployment phase allows the player to freely position his ships within a limited area on the battle arena, and the accompanying logic ensures that the ships don't overlap because that would break the physics engine. The deployment zones will generally be quite large, but are needed so you can't start a battle with your own and the enemy fleet's ships already at firing range for insta-kills. The AI opponent also can't completely rely on player-defined formations for its ships so a simple formation fitting logic, that can cram a fleet into a rectangle, had to be developed as well.
If you want to see more frequent updates about the development progress, or just express your ideas, you can now follow @BattlefleetEngr at Twitter.
Monday, December 1, 2014
0 comments