[Open / Signup] One Room Round Robin 3 - Calling All Modders

Ask for help about creating mods and scripts for Grimrock 2 or share your tips, scripts, tools and assets with other modders here. Warning: forum contains spoilers!
User avatar
AndakRainor
Posts: 674
Joined: Thu Nov 20, 2014 5:18 pm

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by AndakRainor »

The goal is to add some synergy between spells and "more interesting" game play. I thought this spell could do it because it does not freeze its targets, is half physical and I had no better candidate for a "shatter" effect. (And it is very similar to other storms spells)

I noticed discharge has strange behaviors with elevation... Its range seems unlimited on this dimension.
Also one question, why do you test the party's elevation and world position to prevent the fire beam to actually spawn?

On the high number of spells; we can cut a lot of them, no problem... And your 7 spells just replace the puzzle breaker ones I had. (the water breathing one was just exactly the same as mine!)
minmay
Posts: 2780
Joined: Mon Sep 23, 2013 2:24 am

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by minmay »

AndakRainor wrote:Also one question, why do you test the party's elevation and world position to prevent the fire beam to actually spawn?
The current public version of firebeam has a bug where it doesn't trace properly at nonzero elevations, it's fixed in the next version. The world position check is so that firebeam can't pass through the ground on heightmapped levels.
AndakRainor wrote:(the water breathing one was just exactly the same as mine!)
I assure you, pure coincidence, I hadn't looked at your spells pack until after I uploaded the last version of MinAssets.

Discharge's vertical range is indeed unlimited, it should probably have no vertical range at all. But it doesn't belong in this dungeon in the first place.

edit: If you want a better candidate for a "shatter" effect, what about the literal Shatter spell? Frozen creatures taking more damage from it would make sense.
Grimrock 1 dungeon
Grimrock 2 resources
I no longer answer scripting questions in private messages. Please ask in a forum topic or this Discord server.
User avatar
AndakRainor
Posts: 674
Joined: Thu Nov 20, 2014 5:18 pm

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by AndakRainor »

minmay wrote:The current public version of firebeam has a bug where it doesn't trace properly at nonzero elevations, it's fixed in the next version. The world position check is so that firebeam can't pass through the ground on heightmapped levels.
Ok, I will upload the file tomorrow if you prefer to update it yourself, but I can also do it if you send me your files :) (I had to do some adaptations to your spells to get them in the pack, please don't scream when you see it :P )
minmay wrote:I assure you, pure coincidence, I hadn't looked at your spells pack until after I uploaded the last version of MinAssets.
Oh I did not mean you took it, but as you noted, such a boring spell is necessary very similar, and differs on duration, requirements, icons and name only.
minmay wrote:Discharge's vertical range is indeed unlimited, it should probably have no vertical range at all. But it doesn't belong in this dungeon in the first place.
Do you mean maybe it should be removed?
minmay wrote:edit: If you want a better candidate for a "shatter" effect, what about the literal Shatter spell? Frozen creatures taking more damage from it would make sense.
I agree, but I was looking for a water spell initially, with damage similar to other elemental schools against enemies immune to the water crowd controls. Perhaps the most important part is the additional damage against frozen immune monsters more than frozen ones. (But frozen ones require using a lower damage crowd control before the high dps spell so it is less powerful that way).
minmay
Posts: 2780
Joined: Mon Sep 23, 2013 2:24 am

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by minmay »

AndakRainor wrote:
minmay wrote:Discharge's vertical range is indeed unlimited, it should probably have no vertical range at all. But it doesn't belong in this dungeon in the first place.
Do you mean maybe it should be removed?
I mean Discharge should definitely be removed.

By the way I just looked at your recreations of builtin spells and most of them are inaccurate. In particular, your burst spell targeter picks the wrong position in many cases, and your projectile spell creator puts the projectiles in the wrong position. I have exact burst, projectile, and shield spell recreations here (and I can prove their accuracy if you are interested). These are the two functions of interest:

Code: Select all

-- Builtin burst spell rules:
-- Try to target the square in front of the party.
-- If this square is solid, or is blocked by an ObstacleComponent that would
-- block the party and its parent GameObject does NOT have a component named
-- "health", target the party's square instead.
-- If the path between the party and this square is blocked by a door, target
-- the party's square instead.
--
-- This function emulates this behaviour.
--
-- NOTE: The builtin poison_cloud spell is a little different: it can be cast
-- through sparse doors (but not non-sparse ones). This behaviour in the
-- original game is intended, and easy to replicate, but since it leads to
-- abuses I don't think anyone actually wants it, so I haven't implemented it.
function getBurstSpellTarget(x,y,direction,elevation)
   local dx,dy = getForward(direction)
   local nx = x+dx
   local ny = y+dy
   local obs = party.map:checkObstacle(party,direction)
   if obs == "door" or obs == "wall" then
      return party.level,x,y,direction,elevation
   elseif obs == "obstacle" then
      for e in party.map:entitiesAt(nx,ny) do
         if e.elevation == party.elevation and not e.health then
            for _,c in e:componentIterator() do
               if c:getClass() == "ObstacleComponent" and c:getBlockParty() then
                  return party.level,x,y,direction,elevation
               end
            end
         end
      end
   end
   return party.level,nx,ny,direction,elevation
end

Code: Select all

function getProjectileSpellLaunchPosition(champion,x,y,direction,elevation)
   local ord = champion:getOrdinal()
   local left = nil
   for i = 1,4 do
      if party.party:getChampion(i):getOrdinal() == ord then
         left = i == 1 or i == 3
         break
      end
   end
   local wpos = party:getWorldPosition()
   local dx = nil
   local dz = nil
   if party.facing == 0 then
      dx = left and -0.1 or 0.1
      dz = -1
   elseif party.facing == 1 then
      dz = left and 0.1 or -0.1
      dx = -1
   elseif party.facing == 2 then
      dx = left and 0.1 or -0.1
      dz = 1
   else -- party.facing == 3
      dz = left and -0.1 or 0.1
      dx = 1
   end
   return party:getWorldPosition()+vec(dx,1.35,dz)
end
AFAICT you also forgot to end the invisibility condition when casting attack spells. I do appreciate the work you've done with the spell pack but I think you should use the same rules as the builtin spells specifically for burst targets and projectile positions, there are some existing rooms that could break if you don't.
Grimrock 1 dungeon
Grimrock 2 resources
I no longer answer scripting questions in private messages. Please ask in a forum topic or this Discord server.
User avatar
AndakRainor
Posts: 674
Joined: Thu Nov 20, 2014 5:18 pm

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by AndakRainor »

That is great feedback :D
I will trust you on this and update my targeting functions.
Just a few things about it;
- Meteor storm uses a fixed pattern to set the starting position of each of its 5 projectiles. I don't want to reproduce it and prefer randomization. Also, my storm spells don't generally launch exactly 5 projectiles.
- Yesterday I realized casting from "non integer tiles" elevations was not really supported. I think the built in spells have this problem too and it should definitely be improved.
- The poison cloud abuse is intended as you said, maybe because earth builtin spells are the weakest? I am not sure this abuse should be removed, it was a signature of this element... But with more powerful spells, I may be wrong.
- In the projectile positioning function, I see the main difference is the "depth" starting value is the same for front and back line casters? Is that the problem you refer to, or the just the numeric values I chose (0.5 versus 0.1 in your code)
User avatar
AndakRainor
Posts: 674
Joined: Thu Nov 20, 2014 5:18 pm

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by AndakRainor »

Finally, I have uploaded a new version of the project file with fixes for my room and the spells pack!

So in this version the previous files for custom spells are removed.
It took me a lot of time this week end, so I will let you look at it for some time before changing anything in it! (I have also a lot of improvements to the pack that I now have to integrate in the published pack!)

Now that this is done, here is an example of a nice feature you all can use for your item rewards ;)

Code: Select all

defineObject{
  name = "andak_pendant",
  baseObject = "base_item",
  components = {
    {
      class = "Model",
      model = "assets/models/items/jewel_pendant.fbx",
    },
    {
      class = "Item",
      uiName = "Andak Rainor Pendant",
      gfxIndex = 306,
      weight = 0.7,
      traits = { "enchanted", "necklace" },
      description = "The golden necklace itself would be worth a fortune. The huge amethyst attached to it makes you rich beyond your wildest dreams.",
      gameEffect = "Concentration, Fire, Air, Water and Earth Spells Power +100%",
      onEquipItem = function(self, champion, slot)
        spells_functions.script.setPower(champion, "concentration", slot, 100) -- +100% concentration spells power
        spells_functions.script.setPower(champion,    "fire_magic", slot, 100) -- +100% fire magic spells power
        spells_functions.script.setPower(champion,     "air_magic", slot, 100) -- +100% air magic spells power
        spells_functions.script.setPower(champion,   "water_magic", slot, 100) -- +100% water magic spells power
        spells_functions.script.setPower(champion,   "earth_magic", slot, 100) -- +100% earth magic spells power
      end,
      onUnequipItem = function(self, champion, slot)
        spells_functions.script.setPower(champion, "concentration", slot) -- 0% concentration spells power
        spells_functions.script.setPower(champion,    "fire_magic", slot) -- 0% fire magic spells power
        spells_functions.script.setPower(champion,     "air_magic", slot) -- 0% air magic spells power
        spells_functions.script.setPower(champion,   "water_magic", slot) -- 0% water magic spells power
        spells_functions.script.setPower(champion,   "earth_magic", slot) -- 0% earth magic spells power
      end,
    },
    {
      class = "EquipmentItem",
      willpower = 2,
    },
  },
}
minmay
Posts: 2780
Joined: Mon Sep 23, 2013 2:24 am

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by minmay »

AndakRainor wrote:- Meteor storm uses a fixed pattern to set the starting position of each of its 5 projectiles. I don't want to reproduce it and prefer randomization.
Actually only the y and z offsets are fixed. The x offset is randomized. But yeah, as long as you keep the projectiles within the same bounds it'll be fine.
AndakRainor wrote:- Yesterday I realized casting from "non integer tiles" elevations was not really supported. I think the built in spells have this problem too and it should definitely be improved.
Non-integer x,y,facing,elevation,level are not really supported by the engine and should be avoided.
AndakRainor wrote:- In the projectile positioning function, I see the main difference is the "depth" starting value is the same for front and back line casters? Is that the problem you refer to, or the just the numeric values I chose (0.5 versus 0.1 in your code)
Both. The 0.1 instead of 0.5 is far more important, though.

edit: Looked through the version you uploaded, mostly looks good to me but I'm afraid I have some complaints.
Serious issues:
- Might doesn't really work right, the stat bonuses should be applied in the condition's onRecomputeStats with Champion:addStatModifier(), instead of trying to use Champion:setBaseStat().
- handling for not meeting energy costs (e.g. reduced cost of disrupt) is really bad. It should act the same as not meeting the energy cost in the builtin spell system. Consider changing it from "energy cost is reduced by X" to "X energy is refunded after casting" which would not suffer the same problem.
- discharge should be removed since it can break so many puzzles by killing normally-unreachable monsters
- air/earth/fire/water enchantment are, frankly, really obtuse and also overpowered. Should be removed.
- All Shall Fall's removal of flying from monsters can also break puzzles, and unless you make a lot of new animations for crowerns etc. it doesn't really make sense in the first place.
- like Discharge, zone effects can be used to affect monsters that are supposed to be unreachable. Not sure how to fix this without doing some fairly complex pathfinding. Unlike discharge I think the ranges are short enough that they don't currently break any rooms, though.
- zone effects also use the wrong geometry to compute whether a tile is within their radius, remember that while Grimrock's space is visually Euclidean, it is functionally Taxicab for the most part (gravity-affected projectiles are an exception, not the norm)
- ice shards should be reverted to the builtin targeting rules like the other burst spells (custom damage rules is fine). You don't actually have to check the ground in front of the party because IceShardsComponent does that automatically; see my recreation of the spell.
- your poison cloud implementation doesn't merge CloudSpellComponents like the builtin one, this is important because yours allows stacking a large number of poison clouds. Cloud merging is nontrivial to recreate and you will pretty much have to reimplement CloudSpellComponent with TileDamagerComponent and TimerComponent (to decay the attack power). I think that with rock fall added, earth magic doesn't need poison cloud anyway so it is likely better to remove it.
- I know you had good intentions by removing the firebeam tracer, but you misunderstand its purpose. The tracer is required for the spell to work properly on heightmapped levels; by removing the tracer you have allowed the spell to pass through the ground. (I will fix this next time I get the file).

Not bugs, but complaints:
- frostburst spell is too powerful (frostbolt is higher level, is not guaranteed to freeze, and is still an amazingly good spell). A dedicated melee freeze spell could work but it needs to be higher level.
- I still massively disagree with your hailstorm buff against freezing immune targets. If water magic actually gets better against cold immune targets, then what's the point of cold immunity even existing?
- I do not think spells should give haste, rage, or resurrection - those are supposed to be limited resources and haste is extremely powerful.
- Spells should be learned as soon as the scroll is obtained, instead of making players carry the scroll the first time they cast it. At the very least, use PartyComponent:isCarrying() to determine whether the party has the scroll, instead of making you put it in a specific champion's inventory and remove it from containers. Alternatively, it's easy to change my spellbook to automatically record new spells as the scrolls are picked up.

I still think 111 spells is an insanely high number. That's a ton of cognitive load for players and I really think it should be reduced; here are my ideas:
1. Get rid of most of the "palette swap" spells - only have a rune trap for one element, only have a meteor storm for one element, probably just get rid of frostburst (ice shards is a much more unique spell, and there's already frostbolt for freezing things), and there's no need for the combined storms or combined shields.
1.5. Alternatively, have just a single "Bolt Storm" spell that includes bolts from the elemental schools you have. So if you only have fire magic 4, it acts like meteor storm, and if you only have air magic 4, it acts like thunder storm, and if you have fire,air,earth,water 4, it acts like elemental storm. Do the same thing for elemental shielding. This reduces 30 overly similar spells to 2 spells.
2. If the resurrection spells are kept, at least reduce the number of them. I count 7, and the game also has potions of resurrection and crystal shards and big healing crystals. I think breath of life alone is enough, and if not, the 7 resurrection spells could easily be combined as above, but I think just having one of breath of life OR soul bound is cleaner.


By the way...who does get the file next? (I'd be happy to make any subset of these changes myself if you want me to)
Grimrock 1 dungeon
Grimrock 2 resources
I no longer answer scripting questions in private messages. Please ask in a forum topic or this Discord server.
User avatar
Jgwman
Posts: 144
Joined: Thu Jun 28, 2012 10:14 pm

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by Jgwman »

By the way...who does get the file next?
If this question is directed towards me - no one is scheduled to have it. Andak was the last one to ask to add something, which he's done, and the other people with rooms left to add haven't asked for the file, nor has anyone for bug fixes. Just post here when you are working, and when you are done, and that should be fine for now.
User avatar
AndakRainor
Posts: 674
Joined: Thu Nov 20, 2014 5:18 pm

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by AndakRainor »

If you can just wait one day before cutting 90% of the spells, I will make a detailed answer to all your points ;)
Don't worry, I know that I could not do every thing I had to do and this version is basically the full pack modulo your spells. Cutting in it raises a lot of questions about the final product we collectively want this mod to be!

Now I need some rest :P
User avatar
AndakRainor
Posts: 674
Joined: Thu Nov 20, 2014 5:18 pm

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by AndakRainor »

minmay wrote:Serious issues:
So, let's start answering your points! First if I can make a request, when you say something does not work, please give some example of a bug it could trigger, from now on I will try my best to guess what you mean by "is bad", "problem" or "doesn't work", so it is possible I miss the target...
minmay wrote:- Might doesn't really work right, the stat bonuses should be applied in the condition's onRecomputeStats with Champion:addStatModifier(), instead of trying to use Champion:setBaseStat().
Why not, but is it really safe to read the current stat inside the onRecomputeStats function? Or do you have another idea in mind to get the stat value?
minmay wrote:- handling for not meeting energy costs (e.g. reduced cost of disrupt) is really bad. It should act the same as not meeting the energy cost in the builtin spell system. Consider changing it from "energy cost is reduced by X" to "X energy is refunded after casting" which would not suffer the same problem.
That is what I had for those spells in a previous version of the pack. I was not happy with it... So, the only thing I can imagine is different from the builtin spells is about PartyComponent.onCastSpell triggering hooks for non paid spells, is that the problem? (every thing else has builtin similar behavior I think). If so, a solution could also be to report the test to the main onCastSpell hook of spells_functions.lua
minmay wrote:- discharge should be removed since it can break so many puzzles by killing normally-unreachable monsters
Is there really such puzzles in the mod? Is this good puzzle design?
minmay wrote:- air/earth/fire/water enchantment are, frankly, really obtuse and also overpowered. Should be removed.

Okay, would a nerf and some notes in the dungeon about their effects change your mind?
minmay wrote:- All Shall Fall's removal of flying from monsters can also break puzzles, and unless you make a lot of new animations for crowerns etc. it doesn't really make sense in the first place.
I agree it is cheap without new animations, but it has some game play value. This is nearly always prefered to realism in gaming ;)
minmay wrote:- like Discharge, zone effects can be used to affect monsters that are supposed to be unreachable. Not sure how to fix this without doing some fairly complex pathfinding. Unlike discharge I think the ranges are short enough that they don't currently break any rooms, though.
Do you have examples of such rooms that I could test?
minmay wrote:- zone effects also use the wrong geometry to compute whether a tile is within their radius, remember that while Grimrock's space is visually Euclidean, it is functionally Taxicab for the most part (gravity-affected projectiles are an exception, not the norm)
I think you refer to my use of tiles coordinates on non 3 meters module height maps? I should correct that, sure!
minmay wrote:- ice shards should be reverted to the builtin targeting rules like the other burst spells (custom damage rules is fine). You don't actually have to check the ground in front of the party because IceShardsComponent does that automatically; see my recreation of the spell.
Okay, I totally missed this component functionalities when I reproduced the behavior. I can remove it, but from what I tested so far, I managed to get the same behavior as the builtin ice shards. If I remove it, I suppose the ice shards component can be used for other ground attack spells too?
minmay wrote:- your poison cloud implementation doesn't merge CloudSpellComponents like the builtin one, this is important because yours allows stacking a large number of poison clouds. Cloud merging is nontrivial to recreate and you will pretty much have to reimplement CloudSpellComponent with TileDamagerComponent and TimerComponent (to decay the attack power). I think that with rock fall added, earth magic doesn't need poison cloud anyway so it is likely better to remove it.
I never knew this even existed. Is there really a potential FPS problem with stacking clouds? What does the engine do about it, are you talking about merging objects? Because components merging does not make sens to me, unless you talk about components from multiple objects. I did not know the game deleted those objects to protect its framerate in the first place. Is there a plausible scenario in which a player would stack TOO MUCH clouds? (Removing one of the original spells is a bit excessive, isn't it?)
minmay wrote:- I know you had good intentions by removing the firebeam tracer, but you misunderstand its purpose. The tracer is required for the spell to work properly on heightmapped levels; by removing the tracer you have allowed the spell to pass through the ground. (I will fix this next time I get the file).
I left it quoted after testing some spells behaviors with non-integer elevation casting. I stopped working on it when you told me you had a new version of the spell.
minmay wrote:Not bugs, but complaints:
In this part other modders thoughts are very very welcome :)
minmay wrote:- frostburst spell is too powerful (frostbolt is higher level, is not guaranteed to freeze, and is still an amazingly good spell). A dedicated melee freeze spell could work but it needs to be higher level.
I think we really need a spell with this level of requirement for the water school. Frostburst was evident as it was the only missing burst spell in the game. I thought with a very short freeze effect it would not be so overpowered. Maybe we could reduce its duration? About the necessity of having spells at certains skills level requirements, and especially at this first skill point, see my answer about the goals of the mod below.
minmay wrote:- I still massively disagree with your hailstorm buff against freezing immune targets. If water magic actually gets better against cold immune targets, then what's the point of cold immunity even existing?
Well, first "frozen" immune targets and "cold" damage type immune targets are not the same. Water spells crowd control may be very powerful, but they are always disabled against bosses in all games since the dawn of humanity (don't come with an odd case!). The idea is to give water school some damage when its crowd control is negated. Its cold damage will still be reduced by monsters' resistance. And monsters not immune to its crowd control will still require using the low damage crowd control spells to build a "shatter" effect. May be another spell should do it but not hailstorm, but I think it should be a water spell (or a multi schools spell with water). Also, perhaps this spell should remove the frozen condition on hit, so a storm type spell is not ideal.
minmay wrote:- I do not think spells should give haste, rage, or resurrection - those are supposed to be limited resources and haste is extremely powerful.
I thought rage was the best effect (when stacked)? I don't mind removing haste from wind_rider though, now that it as the air cushion effect. Do you want to remove all buff spells? Also spells are supposed to be powerful, just not too much compared to non-casters champions. Before removing a spell or effect, you can always try to reduce its power.
minmay wrote:- Spells should be learned as soon as the scroll is obtained, instead of making players carry the scroll the first time they cast it. At the very least, use PartyComponent:isCarrying() to determine whether the party has the scroll, instead of making you put it in a specific champion's inventory and remove it from containers. Alternatively, it's easy to change my spellbook to automatically record new spells as the scrolls are picked up.
I totally missed this function! But reading a spell scroll from inside a bag or other champions' pockets is not easy =D
A new way to learn spells is really welcome! Making scroll usable and/or using your spellbook + using PartyComponent:isCarrying() should be nice features. Also, I never had any answer about the spell restriction feature. Perhaps nobody wants it in the first place?
minmay wrote:I still think 111 spells is an insanely high number. That's a ton of cognitive load for players and I really think it should be reduced; here are my ideas:
That is the big point to discuss, and it is totally linked with the kind of gaming experience we all want for this mod. 111 spells is sure way too much for a single player. But how many spells would you like?
To get all the spells you would have to get to at least level 23 with a skilled non farmer human, or use several skill tomes, or multiple casters. I see only two possibilities to get to this point: the player really wants it, and that's cool, or the player has imported a high level party. So this is a very important question to consider before cutting spells; will the mod allow champions import? If the answer is no, then most of the spells are in practice out of reach of the average player, and reducing their number is useless. And still in that scenario, the end game level of a typical caster is also very important.
In the allowed import scenario, another way we could limit the number of spells a player can get would be to limit the number of scrolls the can find/buy, etc... It could be interesting if they could read all the scrolls but only choose something like 20 (for example) during one game.
minmay wrote:1. Get rid of most of the "palette swap" spells - only have a rune trap for one element, only have a meteor storm for one element, probably just get rid of frostburst (ice shards is a much more unique spell, and there's already frostbolt for freezing things), and there's no need for the combined storms or combined shields.
Again depending on allowing import party or not, palette swap is mainly there to neuter the "bad skill choice! no luck!" effect I found awful with Isle of Nex spells that led me to making this pack. Not sure if you will agree, but I see it that way; earth magic was the bad choice trap for uninformed players, as much boring with so few spells as weak compared to real end game magic schools like fire, fire or fire. (Air and Water are debatable, but not for their damage). that must be why so many people here have posted custom spells frequently for the earth magic school. I don't think a game with a leveling system that simple and character customization that limited should have a few good builds and all the rest is garbage. So, the goal was a least one new spell each time the player levels up, and yes similar spells, not very exiting but efficient from a player perspective I think.
minmay wrote:1.5. Alternatively, have just a single "Bolt Storm" spell that includes bolts from the elemental schools you have. So if you only have fire magic 4, it acts like meteor storm, and if you only have air magic 4, it acts like thunder storm, and if you have fire,air,earth,water 4, it acts like elemental storm. Do the same thing for elemental shielding. This reduces 30 overly similar spells to 2 spells.
Why not, but again, learning a new spell when you level up, to me is not the same as your old spell gaining +20% damage. I understand it may be unnatural to you to see it that way, after all learning a new spell from a new scroll that just does 20% more damage than your old spell is in fine the same thing as a passive stat boost, but I believe it is more enjoyable for the average player.
The BIG BIG BIG advantage of elemental storm is not the pretty colors or even damage type considerations, but the fact that it requires 2 skill points in each elemental school, for a total of 8 skill points, while meteor storm requires 5 fire magic + 3 concentraion (was air magic in the builtin version) for the same total. So the player who wanted to play an elementalist and thought it was a good idea will not be punished by the game and be left with only burst and ice shards spells, no projectile spell, at the same level an informed player gets meteor storm.
minmay wrote:2. If the resurrection spells are kept, at least reduce the number of them. I count 7, and the game also has potions of resurrection and crystal shards and big healing crystals. I think breath of life alone is enough, and if not, the 7 resurrection spells could easily be combined as above, but I think just having one of breath of life OR soul bound is cleaner.
Not sure about that. In a way ressurection spells, having high energy cost, are limited by energy potions. But I could also add a longer cooldown to them?. I would say they truly are game breakers in single use crystal iron mode only.

All that being said, I am okay with reducing the spells number, we could even remove all multiple magic schools spells and still respect the rule of at least one new spell for each new skill point. This rule, and having all possible builds nearly similar in power, are the strict minimum I want from the final product ;)
Post Reply