Hello.

Some weeks ago we "updated" our project to UFE2 (2.1).
We have a lot of throws in our game, which can be performed by pressing two buttons at once (for example LP+RP or LK+RK).
This worked very well in UFE 1.8, but there seems to be a problem with UFE 2.x:

If the player is pressing rapidly the two buttons, the throw-attempt-animation starts over and over again. The opponents throw-reaction animation plays properly.

I tried that with a clean UFE 2.1 installation with the same result (Robot Kyles Throw): The character everytime cancels its throw-animation and starts with the throw-attempt as soon as you press the two buttons.


To give you a better understanding of the problem I made a short (not listed) Youtube-Video:

https://youtu.be/Ijr78at0eY0



If you set a sequence as input (forward, LP+RP or forward, LP), the problem no longer occurs. But we want to have Tekken-style throws in our game.

Thank you and best regards

Works great now. Thank you.

Hello again.

There is another problem during the outro-animaton. Particle-effects set in the move-editor are not visible in the game.
During the fight, all the particle-effects work fine, also during the intro-animation.

I tried to find the error by myself in UFE.cs and ControlScript.cs. It seems that all the info which is needed for spawning the new GameObject is correct (Name, Parent Object, Destruction Timer ... etc). But it does not show up in the Hierarchy-Window.

I tested this with a clean UFE 2.1 installation with the same result: no particle-effects during outros.

Hello.

I had a problem with the menu after a (local) versus-battle.
After K.O., the outro-animation started. I have an 8 seconds-outro, but the menu showed up after 3.5 seconds.
So I changed "End Game Delay" in the global settings (round settings) to "8". The menu still showed up after 3.5 seconds, no matter what value I entered into the "End Game Delay"-field.

It took me a lot of time, but I found a solution for this:

Find the script "BattleGUI.cs" (Assets->UFE->Engine->Scripts->UI->Base ...)

and change line 150 from:

UFE.DelaySynchronizedAction(this.OpenMenuAfterBattle, 3.5);

to:


UFE.DelaySynchronizedAction(this.OpenMenuAfterBattle, UFE.config.roundOptions._endGameDelay);

I am not sure if this "End Game Delay"-setting is supposed to be used for this, but it works for my project.

http://www.ufe3d.com/doku.php/prices

Hello.

After creating a fresh and clean new Unity2017.3.0f3 project I imported the current UFE source bundle from Asset-Store and the Fuzzy-AI Bundle (https://assetstore.unity.com/packages/t … ndle-24821)

After import I got tons of obsolete-warnings. For example:

Assets/UFE Addons/Network Support/RemotePlayerController.cs(17,12): warning CS0618: `UnityEngine.GUIText' is obsolete: `This component is part of the legacy UI system and will be removed in a future release.'
Assets/UFE/Scripts/UFE.cs(1849,43): warning CS0618: `UnityEngine.GUIText' is obsolete: `This component is part of the legacy UI system and will be removed in a future release.'
Assets/UFE/GUI/Custom/Battle GUI/Battle UI/battlegui.cs(6,11): warning CS0414: The private field `battlegui.animator' is assigned but its value is never used
...

And a lot of UI-related warnings:
Cannot add menu item 'GameObject/UI/Text' for method 'MenuOptions.AddText' because a menu item with the same name already exists.
Cannot add menu item 'GameObject/UI/Image' for method 'MenuOptions.AddImage' because a menu item with the same name already exists.
Cannot add menu item 'GameObject/UI/Toggle' for method 'MenuOptions.AddToggle' because a menu item with the same name already exists.
...

Besides the warnings, there are some critical errors, which prevents running the engine:
Assets/UFE Addons/Fuzzy AI/Runtime/RuleBasedAI.cs(1365,97): error CS0117: `PossibleStates' does not contain a definition for `StraightJump'

This was also asked by a customer on the asset shop two months before and not (publicly) answered. sad
(Scroll down to read the review: https://assetstore.unity.com/packages/t … ndle-24821

I tried to fix that errors by myself in the RuleBasedAI.cs and changed all three "PossibleStates.StraightJump"-variables  to "PossibleStates.NeutralJump". The errors are gone, but of course I don't know if that fix makes any sense.

Best regards,
shubi

Hello.

Today I downloaded Unity 2017.3 and a fresh version of UFE Source (latest version).
The bug still exists: There were no keyboard- or joystick inputs working in the demo-project.

After changing the code in UFE.cs it works.

58

(15 replies, posted in UFE 1 (Deprecated))

gamearcad wrote:

@Twrmois can you please tell me. My character selection screen is flickering what should i do with this ??

To solve the UI-flicker error/glitch, simply change

UFE.canvas.planeDistance = 0.1f;

to

UFE.canvas.planeDistance = 5f;

in the alternative character screen script. The value of planeDistance should be > 0.1f

Hi mayureshete,

simply set the "Invincible frames" for the throw moves and select "ignore body colliders":

https://www2.pic-upload.de/img/33533223/inv.jpg

hope that helps,
shubi

60

(6 replies, posted in UFE 1 (Deprecated))

Mistermind wrote:

Just tested it, aside from an odd graphical glitch with the alternative character screen, everything seems to be working. Since there was an update to one of the scripts I'll release a small patch very soon.

To solve the UI-flicker error/glitch, simply change

UFE.canvas.planeDistance = 0.1f;

to

UFE.canvas.planeDistance = 5f;

in the alternative character screen script. The value of planeDistance should be > 0.1f

61

(4 replies, posted in UFE 1 (Deprecated))

Hello.

Simply add a line of code to ControlsScript.cs:

find this code:

// Once per round
        if (myMoveSetScript.intro == null && !introPlayed) {
            introPlayed = true;
            UFE.CastNewRound();
        }else if ((playerNum == 1 && !introPlayed && currentMove == null) ||
            (playerNum == 2 && !introPlayed && opControlsScript.introPlayed && currentMove == null)) {
            KillCurrentMove();
            CastMove(myMoveSetScript.intro, true, true, false);
            }

and add "opControlsScript.introPlayed = true;" after the KillCurrentMove-Command to deactivate the intro of the second player:

 // Once per round
        if (myMoveSetScript.intro == null && !introPlayed) {
            introPlayed = true;
            UFE.CastNewRound();
        }else if ((playerNum == 1 && !introPlayed && currentMove == null) ||
            (playerNum == 2 && !introPlayed && opControlsScript.introPlayed && currentMove == null)) {
            KillCurrentMove();
            opControlsScript.introPlayed = true;
            CastMove(myMoveSetScript.intro, true, true, false);
            }

I hope it helps,
good luck with your game smile

KRGraphics wrote:
xFTLxKingPhoenix wrote:

I'm personally having problems with this myself.

Both myself and a friend of mine .
I have source he has pro.

I don't really understand how to set up 3d character select. And I'm at the very beginning as in haven't changed anything yet. I clicked the drop down that that supposed to start 3d select screen but what else am I supposed to do

You have to set a 3d background, and also position your models on screen. My mistake was I forgot to set the position of the character model. So now it should look good :-)

The one thing I want to see if I could add, is a select screen idle animation. Like an animation with the character standing, similar to Dead or Alive.


If you don't want to use the characters idle animation for the selection screen, just open the character editior and select a clip for "Selection Animation":

http://www2.pic-upload.de/img/32355846/sel.jpg

It sounds crazy, but those high values for scale or position inside the canvas-object seems to be normal and works fine. I think it has something to do with the UI-object, because the real scale and position of the prefabs in the gameworld is quite normal.

http://www2.pic-upload.de/thumb/32350232/select2.jpg

Hi,

don't give up wink
At next I would try if the bug is caused by a problem with the physics-engine or simply a misplacement.
To do so, run your game inside Unity (hit play) and leave it at the character selection menu.

Now select your characters prefab in the Hierarchy-window (it's in the canvas-group), in your case "Blade_Vigilante_Battle(clone)" and try to move, scale and rotate it during runtime. You can move the prefab in the scene-view or in the inspector-window.


When it's possible to change all the values as you need at runtime, than it's also easy to solve the problem in your script. If the prefab is not moving or it "jumps" back to it's position, then there is maybe some odd things going on with the colliders or the prefabs position is influenced by a custom script.

KRGraphics wrote:

Does the scale have to be 10, 10, 10? Because when I initially modelled my levels and characters, everything was 1:1. And I am also using Mecanim Humanoids for my rig...

I don't know if it has to be 10,10,10. But I think that's the default of the training-room stage. Have you tried a plain fresh installation of UFE with only the sample data?

Hey.

So the prefab contains the ground plane and all the geometry and you scaled up the whole prefab?
Maybe you should create an empty game-object inside the prefab, move all objects except the UFE-ground plane into that game-object and scale or move the game-object.  Do not change the scale, rotation or position of the prefab itself.

The prefab-object should have (0,0.01,-4) for position, (-89.981,0,0) for rotation and (10,10,10) for scale (see the original TrainingRoom-prefab). Do not change the position of the ground plane, but you can scale the groundplane itself.

Hi.

Maybe you should try to override the players position in the selection-screen by editing the "DefaultCharacterSelectionScreen.cs"-script:

this.gameObjectPlayer1.transform.position = this.positionPlayer1; (change this)
this.gameObjectPlayer1.transform.localRotation = Quaternion.Euler(0f, 80f, 0f);
this.gameObjectPlayer1.transform.SetParent(this.transform, true);

(I changed the rotation within the script, so that both players are facing to the camera)

Could you please take a screenshot at Runtime (pause at the Selection screen), while selecting the "CharacterSelectionScreen(Clone)"-Object in the Hierarchy-Window?

Did you check the position of the 3D-background-prefab?
Is there a second camera inside the background-prefab which could cause problems?
Is the "UFE-plane" still inside the background-prefab?

68

(13 replies, posted in UFE 1 (Deprecated))

Regarding the mirror-error:

You should monitor the mirror-variables during a fight-round. So put some print-commands (or debug.log) in DoFixedUpdate() inside of ControlScript.cs
For example use this:

print (UFE.config.characterRotationOptions.autoMirror);

to see what happens with "autoMirror". In your case it should always be "false". If not, search for the problem inside the code or the settings. There are more variables which affects the mirror-state.

69

(13 replies, posted in UFE 1 (Deprecated))

Could you make a screenshot of the import-settings of your animation-file (idle)?

70

(15 replies, posted in Tips & Articles)

shannonrattler33 wrote:

i have a question im trying to convert your score counter into a win counter i think i almost got it but im stuck do you mind helping me out a lil

Hello.

This should be a very easy one.
Open up UFE.cs and find the "FireGameEnds"-function. There you can read the winner and set your counter:

public static void FireGameEnds(CharacterInfo winner, CharacterInfo loser){
        // I've commented the next line because it worked with the old GUI, but not with the new one.
        //UFE.EndGame();

        Time.timeScale = UFE.config.gameSpeed;
        UFE.gameRunning = false;
        UFE.newRoundCasted = false;
        UFE.player1WonLastBattle = (winner == UFE.GetPlayer1());

        if (UFE.OnGameEnds != null) {
            UFE.OnGameEnds(winner, loser);

            if (winner.playerNum) == 1 ........ increase your Win-Count .......
        }
    }

winner.playerNum is 1 when player one is the winner of the match and 2 if the opponent wins.

Hi.

We are using some (overhead) throw-moves for each character and had some troubles with the down- and standup-animations, because during the throw the characters change their positions.

After K.O. the downed character doesn't trigger the standup-animation and stays on the ground. So far so good. But after some seconds the character rotates 180 degress around the Y-axis (I think to correct his rotation).

So I looked for a way to disable rotation-correction after the K.O.

It's very simple:

Open ControlScript.cs and find this code (around line 200):

public void InvertRotation(){
        standardYRotation = -standardYRotation;
    }

Change to this:

public void InvertRotation(){
        if (isDead == true) return; //** do not rotate after K.O.
        standardYRotation = -standardYRotation;
    }

I hope its helpful for some of you smile

best regards,
shubi

Can't download your Demo without paying. The downloadlink says "for patrons only", whatever that means.
If you click on "get access", you have to pay at least $1.

This bug is still not fixed. In Version 1.8 you can find the code at line 1650.

Fixed in Version 1.8.1

74

(152 replies, posted in Showcase)

I have the same problem.
I created a kick-move with hit-type set to "High knockdown". "High knockdown" has it's own down-clip and of course a stand-up animation. But the animation stops at the end of the knockdown-animation until the stun-timer is over. Then the character switches to the idle-animation without playing the standup animation. The down-clip and the standup-animation are ignored.

I tried different values for the standup-time in the global config-settings, but that doesn't help-

75

(4 replies, posted in Character Design)

talha_hacker2000 wrote:

Hello,

I completely followed the tutorial procedure to build in new models. All of them work fine but i see some models have twisted fingers. What could be the possible issue?

Hello. Do you use Mixamo-generated characters?