{"id":13661987,"url":"https://github.com/joshcamas/mlf-unity","last_synced_at":"2026-05-05T11:31:24.715Z","repository":{"id":116159106,"uuid":"171696172","full_name":"joshcamas/mlf-unity","owner":"joshcamas","description":"The Multi Language Format interpretor for Unity3D","archived":false,"fork":false,"pushed_at":"2019-02-20T15:37:41.000Z","size":190,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-21T22:43:38.074Z","etag":null,"topics":["unity3d","yaml"],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joshcamas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-02-20T15:15:58.000Z","updated_at":"2022-05-03T20:54:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"0e52bdcb-4af3-4bb9-ad49-94257aa6d747","html_url":"https://github.com/joshcamas/mlf-unity","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/joshcamas/mlf-unity","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joshcamas%2Fmlf-unity","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joshcamas%2Fmlf-unity/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joshcamas%2Fmlf-unity/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joshcamas%2Fmlf-unity/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joshcamas","download_url":"https://codeload.github.com/joshcamas/mlf-unity/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joshcamas%2Fmlf-unity/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272117112,"owners_count":24876325,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-25T02:00:12.092Z","response_time":1107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["unity3d","yaml"],"created_at":"2024-08-02T05:01:46.143Z","updated_at":"2026-05-05T11:31:19.687Z","avatar_url":"https://github.com/joshcamas.png","language":"C#","funding_links":[],"categories":["C\\#"],"sub_categories":[],"readme":"# mlf-unity\nThe Multi Language Format interpretor for Unity3D\n\nNote: This addon requires [Odin Inspector](https://assetstore.unity.com/packages/tools/utilities/odin-inspector-and-serializer-89041)\n\n### About MLF\n\nMLF is a simple format that allows multiple human readable languages to be present in the same file. This interpretor for Unity3D imports these files, and makes them actually usable in engine.\n\nMLF is currently utilized in-house by Spellcast Studios in Unity3D for a variety of uses, such as scripting, quests and dialog. \n\n### Supported Languages\n\nThe Core of MLF does not support any languages by itself - instead, MLF Processors can be added to attach new formats and other features to the interpretor.\n\nAlongside Core, this repo also has a simple YAML formatter, which automatically deserializes the content using YamlDotNet. This is mainly intended as an example of the usage of MLF.\n\n### Examples\n\nHere is an example of how Spellcast Studios uses MLF for Dialog:\n\n```\n@yaml\n[[Dialog \"Topic\"]]\n- topic: \"Where are you from?\"\n  onselect:\n    speak_select:\n      selector: random\n      values:\n        - \"I've lived in Eastern Aruden, the Wetlands, for all my life. Someday I wish to travel the world.\"\n        - \"I've been stuck here for all my years. I wish I wasn't\"\n        - \"The Wetlands, I'm afraid. Been here all my life.\"\n    options:\n        - value: \"Well, the wetlands has it's own beauty\"\n          speak: \"I suppose so, friend. I suppose so.\"\n        - value: \"I too wish to explore the world, I hate staying in one place for too long\"\n          speak: \"I have also grown sick of being here...\"\n```\n\nIn this case, our dialog system deserializes this YAML block during runtime, and then steps through it as it desires. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoshcamas%2Fmlf-unity","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoshcamas%2Fmlf-unity","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoshcamas%2Fmlf-unity/lists"}