Exemple #1
0
def main():
    OPTIONS, argv = getOptions('mmolite/config/servers.cfg', 'world server',
                               sys.argv)

    if OPTIONS.username == "-": OPTIONS.username = raw_input("Username: "******"-": OPTIONS.password = raw_input("Password: "******"Setting up World Server..."

        dbconn.resetDB()
        print "Successfully"
        return
    else:
        print "Initialize World Server database..."
        dbconn.startDB()
        Clients.dropTable(ifExists=True)
        Clients.createTable()

        print "Run TGE dedicated server"
        argv.extend([
            '-dedicated', '-game', 'test.mmo', '-mission',
            'test.mmo/data/missions/chatspot.mis'
        ])
        pytorque.initialize(len(argv), argv)

        print "World server connecting to master server: ip[%s] port[%d]" % (
            OPTIONS.master_ip, OPTIONS.master_port)

        creds = credentials.UsernamePassword(OPTIONS.username,
                                             OPTIONS.password)
        world = WorldServer(OPTIONS.master_ip, OPTIONS.master_port,
                            OPTIONS.world_port, PeerType.World, creds,
                            WorldPortal())
        world.run()
        #reactor.run()
        reactor.startRunning()

        #the main loop is broken out and can be combined with other frameworks rather easily
        while pytorque.tick():
            reactorTick()

        #cleanup pytorque.. goodbye!
        pytorque.shutdown()
Exemple #2
0
def main():
    global clientObj
    global userObj
    Running = False
    OPTIONS, argv = getOptions('mmolite/config/client.cfg', 'client', sys.argv)

    print "MMO test client initializing torque client"
    if '-game' not in argv:
        argv.extend(['-game', 'test.mmo'])
    pytorque.initialize(len(argv), argv)

    print "MMO test client connecting to: ip[%s] port[%d]" % (
        OPTIONS.master_ip, OPTIONS.master_port)
    clientObj = PbAuthClient()
    clientObj.login("Client", "tneilc", OPTIONS.master_ip, OPTIONS.master_port)
    userObj = PbAuthUser()

    # get torque object
    loginButton = TorqueObject("LoginButton")
    signupButton = TorqueObject("SignupButton")
    # set torque object's attribute
    loginButton.Command = 'LoginButton.OnButton("%s", %s);' % (
        OPTIONS.master_ip, OPTIONS.master_port)
    signupButton.Command = 'SignupButton.OnButton("%s", %s);' % (
        OPTIONS.master_ip, OPTIONS.master_port)
    # map python function to torque action
    pytorque.export(OnLoginPressed, "LoginButton", "OnButton",
                    "Login button command", 2, 2)
    pytorque.export(OnSignupPressed, "SignupButton", "OnButton",
                    "Signup button command", 2, 2)
    # call torque object method
    loginButton.setActive(0)
    signupButton.setActive(0)

    print "MMO test client running"
    reactor.startRunning()

    #the main loop is broken out and can be combined with other frameworks rather easily
    while pytorque.tick():
        reactorTick()

    #cleanup pytorque.. goodbye!
    pytorque.shutdown()

    print "MMO test client quit"
def main():
    global clientObj
    global userObj
    Running = False
    OPTIONS, argv = getOptions('mmolite/config/client.cfg', 'client', sys.argv)

    print "MMO test client initializing torque client"
    if '-game' not in argv:
        argv.extend(['-game', 'test.mmo'])
    pytorque.initialize(len(argv),argv)
    
    print "MMO test client connecting to: ip[%s] port[%d]"%(OPTIONS.master_ip, OPTIONS.master_port)
    clientObj = PbAuthClient()
    clientObj.login("Client", "tneilc", OPTIONS.master_ip, OPTIONS.master_port)
    userObj = PbAuthUser()
    
    # get torque object
    loginButton = TorqueObject("LoginButton")
    signupButton = TorqueObject("SignupButton")
    # set torque object's attribute
    loginButton.Command = 'LoginButton.OnButton("%s", %s);'%(OPTIONS.master_ip, OPTIONS.master_port)
    signupButton.Command = 'SignupButton.OnButton("%s", %s);'%(OPTIONS.master_ip, OPTIONS.master_port)
    # map python function to torque action
    pytorque.export(OnLoginPressed,"LoginButton","OnButton","Login button command",2,2)
    pytorque.export(OnSignupPressed,"SignupButton","OnButton","Signup button command",2,2)
    # call torque object method
    loginButton.setActive(0)
    signupButton.setActive(0)
    
    print "MMO test client running"
    reactor.startRunning()

    #the main loop is broken out and can be combined with other frameworks rather easily
    while pytorque.tick():
        reactorTick()

    #cleanup pytorque.. goodbye!
    pytorque.shutdown()
    
    print "MMO test client quit"
Exemple #4
0
def main():
    OPTIONS, argv = getOptions('mmolite/config/servers.cfg', 'world server', sys.argv)
    
    if OPTIONS.username=="-": OPTIONS.username = raw_input("Username: "******"-": OPTIONS.password = raw_input("Password: "******"Setting up World Server..."
        
        dbconn.resetDB()
        print "Successfully"
        return
    else: 
        print "Initialize World Server database..."
        dbconn.startDB()
        Clients.dropTable(ifExists=True); Clients.createTable()
        
        print "Run TGE dedicated server"
        argv.extend(['-dedicated', '-game', 'test.mmo', '-mission', 'test.mmo/data/missions/chatspot.mis'])
        pytorque.initialize(len(argv),argv)

        print "World server connecting to master server: ip[%s] port[%d]"%(OPTIONS.master_ip, OPTIONS.master_port)
        
        creds = credentials.UsernamePassword(OPTIONS.username, OPTIONS.password)
        world = WorldServer(OPTIONS.master_ip, OPTIONS.master_port, OPTIONS.world_port, PeerType.World, creds, WorldPortal())
        world.run()
        #reactor.run()
        reactor.startRunning()

        #the main loop is broken out and can be combined with other frameworks rather easily
        while pytorque.tick():
            reactorTick()

        #cleanup pytorque.. goodbye!
        pytorque.shutdown()
Exemple #5
0
#buttons are kind of worthless without commands.  Let's make one:
def OnMyButton(value):
    print "Button pushed with value",value
    
#export the function to the console system in much the same way the C++ system does...
#we also support optional namespaces, usage documentation, and min/max args
pytorque.export(OnMyButton,"MyButton","OnButton","Example button command",1,1)

#we can get and set fields (including dynamic fields).  We'll set our button's command:
button.command = "MyButton::OnButton(42);"

#we can call console methods on our TorqueObjects... So, let's simulate a button click.
#the OnMyButton function will be called with the value 42 :)
button.performClick()

#note that getting an object reference to the button and setting the command like this is 
#purely for illustration. You can also: command = "MyButton::OnButton(42);" in the evaluated code.

#moving on, we can get and set global variables
pytorque.setglobal("$MyVariable",42)
print pytorque.getglobal("$MyVariable")
pytorque.evaluate('echo ("*** Here is your variable:" @ $MyVariable);')

#the main loop is broken out and can be combined with other frameworks rather easily
while pytorque.tick():
    pass

#cleanup pytorque.. goodbye!
pytorque.shutdown()