Skip to content
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

Multiple worlds #231

Open
deepnight opened this issue Nov 18, 2020 · 2 comments
Open

Multiple worlds #231

deepnight opened this issue Nov 18, 2020 · 2 comments
Assignees
Milestone

Comments

@deepnight
Copy link
Owner

No description provided.

@deepnight deepnight added this to the 1.0.0 milestone Nov 18, 2020
@deepnight deepnight self-assigned this Nov 18, 2020
@deepnight deepnight modified the milestones: 1.0.0, Long term Feb 26, 2021
@deepnight deepnight changed the title Support multiple worlds Multiple worlds Jan 14, 2022
@deepnight
Copy link
Owner Author

The new JSON format is explained in the wiki: https://github.com/deepnight/ldtk/wiki/%5B0.10.0%5D-Multi-worlds

@BurgerBob
Copy link

Ces commentaires ne sont pas tous liés au Multi World, mais vu qu'ils sont liés au format de fichier, je pense que ça fait quand même sens ici.
Aussi, en français, car flemme.

. Il y a surement une raison technique pour laquelle tu as fait le choix de casser la rétro-compatibilité si on active le multi world, en mettant l'array "levels" dans chaque définition de world. L'autre implémentation aurait été de mettre un champ "worldiid" dans chaque level, et garder l'array de levels dans le root ; ça n'aurais pas cassé la rétro-compatibilité, un importeur ne supportant pas le multi world aurait juste eu tous les levels de tous les worlds sans distinction ...

. Intéressant que les identifiers des levels restent uniques, même entre worlds (pour la rétro compatibilité, et pour pouvoir bouger les levels entre worlds). Dans ce cas, j'imagine que la plupart des projets vont choisir de préfixer les noms de levels (W2_L54_BigRoom). Peut-être qu'il serait pratique de pouvoir spécifier ce préfixe dans l'éditeur.

. La feature qui manque le plus pour l'instant pour que le multi world soit utile: Pouvoir exclure certains Layers dans certains worlds.
De façon secondaire, on pourrait aussi exclure certaines définitions d'entités, potentiellement dans la définition de chaque entité, et/ou par tag (dans la définition du world, j'exclue ce tag d'entité).

. Vu que le but à moyen terme est d'avoir un seul projet Ldtk par jeu, le Ldtk principal va recevoir beaucoup de modifications, ce qui risque de poser des problèmes de merge pour les équipes un peu plus grosses.
Le problème principal IMO est que les infos de level sont dupliquées dans le ldtk principal et dans le ldtk de chaque level.
Suggestion: ne rien stocker dans l'array "levels" du ldtk principal, et l'éditeur pourrait juste regarder les fichiers présents dans le dossier de levels pour déterminer la liste de levels.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants