[U.F.E. Addon] Fuzzy A.I.

1828982--118033--Logo_2.jpg

Fuzzy A.I. Rule Generator (or simply Fuzzy AI) is an open source Addon for Universal Fighting Engine designed to create a robust artificial intelligence for virtually any fighting game created with the tool.

Fuzzy AI overrides the default Random A.I. (available on all versions of UFE) by inheriting its methods and enhancing it with events, conditions and reactions using general fighting game mechanics and terminologies.

This add-on uses Fuzzy Logic to evaluate the information of the scene and calculate the desirability of each given action, translating the AI decisions directly into user input. In other words: the AI doesn’t cheat, it uses the same input system used by the player.

The UI tools uses fighting game terminology to generate custom rules designed specifically to read and respond to fighting game environments, as well as correctly execute any special move created with UFE.

Fuzzy AI uses the AI4Unity library (created by David Guitierrez), a port of AForge.Net used to translate the information of the scene into fuzzy values that are then used by the engine to define the character behavior.

Try it!
http://www.ufe3d.com/demo

Along the tool, this package also contain 14 instruction set templates ready to be applied to any character you have already designed.
Full documentation at A.I. Editor [Universal Fighting Engine].

UI Screenshots:

Easy to use Predefined Rules system:

Highly customizable Custom Rules System:

Generates Fuzzy Rules at any time for easy debugging:

Workplace (UFE + Fuzzy AI):

Videos:
Fuzzy AI Rundown

AI Template Creation

UFE 1.5 Overview made by Justin Hougie (included a few Fuzzy AI notes)

And much, much more…

Fuzzy AI is no longer sold separately. It’s now an integral part UFE 2 .

1 Like

Reserved

What’s up MisterMind I saw that so far the price of Fuzzy AI is $75.00 which I say is a nice low price for something so powerful. Oh by the way I also see that Fuzzy AI uses AI4Unity which sounds a little familiar to me. So MisterMind do you have any advice on how you used AI4Unity to create Fuzzy AI? I ask because since Fuzzy AI is still mainly an extension of UFE I’m curious of how I could make something an AI system in that same category ex: my own AI system for my fighting games. I know it’s most likely challenging to do something like this on my own but I’m willing to try since I’ve already downloaded AI4Unity anyway. In case you’re wondering I have AI4Unity in a project separate from my UFE game but not sure where to start with it although AI4Unity looks interesting indeed.

AI4Unity is a port of AForge.NET and several other .NET libraries created by David Gutierrez.

AForge.net is a library initially designed to handle fuzzy linguistic values. David basically created a port of these libraries so they could operate around Unity. Fuzzy AI then uses this as well and several other tools to interpret its answers into UFE commands, all without any programming knowledge required from the end user.

In other words, AIUnity is just one of the raw materials that compose this tool. Although its one of the key entries on the Fuzzy AI logic, it’s but a small part of the whole package.

I hope this answers your question

Cheers!

“open source” means will be available in Git or that the pack is not in DLLs and will be a paid asset ?

Second one. The package is not in DLLs, but fully open source scripts instead.

Ok, thanks for clarifying.

Hi MisterMind I see you’re still in the packaging process which I’m not surprised because man UFE has really evolved after all this time. I’ve also seen the documents on the UFE website have also been updated and I must say it looks nice and informative. I’m really excited about the release of UFE 1.5 and I’m already in love with Fuzzy AI just by reading about it in the documents because it’s the very thing that Unity needs as suppose to more pathfinding tools that seem to always be for shooting games. Well anyway looking forward to hear about your progress! Cheers bro!:slight_smile:

I find fuzzy ai package where you could find

Its not out yet Omar. Make sure you subscribe to this thread and I’ll keep everyone posted.

Fuzzy AI is now available on Sellfy:
https://sellfy.com/p/KLJL/

Package also sent to the Asset Store. I’ll let you guys know when they approve the package.

In the demo, I notice I can simply move forward while mashing the T (light punch key) repeatedly and win easily every time. The AI can’t even react and is continuously hit for over 50 times until it dies.

One solution would be to not let the player move forward while light punching, an alternative would be to knock back the enemy a farther distance.

Repeatedly mashing G (light kick) and crouching-G make it quite easy to defeat the enemy too. I suggest the AI simply block the majority of light attacks, as I think they are too fast and stun the AI for too long each time, causing a stun cycle the AI cannot escape.

By the way, I am the WORST player at these Streetfighter sort of games so there is NO way I should be able to win easily on the Hard setting, lol.

This is actually more a product of the characters than the AI. The characters aren’t really balanced for gameplay, they are just there to showcase what’s possible in with the engine. I’ve actually had the AI do the mash light infinite to me while testing! :slight_smile:

Please remember that UFE is a tool to make fighting games. It’s really up to you guys to make the gameplay balanced and fair.

Also, the AI configuration in the demo are default ones. When you make your own game, you’ll likely have custom ones for each of your characters so they play according to their preferred style.

1 Like

Thanks for clarifying that Yum Cha. I totally understand what you are saying regarding it being a tool.

But a tool that saves any amount of time is an even better tool. So it would still be nice to have a default AI setting out-of-the-box for “vanilla” characters that are reasonably balanced and fair… meaning no easy way to easily “cheat” like mash light infinite.

That’s why I love it when asset makers have demos… it lets me see how their assets perform out-of-the-box, and I can gauge how much work I have to put in to make it work the way I want (in other words, how much time I will save).

Although I agree that quality on demos matters, there are a lot more to analyze then how a demo plays.

If anything, this shows just how complex making games really is, and how much attention to detail you (the customer) need to put into your work.

Also, the last thing I want is sell a tool where people can just switch character models and call it a full product. We expect a lot more work from our customers. UFE and Fuzzy AI are here to expand your creative potential, not do all the work for you.

Afterall, a market full of mediquer “made in a weekend” UFE games would hurt your business more than it would hurt mine.

Hmm, I would respectfully disagree on some of your points. I sense I may have made you defensive with my (intended to be) objective critical observations, so apologies if it seemed I was knocking your asset (I’m not, I think it’s outstanding overall).

However, I didn’t appreciate some of your implications either. I for one certainly don’t intend to switch out characters from your asset and “ship a mediocre game” with it, and “hurt my business” by doing so. Why would you say such a thing to a potential customer who was simply trying to give helpful criticisms while considering purchasing it?

My strength is more in stories and storytelling, so I don’t want to worry too much about building a combat system from scratch. It’ll save me tons of time (and headaches and debugging) to simply buy your asset. I buy assets so someone else does critical work for me, work that I am unqualified to do, or lack the time to do. I doubt I could make a system as good as yours from scratch, no matter how much time I took.

But it would save me EVEN MORE time if the player can’t “cheat” by mashing light attacks right out-of-the-box. If you left that feature in there on purpose to keep customers from simply “switching characters and shipping a game” that’s like selling people cars with flat tires so they can’t speed and get a ticket.

I already gave a couple suggestions on how to put in a fix (suggestions I would have to implement myself if you don’t). I wasn’t commenting on the overall game balance, which I think works really well out-of-the-box, just on a simple isolated aspect of gameplay that can be exploited (and WILL be exploited because that’s human nature).

Any game I make with your asset will consist of backstory, objectives, career paths, skill progressions, final boss levels, storylines, user interface, and the final spit and polish – things that are not included in your asset. That will be the core of my game, and the thing that will actually take the most time.

Anyway, I’m not trying to be combative with you. But I buy tons of assets so I am always surprised when asset makers are somewhat reluctant to take suggestions on improving their product. You are not my computer science teacher and I don’t need you to “expect” work or anything else out of me.

I don’t know if anyone reading this has ever used the Dialogue System for Unity asset, but I think that guy should be the standard bearer for customer service.

So once again, my whole point is:

TL;DR
“It would be nice to not be able to defeat the default AI by repeating mashing light attack buttons.”

That’s it. It’s up to you to implement this change or not in the default package.

Anyway, I’m trying to be helpful with critical suggestions and not say your asset sucks. You should see some of my criticisms of, say, the RAIN Warfighter AI asset, or better yet, my last few posts blasting Shooter AI (with a completely non-defensive response from the asset maker).

Good luck with your asset and I’ll be watching it for further developments. I really like the whole package but the bundle together is a tad bit out of my price range at this point.

I understand sir, but what we were trying to say is that hammering on the fact that you can beat the A.I. due to an exploit should not be a deciding factor.

As explained by YamChaGames, the problem lies on one of the character’s animation files, (something you shouldn’t use in your final product) and the move’s frame advantage, allowing the character to repeatedly attack without being countered (even by another human).

And to quote myself again:
“If anything, this shows just how complex making games really is, and how much attention to detail you (the customer) need to put into your work.”

To enforce this point, here are a few fighting games that have (or had at some point) infinite combos or stun lock exploits such as the one you see on UFE

Street Fighter X Tekken:

https://www.youtube.com/watch?v=kpIlOkiNL7Y

https://www.youtube.com/watch?v=abcUaHBEeuA

https://www.youtube.com/watch?v=EG2wvzyypvU

https://www.youtube.com/watch?v=1fW84IxEdVo

Injustice - Gods Among Us:

https://www.youtube.com/watch?v=vKH04M2jbpQ

Ultimate Marvel vs Capcom 3:
https://www.youtube.com/watch?v=VoL6BCOU9PE
https://www.youtube.com/watch?v=ArOKjDQ0VC8
https://www.youtube.com/watch?v=ZtKOnKPX_Zo
https://www.youtube.com/watch?v=eK3YseTHEBQ

Mortal Kombat 9:
https://www.youtube.com/watch?v=YsdDhdUPSkU

Marvel vs Capcom 2:
https://www.youtube.com/watch?v=dqxTVpX_Zm8

Street Fighter 4:
https://www.youtube.com/watch?v=9_Jb2L14tjo
https://www.youtube.com/watch?v=-U-PMvvFq38

And much, much more (probably 90% of all fighting games).
As you can see, none of these problems are related to A.I., but the people that used the tools to balance their games in the first place. That is not saying they are lazy, but that this job requires a lot attention to detail.

To have an idea of the details involved, here are a few tutorial on how to set that kind of data is set on UFE:
Character Hitbox: http://www.ufe3d.com/doku.php/character:hitbox
Move Editor → Animation Options: http://www.ufe3d.com/doku.php/move:animation
Move links and animation cancel: http://www.ufe3d.com/doku.php/move:chainmoves
Hit stun, block stun, startup, active and recovery frames: http://ufe3d.com/doku.php/move:activeframes

Btw, none of previous comments were directed at you. When I mentioned “you” I was refering to customers in general. This may have clouded your judgment and understanding of what we were trying to say.

Just remember: If you plan on making fighting games, that is the kind of “bug fixing” you will be doing on your own game, and as the roster increases, expect it to be rather frequent.

Yikes! I never knew the stun-lock problem was so widespread.

They have always been there, ever since SF2. Its just that now we have internet and in some of these games, thousands of people trying to break 'em and post a video about it :wink: