Preheat the oven to 177°C (350°F), with the rack placed in the lower third of the oven. Line a 20-cm (8-inch) square baking pan with parchment paper, leave a little overhang for easier handling later on. Butter the pan with butter and set aside.
In a small bowl, stir together flour, baking powder and salt. Set aside. In another large mixing bowl beat the eggs just until foamy. Add sugar and vanilla and whisk until incorporated. Mix in the butter, then the flour and stir just until incorporated. Lastly fold in the walnuts.
The batter will be thick and sticky. Transfer batter to prepared pan, distribute it over the pan in an even layer.
Bake for 20-25 minutes, until golden brown and the cake slightly springs back when pressed with the back of a spoon.
As the cake bakes, melt the chocolate. Transfer chocolate to a heatproof bowl, placed over a saucepan of simmering water. When most of the chocolate is melted, remove bowl from heat and let chocolate melt completely.
Take cake out of the oven. Immediately top with sliced marshmallows (cut side down, save 2 for later), leaving some space between them.
Fill the voids between marshmallows with walnuts. Drizzle chocolate all over, try to get most of it in the spaces and only some over the marshmallows. Take the remaining 2 marshmallows and rip into smaller parts. Stick these in some of the spaces – in those where you have the most chocolate.
Your oven should be turned off but still hot. Place baking pan back in the oven for 2 minutes. The marshmallows should soften (you can test this with your fingers), but not melt.
Remove from oven and let cool completely before cutting. Ideally leave the rocky roads in the pan, let cool to room temperature, cover with aluminium foil and chill in the fridge overnight.
When ready take pan out of the fridge. Grab the parchment paper and lift the whole bar. Transfer to a cutting board. Slice into 9 bars, wash knife under warm water between each slice. Store rocky roads in the fridge, covered. (They last for at least 3 days. We weren’t able to keep them for longer.)