Another small update. This changes the background color of Sparks' level end sign, as well as fixing a long-standing bug where her particles wouldn't spawn above FOF's.
About that bug: it seems to have been caused by the particles having the MF_SCENERY flag and a height of 0. I did some testing and it seems like objects with MF_SCENERY need to have a nonzero height, or else they'll instantly teleport to the bottom of an FOF below it, or something. Not sure exactly what happens, but it's something like that. I guess I was wrong when I said adding that flag couldn't hurt! To be fair though, rather than removing the flag, I just set the height value.
Just realized there's some other mapping functionality that could be useful, so I've added it.
Linedef 443 "CHARGE_SPARKS_NO_STUN"
Effect 1 ("Slope Skew"): Don't play sound
Linedef 443 "DISCHARGE_SPARKS"
Newly added. Immediately removes Sparks' electric charge.
Effect 1 ("Slope Skew"): Don't play sound
Linedef 443 "CHECK_SPARKS_ELEC_STATUS"
Newly added. Calls a linedef executor depending on whether or not the activator (Sparks) is charged.
Front Texture X: Tag of linedef executor to be called if Sparks is charged
Front Texture Y: Tag of linedef executor to be called if Sparks is not charged
Back Texture X: Tag of linedef executor to be called if the activator is not Sparks
Setting 0 for a texture offset parameter (or not having a back sector, in the case of the last one) will disable that particular trigger.
"DISCHARGE_SPARKS" is used in the upcoming version 1.1 of Electric Circuit Zone, which will add a new Act 1 to help players learn how to beat certain parts.
Here's the changelog:
- Sparks is now compatible with Kirby, though she doesn't give the ability you might expect.
- Speaking of cross-mod compatibility, she is also now compatible with Milne's dance.
- Map makers can now use linedef type 443 (Call Lua Function) with function name "CHARGE_SPARKS_NO_STUN" to fill Sparks' charge bar without stunning or damaging her. This will apply to whichever player triggered the linedef executor, as long as they are playing as Sparks.
- Sparks' twirl move now has a small radius of effect even when not charged, so she'll no longer miss attacks that look like they would have hit. The radius of effect when charged has also been increased.
- The twirl radius now applies even after releasing the twirl, until she stops spinning.
- Charging from a source of electrical damage will now make Sparks flash with invincibility for the normal amount of time.
- Attempted to fix a bug where Sparks would periodically lose her ability to spin in certain multiplayer gamemodes. As this is an intermittent issue, I'm not yet sure whether the fix actually works.
- Fixed another Lua error that would occasionally occur.
Another small update, this one to fix a couple sprite oversights. Most significantly, her TRNS animation is now only one angle, like most characters. More subtlely, she now appears with a white background on the scoreboard like everyone else; previously the background would be transparent if there were two columns.
This is a small update to fix a regression caused by the previous change, which was intended to fix the issue with electric charge persisting across maps, but actually just broke it even more. This version changes "MapChange" to "MapLoad", which should ensure that the player is valid at the time the reset is done.
Here's the changelog:
- Changed Sparks' death sprite to always view from the front, like the other characters. I also adjusted her pose a bit to look better from that angle.
- Sparks' vertical momentum prior to starting a twirl is no longer taken into account at all when releasing it. This should result in more predictable behavior, as now th
- The code is still there in case you want to use it; I just set the factor (TWIRL_MOMZ_RESTORE_MULTIPLIER) to 0.
- Before making this change, I also fixed a bug with the now-unnecessary code, where downward vertical momentum would reduce the height, instead of just upward momentum increasing it.
- Jumping while holding Spin now results in a successful jump, instead of the previous glitchy behavior.
- The MapChange hook is now used for resetting Sparks' variables; this should fix any remaining bugs where her charge persists when it shouldn't.
Here's what's changed this time:
- Various sprite tweaks, including (what I think are) better-looking eyes for some of her animations
- A new waiting animation (above) that it switches to if you wait 5 more seconds
- A tweak to prevent Sparks from immediately rolling after doing a stomp attack.
- Added the MF_SCENERY flag to Sparks' particles. I'm not sure if it'll really make a difference for anything, but it couldn't hurt.
Smaller update this time, but it does bring a couple changes you might enjoy.
- Sparks' momentum prior to starting a twirl is now much less significant in determining how high she'll go. Instead, it's based primarily on how long she holds it. Hold it for a full second to get the maximum boost.
- Sparks can now destroy bustable floors, similar to Amy and Fang.
- Hitting an enemy with a ground stomp will allow you to cancel it and perform a twirl attack.
As always, have fun!
- Sparks' physics will no longer break when she is at a nonstandard scale.
- Fixed a (harmless) Lua error that could sometimes occur when running the "PlayerCanDamage" hook.
Version 1.1 of Sparks is here, with bug fixes, balance changes, as well as a brand new gameplay mechanic!
- Sparks will now power up when exposed to electricity. Instead of damaging Sparks, electricity will now charge up her attacks, giving them an area of effect. Besides fitting her name, this also serves an important gameplay purpose which you will no doubt discover.
- When Sparks becomes charged, a meter will appear showing how much longer the power-up will last. But be careful—the hit you took to get charged has a reduced invincibility period, and electricity will harm you if you're already charged up, unless the meter is low enough that it's flashing.
- If you see an Attraction Shield or Electric Shield, pick it up, as Sparks can use the shield as a perpetual source of charge.
- Using Sparks' ground slam attack on a spring will now launch you at 150% power. It still won't break bustable floors as I couldn't figure out how, but hopefully that will come in the next version.
- While underwater, Sparks can now swim straight ahead without losing height, similar to Metal/Super Sonic's hover.
- Sparks can no longer use (standard) shield abilities, other than passive ones. This is less due to balance and more to streamline gameplay, as it makes her moveset more consistent without taking too much away from her.
- Previously, Sparks' ground slam did damage in a very small radius; this will no longer occur unless Sparks is charged with electricity, in which case the radius is significantly larger.
- Sparks' camera scale has been increased from 0.6 to 0.8, meaning the camera will now be a bit farther away from her. This change was made in response to feedback from Kasumi-chan.
- Sparks' jump power has been reduced from 2.0 to 1.5. This was suggested by Princess Draykon, and I as well as my testers all agree that this improves her gameplay.
- While holding her twirl attack, Sparks will now lose height faster than she previously did, unless she is charged with electricity, in which case she will lose height slightly slower than before.
Thank you all for your feedback, and have fun!
- Holding Spin while submerged in goop will no longer spam the sound from her ground slam attack.
- Having 50 or more rings in super form will no longer prevent Sparks from using her drop attack, or twirling from a non-gliding state.
- The ambient water sound that plays while Sparks is swimming now loops seamlessly.
- Fixed the ThinkFrame hook not checking the validity of the player; if you ever got Lua errors when dying, this should no longer happen.
Some players who joined my co-op game helped me uncover a couple of bugs which will hopefully be fixed in the next version. Those are:
I hope there aren't any I'm forgetting. If you find any issues other than those listed, please let me know!
- Twirl attack can somehow get disabled during multiplayer special stages (intermittent, cause unknown)
- Holding the Spin button while in goop rapidly plays the "slam" sound
- Potential softlock in CEZ3 (believed to be related to using the slam attack)
- The audio loop while gliding underwater isn't seamless, though it's quiet so you usually can't hear it
- The battle against Metal Sonic (at least the last hit) took a long time even with four players, so the difficulty in singleplayer might be unreasonable. That's the only part I couldn't get past, but I put it down to a lack of skill; additional feedback will be appreciated.