Resource icon

[Reusable] Kart Exhaust Particles v4

This thread contains content that may be reused, modified, or ported by anyone.

Strife

Member
attachment.php
attachment.php
attachment.php


This is a simple Lua script for SRB2Kart that adds visible exhaust to the karts. The particles turn into black smoke while under a boosting effect (sneakers, drifting, etc).

There are two additional spawn types included for nonstandard karts: "NONE" for kartless characters and "CTR" for Plom's CTR kart. You can specify a spawn type for your characters by calling this function to a Lua script in the character's lua folder:

EXHAUST_SetType("name", "type")
"name" is the character's internal name and "type" is either "NONE" or "CTR".

Shoutout to Lach, whose Lua scripting for Chrispy's character pack was used as the basis for this script.

Changelog
v4
- Spinout rotation is now taken into account.
- N. Gin, Fake Crash, Small Norm, Tawna, and Checkpoint Crate have been added to the CTR spawn type.
- You can now specify a spawn type for your own characters through Lua, as long as they are loaded after the exhaust script. Call EXHAUST_SetType("name", "type"), where "name" is the character's internal name and "type" is either "NONE" or "CTR".

v3
- Added CTR spawn type. This affects the following characters: Crash Bandicoot, Coco Bandicoot, Dingodile, Polar, Penta Penguin, Pinstripe, N.Tropy, N.Trance, Isabella, Ami, Megumi, Liz, Spyro (Plom), CTR Spyro (Emigell), King Chicken
- Added Kartless spawn type. This affects the following characters: SRB2 Sonic, Kartless Sonic, Kartless Tails, Kartless Knuckles
- Fixed the particles not changing their spawn point with the kart's scale.
- The flame sprites will now stop spawning 10 frames earlier than the smoke. This makes it so that the weakest drift boosts will only get a brief "pop" of fire, which is a better indicator of its strength.

v2
- Added flame effects to boosting. The duration of the vanilla boost effect has been reduced to compliment this.

v1
- Initial release.
 

Attachments

  • exhaust2.gif
    exhaust2.gif
    985.6 KB · Views: 3,433
  • exhaust3.gif
    exhaust3.gif
    672.6 KB · Views: 3,550
  • exhaust1.gif
    exhaust1.gif
    2.2 MB · Views: 3,596
  • exhaust4.gif
    exhaust4.gif
    4.7 MB · Views: 2,873
  • KL_KartExhaust_v4.pk3
    4.1 KB · Views: 617
Last edited:

D00D64

Probably Responsible
Moderator
Judge
It can go into releases for now, but do try to upload at least one imag if you can, even if it isnt a GIF. I also understand the MB wont let you make a topic with a PK3 for stupid reasons, but when you do upload an image, please replace the zip with a PK3, as a PK3 is already a compressed file, so making it a zip doesnt do anything but add an extra step for the user.
 

Strife

Member
I've updated the ZIP to a PK3 as suggested. I had considered attaching a static image temporarily until GIF support is restored, but I think the effect of the script isn't obvious from a static screenshot. I'll put together something regardless if GIFs aren't fixed in a day or two.

EDIT: All set!
 
Last edited:

Strife

Member
Updated to v2 with a spiffy new flame effect for boosting:

attachment.php


It's been suggested to me that the color of the flame could correspond to the type of boost, and I may experiment with that later, but for now I figured I'd release what I have.
 

Strife

Member
Updated to v3 with a major bugfix for kart scaling, plus the addition of new spawn types:

- Added CTR spawn type. This affects the following characters: Crash Bandicoot, Coco Bandicoot, Dingodile, Polar, Penta Penguin, Pinstripe, N.Tropy, N.Trance, Isabella, Ami, Megumi, Liz, Spyro (Plom), CTR Spyro (Emigell), King Chicken
- Added Kartless spawn type. This affects the following characters: SRB2 Sonic, Kartless Sonic, Kartless Tails, Kartless Knuckles
- Fixed the particles not changing their spawn point with the kart's scale.
- The flame sprites will now stop spawning 10 frames earlier than the smoke. This makes it so that the weakest drift boosts will only get a brief "pop" of fire, which is a better indicator of its strength.

If you want a Kartless or CTR character added to the list in future versions, feel free to mention them here and I'll write them into future versions. You can also do this yourself within the lua script by adding to the SKIN_NOKART and SKIN_CTR arrays at the top of the file.
 
Last edited:

Emgiell

Member
Would it be possible to read a file in a pk3/wad that positions the particle emitter? I feel that it be more practical than manually adding presets within the mod file itself.
 

Strife

Member
Is there a way to grab the player's angle offset during the spinout animation? If so then I should be able to add an exception to the current angle calculation pretty easily.
 

Lach

he/him
Moderator
Sonic Team Junior
Kart Krew™️
Judge
Yes! Use player.frameangle instead of mo.angle.
 

Strife

Member
Thanks! New version is up.

- Spinout rotation is now taken into account.
- N. Gin, Fake Crash, Small Norm, Tawna, and Checkpoint Crate have been added to the CTR spawn type.
- You can now specify a spawn type for your own characters through Lua, as long as they are loaded after the exhaust script. Call EXHAUST_SetType("name", "type"), where "name" is the character's internal name and "type" is either "NONE" or "CTR".
 

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Top