GithubHelp home page GithubHelp logo

Comments (8)

rom1504 avatar rom1504 commented on May 23, 2024

from prismarine-web-client.

rom1504 avatar rom1504 commented on May 23, 2024

Looking at the code, it's mostly about doing that for pworld.
The rest is mostly about passing events per messages, and a few mineflayer functions

Putting most of the remaining state will help on this.

from prismarine-web-client.

Karang avatar Karang commented on May 23, 2024

Yes the first steps of the work are in pworld. We also need a modification of pviewer to allow this kind of data transfer:
server => bot worker => pviewer worker(s) => main thread (render thread)

Alternatively we could also do:
server => bot worker => pviewer worker(s) => bot worker => main thread

That would require less modifications put will do 1 extra transfer (shouldn't cost much as arraybuffer can be transfered instead of copied).

Reproducing the mineflayer api with messages would be painful to maintain so we have to find a way to automate this. Do you have some ideas ?

from prismarine-web-client.

Karang avatar Karang commented on May 23, 2024

That's probably not needed anymore as we fixed the issue with the network.

from prismarine-web-client.

rom1504 avatar rom1504 commented on May 23, 2024

yeah it's lower priority at least

let's let it open and we'll see if we think we need it later

from prismarine-web-client.

rom1504 avatar rom1504 commented on May 23, 2024

seems webmc does that https://github.com/michaljaz/web-minecraft/blob/threejs-javascript/src/scripts/proxy/Proxy.worker.js

maybe we should still do this issue

from prismarine-web-client.

Karang avatar Karang commented on May 23, 2024

Do we have evidences that the mineflayer bot is causing some issues ? Having it in a worker would be way less convenient for everything so i don't think we should do it unless we have to.
Btw, webmc doesn't have the fixes we have on the network, so they have to use a worker to not slow the main thread. Also its not faster than what we have, they only have a shorter render distance and less complex rendering.

from prismarine-web-client.

rom1504 avatar rom1504 commented on May 23, 2024

I do see that fps are lower at the beginning when mineflayer is highly active

I agree about convenience. If we were to do it, it should be made as convenient as currently by using js proxy (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) and some looping over all methods/attributes , so the fake bot object behaves the same as the normal one.

Until we have a solution that is as convenient as the current thing, or that we are forced to do it due to performance, let's keep things like this

from prismarine-web-client.

Related Issues (20)

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.