Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reclassify many ships based on their characteristics relative to other similar ships, rather than based on their size. #95

Open
wants to merge 33 commits into
base: experimental
Choose a base branch
from

Conversation

Quantumshark
Copy link

Content?

Summary

Reclassifies some ships, giving them categories that better fit the tradeoffs their designs make relative to other comparable ships, rather than just how big they are. If a ship is slow but tough/well armed for its size, it'll likely be a heavy warship; if it's fast but fragile, it'll likely be a light warship. I haven't really looked at ships other than warships, and probably wouldn't make many changes to them (other than maybe making the Pelican a light freighter, since it's quite fast and has a relatively low cargo space relative to its outfit space for a freighter).

Quoting myself, from quite a while ago:

I think role-based categories would probably be more useful to players, too - I can tell immediately that a Leviathan is a much larger ship than a Sparrow without needing a category to tell me, but I can't tell immediately that the Falcon is a highly manoeuvrable ship, while the Shield Beetle has a medium level of mobility, because the two have vastly different stock engines that make their stock speeds misleading - sure, the Beetle has a top speed of 428 to the Falcon's 380, but the Beetle's stock engines are pretty close to the highest thrust/weight in the game, while the stock Falcon is running the comparatively poor human plasma engines and only using 2/3 of its engine space. This information could be better conveyed if, for example, the Shield Beetle were classed as a Medium Warship, while the Falcon was a Light Warship - it'd then be immediately clear that the Falcon is likely to be the faster of the two ships once the same engines are being used for both.

Testing Done

None

@Quantumshark
Copy link
Author

This seems to have picked up a change to LineShader from somewhere, and I don't know how that happened or how to fix it.

@TheGiraffe3
Copy link

TheGiraffe3 commented Oct 4, 2024

It's because you merged master in to this branch but that commit hasn't been applied to Delta yet. But seeing as how the commit was going to eventually be merged in anyway it doesn't matter.

data/hai/hai ships.txt Outdated Show resolved Hide resolved
@@ -1621,7 +1621,7 @@ ship "Falcon"
sprite "ship/falcon"
thumbnail "thumbnail/falcon"
attributes
category "Heavy Warship"
category "Light Warship"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A Falcon has got a lot of durability for LW.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's relatively fragile compared to similarly sized ships. The decisions made in its design seems to be deliberately leaning towards speed at the expense of toughness, which makes it a 'light warship' in the terms in this PR.

@Tangle10
Copy link

Tangle10 commented Oct 4, 2024

I think this would be very confusing, even to those acquainted with the changes. Surely it would be better to add new categories that are more intelligible rather than saying "a heavy warship is literally heavy, not big"?

@Zitchas
Copy link
Member

Zitchas commented Oct 4, 2024

Hmmm, this is an interesting thought experiment. Reclassifying everything based on mobility rather than size.

So, rather than pick the combat/passenger/cargo/durability the player wants (which is more or less what light/medium/heavy correspond to) and then find the ship within that category that they can afford and has the maneuverability they want; they instead pick the maneuverability category they want, and then look for a ship they can afford and has the combat/passenger/cargo/durability they want to pair with that maneuverability. It's a neat way of flipping things on their side, so to speak.

The biggest plus is that it pushes us to look at ships differently, I think. I like that.

There are, however, some downsides:

  1. Light/Medium/Heavy are weight descriptors, and to a lesser extent presence descriptors. They're already heavily associated with the mass and to a lesser extent the capability of the ship to do the thing that set of categories specializes in. A Heavy Freighter can typically carry more than a light freighter. All else being equal, a heavy warship can dish out (and take) more pounding than a light warship. So flipping this to be speed is probably going to confuse a lot of people. This could be mitigated by directly using Fast/Moderate/Slow. It's what is meant here, right?
  2. Static vs dynamic traits. As you point out with the Falcon, and is the case with virtually every ship, they come stock with one set of engines, which can be replaced with a different set. This means that the manoeuvrability of a ship can vary from abysmal to whatever the maximum is for that particular ship. This is complexified a bit by the fact that in most factions the set of engines available is pretty limited. Usually just a small/medium/large, with a tiny and/or huge in some cases. Humanity, on the other hand, has not one but three different sets of engines available, resulting in an even wider array of variety within ship performance. Would we classify ships by their absolute max potential assuming access to the best the player could ever get their hands on? Just what their faction shipyard/outfitter normally has access to? Or just the raw theoretical engine space to mass ratio? On the other hand, the mass, shields, hull, and total available space (outfit+cargo) is largely static. One can make the ship a little lighter or heavier by filling or emptying outfit and cargo space, but there is no way to change that total space, nor to change hull or shields. Re-sorting the ships by a theoretical or variable performance instead of near-static values could introduce some confusion to the comparison.

Other thoughts:

A. There has been, from time to time, great interest in renaming categories to things that are less a reference to weight and more a reference to purpose or feel. The Falcon, for instance, might be considered a "Fast attack cruiser". The Pelican might be a "Blockade runner", etc. Aside from the fact that many of such names are just the standard names of Republic ships (renaming them might be something good to do, as I think the people in the Republic campaign were talking of doing at one point), the problem comes up that, well, a lot of these more niche descriptive names only have one ship in them. Sometimes two or three. Having a giant shipyard space with just a bunch of rows with a single ship in them doesn't look good.

B. Shipyard sorting is a weak point of the game. While I'm not sure swapping maneuverability for mass is the best way to solve it, giving people an alternate way to do so would probably be a better improvement. Being able to sort the shipyard (both as a whole, and by category) by various attributes would be great!

I'd love to see the categories largely eliminated or condensced down and getting rid of all the "light" and "medium" and "heavy" descriptors, but with a sort function attached that lets me sort within the category based on price, cargo capacity, shields, hull, total hp, engine space to max mass ratio, etc...

As to the other unrelated changes, I'll update with upstream and that should resolve it.

@Zitchas Zitchas added balance Content (data) The information that the game uses to make everything labels Oct 5, 2024
Zitchas and others added 5 commits October 5, 2024 15:31
Co-authored-by: Zitchas <[email protected]>
This adds a mission that makes a thermal scanner available after the flamethrower. As such (at least within human space) thermal scanning won't be available until after there's an actual need for it. It's a small thing, but it's another hint of humanity actually developing new capabilities and changing over the course of the FW story.
@Quantumshark
Copy link
Author

Static vs dynamic traits. As you point out with the Falcon, and is the case with virtually every ship, they come stock with one set of engines, which can be replaced with a different set. This means that the manoeuvrability of a ship can vary from abysmal to whatever the maximum is for that particular ship.

Yes. In practice, most players will aim close to the maximum - or, if not the maximum mobility the ship can achieve, then the maximum mobility achievable with their preferred set of engines. Hence, when looking at how ships perform in the players' hands, I think it's most helpful to ignore the specifics of the stock loadout and look at what's possible.

This is complexified a bit by the fact that in most factions the set of engines available is pretty limited.

This complexity is also something that's avoided by ignoring stock outfits and looking at the potential with any outfits. The player is, after all, not limited to installing engines from a particular faction (at least, certainly not once they've left human space - until then, they're stuck with only human engines).

Would we classify ships by their absolute max potential assuming access to the best the player could ever get their hands on?

Essentially, yes. But, barring the question of which specific engines a ship can only just or not quite fit - which, while significant, is a factor that'll be subject to change when new engines are added - that should provide the same general picture as comparing them all with any other engines. The point isn't to assume the players will minmax, it's to compare like with like and avoid giving players a misleading idea of how a ship will perform due to its questionable stock setup.

There has been, from time to time, great interest in renaming categories to things that are less a reference to weight and more a reference to purpose or feel. The Falcon, for instance, might be considered a "Fast attack cruiser". The Pelican might be a "Blockade runner", etc.

While having the information about the purpose of a ship available is definitely a good thing, I think a ship's description is a much better vector for that information than its category. You can convey the nuances of a ship's role and the way it's used by its creators far better in one or two paragraphs of descriptive text than in a one or two word category heading.

Categories should, in my mind, be used to efficiently convey broad gameplay information to the player, grouping together ships that are similar in some way that is percieved to be important. That leans best into the way they're likely to be used by players - I imagine them serving as something of a "I like X ship, and would be interested to try others like it" or perhaps "I'm enjoying the feel of X ship, but it's too weak for what I'm using it for, so I'd like to find a stronger ship that plays similarly". In either case, the player can check the category of their ship, and then look for other ships in the same category. Currently, categories don't do a brilliant job of this - if you're enjoying your Corvette and looking for an upgrade, in my mind the game would do better to point you to a Falcon than to a Bastion, for example.

the problem comes up that, well, a lot of these more niche descriptive names only have one ship in them. Sometimes two or three. Having a giant shipyard space with just a bunch of rows with a single ship in them doesn't look good.

Yes, absolutely. Categories should, I think, be vague and contain many ships - that's more useful than having them be specific and contain few - or even one - ship. If we want a way to describe a ship that's specific to that ship, rather than grouping it together with others, we have the description.

@Zitchas
Copy link
Member

Zitchas commented Oct 12, 2024

Good points.

Definitely reinforces the fact that the categories are not great at what they do.

Another idea: Instead of using categories as hard differentiation, what if they were more like labels or tags? So, for instance, the Pelican might have "Heavy", "Freighter", and "Fast" tags. Then the player has access to a pull down menu with checkboxes where they can tick which labels they want to see, and everything matching those is displayed in the shipyard as one large mass of ships that are default sorted alphabetically, but might be sortable by cost or size too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
balance Content (data) The information that the game uses to make everything
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants