Saludos Comunidad GM 8).

No he estado conectado en esta comunidad debido a que he estado trabajando en algunos scripts para mi juego ya casi terminado (La base).

Mi pregunta es: Como puedo hacer un mod y que el juego lo reconozca y haga la accion que dice.

Ejemplo: Creo un mod de un personaje (lo cual no sé :-[) con sus movimientos y lo guardo en la carpeta del juego. Luego abro el juego y este reconoce el mod, añadiendo el personaje al juego.

Espero que me ayuden, gracias de antemano   :D :D
OmarMakero

Hola, gusto en saludarlo.

No sé si será buena respuesta, pero se puede lograr conociendo las siguientes funciones y otras más:

file_exists()//para determnar si un archivo x existe.
file_open_read()//para leer el contenido
excute_file()//para ejecutar el código que se encuentre en un archivo externo.(gm8)
get_file()//para buscar manualmente el archivo.
Faltaría un script que permita al programa reconocer todos los archivos de la carpeta mods.


Pasos

1. se crea un archivo de texto que contendrá los códigos necesarios que reportarán la velocidad del personaje y otras de sus características. Ejemplo:

Velocidad=6
Salto=14
Fuerza=50
Golpe=8
Nivel=3


también pudiese ser un archivo ini

[características]
velocidad=6
salto=14
fuerza=50
golpe=8
nivel=3
[imagen]
archivo="mods/imgx.png"

   
El archivo que tiene los códigos debe indicar en donde se encuentran las imágenes, es decir se necesitarán dos archivos, uno para la imagen y otro para los códigos. Pero si aun así quieres encapsular todo en un solo archivo, tienes que experimentar con un archivo comprimido a ver si se puede, pero si no se consigue, puedes lograrlo con estas dos técnicas:

1. Un archivo de imagen: en una sola imagen que contenga todos los sprites del personaje agregar una especie de código ORG el cual deberá ser escaneado y traducido por game maker. Suena difícil pero no. Solo se deberán analizar la existencia de puntos negros y contarlos para determinar el valor de alguna variable, y las variables se identifican por la posición de puntos negros.

2. Un solo archivo de texto: Encapsular todo, inclusive las imágenes en un solo archivo de texto. Se debe crear previamente un pequeño programa scaner que transforme los píxeles de la imagen en código hexadecimal:


str="[12300ff][0001234e][1233460]......"

Luego agregar el código en la capeta mod, el programa deberá interpretar la imagen, traducirla, dibujarla y luego hacer una captura de pantalla para obtener la imagen, luego debe indicarse a qué código pertenece la imagen y la carga de los códigos adicionales.

También pudiese hacerse con un archivo ini, ejemplo:

[imagen]
str="[12300ff][0001234e][1233460]......"


El proceso de interpretación de imagen no debe hacerse cada ves que se ejecute el juego, debe crearse una base de datos que indique que el archivo ya fue escaneado y la imagen ya fue obtenida. Por tanto se requiere saber un poco de base de datos o aplicar otra técnica.

Por último se establece la relación imagen código para crear al personaje, recuerda que estamos hablando de una sola imagen que contenga todos los sprites del personaje, pero también se puede hacer con imágenes individuales.

Falto mencionar el sprite_add

Imagen propuesta para ser usada como mod, donde el código org debe ser escaneado para determiar el valor de las variables del personaje:


Quizás exista una función en game maker studio que haga todo esto, esta es la forma de hacerlo de manera manual.
Si Dios quiere; Limpiaré la oficina, puliré el piso y les serviré café a todos, luego, me enseñarán a programar e iré a comprarles más café.