A self-stabilizing distributed system can initially start at any state and regain a legal state in a finite time without any external intervention. Self-stabilizing systems can automatically recover from faults and they are popular fault tolerant systems. Simulating self-stabilizing systems is a vital task in case of fault-tolerant distributed networks where node and edge updates can be frequent. A discrete-event simulation is a method of simulating the behavior and performance of an algorithm running on a distributed system. To the best of our knowledge, there are few simulators for self-stabilizing distributed algorithms in literature where these simulators are generally outdated and hard to use. In this paper we propose a novel distributed self-stabilizing discrete-event simulator (SELFSIM). SELFSIM is written in C# programming language on.NET Framework and supports up-to-date principles of software development techniques such as separation of concerns. We give the design and implementation of the proposed simulator and compare SELFSIM with its counterparts by considering various parameters such as supported node count (scalability), topological features, daemon (scheduler) types, etc., and show the superiority of our simulator.