Имя: Пароль:
LIFE
 
OFF: Морской бой (интеллектуальный конкурс 1сников)
☑
0 Конструктор1С
 
18.09.26
✎
10:59
1. Взлетит 59% (10)
2. Не взлетит 41% (7)
Всего мнений: 17

По мотивам
Интеллектуальный конкурс 1С-программистов

Идея: устроить программистское соревнование в классическую детскую игру "Морской бой". Будет некий бэкенд, который проводит игру. Участник пишет на 1С свой клиент (HTTP-сервис), через который проходит игра. Сервер будет закатывать/получать JSON с картой боя и ходами противника.
Каждый участник самостоятельно реализует логику ходов и начальной расстановки. Эдакая онлайн-игра на минималках должна получиться.
Серверную часть я напишу. Но нужен будет сервер, на котором это всё опубликуется

Кто что думает?
110 PLUT
 
гуру
23.09.26
✎
13:22
(109) нейролингвистическое еще?

на распознавание норм задачка?
111 PLUT
 
гуру
23.09.26
✎
13:34
игрульки-бирюльки:

тараканьи бега

https://share.google/aimode/EvURp7gj6GwFeQTj9

https://habr.com/ru/companies/cloud4y/articles/738262/

https://pikabu.ru/story/mikromyishinyie_bega_10280251

https://habr.com/ru/companies/yadro/articles/869888/


...Обычные алгоритмы поиска оптимального маршрута используют вариации алгоритма Беллмана, алгоритма Дейкстры, алгоритма поиска A*, различных алгоритмов обхода дерева и обхода графов.

...многие роботы теперь оснащены вентиляторами, которые прижимают их к поверхности лабиринта, увеличивая тягу. Это привело к скорости до 7 метров в секунду и перегрузки до 6G на поворотах.

можно забеги роботов-пылесосов устраивать :)
112 maxab72
 
23.09.26
✎
14:10
(111) Мой кот любит на роботе пылесосе кататься, так что экипаж уже есть.
113 Гений 1С
 
гуру
23.09.26
✎
14:42
(109) еще один, познавший это ремесло, бугога
114 PLUT
 
гуру
23.09.26
✎
14:47
(113) ну что там с окончательным решением вопроса RLS в одинэс?

чёт всё стухло
115 Злопчинский
 
23.09.26
✎
15:27
(113) ну куда нам, ремесленникам, до вас, "математиков"...
116 Почтмейстер
 
23.09.26
✎
15:40
Морской бой - это легкотня для детского сада. Я сейчас действительно сложный алгоритм для игры делаю.
Дано: игровое поле из клеток определенной формы, определенное количество прямоугольных зданий заданных размеров тоже из клеток.
К некоторым зданиям в зависимости от их типа должна подходить дорога от главного здания.
Требуется: Расставить здания на поле оптимальным образом, чтобы осталось как можно больше свободного пространства для постройки новых зданий стандартных размеров 2х2, 3х3, или 2х3, с возможностью подведения к ним дорог.
Дополнительное задание повышенной сложности: доказать что найденная расстановка является самой оптимальной.
117 Lama12
 
23.09.26
✎
16:28
(113) "Вот тут-то вы его и засветили". Ремесло и творчество, это несравнимые вещи. Многие программисты - творцы, и художники. Есть ремесленники. Ни первое, ни второе не плохо. Просто разное.
118 Злопчинский
 
23.09.26
✎
19:35
Ну, после художников - хоть картины остаются. Помнят хоть как-никак (правда выяснилось через 20 лет что квадрат Малевича вверх ногами висел). Вякие там Шишкин, Поленов, Левитан...
.
А кого погромистов помнить будут лет через 30-50..?
119 Сеньор Программист
 
23.09.26
✎
20:08
(118) тех кто курил табак и употреблял абсент
120 Сеньор Программист
 
23.09.26
✎
20:18
Типовой 1С ник из Питера может накидать историй на пару-тройку сезонов известного сериала про Петербург. При чем не ремейка, а дополнительных сюжетов первоначальной истории. Только эта тема сейчас никого не интересует больше.
121 Злопчинский
 
23.09.26
✎
20:48
А что сейчас интересует?
когда будет сериал "Возвращение человеков"..от Клауда?
122 Сеньор Программист
 
23.09.26
✎
21:36
Не знаю. Я только в покер и на бирже.
123 Волшебник
 
23.09.26
✎
22:28
Вам представляется для оценки новая песня "Робот-курьер", версия v1
https://wizard.mista.ru/music/my-songs/delivery-bot.html

на подходе версия v2... Ожидайте нового
124 Волшебник
 
23.09.26
✎
22:32
Просьба заценить новую версию песни
Робот-курьер v2
https://моипесни.рф/song/yIP2vr3EWPH8/robot-kur-yer
125 maxab72
 
23.09.26
✎
22:56
Эти роботы-курьеры иногда нагло прут на красный, сам видел... плохой пример пешеходам подают.
126 Волшебник
 
23.09.26
✎
23:10
(125) Они такие, да... На своей волне
127 Конструктор1С
 
24.09.26
✎
08:22
(116) ну не такая уж и легкая, когда надо написать алгоритм для игры, и чтобы он побеждал другие алгоритмы

Сейчас пишу на Java движок игры. Делаю три уровня сложности:
1. Классическое море 10х10 клеток
2. Увеличенное море 15х15 клеток. Количество кораблей:
5-палубник = 1
4-палубник = 2
3-палубник = 4
2-палубник = 6
1-палубник = 8
Итого 45 клеток кораблей на 225 клеток моря
3. Огромное море 20х20 клеток. Количество кораблей:
6-палубник = 1
5-палубник = 2
4-палубник = 4
3-палубник = 6
2-палубник = 9
1-палубник = 12
Итого 80 клеток кораблей на 400 клеток моря
В стандартной игре 20 клеток кораблей на 100 клеток моря. Везде 20% моря занято кораблями
128 Почтмейстер
 
24.09.26
✎
08:24
(127) Я бы не сказал что прям сложно. Просто долго, и надо много разных мелочей учесть.
129 Конструктор1С
 
24.09.26
✎
08:28
(128) попробуем, посмотрим что выйдет
130 kittystark
 
24.09.26
✎
11:58
предлагаю вместо дуэлей 1 на 1 реализовать режим deathmatch, вкруговую одновременно все против всех:
1-ый раунд 5 против 5-ти, каждому время на выстрел - 10 сек
2-ой раунд 10 против 10-ти, время на выстрел - 5 сек
и т.д., с каждым раундом время уменьшается

не успел выстрелить - твои проблемы, к тебе-то точно прилетит

выстрелил / прошло время - тебе подставляется поле следующего противника, и так по кругу, пока во всех возможных парах не закончатся бои

расстановка какого-то игрока отдается всем оппонентам в одном и том же виде
131 kittystark
 
24.09.26
✎
12:03
далее выставляется рейтинг по кол-ву побед/проигрышей
132 Сеньор Программист
 
24.09.26
✎
12:24
Мне кажется 1С это не про программирование.
Это психология,лидерство, мотивация персонала низшего и среднего звена без использования денег, управленческое карате с высшим звеном без наличия блата (административного ресурса). Искусство обработки напильником купленного паровоза до стадии танка/ самолета. Бартерный обмен геморой на геморой (ты мне свой я тебе свой) . Мордобой с особо умными.
Задачи на конкурс надо соответствующие.
Если просто программировать что скажут, то развалится кровать.
133 Злопчинский
 
24.09.26
✎
13:03
(130) Билеты зрителям будут?
135 kittystark
 
24.09.26
✎
13:19
(133) конечно!
из разряда "продаются бесплатные деньги"

но тут станет другой вопрос: что же созерцателю выводить?
все комбинации полей битв одновременно, или он будет листать и смотреть только за какой-то конкретной парой, или за конкретным ником и всеми его противниками

и еще реплей надо будет записывать...
136 Злопчинский
 
24.09.26
✎
13:30
Выводить "шахматку" отдельных скринов битв (ну типа как в менеджерах удаленного доступа или просмотра картинок в просмотрщиках). штук 20 наверное будет максимум. Выводить динамически только те битвы где эффективность стрельбы высокая (типа колвопопаданий/колво выстрелов). На дашборде показывать всякую статистику, колов участников, колов битв сейчас, колов выстрелов общее, колов попаданий, пятерку лидеров фио итд...
хочется зрителю посмотреть подробнее  жмак на нужный "кадратик" - открывается крупно.
137 Конструктор1С
 
24.09.26
✎
13:33
(130) >>реализовать режим deathmatch
Я не против, но не знаю как подобную механику технически реализовать
138 Конструктор1С
 
24.09.26
✎
13:34
(135) >>и еще реплей надо будет записывать.
Это само собой. Тут довольно просто
139 Злопчинский
 
24.09.26
✎
13:34
да, можно выбрать конкретный бой, можно конкретный ник...
140 Злопчинский
 
24.09.26
✎
13:35
(137) ну если все идет на сервере
то наверняка какой-то внешний "диспетчер" наваять который читает текущее состояние всех боев
141 kittystark
 
24.09.26
✎
13:59
еще вариант битвы "Крокодил против 5-ти" (предположим у хардкорного игрока ник "Крокодил")

- пятеро наносят одновременно по 1 выстрелу в крокодила, причем все могут не сговариваясь попасть в одну и ту же точку
- ход передается крокодилу и он в ответ лупит по каждому противнику по 5 раз

количество доступных выстрелов при попадании в цель не увеличивается, каждому строго или 1, или 5
149 sikuda
 
25.09.26
✎
09:41
И эти люди умудренные опытом будут обсуждать логирование событий(140) или тонкости игрового пространства(130) забыв сказать самое важное - как только Вы делаете онлайн дуэли между несколькими игроками Вы должны поддерживать онлайн соединение между ними!

Давайте уж лучше обсудим работу с Вэбсокетами и асинхронный сервер, который все это позволит сделать.
(127) Для Java что будете использовать? Netty или Spring WebFlux?
(75) Для любителей nodejs посоветуйте хостинг для таких проектов.

Взлетит
150 Конструктор1С
 
25.09.26
✎
11:11
(149) ещё не решил за сеть. Сначала напишу игровой движок. Затем с помощью ИИ и какой-то матери прикручу к игре декстопный интерфейс, чтобы желающие могли повтыкать, пообсуждать и накидать замечаний/предложений. А затем уже возьмусь за клиент-серверную часть. По хорошему и БД надо подцепить, чтобы историю боев сохранить
151 Web00001
 
25.09.26
✎
16:36
(149)>Вы должны поддерживать онлайн соединение между ними!
С какой целью это нужно делать? Пользователь делает ход. Сервер его принимает, если его очередь и он делает все правильно или не принимает, если косяк в запросе или ход от него не ожидается. На этом все.
152 Злопчинский
 
25.09.26
✎
17:53
(151) ну,  тут не только делать ход, но и получать ход от противника.
153 maxab72
 
25.09.26
✎
17:57
(151) организуйте на принципе pbem, оба ход делают одновременно.
154 Web00001
 
25.09.26
✎
19:24
(152)Да. прислать уведомление, что ход противника сделан тоже нужно.
155 Web00001
 
25.09.26
✎
19:25
(153)Мопед не мой.
156 Web00001
 
25.09.26
✎
19:29
(149) >Для любителей nodejs посоветуйте хостинг для таких проектов.
Если любите js то вам на cloudflare pages они могут, что угодно развернуть на тайпскрипте https://developers.cloudflare.com/workers/get-started/guide/

Можно и наше родное яндексовое https://yandex.cloud/ru/docs/functions/lang/nodejs/ у тех вообще хоть на пхп, хоть на go
157 sikuda
 
26.09.26
✎
20:43
(150) Ура я понял как надо делать идею сервера приложений! Я нашел https://cloud.amvera.ru/ (Потуги 1С элемента засчитываются)

Опубликовал приложение seabattle(108)
сделал доступным извне  https://seabattle-sikuda.amvera.io/

Теперь можно заниматься всякой хренью
- улучшать или переписывать игровой движок
- записать результаты и ходы в базу
- Делать клиентов на андройде или яблочных
---  далее и тому подобно

Но включать сервер тогда он действительно мною используется👍
158 sikuda
 
27.09.26
✎
11:57
(157) Включаем на воскресенье-понедельник https://seabattle-sikuda.amvera.io/
Внутренность проекта (108) оказалась простой и действительно студенческой
Асинхронный сервер просто пересылает все комманда из одного клиента другим
Но
Проверка пар играющих есть
Играют всегда два. Если хотите на одном компьютере запускайте другой браузер
Глюки с расстановкой
Можно выставлять не полный набор кораблей
Как вращать корабли не разобрался

Залипательно🔥
Просадим бесплатный баланс от amvera сегодня?
https://seabattle-sikuda.amvera.io/

Взлетит
159 Злопчинский
 
27.09.26
✎
16:51
приложение бяка
4хпалубного нет
поставил 3 на поле
вторую тройку - не получается поставить дагндропом, попытки с пятой поставилось.
корабли не запрещено ставить вплотную
не видно есть ли ожидающие поиграть, расставляешь корабли - send - ждем играющих... видел бы что нет играющих даже корабли не начал бы ставить
160 sikuda
 
28.09.26
✎
12:46
(159) То самое чувство что игра написания в 300 строк на js каким-то студентом(GamePrep.js) из недружественного государства вызывает возмущение, а болтовня на форуме в более 150 сообщений без единого примера готового решения легко удается?
Тыкая свой макбук, попивая в воскресенье вечером любимый коньяк...👍
Да поймал сам себя на этом!
161 Web00001
 
28.09.26
✎
05:58
(160) Наколенная поделка глючит и спроектирована так, что пользоваться этим невозможно. Ты опубликовал. Человек который попробовал об этом честно написал. Нет желания писать полуработающие наколенные поделки и выкладывать их в общий доступ. А чтобы сделать нормально работающую и хорошо документированную игру по теме которую мы здесь обсуждаем, нужно прилично времени и немного больше чем 300 строк кода. На это нет времени и ресурсов.  У конструктора видимо есть возможность развлекаться подобным образом, у меня к примеру нет, у Злопа скорее всего тоже. Очередь стоит из проектов. Причем здесь болтовня на форуме, коньяк и макбук совершенно непонятно.
162 Конструктор1С
 
28.09.26
✎
10:02
(161) ну не то чтобы много времени, но делаю. Движок почти готов, покрыт юнит-тестами
163 Конструктор1С
 
28.09.26
✎
10:03
У мну будет не наколенная поделка на отвяжись. Как-минимум должна работать и работать правильно
164 Злопчинский
 
28.09.26
✎
11:26
(160) А кто сказал, что кто-то тыкая здесь на форуме в клаву, лялякая и занимаясь болтологией, должен еще что-то напрограммить? это ваапсче не обязательно!
165 Кирпич
 
28.09.26
✎
14:02
фигня ваш морской бой. вот мужская игра http://135.106.229.120/
166 maxab72
 
28.09.26
✎
14:04
(165) пусть лучше найдут выигрышную стратегию для игры в "Ладушки". и запрограммируют ее в 1С.
167 sikuda
 
29.09.26
✎
10:15
(166) • «— Ладушки, ладушки! (хлопаем в ладоши)
• Где были? — У бабушки! (хлопаем)
• Что ели? — Кашку! (хлопаем)
• Что пили? — Бражку! ( и хлопнем )
И снова возвращаемся к приятному времяперпровождению в воскресенье вечером? - разбираемся в чужой подделке🔥
PullRequest принимаются https://github.com/sikudaPy/BattleShip
168 maxab72
 
29.09.26
✎
09:18
(167) и откуда эта пропаганда алкоголизма?
169 sikuda
 
29.09.26
✎
18:34
(168) Как в песне поется:
"Пристани корабликам, пристани корабликам
В небе не нужны.
Пристают кораблики, пристают кораблики
К маковке сосны..."

https://codepen.io/editor/sikuda/pen/01a0ece7-11c2-72ac-9d69-6266b66f4a5e

Я одного не понял, где у Волшебника на сайте раздел для производства игр?🔥
170 Волшебник
 
30.09.26
✎
01:29
(169) Вся наша Жызнь — игра!
171 PLUT
 
гуру
30.09.26
✎
10:21
вся наша Жызнь - борьба!

до обеда с голодом, после обеда со сном

и у верблюдов два горба, потому что Жызнь - игра!
172 maxab72
 
30.09.26
✎
10:28
(170) Герман графине: Где карта, Билли?
173 sikuda
 
30.09.26
✎
11:12
(171) «Что наша жизнь? Игра!»
Похоже это студент итальянец из Стогольма(монархическая Швеция для Софьи Ковалевской🤦) быстро сделал прототип и забросил его.
Да надо переделывать для простоты и понятности.

(163) Но по объему интересна именно клиенская часть, серверная часть проста и понятна(единственный нюанс (149))
174 Гений 1С
 
гуру
30.09.26
✎
13:31
(170) есть такая игра - Жизнь
но лучше соревноваться в Го
175 maxab72
 
30.09.26
✎
13:35
Еще ни одна ИИ не обыграла меня в бильярд и настольный теннис.
176 Lama12
 
30.09.26
✎
13:48
(175) Где-то я уже слышал про настольный теннис. Вроде был такой фантастический рассказ, когда машина начала обыгрывать человека в настольный теннис, и после этого он, как спорт, исчез.
177 maxab72
 
30.09.26
✎
13:57
(176) Компы уже давно обыгрывают чемпионов мира в шахматы, а шахматы как то еще не исчезли.
178 Злопчинский
 
30.09.26
✎
18:01
(175) ну, в настольный теннис роботы уже на уровне чемпионов.
179 maxab72
 
30.09.26
✎
19:34
(178) Чемпионы меня тоже еще ни разу не обыгрывали.
180 Злопчинский
 
30.09.26
✎
23:23
(179) Меня тоже
181 sikuda
 
01.10.26
✎
08:14
(178) Когда обычно по глупости точно сопоставлять достижения роботов и людей предлагаю идеального робота для настольного тенниса:
182 maxab72
 
01.10.26
✎
08:24
(181) У нас в 1980-ом в пионерлагере такие были. Называлось "играть против ёжика в тумане". А еще мы все "тюнинговали" свои ракетки. Каждый под себя. У меня ракетка была самодельная из листа фанеры с приделанной круглой ручкой, и я "позаимствовал" материалы для нее из кружка мягкой игрушки (меня туда записали насильно, зато я там научился крепко пришивать пуговицы, ставить на штаны заплатки и туго набивать плюшевых зайцев через задницу ватином). Одна сторона ракетки у меня была из полусантиметрового войлока, с наклеенным поверх мягким фетром - эта сторона идеально гасила любые крученые подачи, и позволяла самому закручивать шарик, правда скорость его не была высокой, а другая сторона - тонкий слой гладкой и твердой прессованной синтетической кожи, сверху я ее обработал слегка наждачкой - для быстрых и хлестких ударов.
183 sikuda
 
01.10.26
✎
09:18
(182) - Нравятся мне эти суровые сибирские романтики-идеалисты...
Когда меня затянуло в настольный теннис, я уже был переростком в школе а начинать надо было лет с шести.
Тренер у меня попалась настойчивая и один раз затянула меня профильный спортивный лагерь к юношеской школе союзного уровня где то на волжском водохранилище.
Вот тогда я и понял что уровнь игры это всегда относительная вещь!
Так с теннисом у меня проффесионально не сложилось, хотя всегда обыгрываю людей которые соблюдают правила и не хитрят...

Прикольно что года три назад в доме отдыха пришлось играть левой рукой, разыграться было не с кем и уровень был очень слабый. Дошел до второго места👍 В финале быстрое переключение на правую руку конечно не помогло - И это ошибка подготовки!
Сейчас классный ракетки и спортклубы есть, но если не поддерживать уровень постоянными тренировками все это быстро падает...
184 sikuda
 
02.10.26
✎
09:00
Ошибка подготовки продолжается и кажется я начинаю жалеть, что ввязался...
https://codepen.io/editor/sikuda/pen/01a0f267-cdf4-7563-b986-63a83228b85c
185 Timon1405
 
02.10.26
✎
09:20
(184) ну такое) я смог поставить сначала все точки в одну, а потом сделать из них линкор
186 Кирпич
 
02.10.26
✎
09:24
(185) а вы не тратьте время на поделки от сельских вайбкодеров.
187 Timon1405
 
02.10.26
✎
09:34
(186) да ладно Вам, размять с утра свой, а не искусственный мозг еще никому не мешало
188 sikuda
 
02.10.26
✎
10:38
(185) Да уж переписал уже все на SVG c масштабированием и произвольными размерами доски.
на https://codepen.io/editor/sikuda/pen/01a0f267-cdf4-7563-b986-63a83228b85c
Просто стал добавлять двух палубные и понял что это не так просто...
Да блин и одно палубные тоже с ошибками
189 kittystark
 
02.10.26
✎
10:37
(184) попробуй (75) адаптировать под кодепен :)
190 Timon1405
 
02.10.26
✎
10:44
(188) видимо где-то логика подводит
191 sikuda
 
02.10.26
✎
11:07
(187) Спасибо большое ошибку нашел, теперь не получиться с однопалубными!
Когда корабль не переставлялся надо снова установить его положение на shipsTable. А то когда он начинает движение его место должно стать пустым...
192 Timon1405
 
02.10.26
✎
11:10
(191) весело тут у вас
193 sikuda
 
02.10.26
✎
13:29
(192) Зеленые многопалубные кораблики рулят...
https://codepen.io/editor/sikuda/pen/01a0f267-cdf4-7563-b986-63a83228b85c
194 PLUT
 
гуру
02.10.26
✎
13:46
(193) а крутилка где? по диагонали не смог кораблик поставить

в тетрисах всяких "пробел" фигурки крутил
195 maxab72
 
02.10.26
✎
13:29
(193) а как поворачивать?
196 Timon1405
 
02.10.26
✎
14:41
(193) уже лучше. я в (185) сразу написал метод воспроизведения
198 sikuda
 
06.10.26
✎
07:36
(127) Кто там хотел разные размеры поля
А так задаем парамеры:
const countSquare = 20 - размеры доски
const countShipsBySection = [12,9,6,4,2,1] корабли

Взлетит
199 Злопчинский
 
03.10.26
✎
22:44
(198) хз что там такое, но дает 404
200 sikuda
 
06.10.26
✎
07:36
(199) Это санкции(или разделение нагрузки по секторам ip), через VPN работает
Но здесь надо сказать что-то патриотическое (БАНЗАЙ🤦 .RU)
https://sikuda.ru/ShipsBattle.html
Кто там хотел извращений 20x20?
201 sikuda
 
06.10.26
✎
14:27
Что-то как-то интерес ушел?
202 Конструктор1С
 
06.10.26
✎
15:36
(201) завтра-послезавтра выкачу десктопную версию игры
203 Злопчинский
 
06.10.26
✎
16:21
(202) ждём-с, потираем руки в ожидании косяков
204 maxab72
 
06.10.26
✎
18:40
"потираем руки в ожидании косяков" у меня приятель, когда я еще учился в универе, написал программку с игрой в покер. Из-за какого-то косяка программа иногда сдавала в одну руку 5 тузов разных мастей (у него в первой версии масти обозначались цифрами)...
205 Злопчинский
 
06.10.26
✎
18:45
(204) тузы и джокер
206 sikuda
 
09.10.26
✎
07:53
(202) Итак в эти выходные мы уже будем резаться в морской бой?
207 Конструктор1С
 
09.10.26
✎
08:23
(206) только с тупеньким NPC)
208 Конструктор1С
 
09.10.26
✎
08:27
И расстановка будет автоматическая. Не осилил перетаскивалку кораблей сделать
209 Конструктор1С
 
09.10.26
✎
09:11
Десктопный вариант почти готов. Надо только добавить какой-то анимации что ли, и плавности. Вечером постараюсь доделать
Независимо от того, куда вы едете — это в гору и против ветра!