Results 1 to 10 of 34

Hybrid View

  1. #1
    Player
    Packetdancer's Avatar
    Join Date
    Oct 2019
    Location
    Gridania
    Posts
    1,948
    Character
    Khit Amariyo
    World
    Leviathan
    Main Class
    Sage Lv 100
    Quote Originally Posted by PangTong View Post
    I have to agree that it's odd they say it can't be done. Any given ability must clearly have some kind of data flag in it which defines whether it does magical or physical damage, since that's necessary for it do actually do the correct damage type when playing. Why can't the client simply read this information and apply some sort of simple UI change to indicate an attack's damage type?
    I suspect the client doesn't have the information, and that's probably the core issue. I'm going to go out on a limb and guess that the client doesn't have a concept of 'damage type' at all; all damage calculations are almost certainly handled by the server. So the client tells the server "I executed this ability" (where the ability happens to mitigate magic damage). The server just tells the client "you took <X> damage". The client doesn't know that the damage was magical or physical, the client just knows that the damage is <X> amount; the value of <X> as communicated by the server may be lower or higher depending on what mitigations the server is aware you have.

    I mean, the damage processing part of that is fairly standard for MMOs (and really, any server-based game). The thing is, I can't see anywhere in that where the client ever needed to know the damage type, which means the client probably has no provision for that information to be conveyed from the server in the first place. So either the client would need to have every single possible enemy attack added to a table that lists whether it's physical or magical, or the actual client/server protocol would need to be changed to contain additional combat information in the packets.

    Moreover, consider that the server architecture originally supported elemental-aspected damage types, and almost certainly supported combinations of them depending on certain things. So I'm guessing that behind the scenes the server does the calculation of total damage done and just hands that back. Think of Dungeons & Dragons, when you have a holy sword and the attack does <X> amount of slashing damage but also <Y> amount of radiant damage; the DM will take into account any mitigations the target has (i.e., takes half damage from radiant damage, for instance), and then just subtract the total resulting damage from the target.

    Even without the old elemental-aspected damage, if there are any attacks which do both physical and magical damage—and it wouldn't surprise me if there are some—that means the server would calculate the mitigations separately and then just hand back a total damage, rather than handing back a "you take <X> physical damage and also <Y> magical damage". So at that point, communicating whether damage is physical or magical would require splitting any such attacks up into two separate attacks and sending the damage results separately.

    And that is not only a non-minor change, but also would have implications for some abilities; think of Third Eye, where it reduces damage taken from the next attack by 10%. If you have an ability that does both physical and magical damage, if the resulting damage is sent as a single attack, Third Eye will mitigate the entire attack. If you split it into two separate attacks, now Third Eye would only mitigate the first. So for things like that to work, you'd need to actually change it so that all damage was bundled into 'attack' envelopes and then the physical and magical damage would share an 'envelope' to make them a single attack, while displaying the damage amounts separately...

    I mean, I don't know for sure that's how any of their server architecture works; that's all just hypothesis and guesswork (albeit guesswork based on personal experience both as a software dev in general and a former game dev in specific). But from personal experience, things like that are 100% how you end up with spaghetti code/"that would be a lot of work to change" scenarios that make a given feature request a massive ask, when the request seems on the surface to be utterly reasonable and fairly straightforward.
    (3)
    Last edited by Packetdancer; 10-13-2020 at 03:10 AM.
    Quote Originally Posted by Packetdancer
    The healer main's struggle for pants is both real, and unending. Be strong, sister. #GiveUsMorePants2k20 #HealersNotRevealers #RandomOtherSleepDeprivedHashtagsHere
    I aim to make my posts engaging and entertaining, even when you might not agree with me. And failing that, I'll just be very, VERY wordy.

  2. #2
    Player
    Semirhage's Avatar
    Join Date
    May 2015
    Posts
    1,704
    Character
    Nemene Damendar
    World
    Midgardsormr
    Main Class
    Red Mage Lv 90
    Quote Originally Posted by Packetdancer View Post
    I suspect the client doesn't have the information, and that's probably the core issue.
    Naming no names and discussing no specific forbidden third party things, but from researching the thingy the OP implied existed, the client absolutely receives this information as part of incoming damage network info. In fact, it also natively has the ability to change the color of damage text but they haven't made use of it. While edge cases may abound, there's a third party *cough* nonexistent *cough* tool that does this on a basic level with a relatively simple script.
    (3)

  3. #3
    Player
    Packetdancer's Avatar
    Join Date
    Oct 2019
    Location
    Gridania
    Posts
    1,948
    Character
    Khit Amariyo
    World
    Leviathan
    Main Class
    Sage Lv 100
    Quote Originally Posted by Semirhage View Post
    Naming no names and discussing no specific forbidden third party things, but from researching the thingy the OP implied existed, the client absolutely receives this information as part of incoming damage network info. In fact, it also natively has the ability to change the color of damage text but they haven't made use of it. While edge cases may abound, there's a third party *cough* nonexistent *cough* tool that does this on a basic level with a relatively simple script.
    Naming no names and discussing no specific forbidden third party things, my—admittedly presently sleep-deprived—understanding is that the third-party tool in question bases it on whether the combat log is told to say "X uses Y" or "X casts Y", which indeed a very simple script. However, my understanding is also that the 'casts/uses' message is not actually based on whether the damage is magical or physical, but whether the originating ability is handled as a weaponskill or a spell.

    But whether it's a weaponskill or a spell isn't guaranteed to be tied to the type of damage, but rather how it's handled in other parts of the combat system. RDM's Enchanted Moulinet, for instance, is a weaponskill (...I think?) but does unaspected magical damage, while the non-enchanted Moulinet—also a weaponskill—does physical. Because it is a weaponskill, you should still be able to use Enchanted Moulinet when silenced (provided you had enough black/white mana before getting silenced, anyway), but it will still do magical damage.

    Conversely, it wouldn't surprise me if the three mobs with the obnoxious AoE paralyze in Puppets' Bunker are using a spell (since it's a cast-bar that can be interrupted), but that the attack which paralyzes might well do physical damage. (Mind you, it wouldn't surprise me if it does magical damage either, because rational definitions of magical and physical do not always apply in this combat system.)

    Though whether the originating attack is a spell or weaponskill will probably get you like 95% of the way there, admittedly.

    And I certainly may be wrong; I haven't bothered to try to slice open the FFXIV network protocol to know whether or not it actually does include the type of damage rather than just the indicator of whether the source is a spell or a weaponskill, nor is the source code for the totally hypothetical unnamed tool available that I know of to take a quick look at it.

    However, my larger point is just that from (somewhat painful) personal experience, I know how design decisions made early in a game's life that made sense at the time can come around to bite you several years later when players want a seemingly-entirely-reasonable feature that has you tearing your hair out to try to figure out a sane way to implement without having to gut chunks of established systems to do it.

    It's certainly conceivable that for some reasons Square-Enix is just making excuses and the client has all the information needed, and they could do five minutes of work to make it happen. But it's also possible that Square-Enix made some decisions years ago which became part of the scaffolding of current systems, and trying to take out and replace a piece is like trying to remove one of the bottom sticks in a Jenga tower: sure, it's possible, but you're going to live in fear of the Jenga tower falling over.
    (2)
    Last edited by Packetdancer; 10-14-2020 at 06:49 PM.

  4. #4
    Player
    ADVSS's Avatar
    Join Date
    Mar 2016
    Posts
    2,397
    Character
    Advent Shadowsoul
    World
    Zalera
    Main Class
    Dark Knight Lv 80
    Quote Originally Posted by Packetdancer View Post
    But whether it's a weaponskill or a spell isn't guaranteed to be tied to the type of damage, but rather how it's handled in other parts of the combat system. RDM's Enchanted Moulinet, for instance, is a weaponskill (...I think?) but does unaspected magical damage, while the non-enchanted Moulinet—also a weaponskill—does physical. Because it is a weaponskill, you should still be able to use Enchanted Moulinet when silenced (provided you had enough black/white mana before getting silenced, anyway), but it will still do magical damage.


    Pretty sure the RDM does magic damage because his weapon is set for magic damage(of course auto attacks might be different, but skills that are meant to scale with x damage type wont scale with the wrong damage type). Same reason why PLD had to get Clemency because his cross class Cure spell didnt scale with his weapon damage at all. As cheeky as it is, i am totally not surprised that RDM anything does "magic damage" because his weapon has the magic damage tag. As far as people complaining client side this client side that. If the "information" wasn't there to tell whether you got hit by physical or magical damage, then physical/magical cooldowns are either text flavored, or they work specifically and its not true, and/or they dont work at all and theyre just there as fluff skills on tanks
    (0)
    Last edited by ADVSS; 10-14-2020 at 07:51 PM.

  5. #5
    Player Seraphor's Avatar
    Join Date
    Feb 2018
    Posts
    4,620
    Character
    Seraphor Vhinasch
    World
    Zodiark
    Main Class
    Gunbreaker Lv 100
    Quote Originally Posted by ADVSS View Post
    Pretty sure the RDM does magic damage because his weapon is set for magic damage(of course auto attacks might be different, but skills that are meant to scale with x damage type wont scale with the wrong damage type). Same reason why PLD had to get Clemency because his cross class Cure spell didnt scale with his weapon damage at all. As cheeky as it is, i am totally not surprised that RDM anything does "magic damage" because his weapon has the magic damage tag. As far as people complaining client side this client side that. If the "information" wasn't there to tell whether you got hit by physical or magical damage, then physical/magical cooldowns are either text flavored, or they work specifically and its not true, and/or they dont work at all and theyre just there as fluff skills on tanks
    No, the resulting damage isn't tied to the stats that empower it.
    Like he said, Unenchanted melee attacks are still physical damage, but they do more than 40 damage per hit.
    Likewise, Paladins magic abilities, while determined by Strength and Vitality, still deal magical damage.
    (0)

  6. #6
    Player
    ADVSS's Avatar
    Join Date
    Mar 2016
    Posts
    2,397
    Character
    Advent Shadowsoul
    World
    Zalera
    Main Class
    Dark Knight Lv 80
    Quote Originally Posted by Seraphor View Post
    No, the resulting damage isn't tied to the stats that empower it.
    Like he said, Unenchanted melee attacks are still physical damage, but they do more than 40 damage per hit.
    Likewise, Paladins magic abilities, while determined by Strength and Vitality, still deal magical damage.
    Ah then the parameters are more convoluted then they seem. This is actually good news then if they ever decide to make a healer that isnt limited to magic damage
    (0)

  7. #7
    Player
    Packetdancer's Avatar
    Join Date
    Oct 2019
    Location
    Gridania
    Posts
    1,948
    Character
    Khit Amariyo
    World
    Leviathan
    Main Class
    Sage Lv 100
    Quote Originally Posted by ADVSS View Post
    This is actually good news then if they ever decide to make a healer that isnt limited to magic damage
    Hey, so far as I know, all healers are technically not limited to magic damage; I think if a scholar smacks someone with their book for the auto-attack, it's counted as physical for purposes of damage calculation.

    More seriously, yes, the parameters are—so far as I can tell—somewhat convoluted. Weaponskills can situationally deal magical damage, as we know from Red Mage, and I suspect that spells can situationally deal physical damage; though I cannot think of a concrete example of the latter, it would make sense for it to be possible in the system given that we know the former is.

    And based on how the combat system used to work with regards to aspected damage, I strongly suspect that it's possible for things to deal both physical and magical in the same attack, architecturally, whether or not that's presently used. Which would mean that the final damage communicated to the client not only wouldn't show whether it was magical or physical, but you actually couldn't say either way.

    To use the example I gave earlier, think of a D&D campaign. Say the party's paladin has a longsword+3; that gives a +3 modifier to the normal sword damage (as well as to the attack roll, but that's not relevant here), so the sword does 1d8+3 slashing damage on a successful attack. Now let's say the paladin has a holy rite that lets them empower the weapon for 3 rounds of combat provided they land a hit each of those three rounds; failing to attack or failing to land a blow instantly ends the blessing. During that time, the weapon also does 1d6 radiant damage.

    Let's say the paladin lands a blow. But the thing they're fighting is evil and has vulnerability to radiant damage, so takes double radiant damage. The paladin rolls 1d8 for the slashing damage of the sword and gets a 4; since it's a +3 longsword they do 7 damage. Then they roll 1d6 for the extra radiant damage, and roll a 4. Since the creature is vulnerable to radiant damage, they take 8. That's a total of 15 damage.

    But the thing is, the DM calculates the resistance or vulnerability to damage types—handles mitigation, as it were—and then just subtracts 15 from the creature's hitpoints. The DM doesn't separately write down that it was 7 slashing and 8 radiant damage.

    Or in other words, the damage is presented to the thing shown to the players (if the DM has hitpoint bars on enemies on Roll20/Fantasy Grounds/whatever) as "You did (1d8+3)+(1d6*2) damage to the creature", instead of "you did 1d8+3 slashing damage to the creature, and also 1d6*2 radiant damage".

    And my strong suspicion is that whether or not the FFXIV combat system currently supports a single action causing more than one damage type, the fact that at one point it probably did means that the server probably only communicates to the client "<Actor> does <Z> damage to <target> from <action>", rather than "<Actor> does {<X> physical damage, <Y> magical damage} to <target> from <action>". Especially since if I remember right from waaaay back in the beginning, I think magical damage was not only aspected (hence the 'unaspected damage' we still have in tooltips), but also physical damage was internally aspected (slashing, piercing, etc.); that'd be a lot of potential damage types.

    But also I'm running on "before you speak to me, if you value your life you will bring an offering of coffee" levels of sleep deprivation (and I don't even like coffee), so I'll grant my off-the-cuff recollection of 2.0 may not be perfect; I'm not 100% certain I can remember last week at the moment.
    (1)
    Last edited by Packetdancer; 10-15-2020 at 03:32 AM.
    Quote Originally Posted by Packetdancer
    The healer main's struggle for pants is both real, and unending. Be strong, sister. #GiveUsMorePants2k20 #HealersNotRevealers #RandomOtherSleepDeprivedHashtagsHere
    I aim to make my posts engaging and entertaining, even when you might not agree with me. And failing that, I'll just be very, VERY wordy.

  8. #8
    Player
    Ultimatecalibur's Avatar
    Join Date
    Jan 2014
    Posts
    2,737
    Character
    Kakita Ucalibur
    World
    Siren
    Main Class
    Paladin Lv 86
    Quote Originally Posted by ADVSS View Post
    If the "information" wasn't there to tell whether you got hit by physical or magical damage, then physical/magical cooldowns are either text flavored, or they work specifically and its not true, and/or they dont work at all and theyre just there as fluff skills on tanks
    Forth option all damage calculations are done server side so that the server knows which actions are physical/magical/shadow and applies all appropriate buffs and debuffs but never sends our clients that actual information. The only reason we know various actions deal various damage types is due to seeing how various buffs and debuffs change the damage displayed over multiple occurrences of that action.

    It is not that physical and magical damage do not exist; it is that information on the damage type of actions is not sent client side.
    (1)

  9. #9
    Player
    Packetdancer's Avatar
    Join Date
    Oct 2019
    Location
    Gridania
    Posts
    1,948
    Character
    Khit Amariyo
    World
    Leviathan
    Main Class
    Sage Lv 100
    Quote Originally Posted by Ultimatecalibur View Post
    Forth option all damage calculations are done server side so that the server knows which actions are physical/magical/shadow and applies all appropriate buffs and debuffs but never sends our clients that actual information.
    Oh, I guarantee you that all damage calculations are done server-side. Any online game that doesn't do damage calculations server-side would be immediately exploited, since relying on the client to tell you how much damage the player took would be a short path to someone making a hacked tool that tells the server you never took any damage. (I used to write online games, so had to actually think about this stuff for my day job.)
    (2)
    Quote Originally Posted by Packetdancer
    The healer main's struggle for pants is both real, and unending. Be strong, sister. #GiveUsMorePants2k20 #HealersNotRevealers #RandomOtherSleepDeprivedHashtagsHere
    I aim to make my posts engaging and entertaining, even when you might not agree with me. And failing that, I'll just be very, VERY wordy.

  10. #10
    Player
    Semirhage's Avatar
    Join Date
    May 2015
    Posts
    1,704
    Character
    Nemene Damendar
    World
    Midgardsormr
    Main Class
    Red Mage Lv 90
    Quote Originally Posted by Packetdancer View Post
    snip
    Based on a nonexistent thing's lack of support for TEA, I believe you're correct. It likely relies on a set of known data for things like Darkness damage (which I don't recall off the top of my head whether it has a tip-off phrase in the combat log). Like you said before, relying on the text indicator is going to get you almost everything you need, but those few scenarios where it doesn't, that's the part that'll get Square if they tried to implement it officially.
    (1)