A sprite is only the simplest type of particle. It's also possible for particles to have more complicated geometry. There's no reason in principle a particle can't have an arbitrarily complicated mesh, aside from performance constraints. A particle can also have procedural geometry, which can be animated over time just like the rest of a particle's attributes.
It's also possible for multiple particles to be attached together for either simulation or rendering purposes. E.g. for simulation you could put springs between particles, and for rendering, instead of generating a mesh for each particle you could have each particle just contribute a set of vertices, with triangles stretching between multiple particles. A 1D string of particles, each attached to the next, is commonly used in games for rendering things like sparks and trails. Another example is a cloth simulation - basically a 2D grid of particles with spring constraints between them, where the particles also serve as vertices for a triangle mesh.
It looks to me like this is what you have in those videos. I would guess that each "snake" is actually a 1D particle string, where each particle has a ring of vertices, and triangles are stretched from one ring to the next to create a tube, which is what you see rendered. Each particle independently controls its position, orientation and radius according to its rules (which may well include some type of springs between adjacent particles, to keep the whole snake together).