EXPLORE BCASIM
Watch a blockchain take shape.
Replay a recorded simulation to explore how blocks travel between nodes and form a blockchain.
Open and compare recordings
Select adjacencyMatrix.csv, block.json, and event.json from one run together. Include metrics.json for analysis and initialAdjacencyMatrix.csv for network changes. Files are read locally in your browser.
The bundled sample is recording A until you import another run.
Playback settings
Apply settings with Start simulation or Restart simulation.
Network
Block propagationDots represent nodes. Each line shows at least one directed connection. Highlighted connections show block propagation; recorded network changes add or remove links.
Blockchain
Blocks & forksEach box is a block. Arrows connect blocks to their successors; branches reveal forks.
Inspect the current timeline position
Latest event
No recording loaded.
Latest block
No recording loaded.
Compare recorded results
Metrics describe the entire run, regardless of playback position. Missing metrics are shown as “Not recorded”. Delta is B − A; percentage differences use percentage points (pp). Compare runs with the same observer and settings for a meaningful interpretation.
| Metric | Recording A | Recording B | Delta B − A |
|---|---|---|---|
| Nodes | Not recorded | Not recorded | — |
| Recorded blocks (including Genesis) | Not recorded | Not recorded | — |
| Recorded events | Not recorded | Not recorded | — |
| Last recorded time | Not recorded | Not recorded | — |
| Observer node | Not recorded | Not recorded | — |
| Tracked node | Not recorded | Not recorded | — |
| Accepted blocks | Not recorded | Not recorded | — |
| Published blocks | Not recorded | Not recorded | — |
| Stale fraction | Not recorded | Not recorded | — |
| Tracked node revenue share | Not recorded | Not recorded | — |
| Fork points | Not recorded | Not recorded | — |
| Reorganizations | Not recorded | Not recorded | — |
| Maximum reorganization depth | Not recorded | Not recorded | — |
| Mean propagation delay | Not recorded | Not recorded | — |
| Attack successes | Not recorded | Not recorded | — |
| Attack failures | Not recorded | Not recorded | — |
| Attack success rate | Not recorded | Not recorded | — |
| Transactions confirmed | Not recorded | Not recorded | — |
The tracked node is configured by metrics.attackerNode, including honest baselines. Published and accepted blocks exclude Genesis. Attack success is scenario-specific; no trials produces no success rate. See the simulation guide for metric definitions.
Build an experiment configuration
Export a PoW configuration for the BCASim command line. Honest nodes have equal weight; attack scenarios put the attacker at node 0 and split the remaining weight equally. Transaction generation is off.
Choose settings, generate, then download the configuration.
Configuration preview
Move the download into your BCASim directory, then run:
java -jar target/bcasim-0.0.1-SNAPSHOT.jar --config experiment.properties --output runs/my-experiment
Import the resulting files above. Use a new output directory for every run.
