|
1 / 1 / 0
Регистрация: 08.05.2015
Сообщений: 12
|
|
Написать алгоритм расчета победы в сетевой игре "Крестики-нолики"10.05.2015, 23:53. Показов 2393. Ответов 10
Метки нет (Все метки)
День добрый уважаемые форумчане. В качестве упражнения делаю маленькую игрушку- крестики-нолики по сети.
С графической частью я разобрался, осталось написать алгоритм расчета победы, программную оболочку и сетевой модуль. Вот тут-то и случился затык. Я читал литературу по пакету java.net, сокетам и тд..но в итоге ничего не понял куда вообще стоит двигаться. Общая затея (как я ее на данный момент понимаю такова) - есть сама игра, по введенному айпишнику она должна соединяться с другой точно такой же игрой. Обмен данными должен быть по сути небольшой, там изменяется все по единственному двумерному массиву. Вот и в чем вопрос. С чего стоит начинать? Какая логика должна быть у сетевого модуля? На что стоит обратить внимание? А то пока мое понимание дальше строки Socket sock = new Socket (IP, port) не ушло ![]() Большая просьба не советовать "курить мануалы" и читать учебники, если б я мог сам разобраться я б не стал писать на форум ![]() Добавлено через 4 часа 53 минуты Мм..модератор неправильно истолковал суть)) Не алгоритм расчет победы, а сетевой модуль тогда уж
0
|
|
| 10.05.2015, 23:53 | |
|
Ответы с готовыми решениями:
10
Определение победы в игре "Крестики-нолики"
|
|
5 / 5 / 1
Регистрация: 08.06.2013
Сообщений: 51
|
|||
| 12.05.2015, 14:05 | |||
0
|
|||
|
1 / 1 / 0
Регистрация: 08.05.2015
Сообщений: 12
|
|
| 13.05.2015, 00:51 [ТС] | |
|
Я не специалист, я только учусь
![]() Был вариант сделать в общем виде (консольный), решил сделать сразу с графикой. И все-таки, есть что по сабжу? Насчет сетевого устройства
0
|
|
|
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
||
| 13.05.2015, 08:30 | ||
|
"я учусь" и "научите меня, это же форум, вы обязаны" это разные вещи
0
|
||
|
1 / 1 / 0
Регистрация: 08.05.2015
Сообщений: 12
|
|
| 14.05.2015, 11:40 [ТС] | |
|
Я имел ввиду конструктивный ответ, а не комментарии на оформления темы.
Если я спрашиваю на форуме- уж наверное я надеюсь что мне помогут,а не напишут "иди читай учебник и тд" Поэтому так и написал. Зачем тогда форум нужен? А то круто конечно. Какие-нибудь девочки просят целиком написать программу решения квадратного уравнения- желающих помочь отбавляй
0
|
|
|
1 / 1 / 0
Регистрация: 08.05.2015
Сообщений: 12
|
||||||
| 07.06.2015, 15:45 [ТС] | ||||||
|
В продолжение темы насчет сетей.
В процессе игры изменяется двумерный массив, после установления нового значка (крестика или нолика) массив обновляется и перекидывается по сети другому клиенту, соответственно на основе нового массива у него перерисовывается картинка. Порылся я на форуме и пришел к выводу, что нужно использовать ObjectInputStream/ObjectOutputStream. Соответственно вопрос первый. Просто завязать через сокет 2 клиента и осуществлять обмен между ними не получится? Нужно описывать некую серверную часть? Вопрос второй. Кликните здесь для просмотра всего текста
Подобная конструкция естественно не работает, выдает исключение, sock cannot be resolved. Вопрос третий. Смотрел я примеры простых клиент-серверных приложений, там также использовался ServerSocket. В моем случае как его использовать и надо ли?
0
|
||||||
|
Автоматизируй это!
|
||
| 07.06.2015, 15:52 | ||
|
Конструктивный ответ: можно конечно сделать чтобы один игрок сидел на сервере, второй на клиенте и играли, но уж по уму сразу нужно делать клиента и сервера, который просто будет пересылать данные между 2 игроками. Запоминать весь массив не обязательно, пусть за правильностью ввода и условиями следит клиент, а передавай только координаты очередного крестика или нолика. Через сокеты вполне можно сделать, сервер будет выступать посредником и контачить двух подсоединившихся в игру. А значит сокеты, потоки, передача инфы, все по примерам из учебника...ой, про них же нельзя)
1
|
||
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
||
| 07.06.2015, 15:54 | ||
|
PaRanNo1d, почитайте подробнее как устроенны сети. Всегда кто-то должен быть сервером а кто-то клиентом. На сервере открывайте сокет и слушайте сообщения от клиента.
0
|
||
|
1 / 1 / 0
Регистрация: 08.05.2015
Сообщений: 12
|
|
| 07.06.2015, 16:35 [ТС] | |
|
Welemir1, не ехидничай
![]() Спасибо за ответы. Тогда следующий вопрос- а нельзя реализовать в одном программе функционал сервера и клиента 2 в 1, в едином программном модуле? KEKCoGEN, пока не разобрался Но с ObjectStream логика верная?
0
|
|
|
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
|
|
| 07.06.2015, 17:13 | |
|
0
|
|
|
Автоматизируй это!
|
||
| 07.06.2015, 18:13 | ||
|
0
|
||
| 07.06.2015, 18:13 | |
|
Помогаю со студенческими работами здесь
11
Написать регистрацию игроков к игре крестики-нолики Прогнозирование победы в крестики-нолики Крестики нолики Qt функция победы 'Крестики-нолики' проверка победы по диагоналям Условие победы в крестики нолики по вертикали Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|