Homebrew Save Nintendo WiFi - A project to save online servers for DS (and Wii) games

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,861
Country
Germany
Well, the script now finds the correct server, but then throws an exception:

Code:
[2014-04-13 19:30:07 | GameSpyServerBrowserServer] find_server_by_address returned: None
Unhandled Error
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 88, in callWithLogger
    return callWithContext({"system": lp}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 73, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 118, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 81, in callWithContext
    return func(*args,**kw)
--- <exception caught here> ---
  File "/usr/lib/python2.7/dist-packages/twisted/internet/posixbase.py", line 614, in _doReadOrWrite
    why = selectable.doRead()
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 215, in doRead
    return self._dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 221, in _dataReceived
    rval = self.protocol.dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 588, in dataReceived
    why = self.rawDataReceived(data)
  File "/home/florian/mkw-ana/serverabschaltung/n_dwc_emu/gamespy_server_browser_server.py", line 120, in rawDataReceived
    logger.log(logging.DEBUG, "%s %s" % (ip, server['publicip']))
exceptions.TypeError: 'NoneType' object has no attribute '__getitem__'
 

Attachments

  • dump.zip
    15.5 KB · Views: 141

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,861
Country
Germany
Now this bug is gone but there is another:

Sometimes there is "1 server matched", sometimes "0 servers matched". The two games don't connect...

Also, the servers get removed always: There is an entry "Deleted 1 mariokartwii servers where session = 123456789" and one line later this server is added again. Maybe there is any timeout which is to low for mkwii?
 

Attachments

  • dump.zip
    19 KB · Views: 146

Toad King

Well-Known Member
OP
Member
Joined
Aug 19, 2009
Messages
374
Trophies
0
XP
546
Country
United States
I forgot to add the master server for tetrisds when testing that. I added that and I still get the error. I didn't add the gamestats server because it seems to work fine while using the official ones for now.

Another log with master server fixed.

EDIT: Tested with the gamestats server redirected, same error.
 

Attachments

  • test_data.zip
    15.6 KB · Views: 141

Toad King

Well-Known Member
OP
Member
Joined
Aug 19, 2009
Messages
374
Trophies
0
XP
546
Country
United States
It looks like the friend trying to join is sending the packets properly but the hosting server just isn't getting the packets. Would you mind if I tried to use matchmaking or do a friend match with you on your server? I'm curious if it's another case of 2 players on the same network are having trouble connection.
Sure, send me a message and we can set one up.

I've tried it with the official servers and a connection could be made fine. It could be the right ports aren't being allowed on my server.
 

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,861
Country
Germany
I tried it on a local computer and on your server, but I was unable to find the other client. It seems that there is another endian problem.

EDIT: OK, You were faster. I'll try again on your server.
EDIT 2: Now I get disconnected while searching.
 

Attachments

  • dump.zip
    25 KB · Views: 139

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,861
Country
Germany
I tried it again, and again I do not find the other Wii and get disconnected with error code 85010 after one or two minutes of searching :(

Do you need me to upload the network dump or can you see this on your server?
 

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,861
Country
Germany
I tried it and it works now!

Maybe this problem is caused by Dolphin, but I'm unable to test with two real Wiis.

Which one detects as Wii and which not? 10.0.1.226 is the Wii and 10.0.1.104 is Dolphin.
 

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,861
Country
Germany
Well, don't you have the "console"-flag in your database? So why don't you use this database flag instead of an own variable that only gets set in find_server?

I'm going to try a friend race. Maybe this works now, too.
EDIT: Nope, it does not. You can register a friend but the server doesn't send a response, so your friend stays "unknown".
 

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,861
Country
Germany
Well, the client sends a question to the server containing the database name - for MKWii its "mariokartwii". This is the data transmitted at the beginning of the SQL query. So you can simply make a list with all wii game's name strings and all DS game strings, and you can decide if this question came from a DS or from a Wii.

Or am I wrong?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    T @ Texasauras: SOLILOQUY