When you switch turns,the new defender can be hit by her own remaining bullets, if there is one at her starting point. Delete those first, then switch out.
You forgot to mention 'space=pause' in the control explanation.
"Survival" has a thicker outline than the other options on the main menu. It stands out too much.
Alice's bombs (and Flan's, and perhaps some others) still have less depth than the side-window. Try giving the side-window a depth of -999 or something.
You can have more than one bomb out at a time.
I suggest having the "Cascade Ready" text and the spell name as two different things, so the spell name doesn't disappear so quickly.
(That way you can put a timer-bar for how long you have until you can use the next spell over the "Cascade Ready" text, too.)
Survival mode is a nice addition. Enemy movement is awful, though. You may want to increase the chance of moving horizontally towards the player.
Also, survival mode showcases well that spells should get harder over time. PoFV's spell level-up system is a good example of what you could do for this.
On the menu, colored-in selections still remained colored in even if you click on something else. Also, the currently set
options on the options menu aren't colored when you first go in. You should have these things based on global variables,
so that they are consistent with eachother. For example:
if variable = 1 then {draw_set_color(color); draw_set_alpha(1/2); draw_rectangle(x,y,x+sprite_get_width(self),y+sprite_get_height(self);}
Change "variable" to whatever variable you are using, and change "(color)" to whatever color you want. (c_red) for example.
This is also assuming that the origin of your sprite is in the top-left corner.
Throw that into the 'draw' event of your options, and it should work nifty. (You may also have to redraw the current sprite under it, though.)
(Also, the selections for how long a turn lasts don't change color at all.)
(And only the bottom three options in player select change color, and only for p1.)
I still don't like the mouse movement. If you intend to keep it for defender, than you should try to improve it.
Now, even if the cursor is far away, the player still won't move towards it sometimes.
I don't know what you're using now, but if you put "move_towards_point(mouse_x,mouse_y,speed)" in the defender's step event it should work fine.
Overall nice improvements. It's approaching playable now, so keep at it.