|
Как такое может работать? Шахматная программа из 1024 байт | ☑ | ||
---|---|---|---|---|
0
D_Pavel
26.09.12
✎
06:16
|
Как она может думать при таком маленьком размере?
|
|||
1
D_Pavel
26.09.12
✎
06:17
|
Может как-то с сервером связывается, но я сниффером проверял, вроде ниче не отправляет. Не понятно...
|
|||
2
Андрюха
26.09.12
✎
06:23
|
Прикольные шахматы )))
|
|||
3
DJ Anthon
26.09.12
✎
06:25
|
(2) простите, куда это вставлять? ;)
|
|||
4
D_Pavel
26.09.12
✎
06:26
|
(3) В пустой файл с расширением html
|
|||
5
D_Pavel
26.09.12
✎
06:26
|
(2) Как они работают!!?
|
|||
6
Капитан Смоллет
26.09.12
✎
06:38
|
||||
7
Godofsin
26.09.12
✎
06:39
|
(6) прикольно
|
|||
8
DJ Anthon
26.09.12
✎
06:39
|
вот оно, торжество оптимизации!
|
|||
9
D_Pavel
26.09.12
✎
06:40
|
Если бы виндовс делал тот же программист, сейчас бы мы могла загрузить с дискеты
|
|||
10
Godofsin
26.09.12
✎
06:41
|
да всяко связь с сервером
|
|||
11
Капитан Смоллет
26.09.12
✎
06:41
|
+(6)
A Mexican software developer ?scar Toledo Guti?rrez wrote Toledo Javascript Chess (http://bit.ly/nanoChess), the world's smallest chess program in JS. This version won the first JS1K contest and defeated several hundreds of novice players along the world. Its just crazy how small this game is - in fact I'm going to post the entire game source code in this post just so you understand what kind of feat this was (more info here http://bit.ly/MzcwO5). |
|||
12
D_Pavel
26.09.12
✎
06:46
|
(10) Я не нашел связи с сервером.
|
|||
13
Ткачев
26.09.12
✎
06:54
|
Я проиграл :(
|
|||
14
lxndr
26.09.12
✎
06:56
|
она ракироваться не умеет (
|
|||
15
Ткачев
26.09.12
✎
07:01
|
Работает без интернета, выдергивал сетевые кабеля все работает.
|
|||
16
Один С
26.09.12
✎
07:03
|
и чо, все шахматные правила в этих девяти строчках?
|
|||
17
Рэйв
26.09.12
✎
07:08
|
Наверное внутри винды где-то спрятана шахматная закладка и оно ее юзает:-)
|
|||
18
snegovik
26.09.12
✎
07:08
|
А как картинки-то прорисованы, в смысле шахматные фигуры???
|
|||
19
Светлый Гений
26.09.12
✎
07:15
|
(0)суровый код )
|
|||
20
D_Pavel
26.09.12
✎
07:16
|
(14) да, косяк есть такой.
(16) тоже удивляюсь (18) Как видишь, прорисованы |
|||
21
D_Pavel
26.09.12
✎
07:16
|
Как-то
|
|||
22
Cashtane
26.09.12
✎
07:17
|
(0) Да ну на...
|
|||
23
D_Pavel
26.09.12
✎
07:21
|
Фигура наверное закодированы в этой строке:
"ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK IDHGFE" |
|||
24
D_Pavel
26.09.12
✎
07:22
|
ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это расстановка фигур в начальную позицию
|
|||
25
ink1981
26.09.12
✎
07:22
|
мля происки сатаны
|
|||
26
DJ Anthon
26.09.12
✎
07:28
|
(23) фигуры - это стандартные символы, че их кодировать?
|
|||
27
Balabass
26.09.12
✎
07:28
|
(26) Это в спец симовлах чтоли?
|
|||
28
Balabass
26.09.12
✎
07:29
|
чет там только вязь да математики немного
|
|||
29
DJ Anthon
26.09.12
✎
07:31
|
а ведь код ровно килобайт
|
|||
30
Ткачев
26.09.12
✎
07:33
|
(29)Килобайт = 1024, а тут 1064
|
|||
31
DJ Anthon
26.09.12
✎
07:36
|
(30) чисто код, без рамок
|
|||
32
Ткачев
26.09.12
✎
07:40
|
В 1с разделитель команд ";", в бейсике ":", а тут ?
|
|||
33
Godofsin
26.09.12
✎
07:40
|
автор данного произведения несомненно заслуживает уважения. Зайдите по ссылке в (6), там куча всяких разных игр и приколюх
|
|||
34
pilot_iv
26.09.12
✎
07:41
|
это сильно
|
|||
35
Godofsin
26.09.12
✎
07:45
|
и все же, как описан алгоритм ходов компа?
|
|||
36
DJ Anthon
26.09.12
✎
07:48
|
разбирайте по косточкам )) но, блин, шахматы впихнуть в килобайт, да еще и с графической частью, это пипец. круче жести не видел. даже квейк четырехкилобайтный отдыхает, на асме когда-то контесты были 4к и 64к. или 64килобайтный, не помню уже...
|
|||
37
Хромой
26.09.12
✎
08:04
|
у кого есть линукс, потестите
|
|||
38
makfromkz
26.09.12
✎
08:07
|
это здорово, только малюююсенький минус: читабельности этого кода ровно NULL
|
|||
39
Сержант 1С
26.09.12
✎
08:08
|
нужен NS )
|
|||
40
Фрэнки
26.09.12
✎
08:09
|
но это все-таки скрипт, который можно прочитать без декомпиляции
|
|||
41
D_Pavel
26.09.12
✎
08:10
|
(26) Какие символы?
|
|||
42
D_Pavel
26.09.12
✎
08:11
|
О. Точно символы простые. Тогда не интересно ((((9
|
|||
43
D_Pavel
26.09.12
✎
08:11
|
?
? ? ? ? ? ? |
|||
44
Скользящий
26.09.12
✎
08:12
|
поиграл, они меня еще и выиграли! Совсем потерял закалку. )
|
|||
45
al_zzz
26.09.12
✎
08:13
|
Баг нашел - не умеет рокировку делать. :-)
|
|||
46
PuhUfa
26.09.12
✎
08:14
|
(42) т.е. для тебя проблема только в том как нарисовать фигурки? -)
|
|||
47
D_Pavel
26.09.12
✎
08:15
|
да, зато если пешкой до конца дойти, то она в ферзя превращается
|
|||
48
D_Pavel
26.09.12
✎
08:15
|
(46) Нет
|
|||
49
D_Pavel
26.09.12
✎
08:15
|
В этом нет проблемы
|
|||
50
Xapac_2
26.09.12
✎
08:19
|
(0)
приводи код правильно <canvas id="c"> </canvas> <script> for(B=i=y=u=b=i=5-5,x=10,I=[],l=[];B++<304;I[B-1]=B%x?B/x%x<2|B%x<2?7:B/x&4?0:l[i++]="ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK IDHGFE".charCodeAt(y++)-64:7); function X(c,h,e,s) { c^=8; for(var o,S,C,A,R,T,G,d=e&&X(c,0)>1e4,n,N=-1e8,O=20,K=78-h<<9;++O<99;) if((o=I[T=O])&&(G=o^c)<7) { A=G--&2?8:4;C=o-9?l[61+G]:49; do if(!(R=I[T+=l[C]])&&!!G|A<3||(R+1^c)>9&&G|A>2) { if(!(R-2&7))return K; n=G|(c?T>29:T<91)?o:6^c; S=(R&&l[R&7|32]*2-h-G)+(n-o?110:!G&&(A<2)+1); if(e>h||1<e&e==h&&S>2|d) { I[T]=n;I[O]=0; S-=X(c,h+1,e,S-N); if(!(h||e-1|B-O|T-b|S<-1e4))return W(),c&&setTimeout("X(8,0,2),X(8,0,1)",75); I[O]=o; I[T]=R } if(S>N||!h&S==N&&Math.random()<.5) if(N=S,e>1)if(h?s-S<0:(B=O,b=T,0))break} while(!R&G>2||(T=O,(G||A>2|(c?O>78:O<41)&!R)&&++C*--A)) } return-K+768<N|d&&N } function W() { i="<table>"; for(u=18;u<99;document.body.innerHTML=i+=++u%x-9?"<th width=60 height=60 onclick='I[b="+u+"]>8?W():X(0,0,1)'style='font-size:50px'bgcolor=#"+(u-B?u*.9&1||9:"d")+"0f0e0>&#"+(I[u]?9808+l[67+I[u]]:160):u++&&"<tr>") B=b } W() </script> |
|||
51
PuhUfa
26.09.12
✎
08:19
|
Там, кстати, 2 варианта шахмат
http://js1k.com/2010-first/demos#id699 http://js1k.com/2010-first/demos#id750 |
|||
52
D_Pavel
26.09.12
✎
08:22
|
(51) В чем разница?
|
|||
53
Xapac_2
26.09.12
✎
08:23
|
фигурки, это тупо символы шрифта
charCodeAt(y++)-64 |
|||
54
Ткачев
26.09.12
✎
08:24
|
(52)
Tiny Chess. Play chess against computer with queen-only promotion and without castling or en passant. Click origin square and then target square to move piece, it will validate moves. Update 1: Big chessboard with Unicode graphics, illuminates piece to move. Update 2: Better gameplay and variety. Now shows immediately user's move. Thanks to @romancortes for optimization tips. Update 3: Illuminates last piece moved. Enhanced strength to evade fool and scholar's mate. Thanks to @kamathln for optimization tip. Update 4: Computer now prefers to checkmate instead of stalemate. I did it after reading the article http://malevolent.com/524 |
|||
55
ZoRN
26.09.12
✎
08:24
|
Локально работать не будет !
|
|||
56
Xapac_2
26.09.12
✎
08:25
|
(55)у меня работает
|
|||
57
Ткачев
26.09.12
✎
08:26
|
(55)->(15)
|
|||
58
al_zzz
26.09.12
✎
08:27
|
http://vfl.ru/fotos/99e11689967043.html - я его сделал!
|
|||
59
Скользящий
26.09.12
✎
08:27
|
локально работает. Еще меня и обыграла, сволочь. )
|
|||
60
D_Pavel
26.09.12
✎
08:31
|
Я обыграл его!
|
|||
61
D_Pavel
26.09.12
✎
08:34
|
(58) Поздравляю, у тебя тоже больше ума чем 1024 Кб! )))
|
|||
62
D_Pavel
26.09.12
✎
08:34
|
Тоесть байта
|
|||
63
al_zzz
26.09.12
✎
08:39
|
(61) Спасибо! Я догадывался...
|
|||
64
ZoRN
26.09.12
✎
08:40
|
(61) - 1023
|
|||
65
ZoRN
26.09.12
✎
08:43
|
A:20 ?@87=05B 45:;0@0F8N 1956
Москва признает декларацию 1956 |
|||
66
ZoRN
26.09.12
✎
08:43
|
ByteBuffer
|
|||
67
vde69
26.09.12
✎
08:53
|
прикольно
ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это фигуры @G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK IDHGFE - а это наверно ходы для фигур |
|||
68
vde69
26.09.12
✎
08:59
|
только я вот не понял где тут в коде устанавливается шрифт "MS Mincho"
|
|||
69
Godofsin
26.09.12
✎
09:01
|
(58) аналогично) туповат несколько...
|
|||
70
D_Pavel
26.09.12
✎
09:05
|
(68) Наверное юникод
|
|||
71
vde69
26.09.12
✎
09:07
|
(70) ГДЕ ????
в тексте нет такого слова, а других способов сменя шрифта я не знаю, покажите ГДЕ устанавливается шрифт... |
|||
72
Сказочный Баобаб
26.09.12
✎
09:12
|
у меня в html не заработала.
Как код вставить? И опять же как ходить - тока фигура выделяется |
|||
73
VladZ
26.09.12
✎
09:13
|
(50) Хм.. Для меня - это китайская грамота...
|
|||
74
k1us181b
26.09.12
✎
09:17
|
(72) первый щелчок по клетке с фигурой.
второй - щелчок по клетке куда встанет фигура |
|||
75
D_Pavel
26.09.12
✎
09:18
|
(71) Не надо ниче там устанавливать или менять. Символ получается по коду
|
|||
76
y88
26.09.12
✎
09:19
|
(0) спасибо, супер! Буду расковыривать :)
(71) выводится спец символ в формате &#код_символа |
|||
77
D_Pavel
26.09.12
✎
09:21
|
(72) Попробуй другой браузер. В последней Мозиле и IE работает.
|
|||
78
Сказочный Баобаб
26.09.12
✎
09:23
|
заработал - 3 раза проиграл.
на работе проиграли все. ((( 100% вызываются Dll |
|||
79
Никола_
Питерский 26.09.12
✎
09:23
|
Кто нить может рокировку добавить ?
|
|||
80
Сказочный Баобаб
26.09.12
✎
09:24
|
судя по тому что народ не понял как это работает... - тут нет хакеров и профессионалов в програмировании
|
|||
81
Сказочный Баобаб
26.09.12
✎
09:25
|
для того что бы понять - не вызываются ли Dll - на на Линухе запустить.
кто пробовал там? |
|||
82
D_Pavel
26.09.12
✎
09:25
|
(78) Не вызываются
|
|||
83
Сказочный Баобаб
26.09.12
✎
09:26
|
(82) почему? Проверяли?
Шахматы то есть! |
|||
84
D_Pavel
26.09.12
✎
09:27
|
(83) Потому что настройки безопасности браузера не позволяют вызвать DLL из скрипта
|
|||
85
Сказочный Баобаб
26.09.12
✎
09:27
|
кто на Линухе пробовал?
|
|||
86
Zubizub
26.09.12
✎
09:28
|
(84) отключи браузер
|
|||
87
vde69
26.09.12
✎
09:28
|
(78) мда, ну и работа у тебя (и работники)...
прога играет на самом приметивном уровне, тупо считает сумму оставшихся фигур... собственно как работает прога более менее понятно, автор молоток! |
|||
88
D_Pavel
26.09.12
✎
09:28
|
(86) зачем?
|
|||
89
dm77
26.09.12
✎
09:28
|
(85) работает
|
|||
90
D_Pavel
26.09.12
✎
09:29
|
(87) Считает на один ход вперед? Или на два? Я что-то не очень понял
|
|||
91
Venom
26.09.12
✎
09:30
|
(18) шрифт такой
|
|||
92
vde69
26.09.12
✎
09:31
|
(90) видимо на 1, простую жертву с последующим матом пропустил
|
|||
93
vde69
26.09.12
✎
09:31
|
(91) шрифт "MS Mincho"
|
|||
94
Сказочный Баобаб
26.09.12
✎
09:33
|
(87)нормальные работники - отличные проги.
и как работает - не понятно - не догнали |
|||
95
Сказочный Баобаб
26.09.12
✎
09:33
|
кстати...вот ссылка с фотой автора
https://plus.google.com/100663135211813370970/posts/NPS5enJK7Ee#100663135211813370970/posts/NPS5enJK7Ee |
|||
96
Stim
26.09.12
✎
09:35
|
random()
думает на ход вперед, использует рандом |
|||
97
тшл
26.09.12
✎
09:47
|
на маке работает
|
|||
98
Starhan
26.09.12
✎
09:52
|
еее с 8го раза победил. Шахматы напрочь забыл :(
|
|||
99
Stim
26.09.12
✎
09:52
|
какую кодировку ставить на опере?
|
|||
100
Zubizub
26.09.12
✎
09:53
|
100
|
|||
101
Кирпич
26.09.12
✎
09:53
|
Ахринеть. Снимаю шляпу.
|
|||
102
Stim
26.09.12
✎
09:54
|
а в 12 строчка можно все УПП переписать :)
|
|||
103
Zubizub
26.09.12
✎
09:55
|
(102) так чего ты ждешь?
|
|||
104
mzelensky
26.09.12
✎
09:55
|
(0) я с этой ерундовиной сыграл в ничью :(
|
|||
105
ssh2006
26.09.12
✎
09:58
|
Зашел с айфона, включил авиарежим - работает
|
|||
106
y88
26.09.12
✎
09:59
|
да там чистый JavaScript - он везде будет работать
|
|||
107
Никола_
Питерский 26.09.12
✎
10:00
|
Ну так что рокировочку никто не сможет прикрутить ?
|
|||
108
y88
26.09.12
✎
10:01
|
(107) жги еще :)
|
|||
109
Сказочный Баобаб
26.09.12
✎
10:05
|
мда....чуствую тусующиеся здесь проги вирус не напишут....
|
|||
110
D_Pavel
26.09.12
✎
10:07
|
(109) Я написал вирус.
|
|||
111
Волшебник
26.09.12
✎
10:17
|
(0) Хреново играет. Рокировку не знает.
Я ей мат поставил как нефиг делать http://ximage.ru/data/imgs/1348640218.jpg |
|||
112
vde69
26.09.12
✎
10:20
|
и взятие на проход не знает!!!
|
|||
113
Сказочный Баобаб
26.09.12
✎
10:24
|
Плохо? да?
А то что весь отдел проиграл! |
|||
114
vde69
26.09.12
✎
10:26
|
(113) это говорит о том что в отделе играют на порядок хуже Волшебника (точнее вообще не умеют играть)
программа играет на уровне 6-8 летнего ребенка который просто играет, но разумеется никогда в секцию не ходил |
|||
115
Ork
26.09.12
✎
10:27
|
||||
116
Волшебник
26.09.12
✎
10:29
|
(115) У меня мат красивее. С двойным шахом, в миттельшпиле, король в центре доски
|
|||
117
Сказочный Баобаб
26.09.12
✎
10:29
|
что такое мительшпиль - центр игры что ли?
|
|||
118
Волшебник
26.09.12
✎
10:30
|
(117) wiki:Миттельшпиль
|
|||
119
D_Pavel
26.09.12
✎
10:30
|
(111) Нашел с кем тягаться, с программой 1-килобайтной! Еще и скриншот выложил, вдруг не поверят что ты победил ее ))))
|
|||
120
Волшебник
26.09.12
✎
10:30
|
(119) Да, мне даже немного стыдно :)
|
|||
121
Сказочный Баобаб
26.09.12
✎
10:30
|
(118)я угадал !
|
|||
122
D_Pavel
26.09.12
✎
10:32
|
Сложность не в том чтобы ее победить, а в том чтобы подобную написать, или хотя бы понять как написали эту.
|
|||
123
y88
26.09.12
✎
10:33
|
Кстати, можно попробовать вставить в 1С html страницу
А лучше переписать на чистом 1С с рокировкой и дебютами :) |
|||
124
D_Pavel
26.09.12
✎
10:34
|
(123) Попробуй сначала без рокировок
|
|||
125
D_Pavel
26.09.12
✎
10:34
|
Хотя бы перевести готовую на язык 1С
|
|||
126
Omskdizel
26.09.12
✎
10:42
|
(111) Дак в описании на страничке демки так и написано, что без рокировки и взятия проходных пешек.
|
|||
127
Omskdizel
26.09.12
✎
10:43
|
(123) Дак есть же уже на 1С
|
|||
128
Никола_
Питерский 26.09.12
✎
10:48
|
(125) NS вроде же писал шахматы на 1С и помоему там не так много кода было !
Но здесь конечно шедевральное исполнение минимизации ))) |
|||
129
Волшебник
26.09.12
✎
11:09
|
Ходы рокировка и "взятие на проходе" сильно отличаются от остальных ходов. Вероятно, они не были реализованы специально, чтобы не увеличивать программный код.
У рокировки вообще много правил, которые отличают её от обычного хода: * Двигаются сразу две фигуры (король и ладья). При обычном ходе двигается только одна фигура, которая может дополнительно кого-то скушать или превратиться в ферзя/другую фигуру, если это пешка, дошедшая до последней горизонтали. * Король и ладья не должны были ходить. При обычном ходе предыдущие ходы не имеют значения. Для взятия на проходе тоже важно знать предыдущий ход. * Король не должен быть под шахам, проходить битое поле и вставать под шах (ладья может быть под ударом и может проходить битое поле). Рокировка считается ходом короля. При обычном ходе король может уйти из-под шаха. * Между королём и ладьём не должно быть других фигур. Дополнительно: * На турнире при рокировке первым надо брать короля, а не ладью. * В записи рокировка обозначается 0-0 (короткая рокировка) или 0-0-0 (длинная) * По-английски рокировка обозначается "castling", что можно перевести как "сделать зАмок" или "спрятаться в замок" |
|||
130
vde69
26.09.12
✎
11:12
|
а еще я не понял можно-ли пешку провести в ферзя
(125) http://infostart.ru/public/18951/ с рокировками и взятием на проход |
|||
131
МишКа
26.09.12
✎
11:16
|
Тоже поиграл. Программа рассчитывает 3 полухода.
|
|||
132
План счетов
26.09.12
✎
11:17
|
||||
133
МишКа
26.09.12
✎
11:20
|
Удивительна не программа. Удивительны одинэснэги, которые умудрились ей проиграть.
|
|||
134
Sh1ko
26.09.12
✎
11:25
|
Ну чо, господа 1с-ники. Кто восстановит честь профессии, напишет аналог УПП, хотя бы в 1 МБ?-)
|
|||
135
anastasia1188
26.09.12
✎
11:30
|
Выиграла, на мой взгляд первые ходы вообще случайны
|
|||
136
sergeante
26.09.12
✎
11:32
|
Положили сервак, да?
|
|||
137
МишКа
26.09.12
✎
11:38
|
(136) Какой сервак?
|
|||
138
Omskdizel
26.09.12
✎
12:00
|
(130) Я проводил, но там тоже документированное ограничение, превращается только в ферзя. Остальные варианты бывают очень редко конечно, потому сие гораздо меньше влияет на игру, чем отсутствие рокировки
По ощущениям первые ходы рандомно, бывают позиции, когда алгоритм не дает приоритета и двигает одну и ту же фигуру, но ближе к окончанию пободрее начинает играть. Т.е. проще всего ее передвигать в начале и середине, иначе будет трудновато при невысоком уровне игры. |
|||
139
Omskdizel
26.09.12
✎
12:12
|
Интересно посмотреть, как оно стандартные окончания двигает :) Типа мата двумя слонами или конем и слоном :)
|
|||
140
Волшебник
26.09.12
✎
12:14
|
(139) Мне кажется, она не сможет поставить мат королём и ладьёй.
|
|||
141
JesteR
26.09.12
✎
12:17
|
С 1го раза сделал :) уффффф
Мой второй разряд выстоял против 10 строчек кода )))) |
|||
142
vde69
26.09.12
✎
12:20
|
(140) а королем и двумя слонами :))))
а интересно защиту от прохода крайней пешки осилит? там где пат есть :) |
|||
143
МишКа
26.09.12
✎
12:25
|
(140) (142) Вы о чем? Какие стандартные окончания. Тупо три полухода и все.
|
|||
144
Omskdizel
26.09.12
✎
12:28
|
(143) Ну хочется же поверить в чудо :)
|
|||
145
МишКа
26.09.12
✎
12:32
|
(144) Я проверял. Ловил ферзя на 2 хода. Отсюда вывод - 3 полухода.
|
|||
146
Сказочный Баобаб
26.09.12
✎
13:07
|
(135)а ты красивая!
|
|||
147
Сказочный Баобаб
26.09.12
✎
13:08
|
+(146) и умная... странно...
|
|||
148
DGorgoN
26.09.12
✎
14:02
|
На лине не работает
|
|||
149
Никола_
Питерский 26.09.12
✎
14:02
|
(148) Все работает !
|
|||
150
DGorgoN
26.09.12
✎
14:04
|
(149) В аспе не работает. Хотя может чего-нибудь не хватает.
|
|||
151
Agent ООЗ
26.09.12
✎
14:06
|
тупой рандом по правилам с перебором вариантов.
|
|||
152
Sayshal
26.09.12
✎
14:45
|
Надо попробовать
|
|||
153
DGorgoN
26.09.12
✎
14:46
|
Выиграл )
|
|||
154
МишКа
26.09.12
✎
14:49
|
(151) В свое время "тупой рандом по правилам с перебором вариантов" победил Каспарова.
|
|||
155
Pro-tone
26.09.12
✎
15:18
|
||||
156
Волшебник
26.09.12
✎
15:19
|
(154) Если ты намекаешь на Deep Blue, то тупого рандома там не было.
|
|||
157
МишКа
26.09.12
✎
15:28
|
(156) На него и намекаю. Программа там была, конечно, посложнее. Но, основная техническая характеристика, за счет которой и был достигнут выигрыш - глубина перебора.
|
|||
158
JesteR
26.09.12
✎
15:31
|
Пешка по умолчанию меняется на Ферзя
|
|||
159
Волшебник
26.09.12
✎
15:39
|
(157) В шахматах важен баланс между шириной и глубиной перебора, поскольку дерево шахматных позиций практически бесконечно (в практическом смысле). Но там не было рандома!
|
|||
160
vde69
26.09.12
✎
16:00
|
Давно это было:
самый короткий вирус 52 байта для 86х процов Dinky.52, автор Игорь Данилов |
|||
161
МишКа
26.09.12
✎
16:00
|
(159) Какая-такая глубина-ширина? DeepBlue перебирал ВСЕ варианты на глубину 15 полуходов (если не ошибаюсь). За счет чего, повторюсь, и выиграл.
И что значит не было рандома? Если в результате пересчета получалось несколько одинаковых вариантов, каким образом, по-твоему, осуществлялся выбор? |
|||
162
Волшебник
26.09.12
✎
16:09
|
(161) Ты ошибаешься. На глубину 15-20 ходов он перебирал только форсированные варианты. Он анализировал 200 млн позиций в секунду, т.е. за секунду он сплошняком перебирал первые 7-8 полуходов в зависимости от позиции, а потом наступал "комбинационный взрыв" и при самом лучшем раскладе он мог углубиться ещё на 1-2 полухода, т.е. до 9-10, потому что 11-й полуход потребовал бы около часа обдумывания. Это для сплошного перебора ВСЕХ вариантов. Если поделить это на 2 и получить ходы, то имеем максимум 5-6 полных ходов, что очень мало для игры чемпионского уровня.
|
|||
163
Волшебник
26.09.12
✎
16:10
|
(161) Если сравнивать два действительных числа (результат оценки позиции), то вероятность совпадения очень мала, просто мизерна.
|
|||
164
rs_trade
26.09.12
✎
16:16
|
насколько я понял, костяк алгоритма это рекурсивный вызов функции Х с различными параметрами
|
|||
165
Flyd-s
26.09.12
✎
16:17
|
рокировка не работает
|
|||
166
rs_trade
26.09.12
✎
16:19
|
(165) да ты что!
|
|||
167
Radion
26.09.12
✎
16:36
|
(166) выиграл) рокировка не делается )
|
|||
168
rs_trade
26.09.12
✎
16:38
|
(167) об этом написано в каждом втором посте.
|
|||
169
Radion
26.09.12
✎
16:42
|
(168) второй раз выигрыл. после того даже как зевнул фигуру)
|
|||
170
Xapac_2
26.09.12
✎
16:45
|
а вообще алгоритм достаточно простой
тупо спрашивается клик куда фигурой сходить, если все путем, то запустить цикл хода компа. и завершить обработку, ждем ответной реакции от пользователя. |
|||
171
Xapac_2
26.09.12
✎
16:45
|
а код хрень.
"написать код понятный машине не сложно, вы попробуйте написать код понятный человеку" |
|||
172
aka MIK
26.09.12
✎
16:46
|
Хух, еле победил )
|
|||
173
y88
26.09.12
✎
16:49
|
(171) ты не в теме - это код до 1к
|
|||
174
ptiz
26.09.12
✎
16:50
|
А у вас фигурки шахмат, судя по скринам? А у меня просто квадратики. :(
|
|||
175
DJ Anthon
26.09.12
✎
16:51
|
(168) на мисте негласное правило. после сотки не читать посты
|
|||
176
DJ Anthon
26.09.12
✎
16:51
|
(174) а у тя линух?
|
|||
177
Xapac_2
26.09.12
✎
16:51
|
(173)пф, это не байт код. я ща тебе "напишу" платформу, шахматы в которой будут писаться в одну строчку, аля.
НапрограммироватьШаматы(). и что я на коне? |
|||
178
DJ Anthon
26.09.12
✎
16:51
|
тролль детектед
|
|||
179
rs_trade
26.09.12
✎
16:52
|
(170) ну наконец то хоть один хакер появился в ветке. а можно маленький вопросик про алгоритм хода компа? где он и каков он?
|
|||
180
Xapac_2
26.09.12
✎
16:53
|
(179)за умеренную плату, могу вам его перевести. скажем так 10 000 рублей авансом.
|
|||
181
rs_trade
26.09.12
✎
16:54
|
(178) скорее д'артаньян.
|
|||
182
aka MIK
26.09.12
✎
16:54
|
(0) И в 1С ее легко встроить )
|
|||
183
rs_trade
26.09.12
✎
16:54
|
(180) за кривые понты? за это не деньги получают обычно. бугага.
|
|||
184
Xapac_2
26.09.12
✎
16:57
|
(183)значит не сильно вам надо.
|
|||
185
ptiz
26.09.12
✎
17:00
|
(176) WinXP, под IE и под Оперой квадратики
|
|||
186
pochemu
26.09.12
✎
17:00
|
(0) ТС случаем не взламывает компы этим скриптом?
|
|||
187
y88
26.09.12
✎
17:01
|
(185) WinXP SP3 + IE8 = работает
|
|||
188
DJ Anthon
26.09.12
✎
17:01
|
а еще там нет правила 50/150 ходов и трех повторений
|
|||
189
DJ Anthon
26.09.12
✎
17:01
|
(185) сборка?
|
|||
190
АНДР
26.09.12
✎
17:02
|
(0) (186) НеТ, ломает сама ява. http://www.cnews.ru/top/2012/09/26/novaya_uyazvimost_ugrozhaet_milliardu_polzovateley_windows_mac_os_x_i_linux_504327
|
|||
191
ptiz
26.09.12
✎
17:07
|
(189) Да, от самого Microsoft, лицензионная сборка :)
|
|||
192
DJ Anthon
26.09.12
✎
17:13
|
(190) о да, я недавно нашел косяк в яве. оказалось, промсвязьбанк не работает с вин7 х64. при загрузке софта с сайта пишет ошибка загрузки календар.джсп. в процессе перезвона с техподдержкой выяснили, что ни версия явы, ни ее разрядность ни при чем, косяк воспроизводится на чистой тачке на любой версии явы, однако на ХР и на х32 все работает. они предупреждали, что с 64разрядной ЯВОЙ система не будет работать с токенами, оказалось, работает. а причину мы так и не нашли. косяк на их сайте. слава аллаху, нашли обход - надо в настройках явы выключить кеширование. полдня коту под хвост из-за нее ((
|
|||
193
sda553
26.09.12
✎
17:46
|
Тут время надо поразбираться, но сама шахматнаятпрограмка здесь в обертке, я бы в функции w() заменил бы innerhtml на какую нибудь глобаль и глянул бы, что за текст там собрался. И вот этот текст уже бы и был нужной програмкой
|
|||
194
sda553
26.09.12
✎
17:52
|
Из того что я вижу на первый взгляд, это то, что этот код собирает текст другой программы и код надо смотреть уже там
|
|||
195
Stim
26.09.12
✎
17:53
|
(194) без интернета тоже работает
|
|||
196
sda553
26.09.12
✎
17:56
|
(195) я знаю
Я имею в виду что этот код собирает текстовую строку которая является намного более длиным и большим текстом настоящей шахматной программы |
|||
197
sda553
26.09.12
✎
17:58
|
По сути, вначале была написана шахмтная программа, а потом под нее был написан алгоритм, который ее так круто заархивировал. И получился самораспаковщик на 1 кб
|
|||
198
rs_trade
26.09.12
✎
17:58
|
(196) как насчет версии в (164) ?
|
|||
199
Habist
26.09.12
✎
17:58
|
(194) Ничего подобного, вот правила размещения программ на этом сайте http://js1k.com/2012-love/rules, основное правило - код должен занимать меньше 1 кб, и никаких ссылок, никаких внешних ресурсов
|
|||
200
sda553
26.09.12
✎
17:59
|
(198) я не отрицаю рекурсивные вызовы, без них ни один архиыатор не построишь
|
|||
201
sda553
26.09.12
✎
18:00
|
(199) смотри (196) и (197)
|
|||
202
rs_trade
26.09.12
✎
18:01
|
(200) а мне показалось что функция Х и есть мозг проги.
|
|||
203
rs_trade
26.09.12
✎
18:02
|
разматывать ее только лениво
|
|||
204
sda553
26.09.12
✎
18:02
|
(202) нет, она собират рекурсивно текст другой проги
|
|||
205
rs_trade
26.09.12
✎
18:06
|
(204) из чего собирает?
|
|||
206
Habist
26.09.12
✎
18:09
|
(198) пардон, вначале не уловил идею, да самораспаковщик вполне может быть
|
|||
207
rs_trade
26.09.12
✎
18:11
|
единственное что есть, это ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK IDHGFE
ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это как я понимаю начальная расстановка фигур. дальше что, хз. может правила передвижения фигур. |
|||
208
Шалун
26.09.12
✎
18:13
|
зачетно) можно ли её в свои конфигурации вставлять) для развлечения клиентов
|
|||
209
МишКа
26.09.12
✎
18:13
|
(162) не, это ты ошибаешься. здесь посмотри:
http://en.wikipedia.org/wiki/Deep_Blue_(chess_computer) Deep Fritz сейчас считает 17-18 полуходов на двух процессорах Intel Core 2 Duo (163) Число-то большое, но примитивная программа (а у DeepBlue была примитивная программа) будет часто оценивать позиции как абсолютно одинаковые. |
|||
210
Zubizub
26.09.12
✎
18:15
|
(120) шотофоп небось
|
|||
211
Один С
26.09.12
✎
18:20
|
NS приходил?
нет? тогда я попозже зайду.. |
|||
212
IOL
26.09.12
✎
18:47
|
Таки получилось их удалить с 5 раза, мекософтовские которые с 7 виндой идут на 5 уровне вылетают на раз. С этими повозится пришлось. Прикольно блин.
|
|||
213
IOL
26.09.12
✎
18:49
|
Да таки думаю правительство ктонить может заменить на маленький скрипт :-), если это не фейк
|
|||
214
Капитан Смоллет
26.09.12
✎
20:02
|
(213) Ну какой фейк. Я указывал в (6), там есть конкурс на самые, самые на "Си". Чувак, свой же сишный код, переписал на яву. Там подробно описано.
|
|||
215
opty
26.09.12
✎
20:08
|
Вроде самая маленькая шахматная программа (движок без GUI) это Micro-Max
Скомпилированная меньше 7 килобайт , исходник вот http://home.hccnet.nl/h.g.muller/max-src2.html |
|||
216
syktyk
26.09.12
✎
20:14
|
(0) Рокировки не делает! :)
|
|||
217
Злопчинский
26.09.12
✎
20:19
|
вообще такое выкладывать - это бфяка.. неустойчиыве личности вроде меня могут застрелиться ;-)
|
|||
218
Zubizub
26.09.12
✎
20:21
|
(217) вот мучайся теперь :)
|
|||
219
Zubizub
26.09.12
✎
20:21
|
(216) да выяснили уже давно
|
|||
220
Скользящий
26.09.12
✎
20:29
|
(217) это скорее NS застрелится. )
|
|||
221
shpioleg
26.09.12
✎
21:02
|
(0) Взятие на проходе не работает, рокировка тоже не делается. Вместо фигур пустые квадраты, но прога играет настолько слабо, что и нет смысла видеть фигуры.
|
|||
222
sda553
26.09.12
✎
21:12
|
Доска рисуется следующим кодом, для фигур графики нет
<table><tbody><tr><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th></tr><tr><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th></tr><tr><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th></tr><tr><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th></tr><tr><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th></tr><tr><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60"> </th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60"> </th></tr><tr><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th></tr><tr><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#10f0e0" height="60" width="60">?</th><th style="font-size:50px" bgcolor="#90f0e0" height="60" width="60">?</th></tr><tr></tr></tbody></table> |
|||
223
sda553
26.09.12
✎
21:14
|
вместо вопросительных знаков соответствующие спецсимволы шахматные
|
|||
224
Волшебник
26.09.12
✎
21:17
|
(222) Ты охренел? Больше так не делай
|
|||
225
Волшебник
26.09.12
✎
21:18
|
Используйте http://paste.pro для вставки кусков текста/кода.
|
|||
226
Hans
26.09.12
✎
21:31
|
Мне эта программа мат поставила. =)
|
|||
227
SnarkHunter
26.09.12
✎
21:32
|
(226)Совсем плохой
|
|||
228
Капитан Смоллет
26.09.12
✎
21:34
|
(221) Попробуй написать лучше и уложиться в правила конкурса < 1024.
|
|||
229
Юлия Цветочек
26.09.12
✎
21:41
|
(6) Выиграла!)
|
|||
230
Волшебник
26.09.12
✎
21:42
|
(226) Значит ты не думаешь больше, чем на 1-2 хода вперёд. Кстати, в шахматах слово "ход" означает два полухода (с каждой стороны).
|
|||
231
Юрий Лазаренко
26.09.12
✎
22:23
|
Вот жеж ешкин кот. Там мало того что доска заархивирована, так еще и скриптов куча, до которых пока не добрался. Ссыль на доску: http://paste.pro/5158822
|
|||
232
Юрий Лазаренко
26.09.12
✎
22:37
|
C первого раза выиграл. Правда, у меня изначальная расстановка вот такая была: http://www.ximage.ru/index.php?id=1348684585 )))))))
|
|||
233
Sensodin
26.09.12
✎
23:28
|
(232) неплохой гандикап))))))
|
|||
234
opty
26.09.12
✎
23:37
|
(232) А что не ферзи ? :))
|
|||
235
Sun_Lin
26.09.12
✎
23:52
|
(222) Вот так и мелкософт пишет свои операционки, которые потом никуда не влезают :))) А реальные пацаны еще лет 15 назад писали виндоподобные операционки, которые на дискету влазили ;)
|
|||
236
чувак
27.09.12
✎
07:41
|
Уфф. С десятой попытки победил. Лет 20 не играл в шахматы.
|
|||
237
D_Pavel
27.09.12
✎
07:43
|
(202) тебе не показалось, всё в функции X
(204) никакой проги эта прога не собирает. Она сама по себе прога. |
|||
238
Юрий Лазаренко
27.09.12
✎
08:07
|
(234) "А что, можно было?!!" (с) Саус Парк ))))
|
|||
239
Name2006
27.09.12
✎
08:15
|
(0) "ЭВМ Наири (базовая модель), разработанная в Ереванском научно-исследовательском институте математических машин (ЕрНИИММ) под руководством главного конструктора — Овсепяна Грачья Есаевича. представляла малогабаритную универсальную машину для решения задач в НИИ, КБ, ВЦ, заводах. Быстродействие машины составляло 1500-2000 оп/сек, ёмкость ОЗУ – 1Кб, ёмкость ДЗУ – 16 Кб. Элементная база полупроводниковая. Ввод информации осуществлялся с телеграфного аппарата СТА-2м, вывод – на телеграфный аппарат РТА-50-2М. Машина потребляла мощность до 1,6 квт., 220 В, однофазная сеть, и занимала площадь около 20 кв. м. Конструктивно она была выполнена в виде электронного стола и стола питания"
А теперь главное - в конце 70-х лично наблюдал работу шахматной программы на этой машинке. (повторю - ёмкость ОЗУ 1Кб, программа загружалась с перфоленты). |
|||
240
Name2006
27.09.12
✎
08:17
|
В то время никого не удивляло - как это можно в 1кб затолкать шахматы
|
|||
241
D_Pavel
27.09.12
✎
08:18
|
(240) В 16Кб вообще-то
|
|||
242
sda553
27.09.12
✎
09:29
|
(237) Да я уже видел, я сегодня разобрал уже основные элементы этой проги.
|
|||
243
ptrtss
27.09.12
✎
10:25
|
(12) Инет отключи
|
|||
244
Coldboy
27.09.12
✎
10:42
|
а где тута вообще разметка поля идет и фигур ...
|
|||
245
aka MIK
27.09.12
✎
10:49
|
(244) ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это разметка фигур со сдвигом их по табличке символов до шахматных знаков
|
|||
246
IOL
27.09.12
✎
10:50
|
ДЗУ, как правило расширение ОЗУ
|
|||
247
Coldboy
27.09.12
✎
10:54
|
(245) как все просто оказывается и поле оно чертит и фигуры, и двигать помогает их по полю?
|
|||
248
aka MIK
27.09.12
✎
10:55
|
(247) Именно так и есть
|
|||
249
oslokot
27.09.12
✎
14:45
|
В хроме заместо фигур квадратики
|
|||
250
Волшебник
27.09.12
✎
14:46
|
(249) Выбросите его на помойку.
|
|||
251
oslokot
27.09.12
✎
14:47
|
(250) да, пора. и комп заодно
|
|||
252
Miss1C
27.09.12
✎
14:49
|
Проверила на 1С доска с фигурами есть, но ничего не передвигается, как будто картинка
|
|||
253
oslokot
27.09.12
✎
15:48
|
В IE заместо фигур квадратики
|
|||
254
Zombi
27.09.12
✎
15:58
|
(249) Хром, все работает.
|
|||
255
y88
27.09.12
✎
16:20
|
(253) SP3 стоит?
|
|||
256
expertus
27.09.12
✎
16:40
|
Круто. В таком объеме это что-то.
Проиграл несколько раз, отвлекался, из-за зевков продул. Потом целенаправленно играл, выиграл. Программа делает идиотские ходы, не продумывает даже на ход вперед. |
|||
257
D_Pavel
28.09.12
✎
10:59
|
(253) IE10, всё работает.
Прога писалась изначально под мозиллу, в ней и должно работать. |
|||
258
oslokot
28.09.12
✎
14:25
|
(255) (257) разобрался, у меня просто винда кривая. На соседней машине идет нормально
|
|||
259
DexterMorgan
28.09.12
✎
14:30
|
рокировка не работает
|
|||
260
DexterMorgan
28.09.12
✎
14:30
|
программа слабая и даже очень
|
|||
261
mailwood
28.09.12
✎
15:04
|
Поставил мат. Очень слабо играет в эндшпиле.
|
|||
262
Волшебник
28.09.12
✎
15:10
|
(259) Чё, серьёзно?
|
|||
263
cobRA
28.09.12
✎
15:17
|
Программа фигня, еле ушла от "детского" мата, но какой ценой... Избиение младенца :))
|
|||
264
DexterMorgan
28.09.12
✎
15:22
|
(262) и че я тебе лично должен всю тему читать если это писали? или мб нет?
|
|||
265
DexterMorgan
28.09.12
✎
15:23
|
(261) хаха какой эндшпиль))) она в дебюте ходит а5 или h5)))
|
|||
266
cobRA
28.09.12
✎
15:27
|
(265) А ты ожидал, что она будет разыгрывать испанскую партию или сицилианскую защиту? :))
|
|||
267
DexterMorgan
28.09.12
✎
15:29
|
(265) нет, просто удивился как до эндшпиля он дошел если она с дебюта отдает все преимущество
|
|||
268
cobRA
28.09.12
✎
15:32
|
(267) А чего удивительного? Некоторые вон умудрились ей проиграть и не по одному разу :))
|
|||
269
Irbis
28.09.12
✎
15:50
|
Даже я тупой 1Сник выиграл, в шахматах только ходы фигур знаю
|
|||
270
Ночной Эльф
28.09.12
✎
15:50
|
А вы еще попробуйте в qip 2005 отослать этот текст он еще 4 смайлика там в тему нарисует )))
|
|||
271
NS
28.09.12
✎
16:03
|
Таких маленьких программ достаточно много.
Правда играют слабо. |
|||
272
NS
28.09.12
✎
16:23
|
(159) Скоро программы и в шахматы будут играть на рандоме - как в ГО и Symple :)
Уже во многие игры сильнейшие программы на mcts |
|||
273
opty
28.09.12
✎
16:25
|
(272) Наконец то ты пришел , тебя здесь кроме шуток сильно не хватало .
|
|||
274
NS
28.09.12
✎
16:36
|
Кто искал правила в программе - их там конечно нет. Там есть генератор ходов.
Вообще macromax играет в силу вторго-первого разряда. Полностью по правилам, при коде в 1433 символа. http://home.hccnet.nl/h.g.muller/umax1_6.c |
|||
275
NS
28.09.12
✎
16:38
|
http://home.hccnet.nl/h.g.muller/progress.html
1752 символа - даже хеш-таблица есть. |
|||
276
opty
28.09.12
✎
16:46
|
(274) Это у него один из самых быстрых генераторов ходов в мире ?
Воде на движкофоруме обсуждали |
|||
277
NS
28.09.12
✎
16:48
|
(276) Нет, у него отдельно быстрый генератор (на самом деле быстрый perft), и отдельно самая маленькая программа.
|
|||
278
NS
28.09.12
✎
16:49
|
(276) Не так вопрос прочитал. Да, у него. Хотя тут пробовали на каспаровчесс пописать быстрые генераторы - его скорость достижима, но его генератор для нормальной программы не пригоден.
|
|||
279
opty
28.09.12
✎
16:51
|
(278) Понял .
Ага припоминаю , что генератор обсуждали отдельно |
|||
280
Fedot200
02.10.12
✎
12:53
|
Провел Королеву с первого раза, далее не стал играть. Очень легко обыграть, особенно если идти на жесткие размены.
|
|||
281
VitaliyTokarev
02.10.12
✎
14:29
|
http://img.pixs.ru/storage/1/5/8/chessjpg_3115065_5924158.jpg
Играл полностью расслабившись, провёл 3 ферзя, менял их потом на всё подряд ))) Да, (280), размены он делает тупо... |
|||
282
VitaliyTokarev
02.10.12
✎
14:31
|
Ещё он любит туда-сюда по 50 раз тыкать фигурами...
Ставит шах, ушёл, ещё раз поставил, вернулся назад и он зацикливается... Пока я не придумаю другой ход. |
|||
283
Fedot200
02.10.12
✎
15:03
|
Ветка навеяла мысль - может устроить турнир по шахматам среди 1С-ников? или было уже такое?
|
|||
284
Волшебник
02.10.12
✎
15:04
|
(282) Это он играет на ничью путём троекратного повторения позиции.
|
|||
285
DJ Anthon
02.10.12
✎
15:10
|
(283) причем играть не мозгами а написанными программами на 1С
|
|||
286
Fedot200
02.10.12
✎
15:13
|
(285) Да можно и мозгами и за румкой/кружкой напитка, только за реальной доской, а то через нет всегда существует вариант чессмастера.
|
|||
287
DJ Anthon
02.10.12
✎
15:16
|
(286) вот именно, поэтому удаленно можно только скриптами соревноваться, мы же все-таки программисты, а не кто-нибудь. использовать какой-нибудь сервачок с закрытым доступом и наблюдать, как скрипты шпилятся, по типу гугл контестов
|
|||
288
DJ Anthon
02.10.12
✎
15:27
|
честно говоря, аж захотелось такой создать )
|
|||
289
NS
02.10.12
✎
15:42
|
(287) Куча таких серваков, если напишешь шахматную программу - она без твоего участия будет играть в сотне турниров.
|
|||
290
DJ Anthon
02.10.12
✎
16:28
|
(289) на 1С?
|
|||
291
DJ Anthon
02.10.12
✎
16:29
|
на других-то языках ясен пень таких полно
|
|||
292
NS
02.10.12
✎
16:29
|
(290)Нафига писать шахматную программу на 1С?
Нормальному человеку такое в голову не придет. |
|||
293
opty
02.10.12
✎
16:32
|
(292) :))
|
|||
294
DJ Anthon
02.10.12
✎
16:35
|
(292) дак а я не нормальный
|
|||
295
NS
02.10.12
✎
16:38
|
(291) Ну не полно. Российских скорей всего меньше тридцати.
Winboard/uci движков - вроде 22. Лет пять назад было намного меньше. Меньше десяти. |
|||
296
Lama12
02.10.12
✎
16:47
|
Интересный вариант :)
Играет правда рандомно, но немного считает. |
|||
297
opty
02.10.12
✎
16:47
|
(295) По данным sdchess 22 движка но там только свободно распространяемые .
ChessAlex там например нет (продавался вместе со нативной оболочкой) Но не суть , трех десятков не наберется |
|||
298
Плот
02.10.12
✎
16:48
|
(0) Я в ничью сыграл
|
|||
299
NS
02.10.12
✎
16:51
|
(297) А разве Marginal - это не ChessAlex?
|
|||
300
NS
02.10.12
✎
16:51
|
Да, Marginal это ChessAlex, так что есть он в списке.
|
|||
301
opty
02.10.12
✎
16:54
|
(299) Автор тот же , но вообще то по заявлению автора , с ChessAlex он ничего общего не имеет , с чистого листа писался . И играет заметно слабее чем более ранний ChessAlex
|
|||
302
opty
02.10.12
✎
16:56
|
+(301) Например FreeChess и Uralochka в таблице это разные движки , а автор один и тот же
|
|||
303
NS
02.10.12
✎
16:56
|
(301) Проще считать авторов, а не программы. Так как у каждого автора в любом случае куча версий.
|
|||
304
NS
02.10.12
✎
16:57
|
(302) Значит 21 движок :)
|
|||
305
opty
02.10.12
✎
17:01
|
(304) Ну значит 21 автор :)
|
|||
306
Плот
02.10.12
✎
17:17
|
Победил со второго раза. Я чайник в шахматах. ИМХО алгоритм там не очень сложный.
|
|||
307
NS
02.10.12
✎
17:26
|
(306) В смысле "сложный"?
|
|||
308
Stagor
03.10.12
✎
10:43
|
КАК локально запустить? У меня код браузер не открывает!
|
|||
309
Sensodin
03.10.12
✎
13:36
|
(308) см (4)
|
|||
310
Stagor
04.10.12
✎
10:32
|
кто-нить на 1С шахматы уже перевел?
|
|||
311
Lama12
04.10.12
✎
10:38
|
(310) NS - давно.
И на 7.7 есть, и на 8.0. Все думал сделать из них самообучающиеся и привязать к оценке хода оценку по прошлой статистике. Руки не доходят. Скорее всего не сделаю. Кстати, можно взять движок за основу и сделать нормальную базу данных шахматную. Если поколупаться, то можно и внешние движки прикрутить. |
|||
312
NS
04.10.12
✎
11:23
|
(310) Почему "перевел"? С нуля всё написано.
|
|||
313
Stagor
04.10.12
✎
11:31
|
(312) я про программу в (0) её алгоритм на 1С уже перевели?
|
|||
314
NS
04.10.12
✎
11:32
|
(313) Нафига?
|
|||
315
Zombi
04.10.12
✎
11:34
|
(314) Наверно чтобы любой жадный и тупой(типа меня) мог увидеть, насколько элементарный код у этой программы.
|
|||
316
Stagor
04.10.12
✎
11:39
|
(315) :) или любой крутой 1С-ник, смог хвастануть, что понял ту программу и написал её на 1С со смысловыми именами.
Программа хоть и короткая - абсолютно нечитабильна. Кто её сможет рефакторить? |
|||
317
Zombi
04.10.12
✎
11:41
|
(316) А еще можно поправить код, всех пешек себе заменить на ферзей и глумиться над противником.
|
|||
318
NS
04.10.12
✎
12:03
|
(316) Зачем? Есть простые и читабельные шахматные исходники.
Тот-же MicroMax прокомментирован. Правда это не простой, а тоже рекордный по размеру исходник. |
|||
319
Сергей Д
11.10.12
✎
11:18
|
Че-то у меня без картинок...
|
|||
320
rcs
11.10.12
✎
13:08
|
Вот мой мат, выиграл с 1-го раза. В шахматы уже очень давно не играл.
http://i45.fastpic.ru/big/2012/1011/7b/39ec48daf6e29fed91cb348175e94e7b.jpg |
|||
321
miklenew
11.10.12
✎
16:42
|
(6) Взятие пешки на проходе не работет
|
|||
322
КонецЦикла
11.10.12
✎
17:15
|
(321) А ракировка? Работает?
|
|||
323
sda553
12.10.12
✎
16:05
|
(316) Я могу взяться, если кто оплатит. Мне лень на расшифровку время тратить, но расшифровать я это дело 100% способен.
|
|||
324
DJ Anthon
12.10.12
✎
18:59
|
да ладно???
|
|||
325
ТочноеЯдро
13.10.12
✎
23:38
|
(323, 324) дежавю или мне показалось ? :)
|
|||
326
HeroShima
17.10.12
✎
01:39
|
Нарыл на просторах:
Универсальный Hello World! на C, C++, Haskell, Ruby, Python, Perl(x2), HTML, tcl, zsh, make, bash и brainfuck # /* [ <!-- */ include <stdio.h> /* \ #{\ `""""true \\#{"\n#"}; \ \ if [ -n "$ZSH_VERSION" ]; then \ \ echo exec echo I\'m a zsh script.; \ \ elif [ -n "$BASH_VERSION" ]; then \ \ echo exec echo I\'m a bash script.; \ else \ echo exec echo I\'m a sh script.; \ fi`; #\ BEGIN{print"I'm a ", 0 ? "Ruby" :"Perl", " program.\n"; exit; } #\ %q~ set dummy =0; puts [list "I'm" "a" "tcl" "script."]; exit all: ; @echo "I'm a Makefile." \ #*/ /*: */ enum {a, b}; \ \ static int c99(void) { #ifndef __cplusplus /* bah */ unused1: if ((enum {b, a})0) \ (void)0; #endif unused2: return a; \ } \ static int trigraphs(void) { \ \ return sizeof "??!" == 2; \ } \ char X; \ \ int main(void) { \ \ struct X { \ \ char a[2]; \ };\ if (sizeof(X) != 1) { \ \ printf("I'm a C++ program (trigraphs %sabled).\n", \ \ trigraphs() ? "en" : "dis");\ \ }else if (1//**/2 )unused3 : { ; \ printf("I'm a C program (C%s, trigraphs %sabled).\n", \ c99() ? "89 with // comments" : "99", \ trigraphs() ? "en" : "dis"); \ } else { \ printf("I'm a C program (C89, trigraphs %sabled).\n", \ trigraphs() ? "en" : "dis"); \ } \ return 0; \ } /* # \ > main :: IO () -- -- \ > main = putStr "I'm a Literate Haskell program.\n" # \ ]>++++++++[<+++++++++>-]<+.>>++++[<++++++++++>-]<-.[-]>++++++++++ \ [<+++++++++++>-]<-.>>++++[<++++++++>-]<.>>++++++++++[<++++++++++> \ -]<- - -.<.>+.->>++++++++++[<+++++++++++>-]<++++.<.>>>++++++++++[ \ <++++++++++>-]<+++++.<<<<+.->>>>- - -.<+++.- - -<++.- ->>>>>+++++ \ +++++[<+++++++++++>-]<- - -.<<<<<.<+++.>>>.<<<-.- ->>>>+.<.<.<<.> \ ++++++++++++++.[-]++++++++++"""` # \ print "I'm a Python program."; """[-][--><html><head> <!--:--><title>I'm a HTML page</title></head><body> <!--:--><h1>I'm a <marquee><blink>horrible HTML</blink></marquee> page</h1> <!--:--><script language="Javascript"> <!--: # \ setTimeout( // \ function () { // \ document.body.innerHTML = "<h1>I'm a javascript-generated HTML page</h1>"; // \ }, 10000); // \ //--> </script><!--: \ </body></html><!-- } # \ say "I'm a Perl6 program", try { " ($?PUGS_VERSION)" } // "", "."; # """ # */ #define FOO ]-->~ |
|||
327
IVIuXa
17.10.12
✎
02:22
|
(0)
мдя сразу видно прогер не то что некоторые... |
|||
328
zakidonoff
25.10.12
✎
01:18
|
Если кому интересно как это работает...
<table><tbody><tr><th width="60" height="60" onclick="I[b=21]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=22]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=23]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=24]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=25]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=26]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=27]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=28]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th></tr><tr><th width="60" height="60" onclick="I[b=31]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=32]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=33]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=34]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=35]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=36]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=37]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=38]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th></tr><tr><th width="60" height="60" onclick="I[b=41]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=42]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=43]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=44]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=45]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=46]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=47]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=48]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th></tr><tr><th width="60" height="60" onclick="I[b=51]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=52]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=53]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=54]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=55]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=56]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=57]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=58]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th></tr><tr><th width="60" height="60" onclick="I[b=61]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=62]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=63]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=64]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=65]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=66]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=67]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=68]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th></tr><tr><th width="60" height="60" onclick="I[b=71]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=72]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=73]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=74]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=75]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=76]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th><th width="60" height="60" onclick="I[b=77]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0"> </th><th width="60" height="60" onclick="I[b=78]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0"> </th></tr><tr><th width="60" height="60" onclick="I[b=81]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=82]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=83]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=84]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=85]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#d0f0e0">?</th><th width="60" height="60" onclick="I[b=86]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=87]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=88]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th></tr><tr><th width="60" height="60" onclick="I[b=91]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=92]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=93]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=94]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=95]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=96]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=97]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=98]>8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th></tr><tr></tr></tbody></table> Это интерпретация кода из хмл5 Оптимизация не за счёт библиотек, а за счёт встроенных функций современных браузеров. Пы.Сы. на старых компах работать не будет. Не думаю, что автор писал это ручками - скорее всего просто использовал компилятор =) |
|||
329
zakidonoff
25.10.12
✎
01:21
|
(328) *HTML5. Точнее, одного из его элементов
wiki:Canvas_(HTML) |
|||
330
badboychik
02.11.12
✎
17:42
|
этот код сжат упаковщиком яваскрипта
|
|||
331
HeroShima
02.11.12
✎
17:44
|
(330) алилуйя! )
|
|||
332
badboychik
02.11.12
✎
17:52
|
такая обфускация-упаковка даже для защиты семерошных конф использовалась
|
|||
333
HeroShima
02.11.12
✎
17:54
|
Оно то конечно да, но (50) всё равно не много.
|
|||
334
HeroShima
02.11.12
✎
18:08
|
Кстати, видел на хабре статейку про передачу пожатого яваскрипта в имиджах.
|
|||
335
ВалераОшкин
02.11.12
✎
18:17
|
(50)(0) Скопировал код, вставил в пустой файл блокнота. Файлу дал расширение html.
Не работает, открывается пустое окно. |
|||
336
badboychik
02.11.12
✎
23:35
|
||||
337
Нева
02.11.12
✎
23:47
|
(336)
))))))))))))) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |