Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

Universal Fighting Engine 2

Discussion in 'Assets and Asset Store' started by Mistermind, Jul 20, 2018.

  1. swantonb

    swantonb

    Joined:
    Apr 10, 2018
    Posts:
    150
    Well I took flux capacitor from the latest version then from there i took like 20 scripts independently and some functions in UFE, a lot has changed since the version I am in. But now it's not better, now im getting disconnected, lol. So basically the disconnect works as intended now.

    yup it's toggled

    I also took your latest version and just built it for windows and gave it to the test team, this is what they got in the first match: https://gyazo.com/a33d9bdfd645f2cc1915a6da60cb2700

    This is bound to happen, all your examples show only one input at a time or similar. In a fighter game input spamming is bound to happen, when users spam the input or they dont have a perfect connection, which is ALL THE TIME BECAUSE PERFECT PING DOESNT EXIST, then this will happen.

    All this code design for multiplayer is bound to fail. So now that you've mentioned being a game developer. Who ever taught you that syncing input in a multiplayer game is a good idea? Have you heard of RPCs? Also who ever taught you that if the game desyncronises its a good idea to disconnect? Now you have a not working fighter 'engine'. Because the players will be UNSYNCED all the time due to a million reasons. Do you think disconnecting is the correct thing to do here? You should SYNC the stuff my bro, if its unsynced then SYNC IT! Make it skip a frame or two or 10 but then it comes back in the position from the master server.

    Why did you not use a simple photon view for syncing the player transform, so even if one frame its not in sync then the next frame it's just synced it where it should. Same for damage, animator parameters if you needed, basically for everything, RPCs my bro! RPCs cant really get lost, and they are called for both players if you want to.

    I understand all the fancy inspectors and all the work that has been done in this engine, it's pretty cool stuff not gonna lie but your multiplayer approach isnt really suited for this kind of game. Just the thought of syncing inputs, damn, thats crazy. I dont think input syncing is suited for any kind of game, but im probably wrong, im not an expert. But just imagining i'd make a fps game and instead of syncing the player's transform or sending rpcs or syncing a bool "isFiring" i just sync the WASD keys and the left mouse button and then expect the players are in correct sync.

    Now i have to apologise for this rant again but it's just because i've spent months developing on this project and we gonna have to rewrite the multiplayer. You think I care about getting a refund now? We are working on this project for months and need to have it delivered in like maximum 1 month but we find out last minute that the multiplayer design was broken all the time. Hope you understand.
     
    Last edited: Dec 13, 2022
  2. Vagabond_

    Vagabond_

    Joined:
    Aug 26, 2014
    Posts:
    1,145
    Hi @Mistermind

    i did ask in the forums but no reply so far...
    http://www.ufe3d.com/forum/viewtopic.php?id=3866

    We need an option to play online against a friend... i.e. create a custom room and share the room name to a friend so he can join this specific room.

    At first we got confused that the "Room Match/Host Game" does exactly that as it doesn't say "LAN" game anywhere even more, "Default Host Screen" calls the base.OnShow() in its parent class "HostGameScreen" which sets "UFE.multiplayerMode = UFE.MultiplayerMode.Online;" which is confusing... Is this "Host Game" in "Room Match" option also working for creating an online game or is it only for LAN games ?

    If above is correct and it's LAN only, how we would go about creating an option to let players create a custom room so a friend can join that exact room... this is a client request so we have to find a way to implement it ! We use Photon Network and UFE 2.5.1 Source version !

    Please suggest !

    Thanks !
     
  3. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    You asked your question yesterday. We don't offer 24 hours support. Please wait to be answered. For more on support read this:
    http://www.ufe3d.com/forum/viewtopic.php?id=374

    You are referring to the fact that the Room Match option for the WebGL demo in the demo page is not functional (it has just been recently reported).
    The feature works, its just broken in the demo. I'm working on a fix as we speak, but the option works if you compile it yourself.
     
    Last edited: Dec 13, 2022
  4. Vagabond_

    Vagabond_

    Joined:
    Aug 26, 2014
    Posts:
    1,145
    Hi, no... that's not the case !

    1 - i decided to ask here as well just in case. No disrespect or offense ! Just not sure how active the forum is ! Also, no need to earn karma points in forum for now, just need to get the job for a client done.
    2 - in our case it turns out that Photon network connects two different devices connected to same network to different servers thus they couldn't find a match.

    What i was referring to is the option to create let's say private room where only a person that has the room name and the pass can join the game... At first we though hosting game is LAN only which is not the case. However, i just noticed that if i create a new match using the Host Game screen with specific name, any other player that click on "Random Match" will join that match if it is the only one available which makes hosting game a bit useless without a pass or a filter as anyone looking for random match can join the custom match !

    Any suggestion is highly appreciated !

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

    Also, i would like to point out a few things if you decide to have a look at fixing/improving. No need to answer here !

    1. If there are two new players looking to play online in case no available matches are present, in case they press the "Random Match" button at the same time or so, both devices will try to find a match for like 5-6 seconds and then both will create a match, but non of the devices tries to connect to the match created by the other player. They just stay on that screen until someone else starts looking for a game or one of the players gets back to main menu and then start searching a match ! With more players online, a player might not notice that, but sometimes it might happen players wait instead of play.

    2. If you press "Create Game" button twice in the Host Game screen, Photon throws an error and sometimes disconnects the client where the game has to be restarted in order to be able to join a lobby again !

    3. It did happen a few times where client gets disconnected while in match and then the UI becomes inactive -> we noticed the EventSystem stayed disabled. Not sure why this happens !

    4. The "Refresh" button in the "Join Game" screen stays next to Ping, but does actually refresh the game list which is unintuitive. Player does not understand what happens when this button is pressed !

    5. These options do not seem to have an effect even in the PC demo. Game always uses Round Options from GlobalSettings !

    upload_2022-12-13_23-45-17.png

    Cheers !
     
    Last edited: Dec 13, 2022
  5. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    I believe you must be referring to how Photon separate users by region.
    You can change the region settings under the file "\Photon\PhotonUnityNetworking\Resources\PhotonServerSettings"
    Here is how region works on Photon:
    https://doc.photonengine.com/en-us/pun/current/connection-and-authentication/regions

    For more on those options check out this page:
    http://www.ufe3d.com/doku.php/global:network#setup


    Ah, I see what you mean. There are many ways to accomplish this, but I guess the easiest way should be to just add a string next to the room match names and filter those from the matches found on the Random Match Screen.
    You will need to change a few files:
    Under DefaultJoinGameScreen.cs, look for this code under the JoinGame function (line 57):
    Code (CSharp):
    1. FindAndJoin(matchName.text);
    And change it to this:
    Code (CSharp):
    1. FindAndJoin("RoomMatch_" + matchName.text);
    Under DefaultHostGameScreen.cs, look for this code under the StartHostGame function (line 45):
    Code (CSharp):
    1. UFE.multiplayerAPI.CreateMatch(new MultiplayerAPI.MatchCreationRequest(textUI.text, 3, true));
    And change it to this:
    Code (CSharp):
    1. UFE.multiplayerAPI.CreateMatch(new MultiplayerAPI.MatchCreationRequest("RoomMatch_" + textUI.text, 3, true));
    Finally, look for this code under the OnMatchesDiscovered function:
    - If you have the PRO or Standard version: Under DefaultSearchMatchScreen.cs, line 16.
    - If you have the Source version: Under SearchMatchScreen.cs, line 133.
    Code (CSharp):
    1. if (matches[i] != null)
    And change it to this:
    Code (CSharp):
    1. if (matches[i] != null && !matches[i].matchName.Contains("RoomMatch_"))
    I tested it and it seems to work fine. I'll rework the code into something more elegant in the next update.

    That is just the nature of how the algorithm works. All these systems are just the skeleton of what you, as developer, can work on top of.
    That said, I'm always trying to improve on the little details, so thanks for the reports.
     
    Vagabond_ likes this.
  6. Vagabond_

    Vagabond_

    Joined:
    Aug 26, 2014
    Posts:
    1,145
    Thanks a ton... i was thinking of trying to filter the lists somehow after some time looking at the code as well.
    Your suggestion works beautifully !
    So much appreciated !
    Cheers !
     
    Mistermind likes this.
  7. Vagabond_

    Vagabond_

    Joined:
    Aug 26, 2014
    Posts:
    1,145
    Hi @Mistermind

    There seems to be an issue with networking ( we're using Photon, i'm not sure for other APIs ).

    If a device (desktop, android etc.) looses connection to internet in menu, then it is not possible to create or join a game until we restart the game. This is also happening in the UFE Desktop Demo !

    This is the output message:

    upload_2022-12-20_13-45-29.png

    Also UFE.multiplayerAPI.IsConnected() return false when we debug when trying to join random match !

    Can we somehow force UFE to try check and re-connect in that case so the user should not restart a game !?
     
  8. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    You can add a "reconnection" statement in the OnDisconnected event located under the inherited class PhotonConnector, like so:
    Code (CSharp):
    1. public override void OnDisconnected(DisconnectCause cause)
    2.     {
    3.         if (debugInfo) Debug.Log("PhotonConnector.OnDisconnected : " + cause);
    4.         this.RaiseOnInitializationError();
    5.         Initialize(_uuid); // Add this line
    6.     }
    7.  
    Look for the function above under the file PhotonConnector.cs and add the line that says "// Add this line". This will reinitiate Photon's connection procedures if the player disconnects from the server. You might want to refactor this later into a more elegant solution. Something like this can generate an infinite loop in case of internet instability.
    For more on Photon and its callbacks, checkout this page:
    https://doc.photonengine.com/en-us/pun/current/getting-started/dotnet-callbacks

    Ideally you also want to create your own login screen "shell" in between the multiplayer button and the online match options using your own database solution, then move all the connection statements to that screen after the login is validated.

    A better online interface "out of the box" will be available on UFE 3. Stay tuned for more news in January.
     
    Vagabond_ likes this.
  9. Vagabond_

    Vagabond_

    Joined:
    Aug 26, 2014
    Posts:
    1,145
    Hi,
    thanks for the suggestions. I did add a flag in PhotonConnector setting it to true/false where needed and i'm able to try reconnect using a custom method now. Seems to do the job for now so thanks for the help again !

    Cheers !
     
    Mistermind likes this.
  10. dnaxcatx

    dnaxcatx

    Joined:
    Jan 6, 2023
    Posts:
    1
    When will UE3 be released?
     
  11. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    I don't have a date yet, but I'll have some news about it very soon. Stay tuned.
     
  12. ultimatefightingbuilders

    ultimatefightingbuilders

    Joined:
    Jun 21, 2020
    Posts:
    1
    Please can you put me forward to someone who can help me make my game. I've been quoted £70,000 for my idea and simply cant afford it.
     
  13. RetroX0

    RetroX0

    Joined:
    Apr 26, 2020
    Posts:
    2
    @Mistermind I’m trying to start a new UFE project but when I installed it I got compiler errors relating to the Network connectors. I’m using Unity version 2022.2.7f1 and I believe the scripts are trying to use UNet, which no longer works. Is there anyway to fix this? DB7ED2D7-C49F-4BAF-A179-1C58CFB260EA.png
     
  14. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    Version 2022.2 is not an official release, its a pre-release. That is why you are getting those errors.
    I've tested it with version 2022.1 and it works just fine.

    If you'd like to keep using the pre-release version and fix these errors yourself, checkout this post:
    http://www.ufe3d.com/forum/viewtopic.php?pid=13737#p13737

    I should get version 2.5.2 out next month along with the full removal of UNet libraries.
     
  15. csplgamedev

    csplgamedev

    Joined:
    Aug 9, 2021
    Posts:
    1
    Is it possible to change the ufe2 using mirror networking. If yes how do I change it?
     
  16. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    There is no support for Mirror networking out of the box. If you want to change your network settings to a different server provider I recommend extracting the files from "Photon2APIConnector.unitypackage" (under UFE\Engine\ThirdPartySupport) and adapting the listeners to read from Mirror instead.
    If I have sometime I'll see if I can implement support for this particular service on UFE 3.
     
  17. Duckduckguz

    Duckduckguz

    Joined:
    Jun 26, 2022
    Posts:
    3
    Hey,
    I'm having a bit of a problem with my version of UFE 2.5D. I do exactly what is instructed in the video tutorial, but my character is not loading correctly. I've tried it multiple times, each time checking over to see if I've done the correct thing, but every time I get the same message:

    NullReferenceException: Object reference not set to an instance of an object
    UFE3D.HitBoxesScript.Start () (at <aa04d077bee7445887c4a4ca47e6a2bb>:0)

    Is there any way y'all could help me?
    Thanks.
     
  18. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    It seems like you might have some hitboxes with an invalid link (None):
    upload_2023-3-27_23-56-10.png
     
  19. Duckduckguz

    Duckduckguz

    Joined:
    Jun 26, 2022
    Posts:
    3
    Weird. I looked and everything was attached to what it was supposed to be attached to. I'm not exactly sure what the problem is, but it sends many messages in the Console.
    i.e.
    IndexOutOfRangeException: Index was outside the bounds of the array.
    DefaultCharacterSelectionScreen.SetHoverIndex (System.Int32 player, System.Int32 characterIndex) (at Assets/UFE/Engine/Scripts/UI_Templates/DefaultCharacterSelectionScreen.cs:263)
    CharacterSelectionScreen.OnShow () (at <aa04d077bee7445887c4a4ca47e6a2bb>:0)
    DefaultCharacterSelectionScreen.OnShow () (at Assets/UFE/Engine/Scripts/UI_Templates/DefaultCharacterSelectionScreen.cs:409)
    UFE.ShowScreen (UFE3D.UFEScreen screen, System.Action nextScreenAction) (at <aa04d077bee7445887c4a4ca47e6a2bb>:0)
    UFE._StartCharacterSelectionScreen (System.Single fadeTime) (at <aa04d077bee7445887c4a4ca47e6a2bb>:0)
    UFE+<>c__DisplayClass328_0.<StartCharacterSelectionScreen>b__0 () (at <aa04d077bee7445887c4a4ca47e6a2bb>:0)
    FluxCapacitor.ExecuteLocalDelayedActions () (at <aa04d077bee7445887c4a4ca47e6a2bb>:0)
    FluxCapacitor.ApplyInputs (System.Int64 currentFrame) (at <aa04d077bee7445887c4a4ca47e6a2bb>:0)
    FluxCapacitor.DoFixedUpdate () (at <aa04d077bee7445887c4a4ca47e6a2bb>:0)
    UFE.FixedUpdate () (at <aa04d077bee7445887c4a4ca47e6a2bb>:0)

    NullReferenceException: Object reference not set to an instance of an object
    UFE3D.HitBoxesScript.Start () (at <aa04d077bee7445887c4a4ca47e6a2bb>:0)

    No cloud project ID was found by the Analytics SDK. This means Analytics events will not be sent. Please make sure to link your cloud project in the Unity editor to fix this problem.
    UnityEngine.Debug:LogError (object)
    Unity.Services.Analytics.AnalyticsServiceInstance:.ctor () (at Library/PackageCache/com.unity.services.analytics@4.2.0/Runtime/AnalyticsServiceInstance.cs:55)
    Unity.Services.Analytics.AnalyticsService:.cctor () (at Library/PackageCache/com.unity.services.analytics@4.2.0/Runtime/AnalyticsService.cs:7)
    UnityEngine.GameObject:AddComponent<Unity.Services.Analytics.AnalyticsLifetime> ()
    Unity.Services.Analytics.ContainerObject:Initialize () (at Library/PackageCache/com.unity.services.analytics@4.2.0/Runtime/Runtime/AnalyticsLifetime.cs:88)
     
  20. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    Can you show me a screenshot with the (scene preview and console loaded) when the error happens? Also, are you using a different prefab for alternative costumes?
     
  21. Duckduckguz

    Duckduckguz

    Joined:
    Jun 26, 2022
    Posts:
    3
    I do not have any alternate costumes, just the base prefab and that's it.
    This is where it happens:
    Screenshot 2023-04-01 162849.jpg
    I am using the 3D Character Selector rather than the UI one, but even if I use the basic UI, the battle won't load. The console only sends the same two messages over and over again. What should I do?
     
  22. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    Try checking the first error that shows in the console. It might give you a better hint of what is happening.
    Alternatively, try unpacking UFE in a new project and repeating the installation process. Perhaps you missed a step or accidently changed some setting during your first attempt. Repeating the process will probably also help you find what caused the issue in the first place.

    Edit:
    I just noticed this error from your first report. It seems like it could be the missing profile picture in the character editor.
     
  23. Triarios

    Triarios

    Joined:
    Oct 29, 2014
    Posts:
    5
    Does UFE have built-in support for user-swappable moves, along the lines of v-skills in Street Fighter 5, where one input maps to a different move depending on a selection made on the character select menu before the match? Or would I have to implement something like that on my own?

    I'm also curious whether it has support for buffs/status effects, for example, a move applies an effect to my character that reduces incoming damage by 30% for 15 seconds.
     
  24. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    Yes. You can use move stances to switch between move groups.
    Here, take a look at this page:
    http://www.ufe3d.com/doku.php/character:movesets

    You can also test how it works by selecting the character "Ethan" in the demo and executing his activation super (Press Button 1 and Button 2 at the same time when the bar is full). The character switches move set to one where each attack hits twice.
     
  25. Triarios

    Triarios

    Joined:
    Oct 29, 2014
    Posts:
    5
    I'm not quite sure how to apply that in this case. I'm not looking to swap out entire movesets; I just want each character to have two player-assignable "slots" for moves that they pick from a list before a match, leaving the rest of the character's moveset unchanged.
     
  26. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    I'm not sure I understand what you want, but there isn't anything out of the box for that. It shouldn't be hard to load different move sets before a match start though. There are many ways to accomplish this:
    - You can add a script at the character selection that changes which move set gets loaded (from the Resource folder) under the character file.
    - You can make multiple move stances and have the script change the order of stances so the one you want loaded is the first stance on the list.
    - Have a script change the current loaded stance at runtime right when the match starts. You can directly change the stance by executing this function under MoveSetScript. This line changes the current move stance (from player 1) to stance 2.
    Code (CSharp):
    1. UFE.GetControlsScript(1).MoveSet.ChangeMoveStances(CombatStances.Stance2);
    For more on coding check out this page:
    http://www.ufe3d.com/doku.php/code
     
  27. Triarios

    Triarios

    Joined:
    Oct 29, 2014
    Posts:
    5
    What I want to do is similar to picking your v-skill and v-trigger in SF5. For a simplified example, let's say my character has just 4 attack buttons - button 1 is a jab, button 2 is an uppercut, but buttons 3 and 4 don't have a specific move assigned to them. Instead, on the character select screen, there's a pop-up list with several moves that the player can assign to each of those buttons. Maybe in one match the player assigns a fireball to button 3 and a parry to button 4, but then the next match they change it to a grab on button 3 and a dash punch on button 4.

    I'm not seeing how loading different stances accomplishes this - it's more like I want to swap out a couple of moves within a stance, along with changing what inputs are assigned to those moves so they match the player's selections. It sounds like I'm going to be on my own implementing this, but any advice you have would be appreciated.
     
  28. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    Humm.. Maybe you could make it so specific moves have a required gauge from a specific gauge that only has value when the V-Skill is active (rather in game or through a preceding menu):
    http://www.ufe3d.com/doku.php/move:gauge

    The code to do this would be:
    Code (CSharp):
    1. UFE.GetControlsScript(1).currentGaugesPoints[3] = 100; // 1 = player 1; 3 = gauge 4
     
  29. MTegarAsta

    MTegarAsta

    Joined:
    Oct 23, 2019
    Posts:
    39
    hi, i was trying to make spectator, but i don't want to use live streaming stuff because that eat so much pc resources and i know it's not possible to have 3 players in 1 room (or maybe can?), so my idea is to use replay mode then a player send us the recording data to me so i can see it, it's that possible?
     
  30. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    That is possible, but it will take some code.
    You can start by looking at how the recording process is saved under the ReplayMode class (recordedFrames), then store the data onto a an external file in JSON format.
     
  31. MTegarAsta

    MTegarAsta

    Joined:
    Oct 23, 2019
    Posts:
    39
    I try serialize it to Json but i get empty Json instead {}, any idea why? (i already make the class to serialized)
     
  32. FreedTerror

    FreedTerror

    Joined:
    May 19, 2017
    Posts:
    17
    I also tried to save FluxStates JSON and got an empty JSON (I couldn't figure out why either).
    I did have success using Easy Save 3 but, the file size was MASSIVE. 124MB for 360ish flux states.
     

    Attached Files:

  33. timerace

    timerace

    Joined:
    Feb 27, 2019
    Posts:
    24
    Hello @Mistermind I would to upgrade from standard to pro but I saw that ufe3 is coming, is there any eta on that will I get any discount on purchases if I upgrade to pro right now?
     
  34. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    No ETA yet. There will be a period of invitation first (UFE 2 Source owners only) due to a new experimental technology. If your plan is to just have a 1v1 fighting game, stick with UFE 2. UFE 3 will not replace it.
     
  35. timerace

    timerace

    Joined:
    Feb 27, 2019
    Posts:
    24
    I'm waiting for mirror networking and tag team. Will those features come in ufe 3 or is there any update planned for ufe 2?
     
  36. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    About Networking:
    I can't say for sure I will have time to add support for different network solutions. These products often use slightly different approaches, but lots of them wants you to use their own physics components, which is not something you need for UFE.
    As far as Network goes, UFE is really only concerned with sending input data (you can learn more about it in this video).
    I could make things slightly simpler by adding a "custom multiplayer class" selection under the network options, but that is just a blank class (inherit from MultiplayerAPI) for you to introduce your own listeners to connect to UFE events (instead of replacing code on top of the Photon examples)
    The example available is just used as a server bridge. Any server interaction can be done by following the tutorials provided by the service you've chosen, and the true connection to UFE is done by a single method available under PhotonMultiplayerAPI.cs (SendNetworkMessage).

    About Tag Team:
    That option will only be available on UFE 3, and I haven't started working on it just yet.
     
  37. UDN_79b7bb17-7977-49df-a9e1-3322274a29d1

    UDN_79b7bb17-7977-49df-a9e1-3322274a29d1

    Joined:
    Sep 21, 2017
    Posts:
    1
    Hello ! I've been developing a 2d fighting game using ufe2 and i'm having an issue regarding input. (i need to call the actions/movements using UI buttons from Unity) Please can you give me an advice of how should i do that ?
     
  38. LilGames

    LilGames

    Joined:
    Mar 30, 2015
    Posts:
    520
    Off-topic: How did you come up with your user name?
     
  39. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    Are you referring to mobile touch controls? If so, you can try a template that comes with UFE by going to Global Editor -> Inputs and switch the Input Manager to "Custom Class". With that selected, go to your Hierarchy, select "UFE Manager" and add a component called "GUIControlsInterface". Hit play and you will see gui buttons representing controls for player 1. This script is open source and customizing is rather simple.
    If you want to use a Third Party tool however, you can select between Control Freak or Rewired. The creator from Control Freak created a video tutorial as well:


    For more on inputs check out this page:
    http://www.ufe3d.com/doku.php/global:input

     
    LilGames likes this.
  40. MTegarAsta

    MTegarAsta

    Joined:
    Oct 23, 2019
    Posts:
    39
    hi is there a way when K.O the game speed become 0 for a period of time? like Street Fighter 5? currently is capped at 0.01
     
  41. Mudpunk

    Mudpunk

    Joined:
    Jun 23, 2023
    Posts:
    1
    Hi, complete nooby to both Unity and UFE 2, so I apologize if this question should be posted somewhere else. I just installed Unity and downloaded UFE 2. When I try to follow along with the tutorial "How To Set Up A 2D Fighting Game: Universal Fighting Engine 2 Game Creation Part 1" I get the following error message "You are trying to import an asset which contains a global game manager. This is not allowed." Any help would be greatly appreciated.
     
  42. Seraphim1983

    Seraphim1983

    Joined:
    May 2, 2015
    Posts:
    1
    Same crashes with Fuzzy AI on WebGL build in UFE 2.5.1 in Unity 2022.3.0f1
    WebGL works if skip all rules with AIRule.Rule_NOT in GenerateInferenceSystem() method

    Crashed rule:
    Generated Rule: 28 IF 001_AttackingOpponent IS TRUE AND (009_Attacking_UFE3D.HitType_Opponent IS NOT Low AND 009_Attacking_UFE3D.HitType_Opponent IS NOT Sweep) AND (017_Attacking_CurrentFrameData_Opponent IS StartupFrames OR 017_Attacking_CurrentFrameData_Opponent IS ActiveFrames) THEN 009_StandBlock IS VeryDesirable

    Firefox logs:
    Code (csharp):
    1.  
    2. ArgumentException: Linguistic label NOT was not found on the variable 009_Attacking_UFE3D.HitType_Opponent. at AForge.Fuzzy.Rule.ParseRule () [0x00000] in <00000000000000000000000000000000>:0 at AForge.Fuzzy.Rule..ctor (AForge.Fuzzy.Database fuzzyDatabase, System.String name, System.String rule, AForge.Fuzzy.INorm normOperator, AForge.Fuzzy.ICoNorm coNormOperator) [0x00000] in <00000000000000000000000000000000>:0 at AI4Unity.Fuzzy.InferenceSystem.NewRule (System.String name, System.String rule) [0x00000] in <00000000000000000000000000000000>:0 at UFE3D.AIInfo.GenerateInferenceSystem () [0x00000] in <00000000000000000000000000000000>:0 at RuleBasedAI.SetAIInformation (UFE3D.AIInfo ai) [0x00000] in <00000000000000000000000000000000>:0 at RuleBasedAI.SetAIInformation (UnityEngine.ScriptableObject ai) [0x00000] in <00000000000000000000000000000000>:0 at System.Reflection.RuntimeMethodInfo.InternalInvoke (System.Object obj, System.Object[] parameters, System.Exception& exc) [0x00000] in <00000000000000000000000000000000>:0 at System.Reflection.RuntimeMethodInfo.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <00000000000000000000000000000000>:0 at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <00000000000000000000000000000000>:0 at UFE.SetFuzzyAI (System.Int32 player, UFE3D.CharacterInfo character, UFE3D.AIDifficultySettings difficulty) [0x00000] in <00000000000000000000000000000000>:0 at UFE.SetFuzzyAI (System.Int32 player, UFE3D.CharacterInfo character) [0x00000] in <00000000000000000000000000000000>:0 at UFE._StartGame (System.Single fadeTime) [0x00000] in <00000000000000000000000000000000>:0 at UFE.StartGame (System.Single fadeTime) [0x00000] in <00000000000000000000000000000000>:0 at UFE3D.LoadingBattleScreen.StartBattle () [0x00000] in <00000000000000000000000000000000>:0 at FluxCapacitor.ExecuteLocalDelayedActions () [0x00000] in <00000000000000000000000000000000>:0 at FluxCapacitor.ApplyInputs (System.Int64 currentFrame) [0x00000] in <00000000000000000000000000000000>:0 at FluxCapacitor.DoFixedUpdate () [0x00000] in <00000000000000000000000000000000>:0 at UFE.FixedUpdate () [0x00000] in <00000000000000000000000000000000>:0 Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation. at System.Reflection.RuntimeMethodInfo.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <00000000000000000000000000000000>:0 at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <00000000000000000000000000000000>:0 at UFE.SetFuzzyAI (System.Int32 player, UFE3D.CharacterInfo character, UFE3D.AIDifficultySettings difficulty) [0x00000] in <00000000000000000000000000000000>:0 at UFE.SetFuzzyAI (System.Int32 player, UFE3D.CharacterInfo character) [0x00000] in <00000000000000000000000000000000>:0 at UFE._StartGame (System.Single fadeTime) [0x00000] in <00000000000000000000000000000000>:0 at UFE.StartGame (System.Single fadeTime) [0x00000] in <00000000000000000000000000000000>:0 at UFE3D.LoadingBattleScreen.StartBattle () [0x00000] in <00000000000000000000000000000000>:0 at FluxCapacitor.ExecuteLocalDelayedActions () [0x00000] in <00000000000000000000000000000000>:0 at FluxCapacitor.ApplyInputs (System.Int64 currentFrame) [0x00000] in <00000000000000000000000000000000>:0 at FluxCapacitor.DoFixedUpdate () [0x00000] in <00000000000000000000000000000000>:0 at UFE.FixedUpdate () [0x00000] in <00000000000000000000000000000000>:0
    3.  
     
    Last edited: Jun 24, 2023
  43. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
  44. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    Try removing any rule with the "NOT" keyword attached to it under your AI Instruction file.
     
  45. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    This problem is not related to UFE. Here, I found a few links that might help:
    https://discussions.unity.com/t/unity-error/146910
    https://discussions.unity.com/t/get...lobal-game-manager-this-is-not-allowed/133381
     
  46. timerace

    timerace

    Joined:
    Feb 27, 2019
    Posts:
    24
    @Mistermind hello, can you please do a tutorial on how to add different weapons on runtime (like sword, spear) and change the animations accordingly. Is there any way to remove the weapons on a critical hit, so player and enemies can have 2 types of fighting style in 1 battle?
     
  47. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    There are some forum posts on the subject. These links might be useful:
    http://www.ufe3d.com/forum/viewtopic.php?pid=5449#p5449
    http://www.ufe3d.com/forum/viewtopic.php?id=883
    http://www.ufe3d.com/forum/viewtopic.php?id=586
    http://www.ufe3d.com/forum/viewtopic.php?id=513

    User christougher made a video tutorial a few years ago that is still useful today:
     
  48. saadneox

    saadneox

    Joined:
    Oct 26, 2016
    Posts:
    7
    Actually The Author is right but he just forget to implement it in the special moves / this mirror on right side feature will only work with basic moves if you want to make it work on the special moves you can add this to the controlscript.cs whit changing the x , y , z according to your needs

    Code (CSharp):
    1. if (particleEffect.particleEffect.mirrorOn2PSide&& mirror > 0)
    2.                 {
    3.                     pTemp.transform.localEulerAngles = new Vector3(pTemp.transform.localEulerAngles.x , pTemp.transform.localEulerAngles.y-180, pTemp.transform.localEulerAngles.z);
    4.                     Debug.Log(pTemp.transform.localEulerAngles.y);
    5.                 }
     
    Mistermind likes this.
  49. Gaurang_BackRock

    Gaurang_BackRock

    Joined:
    Jul 26, 2023
    Posts:
    2
    When running the map recorder for character, basic moves were recorded perfectly.
    But when start recording the special moves, it does not stop, keeps playing one animation multiple times.
    Tried for 5-6 times, but keep playing at one fixed animation for multiple times, how to fixed the issue for that animation or there is issue with the map recorder?
    Please can anyone help to fix this issue.
     
  50. Mistermind

    Mistermind

    Joined:
    Jun 8, 2013
    Posts:
    838
    You are correct. The best kind of correct.
    I just fixed the issue. Version 2.5.3 should be out very soon, along with news about UFE 3. Stay tuned.
     
    saadneox likes this.