PodSixNet | Lightweight multiplayer network library for python games

 by   chr15m Python Version: Current License: LGPL-3.0

kandi X-RAY | PodSixNet Summary

kandi X-RAY | PodSixNet Summary

PodSixNet is a Python library. PodSixNet has no bugs, it has no vulnerabilities, it has build file available, it has a Weak Copyleft License and it has low support. You can install using 'pip install PodSixNet' or download it from GitHub, PyPI.

PodSixNet is a lightweight network layer designed to make it easy to write multiplayer games in Python. It uses Python's built in asyncore library and rencode.py (included) to asynchronously serialise network events and arbitrary data structures, and deliver them to your high level classes through simple callback methods. Each class within your game client which wants to receive network events, subclasses the ConnectionListener class and then implements Network_* methods to catch specific user-defined events from the server. You don't have to wait for buffers to fill, or check sockets for waiting data or anything like that, just do connection.Pump() once per game loop and the library will handle everything else for you, passing off events to all classes that are listening. Sending data back to the server is just as easy, using connection.Send(mydata). Likewise on the server side, events are propagated to Network_* method callbacks and data is sent back to clients with the client.Send(mydata) method. The PodSixNet mailing list is good for getting help from other users. For users of the Construct game making environment for Windows, there is a tutorial on doing multiplayer networking with PodSixNet, here. Thanks to Dave Chabo for contributing this tutorial. Here is another tutorial by Julian Meyer.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              PodSixNet has a low active ecosystem.
              It has 138 star(s) with 36 fork(s). There are 11 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 11 open issues and 18 have been closed. On average issues are closed in 108 days. There are 2 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of PodSixNet is current.

            kandi-Quality Quality

              PodSixNet has no bugs reported.

            kandi-Security Security

              PodSixNet has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              PodSixNet is licensed under the LGPL-3.0 License. This license is Weak Copyleft.
              Weak Copyleft licenses have some restrictions, but you can use them in commercial projects.

            kandi-Reuse Reuse

              PodSixNet releases are not available. You will need to build from source code and install.
              Deployable package is available in PyPI.
              Build file is available. You can build the component from source.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi has reviewed PodSixNet and discovered the below as its top functions. This is intended to give you an instant insight into PodSixNet implemented functionality, and help decide if they suit your requirements.
            • Test the key pair
            • Serializes x to bytes
            • Deserialize a string
            • Encode an integer
            • Encode a dictionary
            • Create a decoders for fixed - length decoding
            • Create a decoder for fixed - length decoders
            • Make a list of decoders
            • Encode a list
            • Make a decoders for fixed - length strings
            • Encode a tuple
            • Handle an error
            • Make a decoder for fixed - length integers
            • Main loop
            • Event handler
            • Draws linesets
            • Called when the IO buffer is found
            • Launches the pump
            • Delete player from player
            • Connect to the server
            • Connect to the channel
            • Delete Player
            Get all kandi verified functions for this library.

            PodSixNet Key Features

            No Key Features are available at this moment for PodSixNet.

            PodSixNet Examples and Code Snippets

            No Code Snippets are available at this moment for PodSixNet.

            Community Discussions

            QUESTION

            Calculate X and Y velocity to hit the target on flat 2d surface in pygame
            Asked 2019-Mar-05 at 20:28

            I am creating a game using Python and Pygame.

            I have used this function before using JS with p5.js and Java with libwjgl, but for some reason, it does not work with Pygame.

            I'm trying to hit a static target shot from a moving object. Now I'm missing the target. You can see it in the gif. Every projectile should hit the target (now everything misses, but shots in the right direction)

            The bullet is fired once player clicks mouse button.

            This is how I am doing this:

            ...

            ANSWER

            Answered 2019-Mar-05 at 19:35

            self.bullet is a pygame.Rect object. The position of the bullet is tracked by the position of the rectangle (self.bullet.x, self.bullet.y). Since the rectangle position is integral this causes an inaccuracy each time when the position is updated.

            Use floating point data to keep track of the position. Use c.

            Store the position of the bullet and the velocity to a pygame.math.Vector2 object.

            Source https://stackoverflow.com/questions/55008954

            QUESTION

            I can't install PodSixNet on python 3 (i get NameError)
            Asked 2018-May-09 at 10:38

            I'm trying to install PodSixNet on python 3 so i opened the command prompt and typed

            ...

            ANSWER

            Answered 2018-May-05 at 14:33

            execfile was a builtin function in Python 2, removed in Python 3. Obviously the package is intended for Python 2 only.

            Source https://stackoverflow.com/questions/50184834

            QUESTION

            Can't manage to run 2-player Python game
            Asked 2017-Jun-16 at 13:55

            I tried to do game(actually at least to run it on my computer) that I saw in one tutorial. Unfortunately, their forum is not frequently visited, so maybe here I can found the solution.

            But when I try to run it on different computers, which are connected to one Wi-fi, client on the second computer(local server is on the first) doesn't find server: I do this way:

            ...

            ANSWER

            Answered 2017-May-10 at 11:31

            After investigationg with you in the comments, it's clear now that your server is running on the local loopback (i.e. 127.0.0.1), therefore you can't access it from another interface (e.g. [IPv4]).

            When you run server, you should set it to 0.0.0.0:8000 (which means all interfaces, port 8000) instead of localhost:8000.

            Source https://stackoverflow.com/questions/43885930

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install PodSixNet

            You will need to subclass two classes in order to make your own server. Each time a client connects, a new Channel based class will be created, so you should subclass Channel to make your own server-representation-of-a-client class like this:.
            To have a client connect to your new server, you should use the Connection module. See pydoc Connection for more details, but here's a summary:. Connection.connection is a singleton Channel which connects to the server. You'll only have one of these in your game code, and you'll use it to connect to the server and send messages to the server.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/chr15m/PodSixNet.git

          • CLI

            gh repo clone chr15m/PodSixNet

          • sshUrl

            git@github.com:chr15m/PodSixNet.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link