Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 14, 2016 20:59:55

Aran0ID
Зарегистрирован: 2016-11-14
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Сервер для игры (до 10 человек)

Пришла мне идея сделать игру, понадобился мультиплеер, пришлось изучать сокеты. Вот к чему я пришел:
Сервер:

 import socket
def send_answer(st):
    conn.send(st.encode())
sock = socket.socket()
sock.bind( ("", 9090) )
sock.listen(5)
try:
    while 1: 
        conn, addr = sock.accept()
        print("Send from" + addr[0]+":")
        try:
            data = conn.recv(1024)
            if data:              
                print(data.decode())
                send_answer("YES")
        except:
            send_answer("ERR")
        finally:
            conn.close()
finally: sock.close()

Клиент:
 import socket
import time
while True:
    conn = socket.socket()
    conn.connect( ("93.76.240.167", 9090) )
    conn.send(b"1 \n")
    tmp = conn.recv(1024)
    print( tmp.decode() )
    time.sleep(5)
    conn.close()
Но это плохой код сервер каждый раз разрывает соединение, а клиенту приходится переподключатся.
Помогите, пожалуйста переписать его так, чтобы:
1. Сервер мог работать постоянно
2. С несколькими клиентами
3. Клиент один раз подключался

Офлайн

#2 Ноя. 14, 2016 22:00:16

Iskatel
Зарегистрирован: 2015-07-29
Сообщения: 291
Репутация: +  3  -
Профиль   Отправить e-mail  

Сервер для игры (до 10 человек)

Aran0ID
Вот к чему я пришел:

Ты какими то левыми путями к этому пришел… Твой код работать просто не будет…
Ищи другой код…

Aran0ID
Пришла мне идея сделать игру, понадобился мультиплеер, пришлось изучать сокеты.

Думаешь кого-то обманул?

Отредактировано Iskatel (Ноя. 14, 2016 22:00:40)

Офлайн

#3 Ноя. 14, 2016 22:12:25

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Сервер для игры (до 10 человек)

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



Офлайн

#4 Ноя. 14, 2016 22:15:24

Iskatel
Зарегистрирован: 2015-07-29
Сообщения: 291
Репутация: +  3  -
Профиль   Отправить e-mail  

Сервер для игры (до 10 человек)

izekia
вдруг кто-то почитает

я почитаю, но завтра… Откуда ты все это находишь?

Офлайн

#5 Ноя. 14, 2016 22:18:48

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Сервер для игры (до 10 человек)

Iskatel
Откуда ты все это находишь?
конкретно по этой книжке сам изучал, когда была такая необходимость, она на самом деле неплохо написана) а остальное в гугле как правило)



Офлайн

#6 Ноя. 14, 2016 22:21:56

Iskatel
Зарегистрирован: 2015-07-29
Сообщения: 291
Репутация: +  3  -
Профиль   Отправить e-mail  

Сервер для игры (до 10 человек)

Ты странный чел, рега с восьмого года, но писать активно начал только недавно.
И при этом куча полезной инфы.
Я не знаю, что за пчела тебя в жопу укусила, но ты давай, не теряйся…

ЗЫ. лички на сайте я не нашел, сорри.

Офлайн

#7 Ноя. 14, 2016 22:31:20

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Сервер для игры (до 10 человек)

Iskatel
Ты странный чел, рега с восьмого года, но писать активно начал только недавно.И при этом куча полезной инфы.Я не знаю, что за пчела тебя в жопу укусила, но ты давай, не теряйся… ЗЫ. лички на сайте я не нашел, сорри.
ну написать email можно) я с восьмого года и не появлялся здесь, потом возник вопрос в связи с новым проектом на питоне, а когда начал искать, наткнулся на форум, нашел свои записи ну и восстановил пароль) а так объемы большие, если я отвлекаться не буду куда-то, то с ума сойду, вот так и получается.
Ладно, хватит офтопить, наверное)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version