Игра возможна как с компьютером, так и с оппонентом по сети. В качестве сетевого ресурса обмена информацией между игроками используется КаталогВременныхФайлов сервера 1С (кластера). Т.е. в игру можно играть как в рамках одной конфигурации так и в двух различных, единственное условие — эти конфигурации должны использовать один общий сервер 1С (кластер).
P.S. Возможна медленная работа из-за особенностей платформы, т.к. в обработке используется графическая схема, а она, похоже, каждый раз «перерисовывается» целиком, после очередного действия, производимого над ней. Даже попытка использования gif-анимации приводит к статической картинке. Т.е. графическая схема формируется не сервере одним рисунком и затем публикуется для отображения на клиенте.
Симпатично!
Молодцом !
Поддержу (1), действительно симпатично смотрится.
Замечательная графика.
Только вот 1с для даже для такой простейшей игры не предназанчена — не тянет.
Автор, корабли не могут соприкасаться «бортами».
Еще бы порекомендовал паузу 1-2 секунда между последовательными ходами компьютера — а то графически трудно уследить, куда он ходит, приходитмся читать/искать текстовое описание хода.
Ну, и заодно иммитация «компьютер вроде как думает».
А то ляпает ходы и «бездумно», и не видно куда 🙂
(5) frc, только углами.
(6) frc, это можно сделать самостоятельно. Найти в тексте модуля формы текст ПодключитьОбработчикОжидания и установить время в секундах, сейчас 1 сек.
Еще бы между пользователями игру замутить, а то вроде как с компьютером не интересно. Может чекать как-то активных и присылать им приглашение?
(7) тоже не может
(10) Ёпрст, в каждом отдельно взятом регионе свои правила.
(9) RomAsVo, что-то подобное было здесь на инфостарте, поищите.
Автор молодчик!!! Классная игрушка! Только одно замечание, если корабль «убит», он должен по перефирии полностью обводиться. Скрин прилагаю. А так супер, безукоризненно плюс автору.
(13) soulsteps, обводится «убитый» полностью, т.к. прошу не забывать, что в правилах этой игры корабли могут соприкасаться углами, поэтому обводятся только те клетки, которые соприкасаютя гранями.
обнаружил небольшой баг — если после промаха игрок продолжит нажимать на клетки в поле противника, то продолжится обстрел поля компьютера — нет блокировки ходов игрока, пока компьютер не сделал свой шаг. я так выиграл, не дав сделать ни одного шага компьютеру)
(16) scorp_23, ну да, забыл про это. обработчик ожидания работает только когда нет активности пользователя.
Впервые слышу про ограничения по размещению кораблей на поле.
Плюс за творческий подход к реализации графической составляющей игры.
Еще бы сетевую игру сделать, например, через записи справочника/документа/регистра
(18) ivs200999, Впервые слышу что их нету.
bobank, в «Морском бое» действительно есть ограничение на размещение кораблей, углы не должны соприкасаться. Я ещё со школы помню когда играли на двух тетрадных листах 🙂 Потом на компьютерах появились игры, там тоже такие же правила. Если не ошибаюсь сетевой «Морской бой» был реализован в маил.ру агенте и там тоже такие же правила.
(21) kilokilo, 1$m
а почему игра не запускается
(23) steg,
потому что на управляемых формах и должна запускаться в УП.
(18) ivs200999,
корабли, когда «плавают», бортами не соприкасаются 🙂
(24) frc, всё сообразил )))
Автору +
Автору +. Интересное оформление получилось. Как-то писал морской бой на visual basic в технаре. Только в правилах обычно принято, чтобы корабли не соприкасались углами и обводить убитого со всех сторон соответственно. Предлагаю добавить уровни сложности. Алгоритм элементарный: добитие раненых включается с определенного уровня и в зависимости от уровня у компьютера может быть несколько «невидимых» попыток попасть. т.е. он бьет один раз — не попал — ячейку не открываем, а даем ему еще одну попытку и только во второй(или 3,4 — в зависимости от сложности) открываем ячейку даже если не попал. Ну а если попал то все как обычно. Выше 5-ого уровня играть не реально), а десятый разносит за 2-3 хода.
Действительно здорово:)
Прикольно. Автор молодец.
Противник расставляет кораблики рядом, красивоо сделано +.
http://pix.am/ozKU/
Игру по сети делать будете?
Сетевая версия на подходе. Выбираю варианты взаимодействия — либо через общий сетевой ресурс, либо через объект конфигурации, но тогда теряется смысл во внешней обработке. Так же разрабатываю протокол обмена (мне он для других целей потом пригодится).
Готовую версию обработки выложу ориентировчно в понедельник — вторник.
(32) vbuots, да я уже писал выше, что в правилах этой игры корабли могут соприкасаться углами, но не гранями.
Реализован сетевой режим, т.е. игра с оппонентом.
Перезалил файл.
(35) красивая реализация, зачетно
Улыбнуло, нужная вещь
(34)
В правилах классической игры «Морской бой» корабли ни в коем случае не соприкасаются углами. О том, что есть другой вариант игры, когда это возможно, узнал впервые из этой публикации. Это ж читерство чистой воды 🙂
Только вчера подумал как написать, а тут уже есть. Молодец.
Хорошая штука
Попробуем скачать. Автору +.
Однозначно плюс за реализацию и дизайн, очень креативно). Это относится и к другим работам автора. Вообщем молодец!
За идею ставлю плюс!!!
За идею — плюс)))
На 8.3 не работает, корабли не появляются, только на 8.2
Вероятно проблема с релизом платформы. Только что проверил, все работает (платформа 8.3.5.1383, веб-клиент, тонкий клиент)
Кто-то пробовал на 8.3.15?:)
(48) Изменить уже не могу, попробовал — работает.