diff options
author | Kae <80987908+Novaenia@users.noreply.github.com> | 2023-06-27 20:23:44 +1000 |
---|---|---|
committer | Kae <80987908+Novaenia@users.noreply.github.com> | 2023-06-27 20:23:44 +1000 |
commit | 332983c97b7a729c4dc5f19aa9ee4a22c420f7d8 (patch) | |
tree | fd9c441b796b522bdd5c7f8fbd32f51b8eff2a28 /source/utility | |
parent | 14b9689b6d4f4ad5276c88130dc6e449bedc0709 (diff) |
The Formatting String Catastrophe
Diffstat (limited to 'source/utility')
-rw-r--r-- | source/utility/asset_packer.cpp | 18 | ||||
-rw-r--r-- | source/utility/asset_unpacker.cpp | 10 | ||||
-rw-r--r-- | source/utility/dump_versioned_json.cpp | 4 | ||||
-rw-r--r-- | source/utility/dungeon_generation_benchmark.cpp | 14 | ||||
-rw-r--r-- | source/utility/fix_embedded_tilesets.cpp | 6 | ||||
-rw-r--r-- | source/utility/game_repl.cpp | 4 | ||||
-rw-r--r-- | source/utility/generation_benchmark.cpp | 10 | ||||
-rw-r--r-- | source/utility/make_versioned_json.cpp | 4 | ||||
-rw-r--r-- | source/utility/map_grep.cpp | 6 | ||||
-rw-r--r-- | source/utility/planet_mapgen.cpp | 6 | ||||
-rw-r--r-- | source/utility/render_terrain_selector.cpp | 4 | ||||
-rw-r--r-- | source/utility/tileset_updater.cpp | 18 | ||||
-rw-r--r-- | source/utility/update_tilesets.cpp | 6 | ||||
-rw-r--r-- | source/utility/word_count.cpp | 8 | ||||
-rw-r--r-- | source/utility/world_benchmark.cpp | 10 |
15 files changed, 64 insertions, 64 deletions
diff --git a/source/utility/asset_packer.cpp b/source/utility/asset_packer.cpp index 7777264..7caf0aa 100644 --- a/source/utility/asset_packer.cpp +++ b/source/utility/asset_packer.cpp @@ -31,8 +31,8 @@ int main(int argc, char** argv) { try { configFileContents = File::readFileString(configFile); } catch (IOException const& e) { - cerrf("Could not open specified configFile: %s\n", configFile); - cerrf("For the following reason: %s\n", outputException(e, false)); + cerrf("Could not open specified configFile: {}\n", configFile); + cerrf("For the following reason: {}\n", outputException(e, false)); return 1; } @@ -40,8 +40,8 @@ int main(int argc, char** argv) { try { configFileJson = Json::parseJson(configFileContents); } catch (JsonParsingException const& e) { - cerrf("Could not parse the specified configFile: %s\n", configFile); - cerrf("For the following reason: %s\n", outputException(e, false)); + cerrf("Could not parse the specified configFile: {}\n", configFile); + cerrf("For the following reason: {}\n", outputException(e, false)); return 1; } @@ -51,8 +51,8 @@ int main(int argc, char** argv) { ignoreFiles.appendAll(jsonToStringList(configFileJson.get("serverIgnore", JsonArray()))); extensionOrdering = jsonToStringList(configFileJson.get("extensionOrdering", JsonArray())); } catch (JsonException const& e) { - cerrf("Could not read the asset_packer config file %s\n", configFile); - cerrf("%s\n", outputException(e, false)); + cerrf("Could not read the asset_packer config file {}\n", configFile); + cerrf("{}\n", outputException(e, false)); return 1; } } @@ -62,18 +62,18 @@ int main(int argc, char** argv) { function<void(size_t, size_t, String, String, bool)> BuildProgressCallback; auto progressCallback = [verbose](size_t, size_t, String filePath, String assetPath) { if (verbose) - coutf("Adding file '%s' to the target pak as '%s'\n", filePath, assetPath); + coutf("Adding file '{}' to the target pak as '{}'\n", filePath, assetPath); }; outputFilename = File::relativeTo(File::fullPath(File::dirName(outputFilename)), File::baseName(outputFilename)); DirectoryAssetSource directorySource(assetsFolderPath, ignoreFiles); PackedAssetSource::build(directorySource, outputFilename, extensionOrdering, progressCallback); - coutf("Output packed assets to %s in %ss\n", outputFilename, Time::monotonicTime() - startTime); + coutf("Output packed assets to {} in {}s\n", outputFilename, Time::monotonicTime() - startTime); return 0; } catch (std::exception const& e) { - cerrf("Exception caught: %s\n", outputException(e, true)); + cerrf("Exception caught: {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/asset_unpacker.cpp b/source/utility/asset_unpacker.cpp index d4d4f6d..487d0b7 100644 --- a/source/utility/asset_unpacker.cpp +++ b/source/utility/asset_unpacker.cpp @@ -10,7 +10,7 @@ int main(int argc, char** argv) { double startTime = Time::monotonicTime(); if (argc != 3) { - cerrf("Usage: %s <assets pak path> <target output directory>\n", argv[0]); + cerrf("Usage: {} <assets pak path> <target output directory>\n", argv[0]); cerrf("If the target output directory does not exist it will be created\n"); return 1; } @@ -35,8 +35,8 @@ int main(int argc, char** argv) { File::makeDirectoryRecursive(relativeDir); File::writeFile(fileData, relativePath); } catch (AssetSourceException const& e) { - cerrf("Could not open file: %s\n", file); - cerrf("Reason: %s\n", outputException(e, false)); + cerrf("Could not open file: {}\n", file); + cerrf("Reason: {}\n", outputException(e, false)); } } @@ -44,10 +44,10 @@ int main(int argc, char** argv) { if (!metadata.empty()) File::writeFile(Json(move(metadata)).printJson(2), "_metadata"); - coutf("Unpacked assets to %s in %ss\n", outputFolderPath, Time::monotonicTime() - startTime); + coutf("Unpacked assets to {} in {}s\n", outputFolderPath, Time::monotonicTime() - startTime); return 0; } catch (std::exception const& e) { - cerrf("Exception caught: %s\n", outputException(e, true)); + cerrf("Exception caught: {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/dump_versioned_json.cpp b/source/utility/dump_versioned_json.cpp index 2672548..24ef482 100644 --- a/source/utility/dump_versioned_json.cpp +++ b/source/utility/dump_versioned_json.cpp @@ -6,7 +6,7 @@ using namespace Star; int main(int argc, char** argv) { try { if (argc != 3) { - coutf("Usage, %s <versioned_json_binary> <versioned_json_json>\n", argv[0]); + coutf("Usage, {} <versioned_json_binary> <versioned_json_json>\n", argv[0]); return -1; } @@ -14,7 +14,7 @@ int main(int argc, char** argv) { File::writeFile(versionedJson.toJson().printJson(2), argv[2]); return 0; } catch (std::exception const& e) { - coutf("Error! Caught exception %s\n", outputException(e, true)); + coutf("Error! Caught exception {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/dungeon_generation_benchmark.cpp b/source/utility/dungeon_generation_benchmark.cpp index a67cb02..70cbe9e 100644 --- a/source/utility/dungeon_generation_benchmark.cpp +++ b/source/utility/dungeon_generation_benchmark.cpp @@ -12,9 +12,9 @@ int main(int argc, char** argv) { String dungeonWorldName = "outpost"; RootLoader rootLoader({{}, {}, {}, LogLevel::Error, false, {}}); - rootLoader.addParameter("dungeonWorld", "dungeonWorld", OptionParser::Optional, strf("dungeonWorld to test, default is %s", dungeonWorldName)); - rootLoader.addParameter("repetitions", "repetitions", OptionParser::Optional, strf("number of times to generate, default %s", repetitions)); - rootLoader.addParameter("reportevery", "report repetitions", OptionParser::Optional, strf("number of repetitions before each progress report, default %s", reportEvery)); + rootLoader.addParameter("dungeonWorld", "dungeonWorld", OptionParser::Optional, strf("dungeonWorld to test, default is {}", dungeonWorldName)); + rootLoader.addParameter("repetitions", "repetitions", OptionParser::Optional, strf("number of times to generate, default {}", repetitions)); + rootLoader.addParameter("reportevery", "report repetitions", OptionParser::Optional, strf("number of repetitions before each progress report, default {}", reportEvery)); RootUPtr root; OptionParser::Options options; @@ -36,13 +36,13 @@ int main(int argc, char** argv) { double start = Time::monotonicTime(); double lastReport = Time::monotonicTime(); - coutf("testing %s generations of dungeonWorld %s\n", repetitions, dungeonWorldName); + coutf("testing {} generations of dungeonWorld {}\n", repetitions, dungeonWorldName); for (unsigned i = 0; i < repetitions; ++i) { if (i > 0 && i % reportEvery == 0) { float gps = reportEvery / (Time::monotonicTime() - lastReport); lastReport = Time::monotonicTime(); - coutf("[%s] %ss | Generations Per Second: %s\n", i, Time::monotonicTime() - start, gps); + coutf("[{}] {}s | Generations Per Second: {}\n", i, Time::monotonicTime() - start, gps); } VisitableWorldParametersPtr worldParameters = generateFloatingDungeonWorldParameters(dungeonWorldName); @@ -50,12 +50,12 @@ int main(int argc, char** argv) { WorldServer worldServer(move(worldTemplate), File::ephemeralFile()); } - coutf("Finished %s generations of dungeonWorld %s in %s seconds", repetitions, dungeonWorldName, Time::monotonicTime() - start); + coutf("Finished {} generations of dungeonWorld {} in {} seconds", repetitions, dungeonWorldName, Time::monotonicTime() - start); return 0; } catch (std::exception const& e) { - cerrf("Exception caught: %s\n", outputException(e, true)); + cerrf("Exception caught: {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/fix_embedded_tilesets.cpp b/source/utility/fix_embedded_tilesets.cpp index 262426d..8f49db7 100644 --- a/source/utility/fix_embedded_tilesets.cpp +++ b/source/utility/fix_embedded_tilesets.cpp @@ -38,7 +38,7 @@ Maybe<Json> repairTileset(Json tileset, String const& mapPath, String const& til String tilesetName = tileset.getString("name"); String tilesetFileName = File::relativeTo(tilesetPath, tilesetName + ".json"); if (!File::exists(tilesetFileName)) - throw StarException::format("Tileset %s does not exist. Can't repair %s", tilesetFileName, mapPath); + throw StarException::format("Tileset {} does not exist. Can't repair {}", tilesetFileName, mapPath); return {JsonObject{{"firstgid", firstGid}, {"source", createRelativePath(mapPath, tilesetFileName)}}}; } @@ -71,7 +71,7 @@ void fixEmbeddedTilesets(String const& searchRoot, String const& tilesetPath) { if (json.contains("tilesets")) { if (Maybe<Json> fixed = repair(json, path, tilesetPath)) { File::writeFile(fixed->repr(2, true), path); - Logger::info("Repaired %s", path); + Logger::info("Repaired {}", path); } } }); @@ -95,7 +95,7 @@ int main(int argc, char* argv[]) { return 0; } catch (std::exception const& e) { - cerrf("exception caught: %s\n", outputException(e, true)); + cerrf("exception caught: {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/game_repl.cpp b/source/utility/game_repl.cpp index e52fb07..3ffc300 100644 --- a/source/utility/game_repl.cpp +++ b/source/utility/game_repl.cpp @@ -40,12 +40,12 @@ int main(int argc, char** argv) { try { auto result = context.eval<LuaVariadic<LuaValue>>(code); for (auto r : result) - coutf("%s\n", r); + coutf("{}\n", r); continuation = false; } catch (LuaIncompleteStatementException const&) { continuation = true; } catch (std::exception const& e) { - coutf("Error: %s\n", outputException(e, false)); + coutf("Error: {}\n", outputException(e, false)); continuation = false; } } diff --git a/source/utility/generation_benchmark.cpp b/source/utility/generation_benchmark.cpp index f3f2f97..8e1631c 100644 --- a/source/utility/generation_benchmark.cpp +++ b/source/utility/generation_benchmark.cpp @@ -44,7 +44,7 @@ int main(int argc, char** argv) { if (auto reportEveryOption = options.parameters.maybe("reportevery")) reportEvery = lexicalCast<unsigned>(reportEveryOption->first()); - coutf("testing generation on coordinate %s\n", coordinate); + coutf("testing generation on coordinate {}\n", coordinate); auto worldParameters = celestialDatabase.parameters(coordinate).take(); auto worldTemplate = make_shared<WorldTemplate>(worldParameters.visitableParameters(), SkyParameters(), worldParameters.seed()); @@ -57,25 +57,25 @@ int main(int argc, char** argv) { double start = Time::monotonicTime(); double lastReport = Time::monotonicTime(); - coutf("Starting world generation for %s regions\n", regionsToGenerate); + coutf("Starting world generation for {} regions\n", regionsToGenerate); for (unsigned i = 0; i < regionsToGenerate; ++i) { if (i != 0 && i % reportEvery == 0) { float gps = reportEvery / (Time::monotonicTime() - lastReport); lastReport = Time::monotonicTime(); - coutf("[%s] %ss | Generatons Per Second: %s\n", i, Time::monotonicTime() - start, gps); + coutf("[{}] {}s | Generatons Per Second: {}\n", i, Time::monotonicTime() - start, gps); } RectI region = RectI::withCenter(Vec2I(rand.randInt(0, worldSize[0]), rand.randInt(0, worldSize[1])), Vec2I::filled(regionSize)); worldServer.generateRegion(region); } - coutf("Finished generating %s regions with size %sx%s in world '%s' in %s seconds", regionsToGenerate, regionSize, regionSize, coordinate, Time::monotonicTime() - start); + coutf("Finished generating {} regions with size {}x{} in world '{}' in {} seconds", regionsToGenerate, regionSize, regionSize, coordinate, Time::monotonicTime() - start); return 0; } catch (std::exception const& e) { - cerrf("Exception caught: %s\n", outputException(e, true)); + cerrf("Exception caught: {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/make_versioned_json.cpp b/source/utility/make_versioned_json.cpp index 560f532..478e7f6 100644 --- a/source/utility/make_versioned_json.cpp +++ b/source/utility/make_versioned_json.cpp @@ -6,7 +6,7 @@ using namespace Star; int main(int argc, char** argv) { try { if (argc != 3) { - coutf("Usage, %s <versioned_json_json> <versioned_json_binary>\n", argv[0]); + coutf("Usage, {} <versioned_json_json> <versioned_json_binary>\n", argv[0]); return -1; } @@ -14,7 +14,7 @@ int main(int argc, char** argv) { VersionedJson::writeFile(versionedJson, argv[2]); return 0; } catch (std::exception const& e) { - coutf("Error! Caught exception %s\n", outputException(e, true)); + coutf("Error! Caught exception {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/map_grep.cpp b/source/utility/map_grep.cpp index 03083e0..9f8bb00 100644 --- a/source/utility/map_grep.cpp +++ b/source/utility/map_grep.cpp @@ -57,12 +57,12 @@ void grepMap(SearchParameters const& search, String file) { for (auto tileLayer : map->tileLayers()) grepTileLayer(search, map, tileLayer, [&](String const& tileName, Vec2I const& pos) { - coutf("%s: %s: %s @ %s\n", file, tileLayer->name(), tileName, pos); + coutf("{}: {}: {} @ {}\n", file, tileLayer->name(), tileName, pos); }); for (auto objectGroup : map->objectGroups()) grepObjectGroup(search, objectGroup, [&](String const& tileName, Vec2I const& pos) { - coutf("%s: %s: %s @ %s\n", file, objectGroup->name(), tileName, pos); + coutf("{}: {}: {} @ {}\n", file, objectGroup->name(), tileName, pos); }); } @@ -110,7 +110,7 @@ int main(int argc, char* argv[]) { return 0; } catch (std::exception const& e) { - cerrf("exception caught: %s\n", outputException(e, true)); + cerrf("exception caught: {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/planet_mapgen.cpp b/source/utility/planet_mapgen.cpp index 7bc9f8d..327c7a8 100644 --- a/source/utility/planet_mapgen.cpp +++ b/source/utility/planet_mapgen.cpp @@ -38,7 +38,7 @@ int main(int argc, char** argv) { if (!coordinate) throw StarException("Could not find world to generate, try again"); - coutf("Generating world with coordinate %s\n", *coordinate); + coutf("Generating world with coordinate {}\n", *coordinate); WorldTemplate worldTemplate(*coordinate, celestialDatabase); auto size = worldTemplate.size(); @@ -51,7 +51,7 @@ int main(int argc, char** argv) { size[0] = 1000; } - coutf("Generating %s size image for world of type '%s'\n", size, worldTemplate.worldParameters()->typeName); + coutf("Generating {} size image for world of type '{}'\n", size, worldTemplate.worldParameters()->typeName); auto outputImage = make_shared<Image>(size, PixelFormat::RGB24); Color groundColor = Color::rgb(255, 0, 0); @@ -111,7 +111,7 @@ int main(int argc, char** argv) { outputImage->writePng(File::open("mapgen.png", IOMode::Write)); return 0; } catch (std::exception const& e) { - cerrf("exception caught: %s\n", outputException(e, true)); + cerrf("exception caught: {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/render_terrain_selector.cpp b/source/utility/render_terrain_selector.cpp index a9e508a..570f6c0 100644 --- a/source/utility/render_terrain_selector.cpp +++ b/source/utility/render_terrain_selector.cpp @@ -67,7 +67,7 @@ int main(int argc, char** argv) { } } - coutf("Generating %s size image for selector with scale %s\n", size, scale); + coutf("Generating {} size image for selector with scale {}\n", size, scale); auto outputImage = make_shared<Image>(size, PixelFormat::RGB24); for (size_t x = 0; x < size[0]; ++x) { @@ -90,7 +90,7 @@ int main(int argc, char** argv) { outputImage->writePng(File::open("terrain.png", IOMode::Write)); return 0; } catch (std::exception const& e) { - cerrf("exception caught: %s\n", outputException(e, true)); + cerrf("exception caught: {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/tileset_updater.cpp b/source/utility/tileset_updater.cpp index e94ac53..9c3e252 100644 --- a/source/utility/tileset_updater.cpp +++ b/source/utility/tileset_updater.cpp @@ -72,7 +72,7 @@ void Tileset::exportTileset() const { String exportDir = tilesetExportDir(sourcePath, sourceName); String tilesetPath = unixFileJoin(exportDir, m_name + ".json"); File::makeDirectoryRecursive(File::dirName(tilesetPath)); - Logger::info("Updating tileset at %s", tilesetPath); + Logger::info("Updating tileset at {}", tilesetPath); exportTilesetImages(exportDir); @@ -156,7 +156,7 @@ void Tileset::exportTilesetImages(String const& exportDir) const { String imageDir = unixFileJoin(imageDirName(exportDir), tile->database); File::makeDirectoryRecursive(imageDir); String imageName = unixFileJoin(imageDir, tile->name + ".png"); - Logger::info("Updating image %s", imageName); + Logger::info("Updating image {}", imageName); tile->image->writePng(File::open(imageName, IOMode::Write)); } } @@ -166,7 +166,7 @@ Json Tileset::getTilesetJson(String const& tilesetPath) const { return Json::parseJson(File::readFileString(tilesetPath)); } else { Logger::warn( - "Tileset %s wasn't already present. Creating it from scratch. Any maps already using this tileset may be " + "Tileset {} wasn't already present. Creating it from scratch. Any maps already using this tileset may be " "broken.", tilesetPath); return JsonObject{{"margin", 0}, @@ -208,7 +208,7 @@ StringSet Tileset::updateTiles(JsonObject& tileProperties, if (existingTiles.contains(tile->name)) { id = existingTiles.get(tile->name); } else { - coutf("Adding '%s' to %s\n", tile->name, tilesetPath); + coutf("Adding '{}' to {}\n", tile->name, tilesetPath); id = nextId++; } @@ -235,7 +235,7 @@ void Tileset::invalidateTiles(StringSet const& invalidTiles, tileImages[toString(id)] = tileImageReference(tile->name, tile->database); } else { if (!tileProperties[toString(id)].contains("invalid")) - coutf("Removing '%s' from %s\n", tileName, tilesetPath); + coutf("Removing '{}' from {}\n", tileName, tilesetPath); tileProperties[toString(id)] = JsonObject{{"//name", tileName}, {"invalid", "true"}}; tileImages[toString(id)] = imageFileReference(InvalidTileImage); } @@ -254,7 +254,7 @@ void TilesetUpdater::defineAssetSource(String const& source) { String tilesetDir = tilesetExportDir(sourcePath, sourceName); String imageDir = imageExportDirName(tilesetDir, sourceName); - Logger::info("Scanning %s for images...", imageDir); + Logger::info("Scanning {} for images...", imageDir); if (!File::isDirectory(imageDir)) return; @@ -262,7 +262,7 @@ void TilesetUpdater::defineAssetSource(String const& source) { if (entry.second) { String databaseName = entry.first; String databasePath = unixFileJoin(imageDir, databaseName); - Logger::info("Scanning database %s...", databaseName); + Logger::info("Scanning database {}...", databaseName); for (pair<String, bool> image : File::dirList(databasePath)) { starAssert(!image.second); starAssert(image.first.endsWith(".png")); @@ -282,7 +282,7 @@ void TilesetUpdater::exportTilesets() { for (auto const& tilesets : m_tilesets) { auto parsedAssetSource = parseAssetSource(tilesets.first); if (!parsedAssetSource) { - Logger::info("Not updating tilesets in %s because it is packed", tilesets.first); + Logger::info("Not updating tilesets in {} because it is packed", tilesets.first); continue; } String sourceName; @@ -302,7 +302,7 @@ void TilesetUpdater::exportTilesets() { for (String tileName : unusedImages) { String tileImagePath = unixFileJoin(databaseImagePath, tileName + ".png"); starAssert(File::isFile(tileImagePath)); - coutf("Removing unused tile image tiled/%s/%s/%s.png\n", sourceName, database->name(), tileName); + coutf("Removing unused tile image tiled/{}/{}/{}.png\n", sourceName, database->name(), tileName); File::remove(tileImagePath); } m_preexistingImages[sourceName][database->name()] = database->tileNames(); diff --git a/source/utility/update_tilesets.cpp b/source/utility/update_tilesets.cpp index e5b850b..3d689ba 100644 --- a/source/utility/update_tilesets.cpp +++ b/source/utility/update_tilesets.cpp @@ -179,7 +179,7 @@ void scanObjects(TilesetUpdater& updater) { for (String const& objectName : objects->allObjects()) { auto orientations = objects->getOrientations(objectName); if (orientations.size() < 1) { - Logger::warn("Object %s has no orientations and will not be exported", objectName); + Logger::warn("Object {} has no orientations and will not be exported", objectName); continue; } @@ -244,7 +244,7 @@ int main(int argc, char** argv) { TilesetUpdater updater; for (String source : root->assets()->assetSources()) { - Logger::info("Assets source: \"%s\"", source); + Logger::info("Assets source: \"{}\"", source); updater.defineAssetSource(source); } @@ -256,7 +256,7 @@ int main(int argc, char** argv) { return 0; } catch (std::exception const& e) { - cerrf("exception caught: %s\n", outputException(e, true)); + cerrf("exception caught: {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/word_count.cpp b/source/utility/word_count.cpp index 683a3a9..d233b8c 100644 --- a/source/utility/word_count.cpp +++ b/source/utility/word_count.cpp @@ -31,7 +31,7 @@ int main(int argc, char** argv) { if (json.isNull()) continue; - String countKey = wordCountKey ? *wordCountKey : strf(".%s files", type); + String countKey = wordCountKey ? *wordCountKey : strf(".{} files", type); wordCounts[countKey] += countFunction(json); } }; @@ -178,14 +178,14 @@ int main(int argc, char** argv) { int totalWordCount = 0; for (auto countPair : wordCounts) { - coutf("%d words in %s\n", countPair.second, countPair.first); + coutf("{} words in {}\n", countPair.second, countPair.first); totalWordCount += countPair.second; } - coutf("approximately %s words total\n", totalWordCount); + coutf("approximately {} words total\n", totalWordCount); return 0; } catch (std::exception const& e) { - cerrf("exception caught: %s\n", outputException(e, true)); + cerrf("exception caught: {}\n", outputException(e, true)); return 1; } } diff --git a/source/utility/world_benchmark.cpp b/source/utility/world_benchmark.cpp index d9efe45..40476a1 100644 --- a/source/utility/world_benchmark.cpp +++ b/source/utility/world_benchmark.cpp @@ -63,7 +63,7 @@ int main(int argc, char** argv) { for (uint64_t i = 0; i < times; ++i) { WorldServer worldServer(worldTemplate, File::ephemeralFile()); - coutf("Starting world simulation for %s steps\n", steps); + coutf("Starting world simulation for {} steps\n", steps); double start = Time::monotonicTime(); double lastReport = Time::monotonicTime(); uint64_t entityCount = 0; @@ -79,23 +79,23 @@ int main(int argc, char** argv) { if (reportEvery != 0 && j % reportEvery == 0) { float fps = reportEvery / (Time::monotonicTime() - lastReport); lastReport = Time::monotonicTime(); - coutf("[%s] %ss | FPS: %s | Entities: %s\n", j, Time::monotonicTime() - start, fps, entityCount); + coutf("[{}] {}s | FPS: {} | Entities: {}\n", j, Time::monotonicTime() - start, fps, entityCount); } worldServer.update(); } double totalTime = Time::monotonicTime() - start; - coutf("Finished run of running dungeon world '%s' with seed %s for %s steps in %s seconds, average FPS: %s\n", + coutf("Finished run of running dungeon world '{}' with seed {} for {} steps in {} seconds, average FPS: {}\n", dungeon, worldSeed, steps, totalTime, steps / totalTime); sumTime += totalTime; } if (times != 1) { - coutf("Average of all runs - time: %s, FPS: %s\n", sumTime / times, steps / (sumTime / times)); + coutf("Average of all runs - time: {}, FPS: {}\n", sumTime / times, steps / (sumTime / times)); } return 0; } catch (std::exception const& e) { - cerrf("Exception caught: %s\n", outputException(e, true)); + cerrf("Exception caught: {}\n", outputException(e, true)); return 1; } } |