Cómo es un mod por dentro
Aether/Mods: Aether lo arranca en el momento correcto. Aether no te obliga a nada.Un mod tiene dos partes: una etiqueta que dice quién es, y uno o más puntos de entrada que dicen qué hace y cuándo.
La etiqueta
Va siempre a nivel de ensamblado ([assembly: …]): es el único lugar donde Aether la busca. Si la pones sobre una clase, el compilador te avisa en lugar de dejar que tu mod no cargue nunca.
[assembly: AetherMod("my_mod", "1.0.0",
Name = "My Mod",
Author = "Your Name",
Description = "Short description.",
Depends = "aether_ui@0.1.0-alpha")]| Campo | Para qué sirve |
|---|---|
id ("my_mod") | El nombre interno. Elige uno y no lo cambies nunca: lo usan las opciones, los registros y los reportes de fallos. |
| versión | Sube el número cuando publiques cambios. |
Depends | Lo que tu mod necesita para funcionar. Si falta, tu mod no arranca y queda anotado en el registro. |
Suggests | Mods que combinan bien con el tuyo. Solo informa; no bloquea. |
LoadAfter | Pide cargar después de otro mod, si está instalado. |
Breaks | Tu mod no arranca si alguno de estos está instalado. |
Los puntos de entrada
Son las puertas por donde Aether arranca tu mod. Elige según lo que necesites hacer:
| Interfaz | Cuándo corre | Úsala para |
|---|---|---|
IPreLaunchEntrypoint | Lo más temprano posible | Cosas avanzadas de bajo nivel |
IModInitializer | Cuando se cargan los mods | Registrar bloques, objetos y recetas |
IClientModInitializer | En el primer fotograma, con el juego ya vivo | Interfaz, teclas, objetos en escena, Harmony |
ISceneModInitializer | Cada vez que carga una escena | Preparar algo para una escena concreta |
Para un mod simple, con IModInitializer y IClientModInitializer basta, como en la plantilla.
Dibujar en la interfaz de Aether
Si quieres que tu mod se vea dentro del menú y los paneles de Aether, implementa IAetherUiModule y regístralo con AetherUiModuleRegistry.Register(...). Aether le avisa cuándo iniciar, cuándo actualizarse en cada fotograma y cuándo cambia la escena. Es un paso para después de tu primer mod.