Frustrated by the lack of answers to this issue, I resolved it myself using similar ideas from other builds.
I started using the following github project: https://github.com/bbc/example-gatling-sbt
In the build.sbt for this project I added the following line:
javaOptions in Gatling ++= Seq("-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=XXXX")
where XXXX is your port for a remote debug instance from Intellij to connect to.
Note that I start the server in suspend mode as you cannot catch it before it invokes the simulation as a future.
In an intellij terminal or an external console, launch your test using the sbt invocation:
sbt clean gatling:testOnly myClass…
In Intellij, launch a remote run configuration with port pointing to XXXX above.
Set your breakpoints appropriately in your Simulation class and you can debug your test: