Blogs are working again
In server upgrade aftermath blogs have been down for couple days. Now the blogs are working again.
Problems were mostly caused by MySQL 6.0 alpha release.
|
In server upgrade aftermath blogs have been down for couple days. Now the blogs are working again.
Problems were mostly caused by MySQL 6.0 alpha release.
It seems that people with good FPS can fire more accurately than people with low FPS. It is obvious that crosshair recovers slower than with high FPS - but does that affect accuracy?
Effect of FPS to accuracy was tested by shooting at a wall with M4 (without silencer) and recording exact coordinates where bullets hit. This was possible with Mattie Eventsrcripts. 90 bullets were fired with both 25 FPS and over 100 FPS. Another computer was 3100 Sempron (that is slow!) and another one E6300 Core Duo (very fast!!). Expected result was that 100 FPS player would shoot more accurately than 25 FPS player [Read: Rate settings in perspect of FPS]. Server was running with 66 tickrate.
When 90 bullet series were recorded then the data was handled with Linux shell scripts and GNUPlot used to make a graph of the firing pattern. Two tests were done, first firing all bullets standing still to a wall. Another test was to start strafing right and fire all bullets while strafing. Firing and strafing was done so that one keypress started the whole sequence.
Distance to the wall was about 20 meters.
![]()
Firing pattern when standing still (25 FPS vs. over 100 FPS)
![]()
Firing pattern when moving (25 FPS vs. over 100 FPS (even though it says 80 FPS in the picture, it’s above 100 FPS))
Just by looking at the pictures it looks like there’s no difference between 25 FPS and 100 FPS player. Another thing which was tested was firing sequences of 3 or 4 bullets at a time like normally in firefight. There was no difference then either.
Conclusion: low FPS players should stop complaining! Real conclusion: because of the way how data packets are sent to the server [Read: Rate settings in perspect of FPS] it is possible (and even likely) that high FPS players have actually advantage over low FPS players - other than being able to aim more accurately thanks to high FPS. Both client and server do weird stuff by interpolating data that they receive from eachothers so it’s possible that either the server or client or both are sending and expecting different data than they get. Because of those errors there might be simulation errors at the server and that gives an advantage for high FPS player. One of the errors might be that high FPS players data packets are handled first at the server and thus the high FPS player can get his shots registered before low FPS player.
For more information about how client and server do interpolation please read Source Multiplayer Networking, Lag Compensation and Networking Entities. Easiest to read is the first one and the hardest the last one. Sending and handling data over network is not easy!
As is written on Ghost’s blog about FPS settings affecting to rates it is possible that setting correct rate settings can help player shoot more effectively. Even though maximum updaterate would be 66 or 100 it could be more beneficial for player to set his rates according to his own computer specifications - that is, lower rates.
It would have been also possible to record exact time when the bullets hit the wall. That way it’d been possible to analyze whether 100 FPS player can fire faster bursts or empty the whole magazine faster. But there’s a more technical view to this thing which explains why testing is not easy. When 25 FPS player sends his command packets to server he only sends 25 packets per second. 100 FPS player can send all expected 66 packets. Because 25 FPS player is sending less packets he might instead send larger packets - more information in each data packet.
When server finally receives this information server doesn’t process it all at the same instant. For example if there are two commands such as “fire, move left” in the data segment then first “fire” is executed and then “move left”. In same situation 100 FPS player could send both “fire” and “move left” in separate data segments. When server receives data packets from both 100 FPS and 25 FPS player the server might do miscalculations on who shot first and where. Note: server isn’t that stupid actually, read more in links given above!
Mattie Eventscripts script to record bullet impacts
es_hitgroups.txt
event load
{
es_setinfo hitX 0
es_setinfo hitY 0
es_setinfo hitZ 0
es_setinfo i 0
es_keygroupdelete HitGroups
es_keygroupcreate HitGroups
est_RegSayHook !reset 0
}
event bullet_impact
{
es_setinfo hitX event_var(x)
es_setinfo hitY event_var(y)
es_setinfo hitZ event_var(z)
es_keycreate HitGroups server_var(i)
es_keysetvalue HitGroups server_var(i) x server_var(hitX)
es_keysetvalue HitGroups server_var(i) y server_var(hitY)
es_keysetvalue HitGroups server_var(i) z server_var(hitZ)
es_keygroupsave HitGroups |hitgroups
// Debug
es_setinfo coord 0
es_format coord “Bullet impact: %1 %2 %3″ server_var(hitX) server_var(hitY) server_var(hitZ)
es_msg server_var(coord)
es_math i + 1
}
event est_sayhook
{
es_tell #green Reset!
es_setinfo i 0
}
Linux shell-script to parse recorded bullet impact data
grep “\”.*\”\|x\|y\|z” 25fps.txt | sed -e ’s/^[^”]*//’ -e ’s/”//g’ -e ’s/[^0-9.-]//g’ -e ‘/^$/d’ | sed -e ‘N;s/\n/ /;N;s/\n/ /;N;s/\n/ /;’
GnuPlot script to plot graphs
reset
set title “FPS shooting”
set terminal png color
set output “firing-pattern.png”
set multiplot
plot “25fps.txt” using 2:4 with points, “100fps.txt” using 2:4 with points
Here’s a small script to extract maybe interesting data from Psychostats 3. Mostly a reminder for myself but anyone else who is interested about PS3 stats can use this method too. Blog interprets : D as smiley so “K : D” is written with space, same as with “K : M”.
limit=250
echo “# Rank Kills Deaths K : D K : M Online Skill”
lynx -source “http://css.setti.info/psychostats3/index.php?limit=$limit” | # Get Psychosts 3 HTML source
grep “<td class=.text. align=.center.>\|<td class=.text.>\|<td class=.text. nowrap>” | # Find stat lines from HTML
cut -f 2- -d “>” | # Parse stats
sed ’s/<\/td>//’ | # Parse stats
cut -f 1 -d “&” | # Parse stats
sed -e ‘N;s/\n/ /;N;s/\n/ /;N;s/\n/ /;N;s/\n/ /;N;s/\n/ /;N;s/\n/ /;’ # Parse one player’s stats in one line
#| sed -e ’s/,//g’ -e ’s/\./,/g’ # Replace periods (.) with commas (,)
Output should look something like this:
# Rank Kills Deaths K : D K : M Online Skill
1 13141 5482 2,40 0,69 317:55:50 15319,84
2 2247 908 2,47 0,95 39:25:18 15194,82
3 1665 754 2,21 0,67 41:21:15 14996,65
4 6149 2466 2,49 1,05 97:22:15 14715,97
5 21162 11396 1,86 0,61 582:14:46 14640,08
6 8672 4509 1,92 0,77 187:35:11 14638,51
7 6207 3721 1,67 0,58 178:41:34 14475,05
8 7245 4069 1,78 0,49 246:23:09 14378,98
9 1660 1200 1,38 0,50 55:40:32 14178,03
10 4375 2496 1,75 0,70 104:45:04 14150,38
That in turn can be handled with GNUPlot.
Something like comparing skill to K : D could be done to draw nice graphs.
GNUPlot script:
reset
set xlabel “Skill”
set ylabel “K : D ratio”
set title “Skill vs.“
set terminal png color;
set output “demo-plot.png”;
plot ‘ps3data.txt’ using 7:5 with points
That will result into a image which looks like this:
My hard disk drive started to slowly degrade. Windows boot up time grew longer and sometimes the hard drive was crunching something for 5 - 30 seconds. Later on the crunching time was between 5 - infinity. Then it was clear that something is wrong with the drive rather than Windows or some background process doing some useless disk scanning every once in a while.
The hard disk brand was Seagate Barracuda 320 GB 7200 RPM. Some time earlier I had bought 500 GB Samsung disk where I planned to completely restore the failing disk. I had about 280 GB data stored to the disk including Windows partition (30 GB) and 290 GB for data.
For backing up completely the whole 320 GB hard drive to the new 500 GB hard drive was the initial plan. For doing that job there are lots of tools. One of the most well known is Norton Ghost utility. Norton Ghost can (or it should) copy hard disk to another. When copying hard disks there is even option to copy MBR which is necessary for moving Windows from disk to another.
Copying the old hard disk to the new one took little less than 3 hours with Ghost. I then removed the old hard disk and tried to boot with the new hard disk. Everything went fine until Windows logon screen came up and the system failed to proceed forward. Norton Ghost had failed.
The more “hack-like” solution is to use Linux tools to copy hard disk. Linux is a good tool for this kind of operations because there are lots of CD-bootable distributions. I can boot Linux from CD and then do whatever I need to do to backup my data. This is also the somewhat harder way because the handling hard disk drives with Linux commands is not something that people have to deal with often. Thus it’s harder to learn than for example Norton Ghost’s easy graphical user-interface. Still, the basic idea is not hard at all - the hard part is figuring out that there exists such commands which can do hard disk backupping stuff in Linux. If the command is known then it’s easy.
The magical command is dd. By dd it’s possible to handle hard disk operations as if all the stuff in the disk was just bits and bytes. Dd doesn’t differentiate between boot sector or image - both are just data.
I used Knoppix as the “bootable live system”. Any other Linux release which has “bootable live system” can do the same thing. The live system boots Linux console or even graphical user-interface where the backup commands can be executed.
The magical command with parameters is
dd if=/dev/sda of=/dev/sdb bs=4k
The hard disk was copied about 70 MB / s which took about an hour to complete. After doing this I removed again the old hard disk and booted with the new. Everything worked! Where Norton Ghost fails a 28 kilobyte dd program succeeds.
Miscellaneous note: Very good tool to analyze hard disks seems to be program called SpinRite. There are two good video clips of the author telling how the software works. While looking for these links I accidentally found the following: SpinRite is 80% hype, 10% dangerous, and 10% real substance. I have not used this program earlier so I do not know whether it actually is what it promises but Steve seems to know what he is talking about.
Web analysis organization, XiTi Monitor, has released the latest report on Firefox market share evolution in Europe and globally.
![]()
IE is really crappy browser. For example on Setti page all the PNG images which have transparencies are not showed properly.
Firefox Opera IE OK OK Crap
Psychostats 3 is quite good ranking system but it might not tell everything about the goodness of some player. Here’s what I tried to look for from PS3 database:
Consider a player who has K : D ratio 1.0. That kind of player on average kills only one player per round. If that player has very good skill in PS3 it means that the victims of this player are ranked high on PS3. That is the ELO rating system PS3 is based on.
Now think about player who manages to kill 3 noobs in each round before dying himself. Such player might be as valuable for the team as the player who always kills just the toughest opposite team player.
Player whose K : D ratio is close to 1 with high skill could be actually more valuable for the team than the 1st ranked player on PS3. Here’s what was calculated:
Player skill / (K : D)^1/3 ::: That is “player’s skill divided by cube root of K : D ratio”
Division by cube root is done so that players with high K : D ratio would not suffer so much about the comparison to just K : D. For example player with K : D ratio of 2.5 would have his skill divided by 2.5^1/3 = 1.357. Player with only 2.0 ratio would have division value of 2.0^1/3 = 1.26. Difference between 1.357 and 1.26 is only 0.0973. If we used plain K : D ratio then the player with 2.5 ratio would have his skill divided by comparable larger value than the others. By taking cube root from the ratio the values pack closer to 1.0 and thus are closer to the real skill of the player and even players with high K : D ratio get sane value for alternative rank.
Name Rank K : D Skill Skill / (K : D)^1/3koti 18 1.33 13992 12724 M@rt!n 25 1.35 13718 12412 Maksiu 13 1.59 14283 12237 TupaC 4 1.96 15293 12220 dred 11 1.67 14400 12137 EchO* 24 1.46 13752 12122 MITAC 16 1.57 14058 12095 k1ller 8 1.73 14510 12087 ANAL .pl 10 1.73 14416 12009 Perplexer 15 1.65 14140 11966 Michaellsland 12 1.72 14327 11958 lWoDl windman 29 1.46 13520 11918 ?oakak 20 1.62 13959 11885 emmanuel 2 2.24 15539 11876 Chinaman 21 1.63 13913 11822 [odabasz]Pazo 14 1.80 14279 11738 essim0n 1 2.47 15862 11734 AJEJ 28 1.57 13614 11714 FakFeijs 6 1.93 14559 11693 Dr.House 23 1.69 13839 11618 k!llErM@ch!nE 22 1.72 13901 11602 BaLaN 3 2.31 15302 11576 Sonic 17 1.78 14019 11567 hg.toble 19 1.78 13990 11544 voov 9 2.00 14469 11484 The[Rip]Ice_Fin 27 1.71 13631 11399 hg.antizero 5 2.30 15011 11372 S.G#antizero 7 2.28 14552 11056
On that list you should see players who do not necessarily get lots of kills but know how to kill the other skilled players. Notice that the values in the last column don’t actually mean anything else but the order of the list. What was expected that the players who have rushing style of playing drop somewhat lower on this ranking list. They manage to kill the first couple noobs who come across their way at the beginning of each round and thus get high K : D ratio. Players who are more careful in their play either kill these first rushers or wait for the other skilled players to come to their line of fire.
Currently the plugin “nonoobs time” (reserve slots for regular players) is inactive due to some technical issues (PS2 stats are not computed anymore) and the fact that there is maybe not enough online time for all regular players to be considered as regular visitors. Plugin is custom written so it’s possible to convert it to use PS3 data instead of PS2. Sometime in the near future (during this week?) it will be active again, hopefully.
What I’ve observed is that the gameplay really suffers because there are lots of more noobs than regular players. Now, because there are lots of noobs many good players get insane scores by killing lots of noobs. Because noobs cannot coordinate their attacks the few regular players cannot do much to get their team winning.
Pay attention to level of gameplay now and after the nonoobs plugin is enabled again.
Team balancing is always a bit tricky question. Most players seem to think this as trivial but then again most players are stupid. Here are some thoughts about how team balancing can be done (either in wrong fashion or correctly).
This might be the most popular method of manual balancing. This method further divides to atleast two categories.
Swapping “random” player is not a good solution. Consider situation where team A is winning clearly and admin then “balances” teams by swapping someone to another team. Then team B starts winning and in the end scores are even - everybody happy? No. Even though the scores are even doesn’t mean that the teams are balanced. Swapping one good player (ie. anyone in PS3 top-50) can and usually does change the balance upside down. Usually players seem happy with this option even though it is clear by the next round that team B is going to start their winning streak evening the scores till the map ends.
Swapping one (good) player to another team has kind of double-effect. First it takes one good player away from the team A and gives that extra skills to team B. Not surprisingly the player who was swapped has lots of money, good weapons and kevlars and can continue his killing streak in the team B. Then team B starts winning because team A has actually lost the skill of the swapped player and team B benefits alot of this extra skill. This is the wrong way to balance teams!
This is quite much the best balancing option. Swapping some complete noob (who are omnipresent) does not change drastically team A’s tactics but gives a bit of extra firepower to team B. In 95% of cases it is just this insignificant noob who does not realize his position in the team which can make all the difference in balancing. However swapping noob in a balanced situation is not likely to have any change in the gameplay. That is, the noob does not have enough skills to play as a member of the team and as such does not affect the whole gameplay drastically. By complete noobs I mean players who get scores like 1 - 7 after 8 rounds.
Sometimes this works but usually not in the intended way. Any player in the top-25 makes so much difference that if such player swaps himself to another team it completely changes balance. The player himself might see that he is balancing the teamplay by going to another team and make the other team win. That is not balancing! That is going to teamwhore in the other team with all the good weapons, kevlars and lots of money. The other team doesn’t expect anyone to be against them with AWP and are used to kill people with couple shots (enemies don’t have kevlars because they don’t have money). The “fair” player who swapped himself to another team now gets lots of easy kills and can quite easily make his team winning again because the other team lost his skills and the other team gained his skills. Anyone in top-25 shouldn’t change his team during one map (unless autobalanced).
Mani admin plugin does autobalancing quite nicely even though it is completely random. There are some balancing plugins which look at the player skills, kills or other information to do balancing. However it is very common that these plugins overbalance the teams. It really kills the concept of teamplay if every round one or couple players change sides to make teams as even as possible. It’s not teamplay anymore.
Teams are balanced when it is X vs. X (X is some number). Usually atleast. Sometimes it just happens that the other team plays better than the other. That is not reason to swap some player to another team to make game “balanced” - by “balanced” I mean that the other team starts winning so that the scores are even at the end of map. Just like in any other sport sometimes the other team is just better. Just look any national sports league and you can observe that sometimes some good teams just play badly. That is their fault! They should be improving their play rather than getting extra players! Next month the same teams meet again and the scores can be upside down.
Don’t cry for balance - just play better.
There are some weird things in the so called modern world (that is, western countries).
Here are some samples from countries which pretty much think that they belong to these “modern countries”. Some of them actually are “modern” in almost every sense but still it’s amazing how much views can differ about how things should or should not be.
Some weeks ago majority of Portuguese didn’t want to vote for the abortion law which is very restrictive compared to rest of the Europe. In the same news article it is mentioned that abortion is banned in most situations in Malta, Ireland and Poland. Just what is wrong with these countries?
The picture shows that there are lots of religious people in the above countries (except Portugal). It’s quite hard to believe that people still in the 21st century let religion dictate their beliefs in the world.
Swiss court convicts Turkish politician because he denies Armenian genocide. In the same article it is mentioned that “In Turkey it is a crime to use the word genocide to describe the World War I-era killings”. Why does some court has to decide what happened in the world and what not? Is it like Turkey’s court is trying to protect its country’s image by saying that “nothing happened”. Swiss then again want to write their history so that there was a genocide - claim something else even with a proof and you go to jail. Unbelievable that in the “free world” (I mean Europe here, not Turkey) the freedom of speech is limited this way. Another issue is with the Germans and their swastikas, which is equally stupid thing to be settled in the courts.
Is that really the state of the freedom of speech in Europe? Unfortunately yes.
Just what is wrong with you Turks? Don’t you care a bit about what your government dictates and what not? Do you support such ban? There are quite many Turkish CS:S players at Setti. I really hope you don’t support such bans - but are you against that kind of stupidity? Somewhere I read that Turks don’t like to protest at anything because they are too afraid to show what they really think about issues. They rather wait for the problems to fade away. Just how stupid is that? Even though the ban is quite separate example it still shows that it is possible to cencor internet in Turkey the same way that is done in China and other oppressive countries. It is done possible by your courts and people who accept such bans. And for what reason - because you Turks are idiots (and Ataturk is idiot too). Plz ban?
Maybe not so reliable statistic as it was not reported in most of the popular news services but maybe there’s a hint of truth. “More than a quarter of Israel’s Arab citizens believe the Holocaust never happened, and nearly two thirds of Israeli Jews avoid entering Arab towns, a poll by an Israeli university showed Sunday.” Maybe Israel should now look example from Switzerland and Turkey and make a law that dictates what happened. Just pick couple people and ask their opinion about what happened and what not.
Messageboard at Setti mainpage had to be changed to moderated when there started to be too much stupid one-liners. The difference between from page 388 backwards to onwards is like day and night. Stupid messages completely disappeared. There are still stupid people who post stupid messages but it is relieving to know that they don’t get published.
Not all members are moderated though. Currently there are handulf of players who have proved to be able to write something sensible every now and then. Currently not moderated users (who are still active) on mboard are:
Also admins and some others who have not posted anything for ages are not moderated. Those who are not moderated can see the informative message:
Your messages are not moderated. Your post will show immediately.
Users who are moderated see the message:
Your message must be approved before others can see it. Your message will be in waiting state before it is either approved or disapproved.
If you look for messages that not-moderated members have posted you might get the idea why admins can trust that they don’t post anything stupid. That is, there is no need for moderation. Unfortunately there are just a few such members.
It doesn’t mean that all the other members or their posts are stupid but it’s just that these are just not needed, not even once. Unfortunate reality is that if moderation is removed from some members then that kind of posts will increase.
Also commenting on these blog entries is moderated. However mboard moderation system beats this moderation hands down. Whenever new comment is posted for example on this post the comment disappears. It’s as if there was some error. Not a single bit of information that the comment has been succesfully sent and must be approved before displaying. I added the moderation info in the layout some time ago.