barbudreadmon / fbalpha-backup-dontuse-ty

Deprecated port of Final Burn Alpha to Libretro (v0.2.97.43).
61 stars 43 forks source link

Activation Cheats #135

Closed Darknior closed 5 years ago

Darknior commented 7 years ago

Hi

Impossible to find a solution to activate cheats like on MAME to add invincibility or infinite time to games. It is very important for children's, to make games possible to play with. Is some one plan to add this feature please.

Thanks

barbudreadmon commented 7 years ago

Sure, learning to kids that bad decisions have no consequences seems like a good thing. Well, when i was a kid, i had a NES, i finished all my games without cheats, and i have to say that games like ninja turtle on NES seems a lot harder than any game on fba.

Anyway, yes, at some point i'll take a look, because i heard some games have some feature, like additional characters, only available through those cheats.

daninthemix commented 7 years ago

Seconded. FBA has cheats. Retroarch has cheats as standard. Plenty of people won't even touch a core unless it has cheat support.

EDIT: it's worth mentioning that Neo Geo games have cheats already, accessible by using UniBIOS.

Darknior commented 7 years ago

Like i write i search cheat but for little childrens ! My little girl has 3.5 years old, so young to play well a game, but she want to play them ... For sure when she will be 6 years old i will not use cheats.

I know with UniBios we can use the cheat on NeoGeo, but i speak about the other games. The NeoGeo 1 vs 1 games are so hard for my little girl :p

Darknior commented 7 years ago

I finally understand for LR-MAME-2003 With the cheat file and activated in Retroarch game options, we can access cheat menu with right trigger :) And Dip Switch menu with F2. It works perfectly for children, free play, unlimited lives ...

On Neogeo with UniBIOS and A+B+C at NEOGOE logo.

But i don't find any solution on Final Burn for arcade games ... so bad :(

daninthemix commented 7 years ago

Yeah but between MAME and UniBIOS, you can cheat in pretty much every arcade game :)

Darknior commented 7 years ago

Noooo most games work well with FINALBURN and not MAME. Me in my collection I use a lot more FB MAME over PI is really old and less attractive ... That's why for me and my friends we believed cheat in FB are really important !

Smoker1 commented 7 years ago

For the 3DS and Vita Builds, I got Cheats working in MAME 2003 and obviously under the FBA NeoGeo Core. Also, not sure where I got them, but I grabbed ALL of the Cheat Files for the other Systems like PSX, SNES and the rest. These work great from what I have tested. The only problem now, is to get FBA CPS1 and CPS2 Cores to Accept the Official FBA Cheat Files that are in .ini Format unless there is a way to get them to comply with RA .cht File Format.

Darknior commented 7 years ago

How do you use cheat on FBA for Neogeo ? I'm very interesting for cheat on BFA CPS1 CPS2 ... too

barbudreadmon commented 6 years ago

If i understand correctly, MAME got his cheat implementation through its osd, i can't do that with fba. Anyone know about a libretro core using libretro's api to implement cheats ?

Joker5678 commented 6 years ago

@barbudreadmon Where talking about Video Games. Not kids stealing money from strangers. I don't think asking for cheat to be implemented is that big of a request.

andres-asm commented 6 years ago

nothing is a big request when you're not doing the work.

@barbudreadmon basically it passes the cheats in clear text from the cheat file into the core. The core then has to parse them and handle them as required.

barbudreadmon commented 6 years ago

@Joker5678 That's rich coming from someone who don't contribute. If it's such a small request, why not do it yourself ? Do you think i'm some kind of C/C++ guru ? Most of what i learned about C/C++, i learnt it by working on this project, anyone with some logic and curiosity can do the same.

@fr500 Do you have any core doing this in mind ? I wanted to see a working implementation before trying to implement it in fbalpha.

andres-asm commented 6 years ago

Simplest example is tyrquake:

void retro_cheat_reset(void)
{}

void retro_cheat_set(unsigned index, bool enabled, const char *code)
{
   (void)index;
   (void)enabled;

   Cmd_ExecuteString(code, src_command);
}

Basically you get a cheat in *code that's being forwarded to the internal commands.

Smoker1 commented 6 years ago

Cheats for the 3DS Builds of FBA Cores are easy to make if you have Gateway or other CFW that allows you to create Cheats. However, every time you Update the Cores, you will need to Find the Cheats again. For the Vita however, this is different. If I am correct, no Cheat Engine allows to run anything other than typical Game TitleID types (PCxx#####) like VitaCheat. -So there are 4 Options: ---Change TitleID to something other than RETROVITA. Suggest PCSE99999 or something else that starts with PCxx##### ---Allow for the Creation of Cheats in the RetroArch QuickMenu ---Allow for the use of FBA .ini Files along with .cht Files ---Post a Tut on getting .ini Cheats to the correct .cht Format

Smoker1 commented 5 years ago

As of 1.7.4 Build, Cheats can now be created for FBA. However, there are some Games that will not allow for Cheats to be Started or even Created for it. Not even trying to Load a Cheat will work, either. I started a Git that will Updated when I can, but I described how to create Cheats for CPS1, CPS2, and CPS3 Games. I even detail how to use the Official FBA, MAME Cheat Files as a Source, since the Addresses are VERY close to them. I also included a List of the Games that I cant get Cheats started for. I will notify the Libretro Git of this Issue https://github.com/Smoker1/RetroArch-174-and-above-Cheats

Darknior commented 5 years ago

Thanks a lot to works on FBA Cheats, i dream to use them like on MAME :D

barbudreadmon commented 5 years ago

@Smoker1 @fr500 @twinaphex is the new cheat creation feature relying on retro_get_memory_data/retro_get_memory_size functions ? Only CPS 1/2/3 and neogeo were hooked into this at the moment.

andres-asm commented 5 years ago

Honestly I don't know, I think it should rely on memory maps to avoid affecting saving.

furiadeoso commented 5 years ago

Savestate files have been enlarged? That could have a negative impact in netplay, haven't it?

barbudreadmon commented 5 years ago

@furiadeoso they didn't, i won't accept any change to the content of the savestates except in agreement with upstream.