Giter Club home page Giter Club logo

cabledorado2 / ikemen-plus-ultra Goto Github PK

View Code? Open in Web Editor NEW
41.0 6.0 8.0 2.04 GB

An updated branch of the classic S-SIZE Ikemen. (This is an open source fighting game engine, that contains new features and improvements for MUGEN Resources).

License: Other

Batchfile 0.21% Lua 0.96% Smalltalk 0.13% C++ 52.80% C 40.88% Makefile 0.36% Shell 0.25% CMake 0.05% Objective-C 0.04% HTML 1.58% CSS 0.03% Roff 0.15% Assembly 0.17% JavaScript 0.12% VBScript 0.18% PowerShell 0.05% XSLT 0.05% C# 1.97% Clarion 0.01% TSQL 0.01%
ikemen-plus winikemen winmugen mugen-online game-dev fighting-game classic-ikemen fighting-game-engine mugen ikemen-plus-ultra

ikemen-plus-ultra's Introduction

I.K.E.M.E.N PLUS ULTRA

Ikemen Plus Ultra is an updated version of the OLD Ikemen Plus. The engine was made by Suehiro under S-SIZE Project, improved by K4thos and currently developing by CD2, Strong FS and some features developed by PlasmoidThunder.

  • If you are looking for the latest or current Ikemen Engine version, is called Ikemen GO.

  • Consider this Ikemen Plus Ultra branch as an Alternative in case that Ikemen GO doesn't work for you.

  • This engine can be used to Create Advanced MUGENS or Fighting Games, which can be run on Low resources PC, without a graphics card (Because can use DirectX Render).

  • The current version is a public development release for testing purposes, may contain bugs and incomplete features that we hope will be finished in the final release.

  • Help and cooperation are appreciated.

Minimum System Requirements

  • System: Windows XP SP3 - 32 Bits (Yeah it works in WinXP)
  • Proccessor: Intel(R) Atom(TM) CPU N455 1.66GHz
  • Memory: 1GB RAM
  • Graphics: Intel(R) Graphics Media Accelerator 3150 - 256MB
  • OpenGL: 2.0 but also, runs with DirectX

Operating System Compatibility

OS Runs Internal Dir Opening
Windows Native Yes
Linux Wine No
MacOS ? ?
Android Winlator ?

Download

Lastest version can be found here: https://github.com/CableDorado2/Ikemen-Plus-Ultra/releases v1 3

Table of Contents

About All IKEMEN Versions

Games Made in Ikemen Plus Ultra

TODO List

Tutorials

Resources

Tools

Engine Manual

Discord Support

References

License

About All IKEMEN Versions

S-SIZE Project is an original programming language project done by Suehiro with C++, it has sound, ascii, and basics implemented. its abbreviation is SSZ.

IKEMEN (retroactively referred to as S-SIZE IKEMEN or Vanilla). Is the First Version of Ikemen Engine that works like a Mugen Clone using a compiled SSZ Project as interpreter, adding it suport for Lua language, SDL, OpenGL, Ogg Vorbis and other things. All used is opensource so Suehiro adapted the libraries to the project. This Ikemen is an expansion of his original SSZ code.

IKEMEN Plus is an unofficial update/expansion project worked by K4thos (not made by Suehiro) of the Vanilla version, using the lua language above implemented to extend the capabilities of the basics in main engine.

IKEMEN Plus Ultra is an unofficial large scale update/expansion of the previous version that contains new features inspired from Touhou: Gensokyo Reloaded, Ikemen GO and Commercial Fighting Games. This branch is maintained by CD2 with help of Strong FS.

IKEMEN GO is the official latest version of the engine. The original creator Suehiro abandoned his own source code in favour of rewriting the engine in Google's Go language (hence the name). This version it is under active development by various developers and is for people who want their game to follow what MUGEN does but with universal extra features/fixes.

IKEMEN GO Plus presented by K4thos was made to test some functions meanwhile the original is updated using the mentioned GO version. GO Plus is what IKEMEN Plus was to Vanilla, but over time GO Plus and GO merged into the same thing.

Games Made in Ikemen Plus Ultra

  • MUGENGERS: THE OROCHI'S ORIGIN
  • ULTIMATE SMASHBOX

TODO List

CD2: Plans for future updates, they are in Spanish, because this is how I understand my ideas (If you can translate them, understand and offer help, will be great for progressing with this engine!):

v1.4 (Next Update)

  • Probar el gamepad 2 ahora que el p2 tiene control en los menús.

v1.5

  • Cambiar de personaje y stage en el menú de pausa solo en training. Usar lógica parecida al new challenger del arcade.

  • Ver si es posible hacer que las carpetas contenidas dentro del directorio "sound" puedan ser leidas por la función f_soundtrack de forma automática sin necesidad de especificarle cada una.

  • Agregar soporte para reconocer a un 2do Gamepad.

  • Agregar opción para configurar los controles de batalla en char select (Preferiblemente VS Mode y Tournament) excepto en online.

  • Configurar controles de batalla desde el menú de pausa en plena partida.

  • Agregar opción de Team Duplicates para que si vas a elegir un personaje repetido, se salte la casilla si está activada.

  • Arreglar que cuando tienes muchos slots programados en select.lua y 1 personaje cargado en select.def, que no se repita el mismo personaje sino que salga como empty.

  • Co-Op para el Versus Mode.

  • Revisar código del Damage Display para que no afecte al bonus de caltwalk ni cause que algunos chars tengan un clon por un helper faltante (Probablemente sea las variables y estados que usa).

  • Crear una copia del randomselect llamada randomteamselect que permita insertar la selección de teams aleatorios en select.def a lo kof2002um.

  • Implementar los parametros: ordersurvival, hidden, slot y mejorar unlock en select.def

  • Que no se ponga punto al empezar a escribir el netplay port y que no se copien en clipboard comillas para el username en opciones.

  • Sistema de puntos basado en el Add004.

  • Ranking al completar o perder en Modo Arcade.

Rank Results

  • Tournament Mode: https://youtu.be/pjYavslQ0tE?t=3 Alt text

  • Agregar más opciones para el Dummy de Training.

  • Cambiar el drawPortrait por una funcion que cargue (así como lo hace con las sprites animation del char select en lugar de leer el airPath que lea el sffPath), probar eso en start.lua y usar en char select una función parecida a f_drawCharAnim.

  • Arreglar preview de random chars que no coincide con el char al usar la visualización por sprites.

  • Agregar Lifebars, Face Portraits y Names para el modo simul cuando se juega de 3P_Simul y 4P_Simul como lo hace Ikemen GO.

  • Agregar soporte para Localcoord en cada char y fight.def.

  • Probar cargar un commonfx en fight.def para almacenar los sprites del input display y damage display, sin que entren en conflicto con los que quieran portear su fightfx de Mugen.

v1.6

  • 3er tipo de visualización de stages estilo “chart”, (lógica basada en el char select) al ser activado debe cargarse desde una función diferente a la normal para evitar conflictos, asímismo debe usar los portrait (9000,0) para mostrar los íconos: https://www.youtube.com/watch?v=FHwlSkCkQ50 Alt text

  • Integrar la función de bgm.loops.

  • Tag system como un 4to Team Mode. (Info sobre el tag integrado al ikemen plus original): https://mugenguild.com/forum/topics/ikemen-plus-181972.100.html

  • Leer archivos movelist.dat dentro de los chars.

  • Al acceder a menús donde hay que introducir datos con teclado como el vault, netplay port o ip en online. Si el motor reconoce que estás usando gamepad, mostrar una pantalla con un teclado que permita introducir letras y números usando un cursor, en lugar de usar el teclado.

  • Al presionar el botón de minimizar/ALT+tab mientras se reproduce un video, al volver el video no se podrá saltar con start e incluso no se podrá cerrar el motor hasta que termine el video.

  • El audio del motor debe poder sincronizarse al reproductor de video.

  • Crear una función como setDebugScript pero que permita soportar todas las funciones de script.ssz (debug.lua por alguna razón no lo hace) y ejecutarse durante toda la batalla o al menos al final de la partida. Para implementar las siguientes características:

    • Win Screen que se muestra al final de la pelea mientras todos los personajes y los datos del escenario aún están cargados (por lo que podríamos usar el fondo del escenario y los datos de animación de los personajes).

    • Como lo anterior pero para la pantalla Continuar

    • Ambas características se han implementado en el código del paquete de pantalla actual, pero la solución actual tiene un alto rendimiento (aumenta el tiempo de carga cuando se inicia el ejecutable) y no es perfecta (no hay acceso para coincidir con los datos relacionados que a menudo son verificados por winscreens como WinKO, Life, etc.)

v1.7

  • AttachedChars en Stages: https://youtu.be/90D57uQIGiY?t=8

  • Agregar un snd y sprite al obtener perfect, first attack, etc. (fight.ssz).

  • Implementar los parametros: music, musicfinal, musiclife, musicvictory en select.def.

  • Implementar parametros de transiciones entre stages (rounddef).

  • Al usar data.stage hacer que se puedan reconocer los nombres almacenados en t_stageDef, usando mayusculas y minusculas en lugar de solo minusculas. Ejemplo data.stage = {t_stageDef["stages/Sakura.def"]} en lugar de data.stage = {t_stageDef["stages/sakura.def"]}

  • Incluir pregunta para guardar o no los replays online.

  • Ver cómo se podría integrar un sistema de diálogo en los matches.

  • Buscar una forma de forzar que los datos SFF cargados utilicen una paleta personalizada, ya sea a través de un archivo ACT externo o en el caso de SFFv2, que se almacenen directamente en el archivo.

  • Adventure Mode, combinando elementos de:

v1.8

  • Soporte para Fntv2 y True Type Font (TTF).

  • Soporte para imágenes RGB/32bits y Shaders.

  • Soporte para cargar archivos PNG o PCX externos en lugar de usar siempre el formato SFF usando la función IMG_Load del SDL2.

  • Soporte para modelos 3D integrando glTF.

  • Integrar una librería que permita capturar videos en formato .avi como los emuladores y estos se guardarán para ser observados en ¿local replays?.

  • Mejorar Rendimiento del engine, actualizando el SDL2.dll.

v1.9

  • Jugar hasta un máximo de 4 jugadores en multiplayer local y online.

  • Hacer realidad las funciones del menú Netplay Settings.

  • En sala de espera para Host del online, incluir una opción de acceder al training y esperar mientras juegas.

  • El tiempo para los eventos, debe sincronizarse con un servidor de internet, de lo contrario bloquear los eventos.


v2.0 (Final Release)

  • Añadir Rollback Netcode.

  • Ordenar código y simplificar lo necesario.

  • Portear el Engine a Linux, MacOS, Android y iOS.

Tutorials

Basic:

Advanced:

  • Coming Soon!

Resources

Here you can find content to build your projects or just for play on Ikemen.

Tools

Here you can find some tools that help you in development of your projects (Some missed tools are included in the main Ikemen Plus Ultra folder called "tools").

Engine Manual

S-SIZE is the programing core language used. It documentation is here: https://github.com/CableDorado2/Ikemen-Plus-Ultra/wiki

Discord Support

If you need help, you can find support from developers and contributors for this engine in the official Ikemen Discord Server (They normally answer questions about Ikemen GO, so if you are going to ask about something for Ikemen Plus Ultra, keep in mind that those who use this version can be counted on the fingers of ONE hand): https://discord.gg/KV5EPnMuA7

References

License

The code is under the MIT Licence. Non-code assets are under CC-BY 3.0. Check License.txt for more details.

ikemen-plus-ultra's People

Contributors

cabledorado2 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

ikemen-plus-ultra's Issues

Blur Sctrl and .air Blur controls

Would be used blur or gradually blur a sprite or animation you tell it to for an effect. Would also be able to link a bg sprite or sprites for it to happen to a stage. Would also include other distortion methods like diffusion, etc.

Portar Ikemen plus Ultra al lenguaje C

Si se quiere portar la versión final a Linux, MacOS, Android e iOS, sería mucho más fácil si el motor estuviera escrito en C.
Otra cosa buena de estar en C es que podrías hacer un core (motor principal) para Retroarch y automáticamente funcionaría en docenas de plataformas y también tendrías soporte para jugar online en Retroarch.
Todo lo que tendrías que hacer es cargar el núcleo (motor) y luego, como una rom de consola, un .zip con chars, escenarios, música y demás.

Tenga en cuenta las ventajas.

Atentamente Zero800

TAG MODE

PUT A TAG MODE LIKE A IKUMEN GO ENGINE

Rumble in Controllers

Can you make the rumble ctrls finally work within mugen so that we can have forcefeedback/rumble like in ps1 era and newage era fighting games?

Is the source code available?

Hello, I’m currently using Ikemen GO and trying to port a game to multiple platforms. However porting a Go application to the Switch or Xbox consoles appears challenging, so I was having a look at C++ implementations instead and found this one. It does not look like the source code is available, though; are you planning to release it? I could also help with porting to Linux and Mac OS X if you are interested.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.