Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411511 Posts in 69375 Topics- by 58430 Members - Latest Member: Jesse Webb

April 26, 2024, 01:30:20 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsTacticsV - A Retro Strategy(Tactical) RPG
Pages: 1 [2] 3 4 ... 6
Print
Author Topic: TacticsV - A Retro Strategy(Tactical) RPG  (Read 25385 times)
Zaibach333
Level 0
***



View Profile
« Reply #20 on: May 31, 2017, 01:59:06 PM »

made those animation fixes.  but i tried something pretty neat over the long weekend, an android build! runs alright from the mouse support, but it took some finicky things to run.

shaders weren't supported yet,
assetbundles have a different naming scheme or case sensitive usages within jar archives,
and to lock my resolution I had to look into some Android gradle scripting and display the unity application in a aspect ratio defined layout block, but yeah, mobile runs nice, loads slower at the beginning than on a PC, and there's no buttons for like, opening the start menu or rotating the camera but this is pretty good for no initial touch support beyond the UI system in place for mouse and keyboard.




Logged

RossD20Studios
Level 7
**


Inspiring Greatness


View Profile WWW
« Reply #21 on: May 31, 2017, 02:04:52 PM »

Hi Zaibach333,

Nice to meet another developer inspired by classic tactical RPGs. Very interesting work you've put together here. The SNES style graphics definitely caught my attention - but what put it over the edge was the 3D camera pan/VFX - a neat modern twist to bring it to the modern age. Excited to see how this develops!
Logged

Developing Summoners Fate, a top down turn based strategy adventure.
TIGForum DevLog
Zaibach333
Level 0
***



View Profile
« Reply #22 on: June 02, 2017, 05:38:36 AM »

In light of making some connections with other strategy (tactics) devs I thought I'd share some of my AI approach.

So I have a priority list in scriptableObjects within the Unity editor, they contain a target enum a movement enum and a action type enum.

some of them override the initial division via the naming of the objects though. healer may make sense, but the attacknearest is a mix, like, if you're using an offensive power, it tracks the most opportune target for blasts etc. and goes there, and the nearest for that case is weighed on nearness if they can reach a target cluster that turn.

under the hood is relatively self explanatory, aside from the visual. all of my battleAction components have a case throughout where AI is injected instead of player choice, and an AI manager populates the necessary info like target/movement target/ and what action to call.  some minor reflection to make it easier for me to add more battleActions or priority types.

here's how some of those look in the editor:


Logged

Zaibach333
Level 0
***



View Profile
« Reply #23 on: June 02, 2017, 01:06:14 PM »

For an overall update, we're working out a good story chunk to create art assets for and flush out, so far the story has been for the demo a month or so ago.  Probably why I'm focusing so much on visual and compatibility lately.

I accidentally disabled outlines a couple days ago and found that some scenes look better with black, and others with gray...
it depended on the rest of the render... so I made a script to alter the color just before the outline render pass.  Now the average Luminance determines the outline color for the camera (at a low resolution sampling of the screen)

Seeing as the UI has no effect on this calculation I think it's a good solution for the effect.

the calculation:
Code:
//colors = a low resolution read of the camera, in an array of pixel colors
float luminance = colors.Sum(x => Mathf.Sqrt(0.299f * x.r * x.r + 0.587f * x.g * x.g + 0.114f * x.b * x.b)) / colors.Length;

Logged

RossD20Studios
Level 7
**


Inspiring Greatness


View Profile WWW
« Reply #24 on: June 02, 2017, 03:18:11 PM »

In light of making some connections with other strategy (tactics) devs I thought I'd share some of my AI approach.

So I have a priority list in scriptableObjects within the Unity editor, they contain a target enum a movement enum and a action type enum.

some of them override the initial division via the naming of the objects though. healer may make sense, but the attacknearest is a mix, like, if you're using an offensive power, it tracks the most opportune target for blasts etc. and goes there, and the nearest for that case is weighed on nearness if they can reach a target cluster that turn.

under the hood is relatively self explanatory, aside from the visual. all of my battleAction components have a case throughout where AI is injected instead of player choice, and an AI manager populates the necessary info like target/movement target/ and what action to call.  some minor reflection to make it easier for me to add more battleActions or priority types.


Good stuff, here, Zaibach. I like the way you've managed this with a very nice GUI; its possible to create interesting varieties and different types of AI players/character classes depending on how you tune the behavior per action. Best I can tell from your screenshot, it looks like this is how you are using it, ex: Healer, is a profile with behaviors customized per that class. I imagine warriors, rangers, mages, etc. would have different profiles. One thing I would consider based on past experience with a setup like this: will your game feature a generally fixed set of behaviors or do you anticipate a lot of expansion? If the former, custom behavior scripts per action definitely a nice route to go (and fun to work with). If you're going beyond 30+ behaviors/unique abilities, this can become difficult to scale and mange; and then I would start looking at methods such as action simulation and abstract scoring to supplement (if you're not already doing so). Definitely looking to hear more about this. One thing in particular: How are you having your AI account for teamwork between individual characters?
Logged

Developing Summoners Fate, a top down turn based strategy adventure.
TIGForum DevLog
Zaibach333
Level 0
***



View Profile
« Reply #25 on: June 02, 2017, 03:44:04 PM »

Thanks Ross, those Files to the left of the inspector UI are the definitions, and I'm using these files with Inspector properties for all my data, sortof like an internal database, just doesn't get modified at runtime, so I may wind up with 30+ of these priority lists.  

for selecting powers (my general term for non physical weapon attacks) is Offensive Power for the ability, and I have a routine that selects the highest according to the available powerpoints (mana essentially) I dont have my logic in for defensive powers but I have stubs, those buffs I could see cluttering up a bit more though.  

basically though, my list will be general for the AI and I populate the generalized abilities to specific ones based on some conditions for each... an improvement would be to have a subset item rather than enums, but I felt it didnt need that at this point.  

currently targets involving allies reference nearest, or lowest health, or lowest power, or highest power, etc. as well as the enemies,
some movement types involve an encapsulation of the opponents like retreat where the most distance from the team as a whole is taken into consideration, if that's what you meant.  

Skills involving allied actions isn't exactly created yet but could be further along in the skill tables,
first I'm looking into countering or delaying, sweeping melee actions, or stealing and Status ailments (display and effect) though. things like the skills, skill powers, class requirements, skill requirements are all with files like the AI in a hierarchy though with less enums, items too.

if that level of abstract info was something you were looking for Ross. Thanks for the insights again, I try to lower my discussions from new features that would be a offshoot due to scope creep but these were some intentions that started implementation rather early on anyway.
« Last Edit: June 02, 2017, 04:00:12 PM by Zaibach333 » Logged

RossD20Studios
Level 7
**


Inspiring Greatness


View Profile WWW
« Reply #26 on: June 02, 2017, 04:08:53 PM »

Thanks for the insights again, I try to lower my discussions from new features that would be a offshoot due to scope creep but these were some intentions that started implementation rather early on anyway.

Anytime, man - it's so nice to connect with another dev this stuff that can understand and appreciate all the intricacies that go into it. I love seeing the similar and different ways other devs approach the problem of creating an engaging AI experience. Reading more into description, I'm deriving the answer to my own question "how does your AI coordinate teamwork?" as there isn't a specific method/class for determining this; rather, individual units carry out the best strategy for their specific class - and that a well-balanced team of AI units would create an effective group strategy as result. Is my interpretation accurate? That's pretty darn elegant; I'm wondering now how my own AI would improve having simple behavior scripts like this specific to their class.

Also, I don't think its ever a waste to plan/discuss/implement AI methodologies early in dev - especially for a turn-based tactics game - because this will ultimately drive your games long term engagement (unless you're just using AI as a staging into multiplayer).
Logged

Developing Summoners Fate, a top down turn based strategy adventure.
TIGForum DevLog
Zaibach333
Level 0
***



View Profile
« Reply #27 on: June 02, 2017, 04:37:40 PM »

*yeah, the intent is to have an individual work well enough to their priority list for what their class is (as my class list is different than the ai, with the exception that I do have a healer class, but also an alchemist class who could be considered a chemist of sorts implemented, only using items)

While I don't plan on multiplayer, it is a robust system, if I nailed down sync-ups with my cutscene system I hope it would fall into place. we both know that's never the case, anyway, while I don't plan on it, MMO style roles in combat are probably in more consideration than say the teams behind 90s strategy games had placed them when creating their wondrous combat systems... hopefully it helps my AI achieve something less predictable... or rather,

I hope it gives the player that Oops feeling you get when you lift your finger off the chess piece and you KNOW what you would do as your opponent... "...don't, he has one health, don't, I just raised him, don't, He finally has the power to cast...... AW CRAP".
Logged

Zaibach333
Level 0
***



View Profile
« Reply #28 on: June 03, 2017, 08:06:28 AM »

So I don't know if this is the best area for it, but it's for my game so...

I'm looking to put in the mechanics for status effects and I'm trying to cover existing and future conditions if I can right off the bat.

Without knowing what I have in there, what of these doesn't make sense or what should be added? (this sort of thing is endless in possibilities I realize, but I'll take advice)

Status conditions (states need to be simultaneous in a list of effects)

  • Defending
        Stance which raises defence but has animation changes       
  • Readied Action
        Stance which triggers on availability       
  • Counter Attack #
        Stance which attacks back when attacked then decrements the #       
  • Speed up
        Speeds up initiative for actor       
  • Slowed down
        Slows down initiative for actor       
  • Charging/Casting #
        Skips the actors turn for # of other turns, based on the time units of the charging action then does the action (target tile or actor)       
  • Poisoned or Burned
        Injures actor every turn       
  • Regeneration
        Gains HP to actor every turn
  • Atk Up/Down
        Raises/Lowers actor’s attack       
  • Def Up/Down
        Raises/Lowers actor’s defense without animation changes       
  • Fire vulnerability and resilience
  • Ice vulnerability and resilience
  • Lightning vulnerability and resilience
  • Water vulnerability and resilience
  • Earth vulnerability and resilience
  • Air vulnerability and resilience
  • Light vulnerability and resilience
  • Dark vulnerability and resilience
  • Powerless
        Limit the actor to only Attack, Move, and Item       
  • Paralyzed/Asleep
        Skip the actor’s turn until resolved       
  • Stuck
        Limit the actor’s movement to none       
Logged

xix
Level 5
*****


View Profile
« Reply #29 on: June 03, 2017, 08:22:17 AM »

This looks like a pretty standard list of player states.

What I'm usually interested in (and I think this is a modern game design trend) is how states interact with each other.

There are obvious examples like ice vulnerability means you are fire resistant, but you can get more complex, and that would get the balancing part of my brain all psyched. For example, speeding someone up might "heat them up" which makes them more vulnerable to either fire or ice (or both?). This kind of complex interaction makes the kitchen-sink approach a little unwieldy (keep tracking a bunch of different status effects is hard!), but if you can somehow get players into it you end up with something like Pokemon.

And you know, Pokemon.

edit: one of the ways to get players over the hurdle of "learning" your systems is by using existing world connotations. So poisoned can be just "DoT", or it can be the character is sick, moves slightly slower, does less physical damage, and gets DoT. This will also help you flesh out your world, so instead of Powerless losing magic/techniques/etc it can seem like you've lost touch with your magical side. And reminding players that you have a gameworld from your mechanics is a good hook.
« Last Edit: June 03, 2017, 08:27:57 AM by xix » Logged


Get the demo itch.io
Follow @lunarsignals on twitter
Zaibach333
Level 0
***



View Profile
« Reply #30 on: June 03, 2017, 08:36:58 AM »

yeah that's sortof a state system of elements than a status effect... I do alter the primary stats used for what ability type (like the magic types) as well as the class for these status effects determine max power based on different stats, so there is a possibility that the primary stat of the class would be innately vulnerable or resilient (stacking) in a similar fashion.

To be more clear though, these are things that would need icons above the actor for the most part. but pokemon is also good advice Wink
Logged

Zaibach333
Level 0
***



View Profile
« Reply #31 on: June 03, 2017, 04:23:49 PM »

well, I did wind up adding a few to that list.  and wrote a system similar to the QuickText (what I am calling the damage dealt popup in screenspace module) which allows for a list of status conditions, now, I dont have anything modifying the new conditions so I applied it to the Dying counters, looks more slick. Now I just gotta make a ton of 7x7 pixel icons...

(below shows this in use, within the preview demo from the start screen, so AI vs AI, does well for speeding up AI testing to let em duke it out too)



[UPDATE]
So I made a bunch of little 7x7 icons, this is how they stack up and how some of them look on the side


I feel I can put them into the combat now.
« Last Edit: June 03, 2017, 11:35:50 PM by Zaibach333 » Logged

Zaibach333
Level 0
***



View Profile
« Reply #32 on: June 07, 2017, 05:52:01 PM »

Aside from bug fixes I created some new consumable items to test out status effects, video below I'm trying to show attack is at 90% but after the might potion it's at 100%
I assume most of my new items will remove status effects delivered via opposing powers, and some buffs should only come from powers as well.





one dramatic change to the game after this is my status conditions for KillTarget and ProtectTarget.  Currently battles are won via cutscene queues/actions, so I'm already making a trigger check for all of one side killed for victory or defeat, I now can check for KillTargets or Protect Targets killed and Victory/Defeat based on those results.

basically opening up to at least two more Victory condition standards, and I'm excited.

Early in our brainstorms we designed how many victory conditions could be, other than kill all, protect and kill target(s), I contemplated take and hold or defend etc. but anything deriving from turns on a space or holding an objective seemed more like a sport than a battle... but another look at our designs I feel if there was a retreat option on some battles one could take an objective and flee without killing all the enemies while still calling it a victory... still unsure about flee mechanics, most of these 90s tactics games didn't have a flee mechanic, TacticsOgre had one, at least on the PSP release, but only on random battles... something to ponder.
Logged

Zaibach333
Level 0
***



View Profile
« Reply #33 on: June 09, 2017, 09:44:49 PM »

So I utilized the Defending animations for a new skill (Defend).  in doing so I felt I needed to add it to the AI, so that's in but along with that the AI may throw rocks... which is almost a waste of a turn but hey, if the player can do it I should probably have the AI doing it.



Logged

xix
Level 5
*****


View Profile
« Reply #34 on: June 10, 2017, 07:16:09 AM »

Rock throwing was one of my favorite things in Tactics Ogre/FFT. Haha.

The game is looking better and better. Keep it uuup.
Logged


Get the demo itch.io
Follow @lunarsignals on twitter
Zaibach333
Level 0
***



View Profile
« Reply #35 on: June 12, 2017, 04:56:13 PM »

So I've made somewhat of a basic tutorial scene, which pushed me to add more battle trigger types.

With story strides I started getting the basics in for early functionality that isn't completely in there,

we have a skeleton now, and a necromancer, though the player shouldn't have access early on, it's an opponent but works.  

had to add mid battle growth of party size and make sure they're removed by the end of the battle, flushed out guest mechanics as well, so people can be in the party but controlled by AI.

anyway, the skeletons look cool and the Necromancer is making em with one of his powers. I'll have more to work with in a few weeks.



*the last one doesn't make sense but I wanted to show the profile image from an initial test swapping out the base model layer.
« Last Edit: June 14, 2017, 02:46:33 PM by Zaibach333 » Logged

ODINKONG
Level 0
**



View Profile WWW
« Reply #36 on: June 14, 2017, 12:53:40 PM »

I must say this is the only thing that has given me the same feeling as the original final fantasy tactics one the ps1. I love that feeling and this game looks awesome! Very unique art style I've never seen anything quite like it!
Logged

Raven's Path By Evil Villian Games
Dev Log : https://forums.tigsource.com/inde
Zaibach333
Level 0
***



View Profile
« Reply #37 on: July 03, 2017, 05:37:24 PM »

Not much to show for what we've been working on, design/story elements to knock off the prologue, magic is a thing, but we're making it harder to get by enabling offensive magical classes via story in the first chapter and not sooner.  *sure, some enemies will have magic, and healing magic will quickly get introduced.  but to show something, here's some bar and grave assets thrown into the engine (not in final placements) they are part of the prologue:

Logged

MegaTiny
Level 1
*


Wew lad


View Profile
« Reply #38 on: July 03, 2017, 11:18:35 PM »

I am in love with the shader style you're using. Also the effort you're putting into the animations is a huge plus for me, I hate tactics games where you sit and watch still characters bump into each other.

Quote
but anything deriving from turns on a space or holding an objective seemed more like a sport than a battle...

Waiting for reinforcements/You can't let the enemy infiltration squad break past your line and open the gate to the castle that's under siege/A mission specific special thief enemy that whenever it touches a supply wagon steals an item and tries to make off with it.

Just some ideas to make it seem less like a sport but allow some mission variety. Of course there's loads of other ways to add variety, Starcraft 2 did a really good job of this ( for example you're overwhelmed by the enemy but you have a mcguffin you can use occasionally to wipe out huge hordes of them, tactical usage of said mcguffin along with your team is key to winning).

I guess it depends how slavishly faithful you're being to old school tactics games.
Logged

Zaibach333
Level 0
***



View Profile
« Reply #39 on: July 05, 2017, 11:48:54 AM »

Thanks MegaTiny, you make a good point about making seemingly sporty mission objectives going another direction, while maintaining our old school tactics feel... no plans about adding that just yet though.

also here's some more proper locations for the graveyard battle assets

Logged

Pages: 1 [2] 3 4 ... 6
Print
Jump to:  

Theme orange-lt created by panic