Windows Client Installation

Problems, questions, anything else related to the MV3D client.

Moderator: SirGolan

Re: Client Installation

Postby SirGolan » Tue Apr 01, 2008 3:28 pm

I just checked out the server logs to find out what happened. I think there may be a bug in the timezone handling code of the login process. I've never tested it from another timezone before, and unless the time on your computer is way off, it's apparently got a bug. As part of the login process, the client sends an encrypted token it generates which includes the time to the server. The server validates that the time is within a few minutes of being correct to ensure that no one stole your token and is trying to reuse it. Anyway, something's up with that.

It's also possible that your timezone is off, or python is somehow getting the wrong timezone on Vista. If you have a second, try this in python:

Code: Select all
mike@nighteyes:~/Projects/MV3D/branches/version-0.3$ python
Python 2.4.4 (#2, Apr  5 2007, 20:11:18)
Type "help", "copyright", "credits" or "license" for more information.
>>> from time import timezone
>>> timezone
18000


Just let me know what the value is, and if it corresponds to your actual (hours_from_UTC) * -60.
SirGolan
Site Admin
 
Posts: 214
Joined: Wed Mar 19, 2008 7:04 pm

Re: Client Installation

Postby multiverseuser » Tue Apr 01, 2008 3:53 pm

Hello,

Here is my timing information.

C:\Users\Home>python
Python 2.5.2 (r252:60911, Feb 21 2008, 13:11:45) [MSC v.1310 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from time import timezone
>>> timezone
28800
>>>
^C
C:\Users\Home>time
The current time is: 8:43:39.65

C:\Users\Home>date
The current date is: Tue 04/01/2008

I'm also using python 2.5

Thanks,
multiverseuser
 
Posts: 103
Joined: Sun Mar 30, 2008 4:29 pm

Re: Client Installation

Postby multiverseuser » Tue Apr 01, 2008 4:10 pm

Do I need pyTime?

I was reading how to configure twisted and I noticed there was a python timezone.

Well... I tried it but I get the same number.
multiverseuser
 
Posts: 103
Joined: Sun Mar 30, 2008 4:29 pm

Re: Client Installation

Postby multiverseuser » Tue Apr 01, 2008 4:11 pm

Actually is pyTZ not pyTime, Sorry
multiverseuser
 
Posts: 103
Joined: Sun Mar 30, 2008 4:29 pm

Re: Client Installation

Postby SirGolan » Tue Apr 01, 2008 4:39 pm

I just removed the time check from the server, so with any luck, you should be able to connect now. I looked at the code, and I think I misunderstood how time.timezone deals with daylight savings time.

Mike
SirGolan
Site Admin
 
Posts: 214
Joined: Wed Mar 19, 2008 7:04 pm

Re: Client Installation

Postby multiverseuser » Tue Apr 01, 2008 10:36 pm

hello,

I do not get the login windows anymore but I get the following error
I think is missing a module call caelum.


C:\multiverse3d>RunClient.py
server MV3D Client initialization successful.
Import Failed!
['C:\\multiverse3d',
'C:\\Windows\\system32\\python25.zip',
'C:\\Python25\\DLLs',
'C:\\Python25\\lib',
'C:\\Python25\\lib\\plat-win',
'C:\\Python25\\lib\\lib-tk',
'C:\\Python25',
'C:\\Python25\\lib\\site-packages',
'C:\\Python25\\lib\\site-packages\\PIL',
'C:\\Python25\\lib\\site-packages\\win32',
'C:\\Python25\\lib\\site-packages\\win32\\lib',
'C:\\Python25\\lib\\site-packages\\Pythonwin',
'C:\\Python25\\lib\\site-packages\\wx-2.8-msw-ansi', 'Extern']
module= mv3d.client.view.realm class= odeRealmViewClient
Unhandled error in Deferred:
Traceback (most recent call last):
--- <exception caught here> ---
File "c:\python25\lib\site-packages\twisted\internet\defer.py", line 105, in maybeDeferred
result = f(*args, **kw)
File "C:\multiverse3d\mv3d\util\classgen.py", line 252, in readyJellyFor
r = self.getConstructor()
File "C:\multiverse3d\mv3d\util\classgen.py", line 198, in getConstructor
return self.getConstructor_construct()
File "C:\multiverse3d\mv3d\util\classgen.py", line 238, in getConstructor_construct raise
File "C:\multiverse3d\mv3d\util\classgen.py", line 233, in getConstructor_construct
locals(), [self.classname])
File "C:\multiverse3d\mv3d\client\view\realm.py", line 9, in <module>
import ogre.addons.caelum as caelum
exceptions.ImportError: No module named caelum
Traceback (most recent call last):
Failure: twisted.internet.defer.FirstError: FirstError(<twisted.python.failure.Failure <type 'exceptions.ImportError'>>, 0)
Import Failed!
['C:\\multiverse3d',
'C:\\Windows\\system32\\python25.zip',
'C:\\Python25\\DLLs',
'C:\\Python25\\lib',
'C:\\Python25\\lib\\plat-win',
'C:\\Python25\\lib\\lib-tk',
'C:\\Python25',
'C:\\Python25\\lib\\site-packages',
'C:\\Python25\\lib\\site-packages\\PIL',
'C:\\Python25\\lib\\site-packages\\win32',
'C:\\Python25\\lib\\site-packages\\win32\\lib',
'C:\\Python25\\lib\\site-packages\\Pythonwin',
'C:\\Python25\\lib\\site-packages\\wx-2.8-msw-ansi', 'Extern']
module= mv3d.client.view.realm class= Ogre3DBasicSkyView
Unhandled error in Deferred:
Traceback (most recent call last):
--- <exception caught here> ---
File "c:\python25\lib\site-packages\twisted\internet\defer.py", line 105, in maybeDeferred
result = f(*args, **kw)
File "C:\multiverse3d\mv3d\util\classgen.py", line 252, in readyJellyFor
r = self.getConstructor()
File "C:\multiverse3d\mv3d\util\classgen.py", line 198, in getConstructor
return self.getConstructor_construct()
File "C:\multiverse3d\mv3d\util\classgen.py", line 238, in getConstructor_construct raise
File "C:\multiverse3d\mv3d\util\classgen.py", line 233, in getConstructor_construct
locals(), [self.classname])
File "C:\multiverse3d\mv3d\client\view\realm.py", line 9, in <module>
import ogre.addons.caelum as caelum
exceptions.ImportError: No module named caelum
Traceback (most recent call last):
Failure: twisted.internet.defer.FirstError: FirstError(<twisted.python.failure.Failure <type 'exceptions.ImportError'>>, 0)
Traceback (most recent call last):
--- <exception caught here> ---
File "C:\Python25\lib\site-packages\twisted\internet\selectreactor.py", line 146, in _doReadOrWrite
why = getattr(selectable, method)()
File "c:\python25\lib\site-packages\twisted\internet\tcp.py", line 362, in doRead
return self.protocol.dataReceived(data)
File "C:\Python25\lib\site-packages\twisted\spread\banana.py", line 216, in dataReceived
gotItem(item)
File "C:\Python25\lib\site-packages\twisted\spread\banana.py", line 146, in gotItem
self.callExpressionReceived(item)
File "C:\Python25\lib\site-packages\twisted\spread\banana.py", line 111, in callExpressionReceived
self.expressionReceived(obj)
File "C:\Python25\lib\site-packages\twisted\spread\pb.py", line 523, in expressionReceived
method(*sexp[1:])
File "C:\Python25\lib\site-packages\twisted\spread\pb.py", line 892, in proto_answer
d.callback(self.unserialize(netResult))
File "C:\Python25\lib\site-packages\twisted\spread\pb.py", line 784, in unserialize
return unjelly(sexp, self.security, None, self)
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 1136, in unjelly
return _Unjellier(taster, persistentLoad, invoker).unjellyFull(sexp)
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 633, in unjellyFull
o = self.unjelly(obj)
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 670, in unjelly
ret = thunk(obj[1:])
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 795, in _unjelly_list
self.unjellyInto(l, elem, lst[elem])
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 748, in unjellyInto
o = self.unjelly(jel)
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 657, in unjelly
val = method(self, obj)
File "C:\Python25\lib\site-packages\twisted\spread\flavors.py", line 456, in unjellyFor
cProxy.setCopyableState(unjellier.unjelly(jellyList[2]))
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 670, in unjelly
ret = thunk(obj[1:])
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 849, in _unjelly_dictionary
self.unjellyInto(kvd, 1, v)
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 748, in unjellyInto
o = self.unjelly(jel)
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 670, in unjelly
ret = thunk(obj[1:])
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 849, in _unjelly_dictionary
self.unjellyInto(kvd, 1, v)
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 748, in unjellyInto
o = self.unjelly(jel)
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 670, in unjelly
ret = thunk(obj[1:])
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 768, in _unjelly_reference
o = self.unjelly(exp)
File "C:\Python25\lib\site-packages\twisted\spread\jelly.py", line 676, in unjelly
"Module %s not allowed (in type %s)." % (modName, jelType))
twisted.spread.jelly.InsecureJelly: Module mv3d.server.model.realm not allowed (
in type mv3d.server.model.realm.odeRealmView).
multiverseuser
 
Posts: 103
Joined: Sun Mar 30, 2008 4:29 pm

Re: Client Installation

Postby SirGolan » Wed Apr 02, 2008 12:09 am

Oh, I think that you may need to get the updated Python-Ogre 1.1 from here: http://downloads.sourceforge.net/python ... g_mirror=0

I keep forgetting that the base 1.1 release didn't include that library.
SirGolan
Site Admin
 
Posts: 214
Joined: Wed Mar 19, 2008 7:04 pm

Re: Client Installation

Postby multiverseuser » Wed Apr 02, 2008 1:09 am

Hello,

Yes, finally I was able to login successfully

I installed the package PythonOgre_1.1.b.exe by doing

Code: Select all
c:\download>python setup.py install


I figured this EXE patched my current version of python-ogre.
So I run Runclient.py

Thanks for all your help.

I have a few more questions but I will create another topic
multiverseuser
 
Posts: 103
Joined: Sun Mar 30, 2008 4:29 pm

Re: Client Installation

Postby multiverseuser » Thu Apr 03, 2008 11:14 pm

[original post deleted]

Client Installation (Windows)
I edited out all the instructions found here is favor of the wiki page.
Last edited by multiverseuser on Sun Apr 06, 2008 4:45 pm, edited 2 times in total.
multiverseuser
 
Posts: 103
Joined: Sun Mar 30, 2008 4:29 pm

Re: Client Installation

Postby SirGolan » Thu Apr 03, 2008 11:46 pm

Wow, that's a great writeup! Mind if I put it in the readme.txt files?

The Python-Ogre guys had some ideas as to how to make the install easier over on this thread. I'm going to see if I can get those working.

Definitely, the best option for installing (for non developers) is py2exe since it wouldn't require all the prereqs, but as I mentioned in that thread, I haven't gotten it working yet.
SirGolan
Site Admin
 
Posts: 214
Joined: Wed Mar 19, 2008 7:04 pm

PreviousNext

Return to Client Software

Who is online

Users browsing this forum: No registered users and 1 guest

cron