jeremygurr / dcssca

Dungeon Crawl Stone Soup: Circus Animals fork
11 stars 8 forks source link

Multiple spell school logic #751

Open sooheon opened 8 years ago

sooheon commented 8 years ago

Hey, enjoying this fork quite a bit. There are so many ideas which I agree with, so it does scratch an itch. But the way that multi school spells only use a single skill for determining strength seems counterintuitive. Thematically, it doesn't make sense (for example, being able to cast hydra form knowing only air magic), but this is less important than the gameplay of course. But the gameplay seems wonky too. When you start as an elementalist, you're incentivised to all in on one spell school: for example, an air elementalist just needs to train air to cast every spell in his starting book. But this makes his character very narrow, and there's less flexibility in say, being able to branch out to Poison Arrow if I find an early book. There is less adaptation, and it incentivizes a strange min-maxing mindset where I look at all the spells available to me and try to thread the needle of the single school which will let me cast the most useful spells. It's a different mindset from say training conj and air with focus on conjurations, knowing I'll be able to adapt.

The reason given for this is to more closely hew to the weapon types. But I don't think spell schools are like weapon types. That's actually precisely the draw of spells over weapons: you eventually can craft a diverse set of tools to get through the dungeon in interesting ways. Looking through the morgue of successful players, while they generally follow a theme, most generalise to a degree. The current system makes any kind of generalisation feel suboptimal.

I think rather than a straight average, you can find a middle ground where your highest skill has a higher weight in determining strength. But the current binary system isn't the best, imo.

edit: I should also add that increasing the general difficulty of most spells due to the single-school skill application raises the barrier to entry to new spells. This really incentives one-dimensional characters.

jeremygurr commented 8 years ago

I'm glad you are enjoying it.

With the spell schools, it is true that you are incentivized to just choose one school in most cases, especially at the beginning. I find it quite a relief myself, since in most spellcasting games, I can just focus on one spell school. I found vanilla crawl to be far too easy to hybridize. In many cases I had spellcasters that could cast about anything without a whole lot of effort. In this fork, the spell skills are much more distinct, providing more meaning to where you invest your points.

Also keep in mind that training spellcasting is much more important here than in vanilla, since it determines how fast you can cast spells (vital for rapid damage type spellcasters), and it reduces your spell costs, both of which don't even exist in vanilla. Also, being able to use any weapon heavier than a dagger requires investment in fighting (if you want to be able to use it more than 2 times without being exhausted). So overall there is greater strain on training than in vanilla, so the relief of not having to train multiple spell schools is a big deal.

To somewhat compensate for this, I did a few things. I added more spell schools, allowing for additional options for choosing what set of spells you will mostly be using. And the spellcasting, intelligence and dexterity factors influence spells from all schools. This leads to many more interesting strategies that didn't exist before, which in my opinion makes things more fun.

For example, if you wanted to cast mid level spells from multiple spell schools, you could focus mostly on training spellcasting, to reduce spell costs of all spells, and increasing dexterity, to reduce failure rates. Then just a small investment in a few spell schools will enable you to bring many different school spells online.

Another example: if you wanted to cast a wide variety of low level spells, but with high power (since the spell power cap in vanilla doesn't exist here, even low level spells can be quite useful with high enough power), you could focus on training spellcasting (just like in the previous example), and increasing intelligence (unlike the previous example), which increases spell power of all spells, and helps to reduce spell costs further, enabling the use of power mode to amplify spell power even further, without costing too much MP.

Another example: if you wanted to bring some high level spells online in just one spell school, and maybe be able to use some low level spells from other spell schools, you would train the spell school for the high level spell, and focus mostly on adding dexterity. The higher dex will allow you to cast low level spells from any school easily enough, and the high specialization school training will enable you to bring the level 9 online as quickly as possible, as well as get some decent spellpower for it.

I think vanilla crawl incentivized hybridization way too much. I pretty much always hybridized whatever I was playing, since the cost was relatively low, and the gain quite high. This dulls the differences between different games, making things less interesting, and reducing replayability. A hybrid is a fun option to have, but it shouldn't be always the optimal one. I think this fork has achieved a much more balanced approach, where hybridization is still possible, although quite costly (as it should be, since it is balanced out by large benefits), but specialization much easier (with the tradeoff that it is much faster to train). And since there are so many different specializations, the variety is greater compared with a bunch of grey areas the blend most common factors together. In vanilla, even strong fighters almost always required significant magic investment by the time you reach extended game. Likewise, magic users always need significant fighting skills as well, to be able to deal with situations when their magic was ineffective. Consequently, you end up with games being much more similar than they need to be, even when starting with very different species and backgrounds.

So to be clear, the primary reason for using the max skill instead of average is to better balance the choice between specialization and hybridization / generalization, making the advantages and disadvantages of both almost balance out, making the choices more interesting and meaningful. The secondary reason is for simplicity. I'm aiming to create the greatest strategic depth (which naturally increases complexity) with the least complex implementation.

One of the best examples of this philosophy is the factors I use for both spellcasting and fighting. Each property (attack speed, damage, spell cost, stamina cost, etc). is determined by exactly two major factors (strength, intelligence, fighting skill, weapon skills, spell school max, etc). And each major factor affects exactly two properties. And each factor has exactly the same influence as the other. You always know, for example, that one point of intelligence will have the same effect on your spell power as one point in a corresponding spell school. And that one point of dexterity will always increase your attack speed as much as one point of fighting skill. To me this is much easier than having many different complex formulas that you have to study to understand how each factor influences the property you're needing.