- Add half of the water in to a pot and boil. Put the pork bones in to the pot and continue to boil for a few minutes before draining the water and washing the bones to remove any impurities.
- Rinse the pot before returning the bones back in and adding the remaining water in to the pork bones pot. Bring the broth back to a boil before reducing to a simmer and cooking for an hour or longer.
- Peel the shells off from the shrimps and separate the meat from the shells. Set the meat aside and put the shells in to the broth. When the broth begins to turn red from the prawn shells, remove them along with the pork bones.
- Add in the remaining broth ingredients except for the tomatoes and stir well till all the soluble ingredients have dissolved. Bring the broth back up to a boil before finally adding in the tomatoes.
- Put the saved meat from the peeled prawns as well as all of the meatball ingredients except for the crab meat into a food processor and blend them together until they have formed a paste.
- When the paste has been made, add in the crab meat and hand mix the meat in to the paste until it is relatively evenly mixed in.
- Cook the meatballs in the soup broth until they begin to float on the surface of the broth, which means that they have cooked through. Add in the fried tofu at this stage too.
- In a bowl, add in the noodles and add any of the toppings you want. Pour the broth over the noodles and place a few pieces of the tomatoes and meatballs. Finish with a lime wedge and serve!