Git Product home page Git Product logo

pmmp-optimizations's Introduction

AGTHARN's Optimization Methods

Hits

This document includes arguable ways to optimize PocketMine-MP (PMMP) gathered from my research and experiments.

I wanted to share this document with the community so that you could have a better understanding of why your server might occasionally be sluggish. You might have some unfavorable remarks, but I've categorized all of my findings separately.

The majority of these methods are ones I advise against utilizing, but I've included them nonetheless so as to be thorough.

⚠️ You should be cautious when using these methods for production purposes. All of these methods will cause some sort of a problem for your server. Even if you used these methods, you MUST accept all the consequences involved! Overall, all these methods are entirely arguable. ⚠️

Why would I want to spend time on such experiments?

I personally have run a PocketMine-MP (PMMP) server, and I've been dealing with the same problem since the server's inception - lag brought on by high player counts rendering PMMP servers virtually unplayable. This is especially visible for servers that have a lot of worlds loaded, and players constantly loading chunks and triggering events.

Many individuals have frequently used the argument that the problem is with the server's plugins or that PMMP is single-threaded. That's not entirely true, but it's definitely comparable.

One day, I pondered how much I could adjust the mechanics of PMMP in order to push it as far as it could go. The experiments I have produced offer favorable performance enhancements but may have unintended consequences.

🌟 Table of Contents

Type Description
🟢 Reliable Methods Methods that should be safe as long as you have an idea of what you're doing
🟡 Somewhat Reliable Methods Methods that can be arguable at times and may require you to fix even more problems
🔴 Unreliable Methods Methods that are entirely questionable and will definitely break mechanics in your server
🏳️ A Last Resort If PMMP just doesn't work out for performance
❓ Frequently Asked Questions Questions that you may have on this document

💡 Timings

The Average Players shown in the images below are incorrect due to problems on my end. If you do think that the results are skewed, if necessary, you may perform your own computations after trying out some of the optimization methods. The number of players is equivalent to the number of worlds loaded. ❗

Before Modifications
before
After Modifications
after

Writer's Note: The modifications I've listed are ones that a skilled developer could do with ease. Since they are not the finest, I do not intend to release a fork of these modifications. However, I'd like to see somebody else give it a go.

pmmp-optimizations's People

Contributors

agtharn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

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.