I'm making a splatoon platformer, but I have no idea how to replicate the ink mechanic


by ink mechanic i mean how inklings paint turf and climb walls with their ink.

I have no idea how to implement this beyond the simple projectles after following Shaun Spaldings tutoiral on platformer.
I think that kind of mechanic is going to be so insanely complex to code that it's going to be a lot more in depth than someone here just giving you a single block of code or script function that does it.

  1. You have to disperse the ink in semi-random patterns based on physics and surfaces
  2. have it either covered or destroyed properly as it's painted it over
  3. have keep track of where ink is and how much to keep score
  4. make sure players interact with the ink properly
It's just not something you can hammer out in one block of code and be done with because there's so many complex mechanics and systems working together


🍋 *lemon noises*
GMC Elder
My solution would be something like this:
  • Create invisible ink objects whenever the projectiles hit an inkable surface.
    • The code that creates these will first destroy ink objects that already exist there, especially if they're of a different color.
  • The ink objects come in two main varieties: horizontal and vertical, depending on whether you hit a floor or a wall. This affects how you can move through them (e.g. normal swimming vs wall climbing) and makes it easier to align them with the surface they're on, but they're otherwise the same. (Use parenting)
  • An "ink control" object is put on a layer above all terrain.
  • The ink control object has a screen-sized surface.
  • The ink control object draws all the ink to this surface using "splatter" sprites separate from their collision mask sprites, then uses alpha masking: first clear the alpha channel to 0, then draw all terrain objects to the surface while still only having the alpha channel be editable. So basically this turns the splatters visible only where there's terrain, so things like slopes and mesh walls will be affected by paint only where they have pixels.
  • Finally of course it needs to draw this surface to the screen.


It's a single player paltformer, i just need the bullets to realize when they hit a wall or floor, then i could use it to code an "upward" movement.

Thanks for the advice, I have an idea now.


YaI I have no idea what you mean, and was wondering if we could DM (if thats even here im that new) eachother and see if we could work something out?
I suggest you check out some "Blood Splatter Surfaces" tutorials, there's plenty around. Same basic principles will apply.
I also remember watching a nice GDC talk about Splatoon, was very insightful, you might want to try to find that out, some nice tips for colors and stuff was in there