-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Runtime Level Editing #51
Comments
There have been some mentions about this in #15 , but basically, it would be a pretty decent undertaking. The import code is tightly tied with editor code, and created without runtime generation regard in mind. Most of the importer code can work outside of the editor space. However, the largest changes would need to be in where assets are being supplied for the project/level builder to get assets like tiles/textures/sprites from. I'll call those, inputs. The builders are given various inputs supplied through the editor, to create the GameObject product. Some of the inputs include:
When making this feature, I would want to respect the current code as much as I can, so I'd want to have some kind of interim asset provider. Something that supplies all of these inputs but in a different way that can be interfaced by the editor, but also in runtime, whether fully through code or some kind of collection of ScriptableObjects with pieces of data that the level builders simply use without a hard-dependency on a ScriptedImporter of any kind. In terms of players being able to edit levels and export ldtk files by serializing back to json, It is untreaded territory for me. I'm primarily in an environment where I deserialize the json file and tell the AssetImporter what to do with it. Rules are its own feature, but also feel attainable in the current editor-strict environment, and I'd want to create support for runtime rules first before tackling runtime building. I'm currently focusing my free time on personal projects, but if I can have a way to make this an easy and seamless process without groundbreaking changes, then I'm all for it! I would say; If you need the feature pretty soon, then feel free to browse the codebase of this repo and see if you can cobble together something that works for your own project's specific needs. Let me know what you think 🙂 |
@Cammin Thank you SO much for the in depth answer, that really helps to understand what your thoughts/plans/ideas are for this. I will definitely dive in and see which way we go - thanks!! |
Hey @Cammin!
We absolutely love your work and we currently try to implement runtime level editing for easy/quick iteration and maybe later on for our players. How hard would it be to get this to work? Or back to work (I read that it was considered once!)
It would definitely require the rules to resolve at runtime, but what else would be required to make it all work completely?
Kind regards,
Max
The text was updated successfully, but these errors were encountered: