Point-cached particles (those using simulations) would not update at all outside of first frame, due to PSYS_RECALC_RESET flag being ingnored in `system_step()`... For some mysterious reasons, udate is still non-fully functional outside of startframe (e.g. changing face distribution between random and jittered), but at least when choosing 'Vertices' you get particles from verts and not faces!