In the last few years many new structured overlay network protocols for peer-to-peer systems have appeared. Following that, the need to test and develop the protocols in a controlled environment arose and many different simulators were written, often only supporting a single protocol and designed with a specific simulation task in mind. We introduce a general component based framework in Java for writing peer-to-peer simulators, complete with methods for exporting and visualizing the simulation data. The simulation framework is built using the Java in Simulation Time (JiST) framework, a parallel discrete-event simulation package for Java, allowing close to pseudo code implementation of the protocols using simulated remote procedure calls, while still providing flexibility enough for down to packet level simulation of the protocols.