Combat logs, Damage stats and MMO Whiplash
#176
Posté 20 novembre 2009 - 06:07
#177
Posté 20 novembre 2009 - 06:08
Magic Zarim wrote...
Georg Zoeller wrote...
Magic Zarim wrote...
Thirdly, Georg, what kind of VM are you using? I suspsect you're not using a LUA VM. LUA is extremely performant and easy to work with, and by using that, doing string operations would end up to be native on the platform of choice. LUA is open-source as well. I don't find performance a good excuse to omit something like a combat log. How many logical combat actions happen per second..? up to 30 - 50 at most? Let's be lenient and say 100. How much time 100 conditionals are going to take? 100 checks on an "enabled" bool? Let's take a 1.2GHz oldie Atlon +1800 for example. Doing a CMP [Location], 1 followed by the JZ LogCombatAction takes what.. 6 clock cycles? Let's be lenient and make it 10, I don't have the x86 assy manual at hand right now. 10 cycles at 1.2GHz clock, that is 8 nano seconds. "Dude", 8 nano seconds !? I call shenigans on the performance argument.
jobs.bioware.com.
Come out and try, we're always interested in hiring people who are smarter than the principal programmers and architects with 8-15 years in the industry we employ. Being able to describe the benefits of LUA along with some sprinkled assembly commands in a forum post is a great plus in the application process too. I'm sure you have a great future ahead of you.
I really hope you're not being sarcastic, so I can politely decline as I already work as a Senior Software engineer at a major business solutions company.
Modifié par Georg Zoeller, 20 novembre 2009 - 06:10 .
#178
Posté 20 novembre 2009 - 06:08
Georg Zoeller wrote...
But there are other solutions to some of your concerns as well - what if pause would also pause the floaty system for example...
ME WANT BADLY! I will
#179
Posté 20 novembre 2009 - 06:08
Modifié par Adthesus, 20 novembre 2009 - 06:14 .
#180
Posté 20 novembre 2009 - 06:09
surrealitycheck wrote...
Georg, this is probably getting kind of irritating (but hey I'm interested) - but I am quite genuinely wondering why special attacks don't get elemental benefits. And I don't mean this in the "lol I trapped you" kind of way - I'm wondering if there an aspect to the calculation I hadn't considered, because it seems somewhat counterintuitive!
#181
Posté 20 novembre 2009 - 06:12
#182
Posté 20 novembre 2009 - 06:12
#183
Posté 20 novembre 2009 - 06:14
#184
Posté 20 novembre 2009 - 06:14
Georg Zoeller wrote...
That is evident from your beautiful rendering of boolean performance in LUA. You'll do splendid in the interview.Magic Zarim wrote...
Georg Zoeller wrote...
Magic Zarim wrote...
Thirdly, Georg, what kind of VM are you using? I suspsect you're not using a LUA VM. LUA is extremely performant and easy to work with, and by using that, doing string operations would end up to be native on the platform of choice. LUA is open-source as well. I don't find performance a good excuse to omit something like a combat log. How many logical combat actions happen per second..? up to 30 - 50 at most? Let's be lenient and say 100. How much time 100 conditionals are going to take? 100 checks on an "enabled" bool? Let's take a 1.2GHz oldie Atlon +1800 for example. Doing a CMP [Location], 1 followed by the JZ LogCombatAction takes what.. 6 clock cycles? Let's be lenient and make it 10, I don't have the x86 assy manual at hand right now. 10 cycles at 1.2GHz clock, that is 8 nano seconds. "Dude", 8 nano seconds !? I call shenigans on the performance argument.
jobs.bioware.com.
Come out and try, we're always interested in hiring people who are smarter than the principal programmers and architects with 8-15 years in the industry we employ. Being able to describe the benefits of LUA along with some sprinkled assembly commands in a forum post is a great plus in the application process too. I'm sure you have a great future ahead of you.
I really hope you're not being sarcastic, so I can politely decline as I already work as a Senior Software engineer at a major business solutions company.
The assembly instructions are the essence of a boolean comparisson. LUA as you apparently know is a compilable scripting engine. I never related LUA and those assembly instructions that perform a check on a bool. Sorry mate, but you jump the gun a bit too quick. I mentioned LUA in relation to string performance, not bool comparissions.
Hey, I'm not trying to pick a fight with you. Nor am I interested in a pissing contest. I merely stated and explained why omitting a combat log shouldn't be of performance issues, when the combat log could be enabled/disabled. The essence, the boolean check on whether it's enabled or not surely won't impact performance if the user choses to disable logging.
Modifié par Magic Zarim, 20 novembre 2009 - 06:17 .
#185
Posté 20 novembre 2009 - 06:16
Really, all you' need it to create a talktable with the new, change the descriptions to be what you want them to be and then deploy it as part of an addin.
Statue wrote...
Since I don't have a good grasp of what power the toolset has over things in the game at the system level (and I'm currently too scared of the toolset to install it at the moment http://social.biowar.../8/index/114380), this will undoubtedly appear to be an extremely naive question (so apologies in advance): would it be feasible for a mod to change what is displayed in descriptors so they would have the detailed numbers in them, and what would the process entail (e.g. doing something fancy that pulls stuff from under the hood, or editing individual strings one by one, etc.)?
#186
Posté 20 novembre 2009 - 06:16
Georg Zoeller wrote...
Simply time. By the time we got around to implement the elemental benefits, there was no more time to deal with the balancing implications and QA of adding them to special attacks. I'd imagine that's something they'll look at that again in the future, it's not terribly hard to do.surrealitycheck wrote...
Georg, this is probably getting kind of irritating (but hey I'm interested) - but I am quite genuinely wondering why special attacks don't get elemental benefits. And I don't mean this in the "lol I trapped you" kind of way - I'm wondering if there an aspect to the calculation I hadn't considered, because it seems somewhat counterintuitive!
This is one of my complaints/issues with melee at the moment. Nice to hear it is on the table for consideration. Thank you.
#187
Posté 20 novembre 2009 - 06:17
We can argue senseless, however, at the end Bioware is to make money, players want to have fun, and IF the two (interests) can meet then there is little point arguing if features as "combat log" are essential or not for this game or any other.
#188
Posté 20 novembre 2009 - 06:20
#189
Posté 20 novembre 2009 - 06:24
Thank you, Bioware
#190
Posté 20 novembre 2009 - 06:29
Magic Zarim wrote...
The assembly instructions are the essence of a boolean comparisson. LUA as you apparently know is a compilable scripting engine. I never related LUA and those assembly instructions that perform a check on a bool. Sorry mate, but you jump the gun a bit too quick. I mentioned LUA in relation to string performance, not bool comparissions.
Hey, I'm not trying to pick a fight with you. Nor am I interested in a pissing contest. I merely stated and explained why omitting a combat log shouldn't be of performance issues, when the combat log could be enabled/disabled. The essence, the boolean check on whether it's enabled or not surely won't impact performance if the user choses to disable logging.
Dude, as a "senior software engineer", you show a surprising lack of communication skills and also a lack of understanding of software systems and software development challenges in general.
First: are you proposing that the game engine context switch out of the VM into native code to do the "if (loggingEnabled)" check, then jump back into VM to execute the logging and/or return to the combat script? You do realize that context switching into and out of a VM is an expensive operation? I believe Georg and other assumed you were smarter than that and were instead referring to a "if (loggingEnabled)" check from within the script itself. So, giving you the benefit of the doubt it can only be concluded you were refering to boolean comparison opcodes of LUA itself.
Second: you, who knows absolutely nothing, about the game engine implementation, nor the implementation of actual VM being used, are going to seriously come and say that you've figured out that adding a combat log wouldn't be a performance problem? Any competent software engineer knows that you cannot fully appreciate the consequences of adding something to a piece of software without first knowing at least a little bit about how the software currently works.
#191
Posté 20 novembre 2009 - 06:31
Schyzm wrote...
funny I don't feel oppressed, desperate or bombastic. you are certainly an insightful person! not only able to recognize bioware's continuing perfection but also able to ably ascertain the emotional deficiencies of your adversaries! towit!
Bit of a pedant aren't you?
#192
Posté 20 novembre 2009 - 06:32
Magic Zarim wrote...
Thirdly, Georg, what kind of VM are you using? I suspsect you're not using a LUA VM. LUA is extremely performant and easy to work with,
The ongoing disaster known as Hearts of Iron III disagrees with you (or Paradox's whole staff are really bad).
#193
Posté 20 novembre 2009 - 06:35
#194
Posté 20 novembre 2009 - 06:36
As for performing a boolcheck within the script, any engine worth its salt directly performs a bool check on the underlying hardware. Parts of the script are interpreted or precompiled, others, like atomic operations like a bool check are directly translated to a set of machine instructions for the underlying architecture. You know all of this, right?
I find your statements quite amusing, so full of assumptions as it is. Reading comprehension isn't your strongest point either.
Finally, as for communications skills, I did not attack anyone or anything. I was polite, and lastly, I am in my spare time. Georg is not my boss, I do not need to be politically correct. Thank you
#195
Posté 20 novembre 2009 - 06:36
skuld1 wrote...
Magic Zarim wrote...
Thirdly, Georg, what kind of VM are you using? I suspsect you're not using a LUA VM. LUA is extremely performant and easy to work with,
The ongoing disaster known as Hearts of Iron III disagrees with you (or Paradox's whole staff are really bad).
Zing!
#196
Posté 20 novembre 2009 - 06:42
skuld1 wrote...
Magic Zarim wrote...
Thirdly, Georg, what kind of VM are you using? I suspsect you're not using a LUA VM. LUA is extremely performant and easy to work with,
The ongoing disaster known as Hearts of Iron III disagrees with you (or Paradox's whole staff are really bad).
They must be really bad then, there are plenty large titles that implement Lua well and adore it. I love it myself as well. I've hooked up Lua engines more than once in our software and added pletora of extensions to it. To each their own I suppose.
#197
Posté 20 novembre 2009 - 06:47
Magic Zarim wrote...
I didn't claim I knew what engine BioWare uses. In fact, I sincerely asked Georg about this.
As for performing a boolcheck within the script, any engine worth its salt directly performs a bool check on the underlying hardware. Parts of the script are interpreted or precompiled, others, like atomic operations like a bool check are directly translated to a set of machine instructions for the underlying architecture. You know all of this, right?
I find your statements quite amusing, so full of assumptions as it is. Reading comprehension isn't your strongest point either.
Finally, as for communications skills, I did not attack anyone or anything. I was polite, and lastly, I am in my spare time. Georg is not my boss, I do not need to be politically correct. Thank you
Yes, of course bool checks are cheap and fast - so fast that the cost of the instruction is trivial, especially compared with the amount of processing necessary to translate the script "if ( bLoggingEnabled ) " into an actual bool check, and the cost of not knowing what instruction will be executed after the check.
#198
Posté 20 novembre 2009 - 06:51
Magic Zarim wrote...
I didn't claim I knew what engine BioWare uses. In fact, I sincerely asked Georg about this.
As for performing a boolcheck within the script, any engine worth its salt directly performs a bool check on the underlying hardware. Parts of the script are interpreted or precompiled, others, like atomic operations like a bool check are directly translated to a set of machine instructions for the underlying architecture. You know all of this, right?
I find your statements quite amusing, so full of assumptions as it is. Reading comprehension isn't your strongest point either.
Finally, as for communications skills, I did not attack anyone or anything. I was polite, and lastly, I am in my spare time. Georg is not my boss, I do not need to be politically correct. Thank you
No...but you should be respectful. Come on man, don't hide now. Your original post was intended to throw around your computational might and try to call BS on Bioware. As Georg stated many times, the technical aspect for why it was scrapped was only one of the many reasons it made its way to the chopping block. Respect the folks at Bioware and respect the answer they give you. Assume for a moment, that they made a well informed, intelligent decision for the ultimate good. If you don't like it, play something else.
#199
Posté 20 novembre 2009 - 06:53
Magic Zarim wrote...
I find your statements quite amusing, so full of assumptions as it is. Reading comprehension isn't your strongest point either.
Finally, as for communications skills, I did not attack anyone or anything. I was polite, and lastly, I am in my spare time. Georg is not my boss, I do not need to be politically correct. Thank you
I was not referring to political correctness. I was referring to your inability to express a clear idea. For example:
Magic Zarim wrote...
I never related LUA and those assembly instructions that perform a check on a bool. Sorry mate, but you jump the gun a bit too quick. I mentioned LUA in relation to string performance, not bool comparissions.
and
Magic Zarim wrote...
As for performing a boolcheck within the script, any engine worth its salt directly performs a bool check on the underlying hardware. Parts of the script are interpreted or precompiled, others, like atomic operations like a bool check are directly translated to a set of machine instructions for the underlying architecture. You know all of this, right?
So which is it? Were you relating LUA to those assembly instructions or weren't you? Or maybe you are indeed correct and it is just my reading comprehension skills that need improvement.
#200
Posté 20 novembre 2009 - 06:54
SheffSteel wrote...
Magic Zarim wrote...
I didn't claim I knew what engine BioWare uses. In fact, I sincerely asked Georg about this.
As for performing a boolcheck within the script, any engine worth its salt directly performs a bool check on the underlying hardware. Parts of the script are interpreted or precompiled, others, like atomic operations like a bool check are directly translated to a set of machine instructions for the underlying architecture. You know all of this, right?
I find your statements quite amusing, so full of assumptions as it is. Reading comprehension isn't your strongest point either.
Finally, as for communications skills, I did not attack anyone or anything. I was polite, and lastly, I am in my spare time. Georg is not my boss, I do not need to be politically correct. Thank you
Yes, of course bool checks are cheap and fast - so fast that the cost of the instruction is trivial, especially compared with the amount of processing necessary to translate the script "if ( bLoggingEnabled ) " into an actual bool check, and the cost of not knowing what instruction will be executed after the check.
You see, that's why you code in such way taking a processor's "branch prediction" into account so the processor doesn't have to clear its pipeline. This though, is not common knowledge to regular application engineers. For performance engineers this is common knowledge.
Have you seen and understand the Lua engine C code? I have and let me tell you, the decoding of the 'if (bLogingEnabled)' is as fast as it could be and the time it takes remains completely trivial. Furthermore, you can precompile your Lua scripts. Internally it doesn't work with strings but with tokens which is even faster than string decoding.
The real bottleneck is graphics processing. Not having to decode strings. Would DA:O cause 100% CPU usage on an Athlon 1800? (And I don't fall for not yielding the current thread as that will cause 100% CPU usage even if you wouldn't execute code within the thread loop).





Retour en haut






