Was soll die Format Zeile denn auch bitte ausgeben?
Du sagst ihm er soll 3 mal einen Integer platz reservieren, (3x %d) allerdings übergibst du hinten einfach nur 3 mal die Funktion das er irgendetwas in eine Datei schreiben soll, die Funktion hat als Rückgabewert true oder false, das macht alles garkeinen Sinn
Wenn du einfach nur die Koordinaten haben willst, dann nimm sie doch auch, so wie vorher?
format(str1,sizeof(str1),"AddFire(%f,%f,%f);",sX, sY, sZ);
Was du allerdings mit dem string danach vorhast ist mir allerdings schleierhaft.
//Edit %f und nicht %d für Float Werte...