YesNoOk
avatar

Ikemen Plus (Read 792962 times)

Started by ShinLucho, November 20, 2017, 12:45:35 am
Share this topic:
Re: Ikemen Plus
#21  December 10, 2017, 02:15:37 am
  • ****
  • Every night fucks every day up
  • Every day patches the night up
    • Puerto Rico
Oooooh shit!

Dude, this is amazing!
Last Edit: December 10, 2017, 02:25:37 am by TheFclass97
Re: Ikemen Plus
#22  December 10, 2017, 02:34:31 am
  • **
  • Manchild who likes pancakes
  • Weeabooism 4 the win
    • USA
This sounds great. Are you goanna expand then option menu and add a color selector?
My hat is a pancake.
Re: Ikemen Plus
#23  December 10, 2017, 03:07:52 am
  • ***
This sounds great. Are you goanna expand then option menu and add a color selector?
That was the plan when I implemented character's animations directly into screenpack. Unfortunately there is no way to support displaying different palettes on loaded sprites from within LUA code, so this would need help from ikemen author to add such feature (or someone who understands szz scripting language). Duplicating sprites for each palette would make loading times too big to be worth it.

-----------

Forgot to mention that the KOF like characters switching between matches is meant to be used with add004 (you know, so that you actually have Tag mode in game)
Last Edit: December 10, 2017, 03:12:10 am by K4thos
Re: Ikemen Plus
#24  December 10, 2017, 03:12:46 am
  • ****
  • Every night fucks every day up
  • Every day patches the night up
    • Puerto Rico
I did pal select on hdbz. With some visual tweaking, it can look better but the code is there. By the way, I highly suggest making your own thread with the post you made. You can simply copy and paste your post in a new one cause I wanna pin it. Glad you released this!
Re: Ikemen Plus
#25  December 10, 2017, 03:27:56 am
  • ***
Quote
I did pal select on hdbz. With some visual tweaking, it can look better but the code is there. By the way, I highly suggest making your own thread with the post you made. You can simply copy and paste your post in a new one cause I wanna pin it. Glad you released this!
To clarify, of course it's possible to add palette selection if you:
- prepare images by hand instead of relying on automatic solution like in my code,
- or my code could be changed to automatically prepare sprites with different palettes but that would increase SFF size significantly, so it's not viable for games with many characters (alternatively I could get rid of animations but that would suck).

What we need is a LUA function that will force palette swap on the fly, so that we don't have to duplicate sprites.

To make answering things easier about what is possible / viable in this project, here is a list of things that I want ikemen author to implement directly in engine source code szz files (I'm too lazy to rewrite it so I'm posting a message that I'm planning to send him once the project is finished)

edit: removed the message since most of it was no longer accurate, some of these stuff have been already implemented.
Last Edit: January 09, 2018, 04:03:57 am by K4thos
Re: Ikemen Plus
#26  December 10, 2017, 03:33:16 am
  • **
  • Manchild who likes pancakes
  • Weeabooism 4 the win
    • USA
I did pal select on hdbz. With some visual tweaking, it can look better but the code is there. By the way, I highly suggest making your own thread with the post you made. You can simply copy and paste your post in a new one cause I wanna pin it. Glad you released this!

Okay. Thanks.
My hat is a pancake.
Re: Ikemen Plus
#27  December 10, 2017, 03:34:20 am
  • Certified Script Kiddie
  • I'm clueless lol
    • USA
It looks like I've already implemented everything you aim for and more. TheFclass97 probably remembers me from discord where we discussed this project few months ago.

Here's quick rundown of things already implemented in ikemen:
1. Modes:
- Arcade
- VS Mode
- Team Co-op
- Survival
- Survival Co-op
- Training
- Watch
- Options
- Extras (some additional modes like Free Battle, Boss Rush, Bonus Games)
2. Each mode works exactly the same as in mugen with some extras
3. select.def parser (everything is taken into account including stage and music selection for particular matches and [Options] section that controlls arcade mode)
4. Select screen that works the same way as mugen + additional support for looping through not visible rows known from ikemen
5. Parser for some vanilla mugen DEF files, so that you don't have to recode them in lua:
- screenpack logo
- screenpack intro
- screenpack gameover
- screenpack credits
- character intro
- character ending
6. Win quotes support (text read directly from character files)
7. Options screen can save values and has more options unique to ikemen
8. Some things not present in mugen:
- character animations in select screen
- counter in continue screen
- a way to change characters order before each battle starts (you know, the way team modes work in KOF games)
9. Ported Winmugen Elecbyte's screenpack to ikemen format and included some sample characters and stages for easier testing
10. Probably tons of other stuff that I forgot to mention since it's been months since I touched the code.

In other words pretty much everything from vanilla mugen is available in ikemen.

The project is available on my github: https://github.com/K4thos/Ikemen-Plus

ShinLucho, considering this work is much further in development than yours I've sent you invitation on github, so that you can modify it as you wish without pull requests. I think combining our efforts would be better rather than developing 2 different projects with the same goal (which is a sample screenpack that can be used by others as a base for ikemen games). Feel free to improve the code and implement new things. I'm not really a programmer, so some code may look a bit messy and probably there are better ways to achieve some things. Before publishing it I wanted to write proper documentation to make screenpack editing easier but I lost motivation on it (English is not my first language so this proved to be the most boring part). Some things are also not polished enough to bother ikemen author yet (I wanted to send him these files so that the project could be officially implemented in ikemen if he likes it).

If you’re interested in working together on this we can use this topic going forward. If not than I will create new one on this board and rename the project on github.

edit: the message that shows up each time you add new characters is related to characters animations in select screen / continue screen. Of course it's easy to get rid of it in lua code and use normal portraits instead.

Holy shit dude. How could the project be dead? This is the first time I've heard of it and it's seriously essential for the community! And it's updated to the latest version of IKEMEN!

I beg for you to not let this be dead. I'm seriously holding onto this because I'll certainly be using the code you provided!
Looking for additional IKEMEN/Fighter Factory programmers for a big project. PM me for details.
Re: Ikemen Plus
#28  December 10, 2017, 03:56:59 am
  • ***
    • Greece
Great job,  i would like to ask if it is possible to add more than 10 order fights at the arcade mode at the select. def, since mugen has a limit of only 10 order fights.
Re: Ikemen Plus
#29  December 10, 2017, 04:07:44 am
  • ***
Quote
Holy shit dude. How could the project be dead? This is the first time I've heard of it and it's seriously essential for the community! And it's updated to the latest version of IKEMEN!

I beg for you to not let this be dead. I'm seriously holding onto this because I'll certainly be using the code you provided!
it's not really dead, just put on hold until I find motivation to write some documentation, add more comments to the code and polish some things / fix bugs. I hope that maybe ShinLucho will be interested in helping with this project.

Quote
Great job,  i would like to ask if it is possible to add more than 10 order fights at the arcade mode at the select. def, since mugen has a limit of only 10 order fights.
yes, and it is already implemented. Here is a select.def documentation that lists new parameters and changes compared to the same file used in vanilla mugen:
Quote
;---------------------------------------------------------------------
[Characters]
 ;How to add characters
 ;---------------------
 ;Use the format:
 ;    charname, stagefilename1, stagefilename2, ...
 ;
 ;eg. For a player with filename "kfm",
 ;    and stage filename "stages/mybg.def"
 ;type (without the semicolon):
 ;    kfm, stages/mybg.def
 ;    IKEMEN feature: There can be more than 1 stage assigned to
 ;    character. In such case stage will be randomly chosen.
 ;
 ;If you want to load a different def file, you can enter it
 ;as a directory plus the def file. This example loads up
 ;chars/kfm/alt-kfm.def:
 ;    kfm/alt-kfm.def, stages/mybg.def
 ;
 ;If you put "random" as the stagefilename, then a random stage will
 ;be selected for that player. eg.
 ;IKEMEN feature: Not really needed since no stage = random anyway.
 ;    kfm, random
 ;
 ;Optional parameters may follow on the same line, separated
 ;by commas. Each parameter has the form:
 ;    paramname = paramvalue
 ;where paramname is the name of the parameter type, and
 ;paramvalue is the value to assign that parameter.
 ;The optional parameters are:
 ;
 ; - music
 ;   Set the paramvalue to the name of the music file to use
 ;   as the BGM for that character. This overrides the bgmusic
 ;   parameter in the stage's .def file, so you can re-use the
 ;   same stage for multiple characters, but have a different
 ;   BGM playing for each person.
 ;   IKEMEN feature: There can be more than 1 music parameter
 ;   set for stage. In such case track will be randomly chosen.
 ;
 ; - zoom
 ;   IKEMEN feature: Set the paramvalue to 0 to avoid stage zoom
 ;   even if it is enabled globally. Useful for characters that
 ;   don't work well with zoom (for example bonus characters)
 ;
 ; - boss
 ;   IKEMEN feature: Set the paramvalue to 1 to include this
 ;   character in "Boss Rush" mode.
 ;
 ; - bonus
 ;   IKEMEN feature: Set the paramvalue to 1 to include this
 ;   character in "Bonus Games" mode. Bonus characters also
 ;   won't show up as Simul team if faced in arcade mode.
 ;
 ; - ai
 ;   IKEMEN feature: Set the paramvalue between 0 and 8 to force
 ;   AI Level regardless of difficulty and AI ramping settings.
 ;
 ; - winscreen
 ;   IKEMEN feature: Set the paramvalue to 0 to avoid displaying
 ;   win screen after beating this character.
 ;
 ; - includestage
 ;   Set the paramvalue to 0 to avoid including this stage
 ;   in the stage select list (in VS, training modes, etc)
 ;
 ; - exclude
 ;   IKEMEN feature: Set the paramvalue to 1 to avoid including
 ;   this character when player choose 'random' character icon.
 ;   Also excludes character to be chosen by CPU in modes other
 ;   than arcade (arcade selection is controlled by 'order')
 ;
 ; - order
 ;   Set the paramvalue to the ordering priority to give the
 ;   character in arcade mode (1 by default). A smaller value
 ;   means you will fight the character sooner. You will never
 ;   fight an order 2 character before an order 1 character,
 ;   and never an order 3 character before an order 2 one.
 ;   For example, you might want to set your boss character
 ;   to have order=3. The default order value is 1 if you omit
 ;   this param. See *.maxmatches under [Options] for how to
 ;   limit the number of matches per order priority.
 ;   IKEMEN feature: Max 30 orders limitation is lifted.
 ;
 ; - 1, 2, (...)
 ;   IKEMEN feature: paramname points to the match number in
 ;   arcade mode. paramvalue overwrites character that you would
 ;   face following normal 'order'. paramvalue should match exactly
 ;   the charname text typed after "Insert your characters below"
 ;   line, so it can be either full DEF path or just folder name.
 ;   This functionality introduces simple solution for implementing
 ;   story like arcade mode similar to the one in Street Fighter
 ;   Alpha 3 where characters always face their rivals along the way.
 ;   If you're playing in Team mode than paramvalue character becomes
 ;   opposite team leader, other characters follow normal order.
 ;
 ;   Some examples:
 ;        kfm, stages/mybg.def, includestage=0
 ;        kfm, stages/mybg.def, music=sound/song.mp3
 ;        kfm, stages/mybg.def, music=sound/song.mp3, includestage=0
 ;        kfm, stages/mybg.def, order=3, 3=kfm, 6=SuaveDude
 ;        kfm, stages/mybg.def, stages/mybg.def, music=sound/song.mp3, music=sound/song2.mp3, zoom=0
 ;
 ;You can also add a randomize icon to the select screen. To do
 ;this, put the word "randomselect" on a line of its own, with no
 ;extra parameters.
 ;
 ;Insert your characters below.

kfm, stages/kfm.def, 1=kfm
ShinGouki, order=3, boss=1
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
randomselect
Catwalk, order=2, exclude=1, bonus=1, zoom=0, winscreen=0
DuckHunt, order=2, exclude=1, bonus=1, zoom=0, winscreen=0
Training, exclude=1

[ExtraStages]
 ;Put extra stages here. They will be available in VS and Watch modes.
 ;For example, you can insert "stages/mybg.def".
 ;
 ;Optional parameters may follow on the same line, separated
 ;by commas. Each parameter has the form:
 ;    paramname = paramvalue
 ;where paramname is the name of the parameter type, and
 ;paramvalue is the value to assign that parameter.
 ;The optional parameters are:
 ;
 ; - music
 ;   IKEMEN feature: Set the paramvalue to the name of the music
 ;   file to use as the BGM for the stage. If bgmusic parameter
 ;   in the stage's .def file is also present than engine will
 ;   pick one of the tracks randomly. On top of that there can
 ;   be more than 1 music parameter assigned here.
 ;
 ; - zoom
 ;   IKEMEN feature: Set the paramvalue to 0 to avoid stage zoom
 ;   even if it is enabled globally. And the other way around.
 ;
 ; - zoomMin
 ;   IKEMEN feature: Set the paramvalue to overwrite global
 ;   maximum zoom out setting for this particular stage.
 ;
 ; - zoomMax
 ;   IKEMEN feature: Set the paramvalue to overwrite global
 ;   maximum zoom in setting for this particular stage.
 ;
 ; - zoomSpeed
 ;   IKEMEN feature: Set the paramvalue to overwrite global
 ;   zoom speed setting for this particular stage.
 ;
 ;   Some examples:
 ;        stages/mybg.def, music=sound/song.mp3, music=sound/song2.mp3
 ;        stages/mybg.def, zoom=0
 ;        stages/mybg.def, zoom=1, zoomMin=0.75, zoomMax=1.1, zoomSpeed=1
 ;
 ;Insert your stages below.

stages/kfm.def
stages/stage0.def

;---------------------------------------------------------------------
[Options]
 ;Here you set the maximum number of matches to fight before game ends
 ;in Arcade Mode. The first number is the number of matches against
 ;characters with order=1, followed by order=2 and order=3 respectively.
 ;For example, for 4,3,1 you will fight up to 4 randomly-picked
 ;characters who have order=1, followed by 3 with order=2 and 1 with
 ;order=3.
 ;IKEMEN feature: Max 30 orders limitation is lifted.
arcade.maxmatches = 6,1,1,0,0,0,0,0,0,0

 ;Maximum number of matches to fight before game ends in Team Mode.
 ;Like arcade.maxmatches, but applies to Team Battle.
team.maxmatches = 4,1,1,0,0,0,0,0,0,0

 ;IKEMEN feature: AI ramping settings has been moved here from mugen.cfg
 ;You can view AI ramping output for all battles from the last chosen mode
 ;via debug/t_aiRamp.txt (useful reference also for vanilla mugen).
 ;Arcade Mode AI ramping. For both parameters below, the first number
 ;corresponds to the number of matches won, and the second number to the
 ;AI difficulty offset. The actual difficulty is the sum of the AI
 ;difficulty level (set in the options menu) and the value of the offset
 ;at a particular match.
 ;  AIramp.start = start_match, start_diff
 ;  AIramp.end   = end_match, end_diff
 ;The difficulty offset function is a constant value of start_diff from
 ;the first match until start_match matches have been won. From then the
 ;offset value increases linearly from start_diff to end_diff. After
 ;end_diff matches have been won, the offset value is end_diff.
 ;  e_d            /----------
 ;               /
 ;  s_d _______/
 ;     ^      ^     ^        ^
 ;   1st_m   s_m   e_m     last_m
 ;For example, if you have:
 ;  AIramp.start = 2,0
 ;  AIramp.end   = 4,2
 ;For 6 matches at level 4, the difficulty will be (by match):
 ;  4,4,4,5,6,6
arcade.AIramp.start = 2, 0
arcade.AIramp.end   = 4, 2

 ;Team Mode AI ramping
 ;For 4 matches at level 4 and default values, the difficulty will be:
 ;  4,4,5,6
team.AIramp.start = 1, 0
team.AIramp.end   = 3, 2

 ;Survival Mode AI ramping
 ;For 16 matches at level 4 and default values, the difficulty will be:
 ;  1,1,1,2,2,3,3,4,4,4,5,5,6,6,7,7,8
survival.AIramp.start = 0, -3
survival.AIramp.end   = 16, 4
Last Edit: December 10, 2017, 04:12:36 am by K4thos
Re: Ikemen Plus
#30  December 10, 2017, 04:44:12 am
  • ****
  • Hoping for the best, prepared for the worst.
  • 2D Fighting games forever!
    • Brazil
@K4thos Wait... are you swit?! I was following your progress until you disappeared out of sudden, good to know that you're alive and well.

Edit



Getting this error before starting a match.
Lasagna
Last Edit: December 10, 2017, 05:05:17 am by -Ash-
Re: Ikemen Plus
#31  December 10, 2017, 04:55:44 am
  • ***
Quote
@K4thos Wait... are you swit?! I was following your progress until you disappeared out of sudden, good to know that you're alive and well.
Thanks. Yep, that's me.

edit:

Quote


Getting this error before starting a match.
Please post a link to the character. Looks like it has some st code that makes the states parser crash (st files are analyzed via lua in order to extract winquotes text and conditions)
Last Edit: December 10, 2017, 05:17:50 am by K4thos
Re: Ikemen Plus
#32  December 10, 2017, 05:15:40 am
  • ****
  • Hoping for the best, prepared for the worst.
  • 2D Fighting games forever!
    • Brazil
This happens also to another character from a different creator, so just let me ask this first, they were patched with add004, does it have any correlation? Also Shin Akuma from ikemen crashes too.
Lasagna
Re: Ikemen Plus
#33  December 10, 2017, 05:20:44 am
  • ***
Quote
This happens also to another character from a different creator, so just let me ask this first, they were patched with add004, does it have any correlation? Also Shin Akuma from ikemen crashes too.
If it happens for Shin Akuma included in the package than I can't reproduce it. Anyone else with this problem? If you mean some other akuma than send me a link to the character. I've mostly tested it with Pots characters.

Some other bugs I've noticed:
- currently randomselect is not fully implemented (there will be a problem with displaying win quote in arcade mode because I forgot to write what should happen when the chosen character is random – I will fix it soon)
- if I remember correctly for Online play only vs mode is implemented (in order to implement other 2 I will need to test it with someone online)
- for some reason Kung Fu Man's intro and ending (DEF files) don't work in arcade mode. It was working in the past so ther's probably a typo somewhere in the code.
Last Edit: December 10, 2017, 08:28:34 am by K4thos
Re: Ikemen Plus
#34  December 10, 2017, 05:22:51 am
  • ****
  • Hoping for the best, prepared for the worst.
  • 2D Fighting games forever!
    • Brazil
Going to keep trying with other chars, I'll keep you posted if anything new shows up.
Lasagna
Re: Ikemen Plus
#35  December 10, 2017, 05:25:46 am
  • ***
Quote
they were patched with add004
you know that you need to first install add004 files since they are not included in the package by default, right? If you simply patched characters than that would be a reason - in such case please follow add004 readme how to enable it in ikemen. I didn't add it by default since it's often updated.

edit: from what I see add004 comes with script files - skip them since those are not needed and will overwrite the screenpack. Also common1.cns files should be placed in the data directory. I think I will include add004 by default soon to not confuse testers. If you have problems with it please test the screenapck with characters that haven't been patch yet.
Last Edit: December 10, 2017, 05:43:58 am by K4thos
Re: Ikemen Plus
#36  December 10, 2017, 05:33:02 am
  • ****
  • Hoping for the best, prepared for the worst.
  • 2D Fighting games forever!
    • Brazil
Tried with restored files, same error, different states.
Lasagna
Re: Ikemen Plus
#37  December 10, 2017, 05:42:34 am
  • ***
Quote
Going to keep trying with other chars, I'll keep you posted if anything new shows up.

(...)

Tried with restored files, same error, different states.
All that I need is repro steps. There's no need to check several characters when you have already found problematic one. Download ikemen from my github, download unpatched character and add it to select.def. If it doesn't work than send me a link to that character, so that I can test it. Once I can reproduce it locally it can be (probably) easily fixed.

Also please check out my edit in the previous post regarding add004.
Last Edit: December 10, 2017, 05:46:00 am by K4thos
Re: Ikemen Plus
#38  December 10, 2017, 06:41:25 am
  • ****
  • Hoping for the best, prepared for the worst.
  • 2D Fighting games forever!
    • Brazil
Found the problem, it was a conflict on the key mapping, but i've also noticed a few things.

-Team order select doesnt work.
-I've resized to 640x480 and the screen "eat" the characters at corners.
-Free match doesn't show win screen.
-ESCing in the middle of a arcade match takes you to continue screen.

Anyway, great fucking job dude, its amazing what you did to this engine, probably going finally drop mugen for good.
Lasagna
Last Edit: December 10, 2017, 06:48:48 am by -Ash-
Re: Ikemen Plus
#39  December 10, 2017, 08:02:06 am
  • ***
Quote
-Free match doesn't show win screen.
why would it? I can enable it there but that was intended for this mode (quick match without extra stuff, screens etc.).

Quote
-ESCing in the middle of a arcade match takes you to continue screen.
Another intended feature. During arcade you are limited how many times you can continue (see "Coins" counter in the upper left corner). If you don't have enough credits left (adjustable in Options) than you will automatically see "Game Over" screen if you try to go back via Escape. Esc in arcade mode is the same thing as losing the match.

Quote
-Team order select doesnt work.
need more details (exact repro steps)

Quote
-I've resized to 640x480 and the screen "eat" the characters at corners.
not sure what you mean. In this case screenshot would be useful.

-------------

Please try following this general bug reporting guide:
Quote
Try to go through the same steps you took to make the bug happen. The simpler the steps are the better, but it’s important to be precise so that I can isolate the cause easily and fix the problem. Of course post all repro steps in the report + what happens and what should happen (observed and expected behavior).

If the issue is related to graphics or text, take a screenshot.
Last Edit: December 10, 2017, 08:17:34 am by K4thos
Re: Ikemen Plus
#40  December 10, 2017, 08:24:20 am
  • ****
  • Hoping for the best, prepared for the worst.
  • 2D Fighting games forever!
    • Brazil
Quote
why would it? I can enable it there but that was intended for this mode (quick match without extra stuff, screens etc.).
I don't know, I just saw no reason to not have.

Quote
need more details (exact repro steps)
Never mind, I thought I was supposed to choose from highlighting the name, not by moving the character.

Quote
not sure what you mean. In this case screenshot would be useful.
Never mind², it was a problem from the mountain stage.

Sorry for the stupidity.

Ok, another thing, the victory screen from turns mode shows the characters from the first match, instead from the last.
Lasagna
Last Edit: December 10, 2017, 08:55:07 am by -Ash-