Saturday, March 31, 2012

FICS formula

Abstract.

This article is based on FICS help file http://www.freechess.org/Help/HelpFiles/formula.html
Formulas are very useful to filter users in all ways:
1. Filtering seeks in main console,
(only if seek is set to 1:    set seek 1     )
2. Filtering seeks and using sought command.
3. Filtering games automatically and immediately, using getgame f command. This command loads game board automatically if users seek fits your formula(probably the oldest seek is priority).
Some tips. Formula can have so called "f-variables", named from f1 to f9.
Formula variables can look like this: "1","2", "1minutes", "120", "time", "ratingdiff", or so, but they can be formulas itself, e.g. "time>2", "ratingdiff>-300". Usually "f-variables" are(or looks like) less complex then formulas. Not all logically correct "f-variables" does their job. The more complex variable is, the less possible that you will get the results you want(it just might be, that only a part of your variable will be accomplished). As I discovered, it is best thing, that "f-variables" are of only one type, e.g. variable setting:
set f1 ( (time=2) & (inc=0) ) | ( (time=1) & (inc<=1) ) | ( (time=0) & (inc<= 12) )
is well taken, because clock setting type (time and inc(increment))is used.
But some parts, including "rated", of such a complex "f-variable":
( (time=2)&(inc=0) )& !atomic & !losers & !computer & rated & ( rating > (myrating - 150) )
on my computer was ignored. That's why it is best your formula variables to have somewhere written.

Fast seek formulas

seek 5 0 u 2000-4000
To ask for some color is better just "seek" with certain color
: seek white f
Other formulas
set form time=10 & inc>=5 & inc<=15 & f1 & chess
set form etime<3 & f1 & chess
set form (etime<3 | (!chess & etime<=10)) & f1

set formula chess & unrated & time>1 & time<=3 & inc=0 & white
set formula (chess & unrated & time>1 & time<=3 & inc=0) | (board(fr)|board(4)|board(3)|crazyhouse & rated & etime>=2 & etime<=4)
set formula (chess & rated & etime>2 & time<=5 & inc<=5) | (chess & unrated & time>1 & time<=3 & inc=0) | (board(fr)|board(4)|board(3)|crazyhouse & rated & etime>=2 & etime<=4)
set formula (chess & rated & etime>2 & time<=5 & inc<=5) | (chess & unrated & time>1 & time<=3 & inc=0 & white) | (board(fr)|board(4)|board(3)|crazyhouse & rated & etime>=2 & etime<=4)
set formula (chess & rated & etime>2 & time<=5 & inc<=5) | (board(fr)|board(4)|board(3)|crazyhouse & rated & etime>=2 & etime<=4)

In those two formulas, second parts, where denoted "rated" and "unrated", does not work.
set formula ((chess & time>1)|((board(fr)|board(4)|board(3)|crazyhouse) & inc=0)) & ((time<=5 & etime>2 & inc<=5 & rated)|(time<=3 & etime>2 & inc<=3 & unrated & white))
set formula ((chess & ratingdiff>-100)|((board(fr)|board(4)|board(3)|crazyhouse) & ratingdiff>-200)) & ((time<=5 & etime>2 & inc<=5 & rated)|(time<=3 & etime>2 & inc<=3 & unrated & white))

set formula (time<=5 & etime>2 & inc<=5 & rated)|(time<=3 & etime>2 & inc<=3 & unrated & white)
set formula (time<=5 & inc<=5 & rated)|(time<=3 & inc<=3 & unrated & white) set formula time<=3 & inc=0 & white & unrated
set formula (((board(fr)|board(4)|board(3)|crazyhouse) & (etime<=5)&(etime>=3)|(chess & (etime<=24)&(etime>=16)))&(ratingdiff>-200 | assessloss>=-4))|(unrated & etime>=7) & !abuser & registered
set formula (board(fr)|board(4)|board(3)|crazyhouse|chess) & !abuser & rated & ratingdiff>-100 & time=3 & inc=0
set formula chess & !abuser & rated & ratingdiff>-100 & time=3 & inc<3
set formula chess & !computer & !abuser & rated & ratingdiff>-400 & etime>45 & noescape=0
set formula category(wild)& board(4) & !computer & rated & ratingdiff>-150 & (etime>2)&(etime<6)
set formula chess & ( ratingdiff > -200 ) & time = 1 & rated & !abuser
set formula (!chess | (chess & etime>=20)) & !computer & rated
set formula !computer & rated & etime>1
set formula !computer & chess & rated & etime >= 15
set formula !computer & (!chess | (chess & etime >= 20))
set formula !computer & (!chess | (chess & etime >= 20))& registered
set formula !computer & (!chess | (chess & etime >= 20))& rated
set formula provisional & rated
set formula estimated & rated
set formula rd >= 80 & rated

Fast sought filtering formulas

set formula board(fr)&board(4)&board(3)
set formula !board(0)&!board(1)&board(2)&!board(5)
set formula noescape = 0
set formula noescape = 1
set formula provisional
set formula !provisional
set formula estimated
set formula !estimated
set formula estimated | provisional
set formula !estimated | !provisional
set formula estimated | provisional & registered
set formula estimated | provisional & registered & !computer
set formula !estimated | !provisional & registered
set formula !estimated | !provisional & registered & !computer
set formula estimated | provisional & rated
set formula rd < 80
set formula rd >= 80
set formula rd >= 80 & registered
set formula timeseal
set formula !timeseal
set formula private
set formula !private
set formula untimed
set formula !untimed
set formula time<=5
set formula (time<=15)&(time>5)
set formula (time<=15)&(time>=5)
set formula time>15
set formula etime<=5
set formula (etime<=15)&(etime>5)
set formula (etime<=15)&(etime>=5)
set formula etime>15
set formula (etime <= 20)&(time < 10)
set formula (etime <= 20)&(time > 10)
set formula inc>0
set formula inc>0 & unrated
set formula inc>0 & rated & rating >= myrating
set formula inc>0 & rated & rating <= myrating
set formula rating >= myrating
set formula rating <= myrating
set formula rated
set formula unrated
set formula rated & rating >= myrating
set formula rated & rating <= myrating
set formula registered
set formula !registered
set formula registered & rating <= myrating
set formula chess
set formula !chess
set formula chess & rated
set formula !chess & rated
set formula chess & rated & time<=5
set formula !chess & rated & time<=5
set formula chess & rated & (time>5)& (time<=15)
set formula !chess & rated & (time>5)& (time<=15)
set formula chess & rated & (time>15)
set formula !chess & rated & (time>15)
set formula chess & rating >= myrating
set formula chess & rating <= myrating
set formula !chess & rating >= myrating
set formula !chess & rating <= myrating
set formula chess & rating >= myrating & rated
set formula chess & rating <= myrating & rated
set formula !chess & rating >= myrating & rated
set formula !chess & rating <= myrating & rated
set formula chess & rating >= myrating & rated & time<=5
set formula chess & rating <= myrating & rated & time<=5
set formula !chess & rating >= myrating & rated & time<=5
set formula !chess & rating <= myrating & rated & time<=5
set formula chess & rating >= myrating & rated & (time>5)& (time<=15)
set formula chess & rating <= myrating & rated & (time>5)& (time<=15)
set formula !chess & rating >= myrating & rated & (time>5)& (time<=15)
set formula !chess & rating <= myrating & rated & (time>5)& (time<=15)
set formula chess & rating >= myrating & rated & (time>15)
set formula chess & rating <= myrating & rated & (time>15)
set formula !chess & rating >= myrating & rated & (time>15)
set formula !chess & rating <= myrating & rated & (time>15)
xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx
set formula chess & rating >= myrating & rated & time<=5 & inc < 10
set formula chess & rating <= myrating & rated & time<=5 & inc < 10
set formula !chess & rating >= myrating & rated & time<=5 & inc < 10
set formula !chess & rating <= myrating & rated & time<=5 & inc < 10
set formula chess & rating >= myrating & rated & (time>5)& (time<=15) & inc < 10
set formula chess & rating <= myrating & rated & (time>5)& (time<=15) & inc < 10
set formula !chess & rating >= myrating & rated & (time>5)& (time<=15) & inc < 10
set formula !chess & rating <= myrating & rated & (time>5)& (time<=15) & inc < 10
set formula chess & rating >= myrating & rated & (time>15) & inc < 10
set formula chess & rating <= myrating & rated & (time>15) & inc < 10
set formula !chess & rating >= myrating & rated & (time>15) & inc < 10
set formula !chess & rating <= myrating & rated & (time>15) & inc < 10
xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx
set formula chess & rating >= myrating & rated & time<=5 & inc >= 10
set formula chess & rating <= myrating & rated & time<=5 & inc >= 10
set formula !chess & rating >= myrating & rated & time<=5 & inc >= 10
set formula !chess & rating <= myrating & rated & time<=5 & inc >= 10
set formula chess & rating >= myrating & rated & (time>5)& (time<=15) & inc >= 10
set formula chess & rating <= myrating & rated & (time>5)& (time<=15) & inc >= 10
set formula !chess & rating >= myrating & rated & (time>5)& (time<=15) & inc >= 10
set formula !chess & rating <= myrating & rated & (time>5)& (time<=15) & inc >= 10
set formula chess & rating >= myrating & rated & (time>15) & inc >= 10
set formula chess & rating <= myrating & rated & (time>15) & inc >= 10
set formula !chess & rating >= myrating & rated & (time>15) & inc >= 10
set formula !chess & rating <= myrating & rated & (time>15) & inc >= 10
xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx
set formula lightning
set formula lightning & rating >= myrating
set formula lightning & rating <= myrating
set formula lightning & rated
set formula lightning & rating >= myrating & rated
set formula lightning & rating <= myrating & rated
set formula blitz
set formula blitz & rating >= myrating
set formula blitz & rating <= myrating
set formula blitz & rated
set formula blitz & rating >= myrating & rated
set formula blitz & rating <= myrating & rated
set formula standard
set formula standard & rating >= myrating
set formula standard & rating <= myrating
set formula standard & rated
set formula standard & rating >= myrating & rated
set formula standard & rating <= myrating & rated
set formula wild
set formula wild & rating >= myrating
set formula wild & rating <= myrating
set formula wild & rated
set formula wild & rating >= myrating & rated
set formula wild & rating <= myrating & rated
set formula crazyhouse
set formula crazyhouse & rating >= myrating
set formula crazyhouse & rating <= myrating
set formula crazyhouse & rated
set formula crazyhouse & rating >= myrating & rated
set formula crazyhouse & rating <= myrating & rated
set formula suicide
set formula suicide & rating >= myrating
set formula suicide & rating <= myrating
set formula suicide & rated
set formula suicide & rating >= myrating & rated
set formula suicide & rating <= myrating & rated
set formula losers
set formula losers & rating >= myrating
set formula losers & rating <= myrating
set formula losers & rated
set formula losers & rating >= myrating & rated
set formula losers & rating <= myrating & rated
set formula atomic
set formula atomic & rating >= myrating
set formula atomic & rating <= myrating
set formula bughouse
set formula bughouse & rating >= myrating
set formula bughouse & rating <= myrating
set formula bughouse|crazyhouse & rating >= myrating
set formula bughouse|crazyhouse & rating <= myrating
set formula bughouse|crazyhouse & rating >= myrating & rated
set formula bughouse|crazyhouse & rating <= myrating & rated
set formula wild|crazyhouse
set formula wild|crazyhouse & rating >= myrating
set formula wild|crazyhouse & rating <= myrating
set formula wild|crazyhouse & rated
set formula wild|crazyhouse & rating >= myrating & rated
set formula wild|crazyhouse & rating <= myrating & rated
set formula suicide|losers
set formula suicide|losers & rating >= myrating
set formula suicide|losers & rating <= myrating
set formula suicide|losers & rated
set formula suicide|losers & rating >= myrating & rated
set formula suicide|losers & rating <= myrating & rated
set formula wild|crazyhouse|suicide
set formula wild|crazyhouse|suicide & rating >= myrating
set formula wild|crazyhouse|suicide & rating <= myrating
set formula wild|crazyhouse|suicide & rated
set formula wild|crazyhouse|suicide & rating >= myrating & rated
set formula wild|crazyhouse|suicide & rating <= myrating & rated
set formula losers|atomic
set formula losers|atomic & rating >= myrating
set formula losers|atomic & rating <= myrating
set formula losers|atomic & rated
set formula losers|atomic & rating >= myrating & rated
set formula losers|atomic & rating <= myrating & rated
set formula assesswin<=10
set formula assesswin>10
set formula assessloss>-5
set formula assessloss<=-5
set formula assessdraw<0
set formula assessdraw=0
set formula assessdraw>0
set formula assessdraw<=0
set formula maxtime(40) <= 2*10minutes
set formula maxtime(10) <= 3minutes
set formula (maxtime(10) >= 3minutes)& (maxtime(10) <= 10minutes)
set formula maxtime(10) >= 10minutes

My FICS (complex, using variables) formulas

........................variables-4...............................
set f1 ratingdiff>-200 & !abuser
set f2 assessloss>=-4 & !abuser
set f3 rd < 20 & !abuser
set f4 etime<=5 & etime>=3 & (board(fr)|board(4)|board(3)|crazyhouse)
set f5 etime>=16 & etime<=24 & chess
set f6 ((f1|f2) & (f4|f5))|(unrated & etime>=7)
set f7 etime>=3 & etime<=5 & f1 & chess
set f8 etime>=1 & etime<=2 & f1 & chess

set form !chess | etime>10
........................variables-3...............................
set f1 ((board(fr)|board(4)|board(3)|crazyhouse) & (etime<=5)&(etime>=3)
set f2 chess & (etime<=24)&(etime>=16)
set f3 ratingdiff>-200
set f4 assessloss>=-4
set f5 ((f3|f4) & (f1|f2))|(unrated & etime>=7) & !abuser
set Formula f5


........................variables-2...............................
f1: 2 #time+
f2: 31 #rd+
f3: 50 #rating+
f4: 2 #asseswin+
f5: chess & ((rd > (175-f2+0))|(rd < (f2+0))) & (rating < (myrating+f3 + 0))
\ & (etime > (f1+0))&(etime < (f1 + 4 + 0)) & (assesswin >=(f4+0))
f6: wild & (assesswin >= f4+1) & (etime > f1-1) & (etime < f1+8)
f7: crazyhouse & (etime >= f1+1) & (etime < f1+9) & (inc<11)
f8: suicide & (etime >= f1+2) & (etime < f1+10) & (inc<6)
f9: (losers|atomic) & (etime >= f1+1) & (etime < f1+8)


---formulas-2---
set formula (f5|f6|f7|f8|f9) & rated

...................variables-1...............................
f1: 2
f2: 40
f3: 50
f4: chess & ((rd >(175-f2))|(rd < f2)) & (rating<(myrating+f3)) &
(etime>f1)&(etime<(f1 + 4))
---formulas-1---
set formula f4 & rated & (assesswin>=2)

........................variables0...............................
f1: (chess & (etime > 3) & inc > 0) | (!chess & (etime > 1))
f2: ( (time=2) & (inc=0) ) | ( (time=1) & (inc<=1) ) | ( (time=0) & (inc<=
12) )
f3: ratingdiff > -150
f4: (assesswin <= 10)& (assesswin >= 2)
f5: (assessloss => -4)& (assessloss <= -1)& !computer
f6: (rd <25) & !computer
f7: maxtime(10)
f8: (f7 >= 2*8minutes) & (f7 <= 2*10minutes)
f9: 1500
---formulas0---

........................variables1...............................

set f1 (chess & (etime > 3) & inc > 0) | (!chess & (etime > 1))
set f2 ((time = 2) & (inc=0))|((time=1) &(inc <=1))|((time=0)&(inc<=12))
set f3 ratingdiff > -150
---formulas1---
set formula f2 & rated & !chess & !computer

........................variables2...............................
set f3 rating > (myrating - 150)
---formulas2---

No comments:

Post a Comment