Thursday, July 21, 2016

Cosmoteer 0.9.6 - Part Micromanagement

I just released Cosmoteer 0.9.6, which adds the ability to micromanage individual parts, letting you give them individual targets, turn them off or back on, or tell them to hold fire.

To control the individual parts on your ship, first select your ship if it isn't already selected. Then, click on a specific part or drag a box around the parts you want to select:



The user interface in the bottom-left will change to give you some options pertaining to the parts you have selected. Most parts that consume power or ammo can be turned off, causing their crew to go perform any other jobs that need doing. And weapons can be told to "hold fire", which will prevent them from shooting unless you've given them a specific target, which you can do by right-clicking on a part of an enemy ship.

Additionally, this release also adds "control groups" like those found in most conventional RTS games. To put the selected ships into a control group, press Ctrl-F1 through Ctrl-F8, and then press F1 through F8 to select the ships in that control group. To put the selected parts into a control group, press Ctrl-0 through Ctrl-9, and then press 0 through 9 to select the parts (of the currently-selected ships) in that control group.

This release also adds some other minor but still nice improvements, such as being able to see health bars for your own parts without going into repair mode, and being able to focus the camera on specific parts (alt-click to focus on the ship, and then alt-click again to focus on a specific part).

Enjoy!

Sunday, July 10, 2016

Cosmoteer 0.9.4 - Copy & Paste

Today I released Cosmoteer 0.9.4. This is a release light on exciting new gameplay, but it still contains one very useful feature that's worth a blog post:

Copy & Paste

I'm generally very happy with how intuitive ship design has become. When I watch new players play the game, rarely do they have much trouble figuring out how to modify and expand their ship, thanks to many iterations and improvements to the user interface

But many players, myself included, found the process of designing larger ships (especially in Creative Mode) with repeated sections (possibly rotated and/or flipped) to be very tedious, since every part on the ship had to be added individually, even if a whole section of the ship was merely a copy of another section.

Let's say that you want to build a symmetrical ship with a center fuselage and mirrored wings on each side. So you start by designing the center fuselage and one of the wings. Prior to this release, you'd have to manually design the other wing as well, being very careful to exactly mirror the original wing. But now, you can use the new "copy and paste" tool, first selecting all the parts on the left wing...


... then clicking the "copy" button (ctrl-c works, too), followed by the "paste" (ctrl-v) button, which will load the copied parts as blueprints on your mouse cursor. Once in paste mode, you can choose to rotate and/or flip the blueprints before pasting them onto your ship...


... and then you simply click to add those parts to your ship, giving us the final result:


I'm very hopeful that this will make designing large, interesting ships much easier. Indeed, I can already find myself being more creative in my own ship designs, knowing that I won't have to duplicate any designs that I want to repeat elsewhere. (It's also worth noting that the copy & paste tool can be used to copy between ships as well.)

While this may seem like a pretty basic feature, it was actually a very serious technical undertaking to get this working. Ever since I (re)introduced the now-default "live design" mode, I've had code logic to determine whether adding a single part to a particular location was legal, but there was no code to determine whether adding multiple parts in arbitrary locations was legal, which is a far harder problem to solve, because some of those new parts may only be legal because of other parts that are also being added or may be illegal because of other added parts.