Of course you can use particles without functions. You can either pass NULL to effect or use a function in effect to initialize the particles and the manually set p->event to NULL.

Why "for some reason"? Is there anything unclear?


Always learn from history, to be sure you make the same mistakes again...