Roti john looks healthy because there is egg and meat in it, but bro the bread is the problem. That long bun gets pressed onto a griddle slicked with oil, face down, so it drinks up the fat like a sponge. By the time it is golden and crispy it has soaked in way more oil than you think.
Then they finish it with a zigzag of mayo and chilli sauce on top, which is another 100 plus calories of pure topping. One whole roti john is a proper meal, around 650, and the loaded mutton ones the hawkers do can hit 850. That is not a snack lah, that is dinner.