private void TranspileWorldSave()
        {
            var outputWorldFileName = Path.Combine(options.OutputPath, "save", "sphereworld.scp");
            var outputDataFileName  = Path.Combine(options.OutputPath, "save", "spheredata.scp");

            Console.WriteLine($"Transpiling to {outputWorldFileName}");
            Console.WriteLine($"Transpiling to {outputDataFileName}");
            var transpiler = new WorldTranspiler(compilation.DefinitionRepository);

            WorldTranspilationResult result = transpiler.Transpile(compilation.CompiledWorldSaveFile.ParsedTree);

            File.WriteAllText(outputWorldFileName, result.World);
            File.WriteAllText(outputDataFileName, result.Data);
        }
        private void TranspileWorldFile(string worldFileName, TranspileSaveOptions options)
        {
            Console.WriteLine($"Parsing {worldFileName}");
            string src = File.ReadAllText(worldFileName);

            compilation.AddWorldSaveFile(worldFileName, src);
            CheckCompilationErrors();

            var outputWorldFileName = GetOutputFileName(Path.GetFileName(worldFileName), options);
            var outputDataFileName  = GetOutputFileName("spheredata.scp", options);

            Console.WriteLine($"Transpiling to {outputWorldFileName}");
            Console.WriteLine($"Transpiling to {outputDataFileName}");
            var transpiler = new WorldTranspiler(compilation.DefinitionRepository);

            WorldTranspilationResult result = transpiler.Transpile(compilation.CompiledWorldSaveFile.ParsedTree);

            File.WriteAllText(outputWorldFileName, result.World);
            File.WriteAllText(outputDataFileName, result.Data);
        }