Fenixen Core
Introducción
Fenixen Core es un framework basado en Bukkit que facilita la creación de plugins de Minecraft de manera rápida y sencilla. Proporciona herramientas para:
Para comenzar a usar Fenixen Core en tu plugin de Bukkit/Spigot, agrega la dependencia en tu proyecto:
Requisitos:
Registro de Comandos
Fenixen Core permite registrar comandos de manera rápida y sencilla en tu Main.java:
import com.fenixenforge.Core.Handlers.Commands.Commands;
import org.bukkit.plugin.java.JavaPlugin;
public final class Main extends JavaPlugin {
@Override
public void onEnable() {
Commands.RegisterAll(this, "Commands", true);
}
}
Creación de un Comando
Creación de un SubComando
import com.fenixenforge.Core.Handlers.Commands.SCBuilder ;
public class SubMainCommand extends SCBuilder {
public SubMainCommand ( ) {
name ( "submain" )
. cPrincipalName ( "main" )
. permission ( "pluginname.main.submain" )
. execute ( (sender, command, label, args ) -> {
sender. sendMessage ( "SubComando ejecutado" ) ;
return true ;
} ) ;
}
}
Eventos
Registro de Eventos
Registra eventos en el Main.java:
Creación de un Evento
Inventarios
Creación de un Inventario
YAML (Configuraciones)
Registro de Archivos YAML
Creación de Archivos YAML
Placeholders
Registro de Placeholders
Base de Datos
Conexión a SQLite/MySQL
Creación de Tablas
Operaciones con Base de Datos
Conclusión
Fenixen Core proporciona una estructura modular y flexible para el desarrollo de plugins en Bukkit/Spigot. Su implementación sencilla y su organización estructurada permiten a los desarrolladores centrarse en la lógica de sus plugins sin preocuparse por la configuración tediosa.
Si necesitas ayuda, revisa la documentación oficial o pregunta en la comunidad de desarrollo de Fenixen Forge.
Enlaces útiles:
Introducción
Fenixen Core es un framework basado en Bukkit que facilita la creación de plugins de Minecraft de manera rápida y sencilla. Proporciona herramientas para:
- Registro semi-automático de comandos, eventos, inventarios e items.
- Soporte para PlaceholderAPI.
- Conexión y gestión de bases de datos en SQLite y MySQL.
- Manejo de archivos YAML de forma estructurada.
- Manejo de colores personalizados en mensajes y consola.
Para comenzar a usar Fenixen Core en tu plugin de Bukkit/Spigot, agrega la dependencia en tu proyecto:
Code (Text):
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>com.github.FenixenForge</groupId>
<artifactId>FenixenCore</artifactId>
<version>2.0.1</version>
</dependency>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>com.github.FenixenForge</groupId>
<artifactId>FenixenCore</artifactId>
<version>2.0.1</version>
</dependency>
- Java 17 o superior.
- Bukkit, Spigot.
- PlaceholderAPI (si se desea usar placeholders).
Registro de Comandos
Fenixen Core permite registrar comandos de manera rápida y sencilla en tu Main.java:
import com.fenixenforge.Core.Handlers.Commands.Commands;
import org.bukkit.plugin.java.JavaPlugin;
public final class Main extends JavaPlugin {
@Override
public void onEnable() {
Commands.RegisterAll(this, "Commands", true);
}
}
Creación de un Comando
Code (Java):
import
com.fenixenforge.Core.Handlers.Commands.MCBuilder
;
public class MainCommand extends MCBuilder {
public MainCommand ( ) {
name ( "main" )
. permission ( "pluginname.main" )
. aliases ( "m", "Mains" )
. execute ( (sender, command, label, args ) -> {
sender. sendMessage ( "Hola Mundo 3" ) ;
return true ;
} ) ;
}
}
public class MainCommand extends MCBuilder {
public MainCommand ( ) {
name ( "main" )
. permission ( "pluginname.main" )
. aliases ( "m", "Mains" )
. execute ( (sender, command, label, args ) -> {
sender. sendMessage ( "Hola Mundo 3" ) ;
return true ;
} ) ;
}
}
Creación de un SubComando
Code (Java):
import com.fenixenforge.Core.Handlers.Commands.SCBuilder ;
public class SubMainCommand extends SCBuilder {
public SubMainCommand ( ) {
name ( "submain" )
. cPrincipalName ( "main" )
. permission ( "pluginname.main.submain" )
. execute ( (sender, command, label, args ) -> {
sender. sendMessage ( "SubComando ejecutado" ) ;
return true ;
} ) ;
}
}
Registro de Eventos
Registra eventos en el Main.java:
Code (Java):
import
com.fenixenforge.Core.Handlers.Events.Events
;
@Override
public void onEnable ( ) {
Events. RegisterAll ( this, "Events", true ) ;
}
@Override
public void onEnable ( ) {
Events. RegisterAll ( this, "Events", true ) ;
}
Creación de un Evento
Code (Java):
import
com.fenixenforge.Core.Handlers.Events.EHandlerBuilder
;
import org.bukkit.event.player.PlayerJoinEvent ;
import org.bukkit.entity.Player ;
public class JoinEventHandler extends EHandlerBuilder {
public JoinEventHandler ( ) {
event (PlayerJoinEvent. class )
. execute (event -> {
Player player = event. getPlayer ( ) ;
player. sendMessage ( "Bienvenido al servidor!" ) ;
} ) ;
}
}
import org.bukkit.event.player.PlayerJoinEvent ;
import org.bukkit.entity.Player ;
public class JoinEventHandler extends EHandlerBuilder {
public JoinEventHandler ( ) {
event (PlayerJoinEvent. class )
. execute (event -> {
Player player = event. getPlayer ( ) ;
player. sendMessage ( "Bienvenido al servidor!" ) ;
} ) ;
}
}
Inventarios
Creación de un Inventario
Code (Java):
import
com.fenixenforge.Core.Handlers.Inventory.IBuilder
;
import org.bukkit.Material ;
import org.bukkit.entity.Player ;
public class CustomInventory {
public void openInventory (Player player ) {
IBuilder. inventario ( )
. name ( "menuInventario" )
. size ( 27 )
. title ( "&a&lMenú de Inventario" )
. items (inv -> inv. setItem ( 13, new org. bukkit. inventory. ItemStack (Material. DIAMOND, 1 ) ) )
. open (player ) ;
}
}
import org.bukkit.Material ;
import org.bukkit.entity.Player ;
public class CustomInventory {
public void openInventory (Player player ) {
IBuilder. inventario ( )
. name ( "menuInventario" )
. size ( 27 )
. title ( "&a&lMenú de Inventario" )
. items (inv -> inv. setItem ( 13, new org. bukkit. inventory. ItemStack (Material. DIAMOND, 1 ) ) )
. open (player ) ;
}
}
YAML (Configuraciones)
Registro de Archivos YAML
Code (Java):
import
com.fenixenforge.Core.Handlers.Yaml.YHandler
;
@Override
public void onEnable ( ) {
YHandler. RegisterAll ( this, "Yaml" ) ;
}
@Override
public void onEnable ( ) {
YHandler. RegisterAll ( this, "Yaml" ) ;
}
Creación de Archivos YAML
Code (Java):
import
com.fenixenforge.Core.Handlers.Yaml.YamlFile
;
import org.bukkit.configuration.file.FileConfiguration ;
public class Config implements YamlFile {
private static FileConfiguration config ;
public static void init (FileConfiguration conf ) {
config = conf ;
}
public static String getMessage ( ) {
return config. getString ( "message", "Hola Mundo" ) ;
}
}
import org.bukkit.configuration.file.FileConfiguration ;
public class Config implements YamlFile {
private static FileConfiguration config ;
public static void init (FileConfiguration conf ) {
config = conf ;
}
public static String getMessage ( ) {
return config. getString ( "message", "Hola Mundo" ) ;
}
}
Placeholders
Registro de Placeholders
Code (Java):
import
com.fenixenforge.Core.Handlers.Placeholders.PlaceholderBuilder
;
import org.bukkit.entity.Player ;
public class MyPlaceholders {
public void register ( ) {
PlaceholderBuilder. placeholder ( )
. identificator ( "player_name" )
. funcion (Player ::getName )
. register ( ) ;
}
}
import org.bukkit.entity.Player ;
public class MyPlaceholders {
public void register ( ) {
PlaceholderBuilder. placeholder ( )
. identificator ( "player_name" )
. funcion (Player ::getName )
. register ( ) ;
}
}
Base de Datos
Conexión a SQLite/MySQL
Code (Java):
import
com.fenixenforge.Core.Handlers.Database.DBuilder
;
import com.fenixenforge.Core.Handlers.Database.DBTypes ;
import com.fenixenforge.Core.Handlers.Database.DHandler ;
@Override
public void onEnable ( ) {
DHandler dHandler = DBuilder. database ( )
. name ( "MyDB" )
. type (DBTypes. SQLITE )
. path ( "plugins/MyPlugin/db.sqlite" )
. connect ( ) ;
}
import com.fenixenforge.Core.Handlers.Database.DBTypes ;
import com.fenixenforge.Core.Handlers.Database.DHandler ;
@Override
public void onEnable ( ) {
DHandler dHandler = DBuilder. database ( )
. name ( "MyDB" )
. type (DBTypes. SQLITE )
. path ( "plugins/MyPlugin/db.sqlite" )
. connect ( ) ;
}
Creación de Tablas
Code (Java):
import
com.fenixenforge.Core.Handlers.Database.TableBuilder
;
public class UserTable {
private final String createSQL = TableBuilder. table ( )
. name ( "users" )
. addColumn ( "uuid", "TEXT", true, true )
. addColumn ( "username", "TEXT" )
. addColumn ( "coins", "INTEGER", "0" )
. buildCreateTableSQL ( ) ;
}
public class UserTable {
private final String createSQL = TableBuilder. table ( )
. name ( "users" )
. addColumn ( "uuid", "TEXT", true, true )
. addColumn ( "username", "TEXT" )
. addColumn ( "coins", "INTEGER", "0" )
. buildCreateTableSQL ( ) ;
}
Operaciones con Base de Datos
Code (Text):
import com.fenixenforge.Core.Handlers.Database.TableBuilder;
public class UserTable {
private final String createSQL = TableBuilder.table()
.name("users")
.addColumn("uuid", "TEXT", true, true)
.addColumn("username", "TEXT")
.addColumn("coins", "INTEGER", "0")
.buildCreateTableSQL();
}
public class UserTable {
private final String createSQL = TableBuilder.table()
.name("users")
.addColumn("uuid", "TEXT", true, true)
.addColumn("username", "TEXT")
.addColumn("coins", "INTEGER", "0")
.buildCreateTableSQL();
}
Conclusión
Fenixen Core proporciona una estructura modular y flexible para el desarrollo de plugins en Bukkit/Spigot. Su implementación sencilla y su organización estructurada permiten a los desarrolladores centrarse en la lógica de sus plugins sin preocuparse por la configuración tediosa.
Si necesitas ayuda, revisa la documentación oficial o pregunta en la comunidad de desarrollo de Fenixen Forge.
Enlaces útiles:
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.18, 1.19, 1.20
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
Fenixen Core is a free Minecraft Java mod. Compatible with Minecraft 1.18, 1.19, 1.20, 1.20.6 and newer. Downloaded 36 times (via Spigot). Download it and open it directly in the game.