Lycanites Mobs now uses JSON entries to define Mob Events amongst many other features. These are fully customizable and your own events can be added as well (you will need to provide your own title textures and sound files in a resource pack, etc).
To spawn mobs from an event or edit an event's mobs you will need to edit a seperate spawner json file. In the mobevents config folder you will find all the default event and default event spawner json files.
When testing you can also use the command "/lm mobevent reload" to reload all mob events, "/lm spawners reload" to reload all JSON Spawners and "/lm spawners creative" to have spawners react to creative mode players.
As with all json configs used by Lycanites Mobs, make sure you set "loadDefault" to false, as when this is true it will cause the json file to be reset to default values. Invalid json will also cause a default json file to reset.
You can create as many custom mob events as you like.
To create a new event, simply add your Mob Event JSON file to the "config/lycanitesmobs/mobevents" folder. You can use the command "/lm mobevent reload" when in game to reload all mob events allowing you to test on the fly! There is also a "MobEvent" debug option in the lycanitesmobs-general.cfg file which will enable a lot of logging to the console if you need it, though errors should always show up in the log and shouldn't crash the game, instead the broken mob event is ignored.
Mob Events are made up of 3 sections, the base Mob Event properties, Spawn Conditions and Mob Event Triggers.
You can always copy a default mob event and repurpose it instead of writing a new one from scratch too, just be sure to change the name or only one of the mob events will load!
You will also need to create your own spawner for your mob event, see the spawners section for more info or copy a default mob event spawner json file and repurpose it.
Each property uses a specific data type, please look up how JSON works if you don't know:
Short for integer, this must be a whole number, can be negative if applicable.
This can be a whole number or a decimal value such as 0.5, and can also be negative if applicable.
Short for boolean, this can be true or false (no quotation marks).
This is text and must be in "quotation marks".
This is a nested JSON object with properties of its own.
This means you can have multiple entries of the data type inside the [brackets].
In config/lycanitesmobs/ you can find mobeventschedule.json which can used to create a specific schedule for mob events based on the total world time. This is useful for challenge or progression mod packs, etc.
Currently there is no way to schedule recurring events via this schedule, I will add this feature soon, in the meantime you can use a tick mob event trigger that ticks every 23999 (day) as well as a world condition to restrict the initial world day.
The json has one base value caled "schedules" which is an array mob event schedule entries which use the following properties:
The name of the mob event to start.
The world day to start the event at.
The time of the day (in ticks) to start the event. Default: 100 (5 seconds in to the day).