Продам скрипт шахматной доски на php 5.2-5.4 Первичные правила прописаны: 1.Ходить пустой клеткой нельзя 2.Свои фигуры убивать нельзя 3.Ходы записываются и выводятся 4.Есть кнопка "Новая игра" 5.Можно играть за черных,и доска переворачивается 6.Можно менять стиль и расцветку 7.Вам выдается уникальный логин,с расставленными фигурами,и персональная доска Загрузить скриншоты на форум не получилось,поэтому ссылки: http://gallery.liozenda.ru/data/doska4.jpg http://gallery.liozenda.ru/data/doska6.jpg http://gallery.liozenda.ru/data/doska11.jpg Это не 1 маленький файл,это 10 настроенных файлов Папка studiere/ ,оттуда идет вся работа Протестировать игру онлайн http://esex.liozenda.ru/studiere/dosa.php Если купите эту программу,то скачаю эту папку и отправлю Вам,поддержку и настройку на Вашем сайте гарантирую
Зашел на страницу с телевизора,на яндекс браузере,и видна была ошибка Просто выводились все поля от А1 до H8 Просто закомментировал это: Код (Text): if($polya_bukv>'0' && $nomerex>'0') { //echo '<font size=3>'.$findella[$polya_bukv].$nomerex.'</font>'; // здесь заложены все игровые цифры и буквы } Если вы видели эту ошибку - то это исправлено
Ипать копать.... Скрипт под 5 php, да ещё с выводом игрового поля через echo,.. Страшно смотреть че там внутри... Да даже бесплатно не нужно...
Этот скрипт для новичков,для студентов и курсовых работ В будущем будут тысячи запросов в интернете,как написать шахматную доску Я предоставляю решение для курсовых А если ты старожил с 2007 года - то сам себе напишешь 3D шахматы за неделю --- Добавлено --- Вот код самой доски,написан через for.На посмотри на код в страхе,и покритикуй,найди маленькую лазейку,чтобы зачмырить мою работу Код (Text): <? //if(!$storona) { $storona='1'; } if($storona=='1') { echo '<center><table width='.$width_variant2_doska.'>'; ?> <? for($b=0;$b<9;$b++) { echo '<tr>'; for($a=0;$a<9;$a++) { //if($s<$max_figure) { if($f=='0' && $kletki_cvet=='1') { $color_r=$bg_dark; $class='cell dark'; } if($f=='0' && $kletki_cvet=='0') { $color_r=$bg_dark; $class='cell dark'; } if($f=='1' && $kletki_cvet=='0') { $color_r=$bg_licht; $class='cell'; } if($f=='1' && $kletki_cvet=='1') { $color_r=$bg_licht; $class='cell'; } //} if($polya_bukv=='0') { $class=''; $width_td=$width_index_bukvy; } else $width_td=$td_width_variant2_doska; if($s>$max_figure) { $class='cell dark'; $td_height_variant2_doska='20';} if($s>$max_figure-'1') { $td_height_variant2_doska=$height_index_bukvy;} include('../studiere/figure_config.php'); echo '<td class=" '.$class.' " bgcolor='.$color_r.' width='.$width_td.' height='.$td_height_variant2_doska.'>'; if($polya_bukv>'0' && $s<$max_figure) { echo '<a id='.$findella[$polya_bukv].$nomerex.' onclick="fe(this)" href=#><img src=../'.$arImages[$fexo[$s]].' width='.$width_picture.' /></a> '; } else if($polya_bukv=='0') { echo $nomerex; } if($polya_bukv<'9' && $s>$max_figure-'1') { echo '<font size=2>'.$findella[$polya_bukv].'</font>'; } if($polya_bukv>'0' && $nomerex>'0') { //echo '<font size=3>'.$findella[$polya_bukv].$nomerex.'</font>'; // здесь заложены все игровые цифры и буквы } //echo $nomerex.'-'.$polya_bukv.'-'; echo '</td>'; if($polya_bukv>'0') { $s=$s+1; } $f=$f+'1'; if($f>'1') { $f='0'; } $polya_bukv=$polya_bukv+'1'; if($polya_bukv>'8') { $polya_bukv='0'; } unset($color_r); } // конец первого for $nomerex=$nomerex-'1'; $kletki_cvet=$kletki_cvet+'1'; if($kletki_cvet>'1') { $kletki_cvet='0'; } echo '</tr>'; } // конец второго for echo '</table></center>'; } //конец if $d==2 ?> Код вроде легкий,если знаешь метод написания проще - то показывай,а не извергай ненависть к чужом коду
Программа обновлена Поставил старые матрицы с варианта #2 Боюсь будет перегружаться сервер - поставил цикл for($t=0;$t<440;$t+) { и там перебираются ходы на рандоме В цикл for включил 9 файлов include - обработчики правильности ходов,и вроде компьютер стал играть как второклассник Ходы белыми тоже проходят теперь через матрицы - как попало не пойдешь Черные ( компьютер ) бывает лажают,то фрзь скаканет через пешку,то слон улетает не по правилам.Настрою Че скажете? цикл for на 440 повторений нагрухит сервер?? Чувствуется как страница зависает на 3 секунды,при ходе компа --- Добавлено --- Мой алгоритм игры компа не соображает куда ходит,и чем ходит.Он не убьет коня,если будет возможность Поставьте компьютеру шах - и это прописано - будут перебиратся ходы на рандоме,пока ход не закроет шах
Поиграл с компом,потестировал,на уровне 5 класса играет...Но шах мой компьютер пока не поставит Увидел пока что пешки ходят назад,надо настроить это: Код (Text): if($sh[$hod_one]=='1' | $sh[$hod_one]=='11') { // если ходит пешка,если первый ход,даю ход на 2 клетки //if($sh[$hod_two]=='40' | $sh[$hod_two]=='81' | $sh[$hod_two]<'24') { if($sh[$hod_two]=='40') { if($hod_one>'7' & $hod_one<'16' | $hod_one>'47' & $hod_one<'56') { if($prov!='8' & $prov!='-8' & $prov!='16' & $prov!='-16') { echo '<br>Не допустим первый ход пешки = ['.$prov.']'; $hod_one='1000'; $hod_two='1000'; } } else if($prov!='8' & $prov!='-8') { echo '<br>Не допустим ход пешки = ['.$prov.']'; $hod_one='1000'; $hod_two='1000'; } } else if($sh[$hod_two]!='40') { if($prov!='7' & $prov!='-7' & $prov!='9' & $prov!='-9') { echo '<br>Так бьет пешка,недопустимо = ['.$prov.']'; $hod_one='1000'; $hod_two='1000'; } } if($sh[$hod_one]=='1') { if($prov=='16') { if($sh[$hod_one+8]!='40') { echo '<br>Пешка перепрыгивает через = ['.$prov.']'; $hod_one='1000'; $hod_two='1000'; } } } if($sh[$hod_one]=='11') { if($prov=='-16') { if($sh[$hod_one-8]!='40') { echo '<br>Пешка перепрыгивает через = ['.$prov.']'; $hod_one='1000'; $hod_two='1000'; } } } } // } Это обработка пешки Черная пешка под индексом 1,белая пешка под индексом 11,легко прописывать условия IF
Сервер загрузился до 40 процессорных минут - ставил цикл for($a=0;$a<800;$a++) { У меня тариф до 60 процессорных минут Протестировал,так сказать,теперь поиск ходов поставил на минимум
@Dremax, твоё поделие никому не нужно, хочешь заработать на чужой жажде наживы -- смотри в сторону казино/игровых автоматов/ставок, там всё ещё дебилов достаточно болтается.
Я не хочу заработать,я занимаюсь любимым занятием - программированием Занимаюсь этим шахматным сайтом 7 лет Если в течении 5 лет студентам понадобится мой исходник - я дам его им Вы же не можете даже просто посоветовать,чем дополнить код или функционал
У меня куча планов,в голове раскидал 4 этапа в дальнейшем программировании матриц - ИИ у компьютера Это будет 40 файлов include со сплошными IF Самый сложный 4 этап,когда компьютер будет ходить в атаку Приложил файл "первичных правил",это самое простое,что надо прописывать в программе шахматной доски Вопрос остается - это нормально ,писать цикл for($a=0;$a<800;$a++) и туда подключать 40 файлов include?? Может так не пишут программы --- Добавлено --- Еще будут тысячи запросов в интернете "как написать шахматную доску" ,моя тема им поможет
Это будет выгодно выложить,для всех: Новичкам и студентам,как прописать "рандом ходы": Код (Text): $a=rand(1,8); $b=rand(1,8); if($a=='1') { $kox='A'; } if($a=='2') { $kox='B'; } if($a=='3') { $kox='C'; } if($a=='4') { $kox='D'; } if($a=='5') { $kox='E'; } if($a=='6') { $kox='F'; } if($a=='7') { $kox='G'; } if($a=='8') { $kox='H'; } $hod_start=$kox.$b; $a2=rand(1,8); $b2=rand(1,8); if($a2=='1') { $kox2='A'; } if($a2=='2') { $kox2='B'; } if($a2=='3') { $kox2='C'; } if($a2=='4') { $kox2='D'; } if($a2=='5') { $kox2='E'; } if($a2=='6') { $kox2='F'; } if($a2=='7') { $kox2='G'; } if($a2=='8') { $kox2='H'; } $hod_finish=$kox2.$b2; Получается на выходе рандом ход С4-G1 Их надо обработать в "матрице": Код (Text): include ('../studiere/matrix/pravila/class_matrix2.php'); include ('../studiere/matrix/pravila/class_matrix_tura2.php'); include ('../studiere/matrix/pravila/class_matrix_ferz2.php'); include ('../studiere/matrix/pravila/class_matrix_slon2.php'); include ('../studiere/matrix/shah/class_shah_kon8.php'); include ('../studiere/matrix/shah/class_shah_tura8.php'); include ('../studiere/matrix/shah/class_shah_slon8.php'); include ('../studiere/matrix/shah/class_shah_ferz8.php'); include ('../studiere/matrix/shah/class_otkrytie_shaha8.php'); Она проверяет корректность хода,чтобы ход был по правилам Нигде в интернете такого не написано,даже по запросу "шахматная матрица" ничего нет
Программа "жрёт" всё,что отдаю Расчет на окружающие 8 клеток С 12 попытки удалось,сначала абра-кадабра получилась,с такой абра-кадаброй пришлось бы писать условия IF на 3156 блоков )
@don.bidon, чувак со своим ИИ пытается сам себя налимонить. Не мешай ему двигаться в успешном направлении говнокодинга.
Какой позор,какая чушь,ты не стесняешься такую чушь писать в интернете? Эта тема будет висеть на форуме годами,тебя прочитают сотни людей,и что они о тебе подумают
Первую "И" увидел, вторую "И" не увидел, если ходы рандомно делаются. Шахматы, если память не изменяет, иначе пишутся. К коду придираться даже не буду. Из своих ИИ могу вспомнить пару stealth-вирусов под MSX, один подставлял из ПЗУ стандартный boot-сектор, пряча себя, второй выкусывался из исполняемых файлов, если их загружали в популярный тогда отладчик, а не на исполнение. Ещё один раз участвовал в проекте по написанию преферанса на prolog, но команда состояла из школьников и задача состояла в том, чтобы за 2 недели как-то изучить язык и что-то навоять, распасы научили играть худо-бедно, остальное не успели )
Уже не совсем рандом В одном потоке идут 5 поисков: 1.Просто рандомные ходы А1-H8 2.Перебор каждой черной фигуры и поиск кого убить на передние 3 клетки 3.Перебор каждой черной фигуры и поиск кого убить на задние 3 клетки 4.Перебор каждой черной фигуры и поиск кого убить на 1 клетку влево и 1 клетку вправо 5.Отменяются ходы под удар на окружающие 8 клеток В общем написание на "окружающие 8 клеток" готово Тестирую,играю с программой и отдаю фигуры - пожирает нормально Но дописывать то надо будет с анализом на потенциально "окружающие 64 клетки",я это уже не осилю,математика будет сложная,запутаюсь в переменных Сейчас тестирую,чтобы моего слона сразу же жрал - бывает путит, настраиваю
И нахуа эта хрень? Лучше совершенствованием ИИ займитесь. А то в демке какой-то тупой соперник-компьютер. Помню, в школе или в институте была небольшая программа, с которой было реально интересно играть, а у вас осн. фигуры, например конь или король, выходят со своих нач. позиций, а потом на них возвращаются --- Добавлено --- Пользовательские ходы тоже «зависают» (я сначала даже не понял как ходить). Сделайте быстрые тупые ходы на клиенте, а потом уже обсчитывайте их корректность на сервере. Поддержка ходов перетаскиванием фигуры тоже бы не помешала.