The "Mani retired?" thread got locked, and 2 posts (1 by me and another by pimpinjuice) got deleted. (you can search for it on ES forums, just look for "SourceMod" it's first hit)
The thread went to the article recently posted on the SourceMod site that outlines performance hits comparitively of EventScripts and the still alpha software SourceMod. In the post regarding the article it was regarded as a "hit piece" claiming to be slagging on EventScripts, in essence, it really does not, it emphasizes that AlliedModders suggests against using it, but doesn't say not to do so. It points out performance flaws in EventScripts in order to provide a benchmark and comparison between the two. In my argument I posted I validate the arguments in the article, and provide a personal experience that I have had with EventScripts.
The arguments against the SourceMod article claim that the EventScripts were not properly optimized, so without further adiu, here is my rebuttal.
Quote:
I'm going to point out that while EventScripts *CAN* be optimized, it can not be optimized to the level of SourceMod in any way, due to the number of limitations in the way it stores variables and executes functions.
Also, that "hit piece" as you call it is pointing out milliseconds difference, not nanoseconds difference, which is a significant difference.
There a number of performance issues in ES that the article points out.
Also, EventScripts may be more popular to the less experienced in the scripting field, but the most you will gain is lessened performance and poorly built scripts on "pseudocode". A standardization is a significantly better way of applying the necessities of a scripting api, especially when utilizing an established scripting language.
Allow me to give an example of my PERSONAL experience with EventScripts I ran 1 eventscript that all it did was check the mani variable mani_tickrate and output the value to the chat line. I was running mani, and nothing else at the time (other than ES), within 1 week and I got performance, ping, choke, lag, and registration complaints, 1 week.
I'm also going to point out these are typical benchmarks and performance tests. Not something "beyond what any scripting language should do"
Now , what the developers of SourceMod did offer is since the code examples used in ES were posted, that you go ahead and optimize it, the algorithms can't be changed, but if you optimize the scripts and supply them, they'll be happy to re-run the benchmarks.
|
I would like to expand upon the nanoseconds/milliseconds argument here and state that ping/latency operates on milliseconds. Now, wouldn't it be nice to have your ping at 50 nanoseconds as opposed to 50 milliseconds? Currently this is a physical impossibility, but it's an example I feel works. The same idea applies to command execution. It's much better to have a command execute in nanoseconds as opposed to milliseconds.
__________________