playMaker

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - MABManZ

Pages: [1] 2 3
1
Playmaker Help / How to identify an FSM in profiler?
« on: February 28, 2017, 04:10:41 AM »
I'm trying to squeeze out the best performance in my game, and track down issues that are causing Garbage Collection or CPU spikes.


I'm able to find the spikes in the profiler (caused by PlaymakerFSM.Update), but the culprit object will usually have multiple FSM's attached to it. It's very difficult to track down the offending FSM when it could be 1 of 10 or 20 scripts on a single object.

2
Action Requests / Add a minimum wait time for Async Level Load?
« on: November 08, 2016, 10:28:30 AM »
I have a loading screen in my game w/ gameplay tips, but sometimes the level loads so fast that it can be difficult to actually read the text in time.

I could add a wait before the loading starts, but I don't want to add unnecessary wait time for lower-end systems that don't actually load too fast.

3
Playmaker Help / Photon Join Room Expected Properties not working?
« on: July 27, 2016, 04:50:39 AM »
I'm attempting to set up a system to allow players to join/spectate matches that are already in progress.

However, if an in-progress match is joined, the other Photon instantiated players will immediately spawn - but on the wrong map/scene (the lobby scene rather than the arena).

I've looked at the lobby/room example in Playmaker and see that you must pause the message queue immediately upon joining the room, load the appropriate scene, and then resume. But my problem is that this should only happen if the "Spectate" room property is set to true, otherwise the player should sit in the room and wait for the match to start.

It appears that the "Expected room properties" action is ignored when joining a random room, as it will join any open room regardless of the "Spectate" value.

I also found it odd that the property cannot be set to a value, only to a variable. Am I missing something here?


4
Playmaker Help / How to close a Photon room after a match starts?
« on: March 07, 2016, 02:08:49 PM »
Is it possible to close a room (make it unjoinable/invisible to new players) with Playmaker? This might be more of an action request but is there currently a method to doing this?

5
Action Requests / Photon Ownership Transfer[SOLVED]
« on: March 06, 2016, 10:52:24 AM »
Photon now allows ownership transfer between game objects in a scene.

https://doc.photonengine.com/en/pun/current/tutorials/ownership-transfer

I'd like to have an action that can do this! My project uses a lot of rigid bodies (throwing objects) and it would look much better if the local physics are always calculated by the thrower rather than the master client.

6
Share New Actions / Photon Get Ping
« on: October 02, 2015, 10:03:43 AM »
Here is a simple action that will ping your Photon server and output as int or a string

Code: [Select]
using UnityEngine;

namespace HutongGames.PlayMaker.Actions
{
[ActionCategory("Photon")]
[Tooltip("Recieves Player Ping and Stores in a String")]
[HelpUrl("https://hutonggames.fogbugz.com/default.asp?W1136")]
public class PhotonGetPing : FsmStateAction
{
[RequiredField]
[Tooltip("")]
public FsmInt ping;
public FsmString pingString;

public override void Reset()
{
ping = null;

}

public override void OnEnter()
{
DoGetPing();
Finish();
}

void DoGetPing()
{

ping.Value = PhotonNetwork.GetPing ();
pingString.Value = ping.Value.ToString();

}

}
}

7
Share New Actions / XInput Rumble
« on: September 10, 2015, 10:59:02 PM »
Could not find much documentation online for getting proper rumble functioning in Unity (even without Playmaker), so decided to tinker around with the XInput example scene.

I was able to make an XInput Rumble action that doesn't rely on a 3rd party input system such as InControl or ReWired.

- Controls left motor (low frequency) and right motor (high frequency) independently
- Option to disable rumble w/ a bool
- Set to only activate on Windows platform to prevent fsm's hanging/crashing on the unsupported library

Requires XInputDotNetPure.dll and XInputInterface.dll in the project (also attached) You can also download from their GitHub Releases


8
Share New Actions / Set Max Angular Velocity
« on: September 09, 2015, 02:22:37 PM »
Upon learning Unity 5 ditched the global Max Angular Velocity setting in the Physics Manager, every object needs to be set manually, per object if you want to increase the value.

Here is a a simple action to set this property on rigid bodies.


9
Playmaker Help / Add Torque no longer working on Unity 5
« on: September 09, 2015, 10:44:02 AM »
I'm in the progress of upgrading my project from Unity 4.6 to Unity 5.

The  "Add Force" action is working but I've found that the "Add Torque" action no longer appears to do anything to rigid bodies. The Force Mode is set to "Velocity Change".

Using Playmaker 1.8 RC33 and this FMS was unchanged - works fine in 4.6 but doesn't in Unity 5.

10
Action Requests / Get Key Up/Down using string
« on: April 03, 2015, 06:09:54 AM »
Rather than use KeyCode variable, I would love a get key action to allow you to define/convert a string as a KeyCode variable.

This would allow me to write a custom input manager with Playmaker without needing another 3rd party plugin.

11
Playmaker Help / Return/Get Player Photon Ping?
« on: December 02, 2014, 05:15:46 AM »
Is there currently any way to retrieve the ping of a player in a Photon room? I've finally got my multiplayer setup working pretty good, and wanted to be able to show ping information to players to know if they have reasonable connection to each other, and maybe create some techniques to compensate for lag.

12
Action Requests / Set Material Float To Children
« on: November 14, 2014, 01:10:53 PM »
I recently found and am using the action for Set Material Color to Children, but would love a similar action for Set Material Float, as I'd like to do some interpolation for material values on an object with lots of children.

Any help would be appreciated, thanks!

13
Playmaker Help / Clamp local transforms?
« on: September 23, 2014, 08:02:29 AM »
Is it possible to set this up in Playmaker?

I'm trying to figure out a way to prevent connected bodies and ragdolls from "stretching", since my game involves a lot of high-velocity forces that can cause it. They will usually quickly snap back into place but it's still noticeable and can sometimes cause some weird things to happen if certain body parts get caught inside of environment colliders.

I'm trying a way to set up a rigid body to clamp the local transform values, so connected bodies can't extend past a certain point and prevent the stretching effect.

14
I'm getting an error whenever I attempt to run my game using the Photon offline mode.

Whenever I use the "Photon View RPC Broadcast FSM Event" action, I receive a error in the console.

I'm trying to set up my environment to use most of the same calls in both offline and online modes, and the game otherwise works fine after deploying even with the console error. It's impossible to test using the editor because the errors stop/pause the game constantly.

I do not get this error while in online mode, only in offline. I'm using the PUN+ package and Playmaker 1.7.7.f6 with Unity 4.6 (got the same error using 4.5 before upgrading)


Code: [Select]
Illegal view ID:0 method: rpc GO:Player1
UnityEngine.Debug:LogError(Object)
NetworkingPeer:RPC(PhotonView, String, PhotonTargets, Object[]) (at Assets/Photon Unity Networking/Plugins/PhotonNetwork/NetworkingPeer.cs:2857)
PhotonNetwork:RPC(PhotonView, String, PhotonTargets, Object[]) (at Assets/Photon Unity Networking/Plugins/PhotonNetwork/PhotonNetwork.cs:2426)
PhotonView:RPC(String, PhotonTargets, Object[]) (at Assets/Photon Unity Networking/Plugins/PhotonNetwork/Extension/PhotonView.cs:288)
PlayMakerPhotonGameObjectProxy:PhotonRpcSendFsmEvent(PhotonTargets, String) (at Assets/Photon Unity Networking/PlayMaker/Scripts/PlayMakerPhotonGameObjectProxy.cs:152)
HutongGames.PlayMaker.Actions.PhotonViewRpcBroadcastFsmEvent:DoREC() (at Assets/Photon Unity Networking/PlayMaker/Actions/PhotonViewRpcBroadcastFsmEvent.cs:98)
HutongGames.PlayMaker.Actions.PhotonViewRpcBroadcastFsmEvent:OnEnter() (at Assets/Photon Unity Networking/PlayMaker/Actions/PhotonViewRpcBroadcastFsmEvent.cs:46)
HutongGames.PlayMaker.FsmState:ActivateActions(Int32)
HutongGames.PlayMaker.FsmState:OnEnter()
HutongGames.PlayMaker.Fsm:EnterState(FsmState)
HutongGames.PlayMaker.Fsm:SwitchState(FsmState)
HutongGames.PlayMaker.Fsm:UpdateStateChanges()
HutongGames.PlayMaker.Fsm:DoTransition(FsmTransition, Boolean)
HutongGames.PlayMaker.Fsm:ProcessEvent(FsmEvent, FsmEventData)
HutongGames.PlayMaker.Fsm:SendEventToFsmOnGameObject(GameObject, String, FsmEvent)
HutongGames.PlayMaker.Fsm:Event(FsmEventTarget, FsmEvent)
HutongGames.PlayMaker.Actions.SendEvent:OnEnter() (at Assets/PlayMaker/Actions/SendEvent.cs:39)
HutongGames.PlayMaker.FsmState:ActivateActions(Int32)
HutongGames.PlayMaker.FsmState:OnEnter()
HutongGames.PlayMaker.Fsm:EnterState(FsmState)
HutongGames.PlayMaker.Fsm:SwitchState(FsmState)
HutongGames.PlayMaker.Fsm:UpdateStateChanges()
HutongGames.PlayMaker.Fsm:DoTransition(FsmTransition, Boolean)
HutongGames.PlayMaker.Fsm:ProcessEvent(FsmEvent, FsmEventData)
HutongGames.PlayMaker.Fsm:SendEventToFsmOnGameObject(GameObject, String, FsmEvent)
HutongGames.PlayMaker.Fsm:Event(FsmEventTarget, FsmEvent)
HutongGames.PlayMaker.Actions.SendEvent:OnEnter() (at Assets/PlayMaker/Actions/SendEvent.cs:39)
HutongGames.PlayMaker.FsmState:ActivateActions(Int32)
HutongGames.PlayMaker.FsmState:OnEnter()
HutongGames.PlayMaker.Fsm:EnterState(FsmState)
HutongGames.PlayMaker.Fsm:SwitchState(FsmState)
HutongGames.PlayMaker.Fsm:UpdateStateChanges()
HutongGames.PlayMaker.DelayedEvent:Update()
HutongGames.PlayMaker.Fsm:UpdateDelayedEvents()
HutongGames.PlayMaker.Fsm:Update()
PlayMakerFSM:Update()

15
Action Requests / GetQualitySetting
« on: April 17, 2014, 03:39:03 PM »
I'm trying to make my game very scalable (Android/Ouya to High-end PC) and I've set up a lot of objects to change properties according according to a global string, but I'd like to change this system to change according to the Unity quality settings so I can change things faster and make it easier for users to change graphic options easier until I have time to make a proper "Options" menu.

I found the action for "Set Quality" at http://hutonggames.com/playmakerforum/index.php?topic=2354.0 but I need the opposite, to be able to get the current quality setting INT and then use that value to change other properties in my scene.

Thanks!

Pages: [1] 2 3