The game's combat engine simply won't allow you to be in the process of 2 actions at the same time, of any type, ever. It is not built for it. Monsters can't do it either.
Spaghetti code is not the excuse. Engine limitations are.
The game's combat engine simply won't allow you to be in the process of 2 actions at the same time, of any type, ever. It is not built for it. Monsters can't do it either.
Spaghetti code is not the excuse. Engine limitations are.
I will have my revenge!
Are you sure that this is the case? Is there actually something in the code that won't allow it? Because technically, it could always be changed (whether or not it's practical to do so).
edit: NVM, read a bit further. You don't know as much as you think you do about the processes involved here. The only thing making it impossible would be the complexity of changing the code. Maybe you're in college and have learned about object-oriented programming but not multi-threaded processes yet. An engine is just a collection of modules and such that define how the game acts, nothing about an engine is set in stone and unchangeable. Whether or not this particular 'limitation' is too deeply rooted for them to consider altering it is something that only they know.
Computers are very capable of making a video game where the character is casting a spell and hitting something at the same time.
Last edited by Selzak; 12-11-2011 at 05:11 AM.
It's a fundamental design decision that was likely reached at the engine development level for various practical and preventative reasons.
Modern game code works like a large pyramid. You build from the ground up, in layers. By the time you reach the top layer, changing anything on the ground floor would be impossible without collapsing the entire structure and building it over again. A rough overview would look something like this:
Most, if not all, changes to the game made post-development are done on the Toolkit level. This includes things like damage calculations, new jobs, abilities, spells, monsters, animations, zones, etc. This is where you can make abilities and spells do whatever you want so long as they fit within the guidelines set by the engine. Spells have to have a cost (even if it's 0), they have to have a casting time (even if it's 0), and they have to have an action delay (which is globally set to 2.0338~ seconds, and can be changed but won't because it's there for good reason). The engine is what actually handles all of these things, and what can and can't be done at the most fundamental level.
Tangent: I'm not an SE programmer (or am I? I wouldn't be allowed to tell you if I was), but you really don't need to be in this day and age to understand what's probably going on in any particular game system. I say probably, but it's a pretty strong probably, as in "It would be fairly godawful coding for the original designers to have done it any other way, and everything we can see on the client side serves to reinforce this idea, so this is probably how it works".
Saevel's about as pro-melee as they come, and as he seems to have similar experience in this field he's basically saying the exact same shit I'm saying. This has nothing to do with "pro melee" or "anti melee" stances. I'm sure if we could attack while casting, he'd be all for it (and hell, why would I be against it honestly?). We just can't.
Making useless comparisons to Zanshin and Parrying throughout this thread can only be called intentionally dense at this point, as we have demonstrated multiple times how those do not mean a damn thing in the context of a single-action system. Do you cast spells when your Zanshin goes off? Are you putting attacks in your attack so you can attack while you attack, dawg? No. Zanshin and DA hits are not individual actions, the game just rolls stats a second time if the player or monster passes a DA/Zanshin check when combat stats are being rolled (see the flowchart I made earlier in the thread).
I think we could use more caps lock, boldface, and "zomg Opinionssssssssss" though. They contribute a lot to this technical discussion. I'm sure if you scream loud enough, the game engine will rewrite itself.
Edit: Multi-threaded processing is impractical and dangerous in a 10-year old persistent MMO environment that wasn't designed for it - not so much on a hardware/software level any more but an implementation and design level. The original server code was a lot more open to this sort of thing (not allowing multiple simultaneous actions, but allowing the delay between actions to reach 0), and it wreaked havoc in practice. People could duplicate items by spamming packets and requests to the server, attack delays could be bypassed by spamming engage/disengage commands, it was a mess.
I'm also not confident that the original server client was built to address this, and I've brought up other times that it's very clear that the game's combat mechanics themselves are certainly not. When you have a basic premise such as "One concurrent action" built in at the ground level, each subsequent level of combat coding assumes that it is accounted for already. The game is not designed to handle multiple concurrent actions, and changing something so fundamental means changing every bit of inherited code as well and rewriting some mechanics completely.
You're right, it's potentially possible with a completely different design in mind, but I never said that no computers anywhere could handle it. I simply said, from the get-go, the amount of fundamental design changes necessary to do so is completely impractical and would essentially require rewriting a massive amount of the code base from the ground up. That will never happen, as it would be easier to just make a new game at that point, so this will never happen.
Last edited by Greatguardian; 12-11-2011 at 04:56 AM.
I will have my revenge!
Parrying/evading/guarding/blocking while attacking can be done, as can spell casting while parrying/evading/guarding/blocking, thats even the point of shield mastery, so just saying it cant be done due to the engine is dumb, people say a lot cant be done due to engine, but look at the proc system, they told us it would be "too costly to list who triggered a stagger" and yet they did 2 updates after. There is always a way even if you need to make an exception to the rule, by treating the effect as something else. Such as classifying auto-attacks as a DOT effect during spell casts. Hell even not getting the TP per strike but allowing for the damage to be done would do wonders.
Good points actually. Several things do happen at the same time and I'll point out that you can be attacked by multiple enemies at the same time without the game exploding (aka skill defensive skills on a pile of mandies). So I would point out that the possibility of the engine allowing something to happen at the same time doesn't sound like a real limitation and more like negativity and pessimism.
Even if you just got an additional attack after you casted a spell, it would be an improvement. Obviously, some people would spam low MP moves to create DPS, but you could just put a minimum limit on the amount of MP that must be used on a spell for you to gain an additional attack. Or you only get additional attacks from specific schools of magic or magic types, like enfeebling or black magic.
Get creative. All this nay-saying is getting boring.
I'm a RequieSCAT-MAN!
None of those are considered attacks. Countering as well, unless SE makes a mage only counter beyond orcish's ~10%?
Yeah but if you have a system that can take multiple sources of damage at the same time and even have reactions for all of them, then you have a system that can output multiple sources of damage as well, so long as it is coded to do so.
I understand we can't do 2 things at once right now offensively as a player. But multiple things can be done to us at once, so it is very difficult for me to believe that it is impossible or even very difficult. I don't see any actual evidence that says it can't be done. Only that it hasn't been done up till now.
In reality, I would settle for having the programming allow your next attack to go through after a spell cast. If you don't think that can be programmed, you don't know much about programming.
I'm a RequieSCAT-MAN!
Still stands that an exception function can be made. Not to mention few people outside square-enix have the game's engine code, so anyone using it as an excuse to say why it couldnt be done, care to provide your proof? Has the information been publicly disclosed? Perhaps you came across it via a 3rd party website/tool? If none of those is the case, then it is simply an assumption and can not be taken simply as true.
Also to be clear, while i find this handy in theory, i dont think it would be implimented, but it does get tiresome seeing the same "know it all players" on any game forums talking like they have the devs whispering in their ear and have been granted authority to disclose the information and furthermore educate(LECTURE) players on the game and how it should(Must?) be played. Thats not directed at anyone persay, it happens on lots of game forums, but its a sentiment im sure isnt exclusive to me.
I'm against it because knowing SE they'll probably end up give it to monsters as well, and that's the last thing I need to see.
The player isn't parrying/countering/evading/guarding... the Monster's attack actions are being parried, countered, evaded, or guarded. Do you notice the subtle difference there?
The monster is the one acting, Not the player.
There is no exception being made. Players can only perform one action at a time.
This "Computers are magic and can do anything the programmer tells them to do" junk is annoying. It's not about being creative. It's about understanding what is and what isn't a basic constriction of a game's development. There are some things that can be changed, and some things that can't.
This is one of the latter.
Last edited by Greatguardian; 12-06-2011 at 12:59 AM.
I will have my revenge!
|
|
© SQUARE ENIX FINAL FANTASY, SQUARE ENIX, and the SQUARE ENIX logo are registered trademarks of Square Enix Holdings Co., Ltd. Vana'diel , Tetra Master, PLAYONLINE, the PLAYONLINE logo, Rise of the Zilart, Chains of Promathia, Treasures of Aht Urhgan, and Wings of the Goddess are registered trademarks of Square Enix Co., Ltd. The rating icon is a registered trademark of the Entertainment Software Association. All other trademarks are the property of their respective owners. Online play requires internet connection. |