• 1) Could you add Grid Orientation to a control map without making a "grid orientation shift" ability? I'm trying to get all movement to be handled with WASD and mouse-look even on the grid. =)

    2) Awesome. Thank you. I'll work on that and see what feels best. =)
  • 1) Grid orentation isn't an action, so that's currently not possible.
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
  • 2) Okay. I'm a little embarrassed to admit it, but I'm actually having trouble figuring out how to make a 1 step forward ability and it's mostly just my own lack of experience as a developer. I've checked out the gridMoveCommand event from the tutorial and most of that is simple, but it takes what cell it should go to from the grid path which I'm assuming is selected during the move command at the start of the turn? I don't really know how to replace that stuff with... "the cell right in front of the character being controlled".
  • 2) Use a Store Grid Cells node to get the node in front of the combatant using a Mask shape type in local space.
    Now that you've got the cell, you can move to it like you would with the regular grid move events. Since it's just one cell, you don't need a loop, so just moving forward and setting the combatant as the cell's combatant :)
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
  • 2) THANK YOU!!! Thank you so much.
  • 2) Alright. I did that and the event looks like it is all set up properly but the ability still doesn't work. I know the combatant has the ability, and the control map is set up properly, etc. I've done that exactly the same way I've done it for a few other abilities that all work differently and they all work just fine on the grid.
    So I'm left to assume that the settings for the ability itself are off some how. Comparing it to a default "new" ability I've changed the following things:
    Ability type - changed to "basic attacks" (same as my rotate left/right abilities which are working.)
    Usable in - Battle
    Target Settings > Target Type - set to Self
    Ability Settings > End Turn - disabled, time-bar use set to 0
    Battle Animation - Animate Action Enabled, added one animation. That animation is set to use the battle event you described. Perform in is enabled for everything, Grid Battles is set to yes.

    That's it.
    I have a control map set up for it mapping it to an input key whose positive key is X and input handling is Down.
  • Hm, add some Debug nodes to your battle event to print to the Unity console to see if the event is used (and if you have some conditional nodes, where it goes).
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
  • The event does not appear to be used. None of the debugs are showing up in the console or in unity's console.

    I have noticed that debugs aren't showing up in either place when they're just set to log, and that they're not showing up in my ork console when they're set to warning (although when set to warning they appear in unity's console, which is how I know the event isn't being used). But, that seems like a different problem.
  • Debug nodes only output to the Unity console, either as a normal text, warning or error message. For ORK's in-game console, you need to use the Add Console Line node :)

    When using Debug nodes, make sure your Unity console also shows the used type via the buttons on the console's upper right.

    If the event doesn't output the debug log, it's probably due to the event not being used, so you'd need to check things like:
    - can the combatant use the ability at that time (e.g. use costs, battle state, etc.)
    - can the control map be used (e.g. control map added to the combatant, enabled for that battle type, etc.)
    - is the ability set up correctly :)
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
  • Okay. Cool. I'll go check that stuff out and get back to you. Also, thanks for pointing out the unity console showing the used types thing, it wasn't showing normal text.
  • Okay! Progress. It took a little bit, but carefully comparing it to the "grid rotate" ability I set up so that you could rotate on your turn (which was working) I noticed that the grid rotate ability had a target change set up and gridOneStepForward did not. I added a target change that doesn't like... do anything, and now it sort of works! The event fires, the character takes a step forward. But I think I didn't set it up to set combatant as the new cell's combatant because after the event has fired the character rotates back to face the cell that they started on and if I try to rotate them away from it they immediately switch back. And if I use the One Step Forward ability again they use it from the cell they started on instead of the new cell. I guess I might be missing nodes for that?
    I've got it set up as:
    Store Grid Cells
    Select Combatant
    Disable Collider
    Disable NavMeshAgent
    Move to position
    Grid Cell Event - moveto
    Enable Collider
    Enable NavMeshAgent
    Grid Direction Rotation - set to nearest
  • Wait! Figured it out. like you said in the first place: set the combatant to be the cell combatant. Did it and it works just fine! Can an ability cost be in movement points?
  • edited June 2020
    Oh, new problem. if I make the control maps the same as the normal movement keys in order to preserve that then targeting area abilities (like the Firewall ability from the tutorial) gets interrupted with movement. But I wanted to try to swap targeting area abilities to use a raycast to determine the targeted cells anyways so that when the ability is selected the player can just mouse over the cell they want to target and click to target it.
    Besides turning on Use Target Raycast for the ranged aoe ability, then hitting ignore user, block player control, rotate to raycast, use mouse position (only player), use click... is there anything else I'm missing in getting that to work?
    Post edited by Whatexists on
  • edited June 2020
    That's best handled by limiting the control map keys for the movement - the Requirement settings of the keys have the During Target Selection option, disable it and they can no longer be used while you select a target (i.e. also during raycast or cell target selection).

    As for use costs, the move cost/range can not be used for that. You can do a check before doing the movement in your battle event, so the ability is used but doesn't do anything :)
    Post edited by gamingislove on
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
  • edited June 2020
    Awesome. Thank you so much for helping me sort this out and refine it!

    Currently I have rotation controlled by abilities control mapped to A and D, but my project lead just asked me if I could implement strafing with them instead and have rotation of the character controlled with the mouse look. Is that possible? How would you go about doing that?

    EDIT: Related topic: out of combat how do I enable first person style rotation (i.e. rotation controlled by looking with the camera)? I've found the first person option under Base/Control -> Game Controls -> Player Controls, and also Use Camera Direction in the same location but the character doesn't rotate to face the direction the camera is facing and continues to move/strafe based on their original orientation.
    Post edited by Whatexists on
Sign In or Register to comment.