uakfdotb / ghostpp

GHost++, the Warcraft III game hosting bot
https://www.ghostpp.com
Other
67 stars 51 forks source link

Can't found game room on game list (Use Linux and WarIII 1.28F) #33

Closed Fatorin closed 4 years ago

Fatorin commented 4 years ago

Hello, I want run ghostpp on linux, but I can't found game room on game list.

I complete the configuration and successfully connect to the server and I saw log and sure bot created room success.

I try to adjust firewall setting, but still can't see game room.

I used Ubuntu 16.04 and Warcraft III version is 1.28.5.

I used Windows can work, but I want run on linux.

Can you help me has happened and solution?

maxemann96 commented 4 years ago

Can you leave some more information, such as log output, etc ...?

uakfdotb commented 4 years ago

Also make sure all the war3version config options are set to 28, especially lan_war3version

Fatorin commented 4 years ago

ghost.log ghost.cfg.txt Thanks respond! I upload my config and log output , hope it helps.

Fatorin commented 4 years ago

I found this issue problem same with me. I follow this step, now I can see room show on game list. I'm sorry about that. Have same problem but I still post new issue. https://github.com/uakfdotb/ghostpp/issues/31

Actually I not found about with MAX_SLOT in ghostpp(this branch). And I check packet.push_back(98) in bnetprotocol.cpp, it's correct. So I modify Aura-Bot & maxemann96 version ghostpp rebuild, finally it can works.

acollazo25 commented 2 years ago

Hi @Fatorin, you were able to complete your docker-based Pvpgn Pro & Ghost++ stack. I have used your repository, but I get this error in ghost when starting a game : [UDPSOCKET] failed to broadcast packet (port 6112, size 105 bytes) Could you give me some help, do you have a working docker-compose? Thanks.

Fatorin commented 2 years ago

Hi @Fatorin, you were able to complete your docker-based Pvpgn Pro & Ghost++ stack. I have used your repository, but I get this error in ghost when starting a game : [UDPSOCKET] failed to broadcast packet (port 6112, size 105 bytes) Could you give me some help, do you have a working docker-compose? Thanks.

I only use Ghost++ by docker-compose. You can check on my Github Here

And Pvpgn Pro docker version I was follow here. Pvpgn pro docker I not use docker-compose, just use command build. I think your firewall or port setting has problem. Make sure pvpgn and ghost++ port can't same.

acollazo25 commented 2 years ago

You can check on my Github Here And Pvpgn Pro docker version I was follow here.

Yes, I use exactly those same repositories. The error described above happens when I disable the udp_dontroute = 1 routing, trying to solve another problem listed in the bnetd.log -> handle_udp_packet: [22] got unknown udp packet type 0x8730f7, len 135 from 192.168.0.3: 36408.

Make sure pvpgn and ghost++ port can't same.

I use a configuration similar to your repository for ghost.cfg using ports 6113, 6114, 6115

Below is my docker-compose.yaml, my ghost client is able to connect and join the Warcraft 3 Frozen Throne channel, the error starts when creating a new game. handle_udp_packet: [22] got unknown udp packet type 0x8730f7, len 135 from 192.168.0.3: 36408

Something is missing and I have not been able to realize it, thank you.

version: "3.7"

services:
  pvpgn:
    restart: unless-stopped
    container_name: pvpgn_server
    image: wwmoraes/pvpgn-server
    user: pvpgn
    volumes:
      - ./pvpgn/etc:/usr/local/pvpgn/etc
      - ./pvpgn/var:/usr/local/pvpgn/var
    ports:
      - 4000:4000
      - 6112:6112
      - 6200:6200

  ghostpp:
    restart: unless-stopped
    container_name: ghostpp_server
    image: fatorin/ghostpp:1.3
    ports:
      - 6113:6113
      - 6114:6114
      - 6115:6115
    volumes:
      - ./ghostpp/config:/app/config
      - ./ghostpp/maps:/app/maps
    command: ./ghost++ "./config/ghost.cfg"
Fatorin commented 2 years ago

You can check on my Github Here And Pvpgn Pro docker version I was follow here.

Yes, I use exactly those same repositories. The error described above happens when I disable the udp_dontroute = 1 routing, trying to solve another problem listed in the bnetd.log -> handle_udp_packet: [22] got unknown udp packet type 0x8730f7, len 135 from 192.168.0.3: 36408.

Make sure pvpgn and ghost++ port can't same.

I use a configuration similar to your repository for ghost.cfg using ports 6113, 6114, 6115

Below is my docker-compose.yaml, my ghost client is able to connect and join the Warcraft 3 Frozen Throne channel, the error starts when creating a new game. handle_udp_packet: [22] got unknown udp packet type 0x8730f7, len 135 from 192.168.0.3: 36408

Something is missing and I have not been able to realize it, thank you.

version: "3.7"

services:
  pvpgn:
    restart: unless-stopped
    container_name: pvpgn_server
    image: wwmoraes/pvpgn-server
    user: pvpgn
    volumes:
      - ./pvpgn/etc:/usr/local/pvpgn/etc
      - ./pvpgn/var:/usr/local/pvpgn/var
    ports:
      - 4000:4000
      - 6112:6112
      - 6200:6200

  ghostpp:
    restart: unless-stopped
    container_name: ghostpp_server
    image: fatorin/ghostpp:1.3
    ports:
      - 6113:6113
      - 6114:6114
      - 6115:6115
    volumes:
      - ./ghostpp/config:/app/config
      - ./ghostpp/maps:/app/maps
    command: ./ghost++ "./config/ghost.cfg"

1.Did you sure you have full setting config in volumes folder? 2.Did you try default for bentd.conf? If yes, it can work? 3.I notice your error message is 192.168.0.3. Can you tell me what's your computer environment.(etc. host or player, they are in same internal network?)

acollazo25 commented 2 years ago

1.Did you sure you have full setting config in volumes folder?

Yes.

2.Did you try default for bentd.conf? If yes, it can work?

Yes. Not Work.

3.I notice your error message is 192.168.0.3. Can you tell me what's your computer environment.(etc. host or player, they are in same internal network?)

Yes, they are on the same docker network and I can ping between both IPs.

PD: The IPs changed because it created again.

> docker network inspect pgpgn-server_default
[
    {
        "Name": "pgpgn-server_default",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Config": [
                {
                    "Subnet": "192.168.112.0/20",
                    "Gateway": "192.168.112.1"
                }
            ]
        },
        ...
        "Containers": {
            "e49c6ed1bad795e3ac957083e6f89380af37420906dd9ccfbf5afab4537df3f9": {
                "Name": "ghostpp_server",
                "MacAddress": "02:42:c0:a8:70:02",
                "IPv4Address": "192.168.112.2/20",
            },
            "fbcd2285bf556b0942af921a3612d14b0186b4eda83d07f1ecab6a11e68a6236": {
                "Name": "pvpgn_server",
                "MacAddress": "02:42:c0:a8:70:03",
                "IPv4Address": "192.168.112.3/20",
            }
        },
        ...
    }
]

🤔 I think it is a compatibility problem, looking at the logs. It happens after my bot account tries to create the game, being the login to the battlenet successful. Even before connecting with my client to enter the game.

After the errors appear in the bnetd.log logs, the bot disconnects.

handle_udp_packet: [22] got unknown udp packet type 0x6830f7

ghostpp_server docker service

ghostpp_server | [BNET: USEast] connecting to server [pvpgn] on port 6112
ghostpp_server | [BNET: USEast] using cached server IP address 192.168.112.3
ghostpp_server | [BNET: USEast] connected
...
ghostpp_server | [BNET: USEast] cd keys accepted
ghostpp_server | [BNET: USEast] username [bot] accepted
...
ghostpp_server | [BNET: USEast] logon successful
ghostpp_server | [BNET: USEast] joining channel [Warcraft 3 Frozen Throne]
ghostpp_server | [BNET: USEast] joined channel [Warcraft 3 Frozen Throne]
ghostpp_server | [ERROR: USEast] Hello bot, welcome to PvPGN Realm!
ghostpp_server | [INFO: USEast] Running version PvPGN 1.99.7.2.1-PRO on fbcd2285bf55.
ghostpp_server | [INFO: USEast] This server is hosted by a PvPGN user
ghostpp_server | [INFO: USEast]
ghostpp_server | [INFO: USEast] There are 2 user accounts on this server.
ghostpp_server | [INFO: USEast] There are currently 2 users in 0 games of Warcraft III Frozen Throne,
ghostpp_server | [INFO: USEast] and 2 users playing 0 games and chatting in 44 channels.
...

bnetd.log

...
Sep 10 17:04:07 [debug] _client_startgame4: [25] got startgame4 status for game "Bot #2" is 0x00000010 (gametype=0x2001 option=0x0049, flag=0x0000)
Sep 10 17:04:10 [debug] handle_udp_packet: [22] got unknown udp packet type 0x6830f7, len 104 from 192.168.112.2:34194
Sep 10 17:04:12 [debug] handle_udp_packet: [22] got unknown udp packet type 0x8730f7, len 135 from 192.168.112.2:34194
Sep 10 17:04:12 [debug] _client_startgame4: [25] got startgame4 status for game "Bot #2" is 0x00000010 (gametype=0x2001 option=0x0049, flag=0x0000)
Sep 10 17:04:15 [debug] handle_udp_packet: [22] got unknown udp packet type 0x6830f7, len 104 from 192.168.112.2:34194
Sep 10 17:04:17 [debug] handle_udp_packet: [22] got unknown udp packet type 0x8730f7, len 135 from 192.168.112.2:34194
...

Anyway, thank you very much for your time, if you still have at hand the versions of the images that you used to start or the command lines this would be great.

Fatorin commented 2 years ago

Anyway, thank you very much for your time, if you still have at hand the versions of the images that you used to start or the command lines this would be great.

I just follow docker version guide. But I not change betnd.conf for UDP setting. Maybe this UDP has bug.....

Sorry I can't help fix this issue.

acollazo25 commented 2 years ago

✔ Solved! The problem was with the routing in docker, thanks for the help.

This is my work. https://github.com/acollazo25/pvpgn-ghost-docker