Coder Social home page Coder Social logo

pyplanet / pyplanet Goto Github PK

View Code? Open in Web Editor NEW
107.0 9.0 45.0 7.2 MB

:rocket: PyPlanet is the next-gen Server Controller for ManiaPlanet (v4+) and Trackmania. Using Python3 and AsyncIO.

Home Page: http://pypla.net/

License: GNU General Public License v3.0

Makefile 0.05% Python 99.44% Shell 0.26% PowerShell 0.01% Batchfile 0.16% Dockerfile 0.09%
maniaplanet controller framework plugin-system python asyncio pyplanet

pyplanet's Introduction

PyPlanet

image

image

Documentation Status

image

image

image

image

This repo contains the PyPlanet package.

For installation, configuration and development instructions head towards our website: http://pypla.net/

Git Structure

Master is always the latest development environment. We develop features in different branches feature/* or bugfix/* appending with the issue key of GitHub.

Crafting releases is done at the release/1.1.x branches. The branch is created from the master at the moment the freeze moment goes in. Only bug fixes are accepted to be merged into the release/* or master branches (and merged into release again), name these branches bugfix/ISSUE-ID.

After releasing (from the release branch) it gets a version tag. From this point there is no way back, new bug releases will be crafted from the release branch (release/0.1.x for example).

Visualization of our current release schedule can be found here: Release Schedule

Versioning

All PyPlanet versions bellow 1.0.0 are not using semantic versioning. After 1.0.0, there is a strict semantic versioning (v2) versioning policy in use.

Contributions

Pull requests and issues are more then welcome. Please open a ticket before a pull request if you are not yet sure how to solve or want opinions before your implementation. (optional).

pyplanet's People

Contributors

dependabot[bot] avatar froznsm avatar haagsesmurf avatar jokey2k avatar josvroegindeweij avatar lel-amri avatar mujinsha avatar reaby avatar skybaks avatar syberspace avatar teemann avatar thefifthisa avatar themaximum avatar tomvlk avatar vincent-p avatar w1lla avatar ymauray avatar zerofixgiven avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pyplanet's Issues

Core: GBX File parser.

We should get ourselfs a file parser for GBX. I've already made one in NodeJS earlier, I can pickup this.
Maybe something that @TheMaximum wants to do too?

Some useful tools/modules to use:

  • Pythons build-in struct package.
  • Pythons build-in string methods (encode/decode)

Some parts are pretty hard to do, as it's using a repeated string referencing algorithm.
See: https://github.com/ManiaJS/gbxparser

As usual, it's better to create/test/optimize before inserting it inside the core.

Utils: Maniaplanet style parser/stripper

We should be able to do the following things:

  • Strip nickname to nickname without any colors and styles
  • Strip nickname from colors
  • Strip nickname from font styles.
  • Normalize (remove $> $< and that sort of stuff).
  • Formatter maybe, so we could easily format nicknames inside a string (maybe even style formatter).
    See python format for this, see: https://pyformat.info/ (new styles).

Chosing the right callbacks to abstract (chose between scripted and normal callbacks).

We should cover all things, but we need to make a choice between some of the both existing callbacks. Some callbacks are better because they contain more information, but we should be careful with too much info that we already know for example.

@TheMaximum, can you please check more about the exact information some plugins in xaseco/maniacontrol are using when using the callback endmap for example. (and others).
We should make choices asap, so we can fill the abstracted callbacks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.