npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@ud-viz/game_node

v4.6.0

Published

Game library interpretable in a nodejs environment

Downloads

69

Readme

@ud-viz/game_node

NPM package version

Game library interpretable in a nodejs environment. Before to start you should read @ud-viz/game_shared and @ud-viz/game_browser.

Overview

@ud-viz/game_node package allows to create a backend SocketService working with socket.io to communicate with clients implement with @ud-viz/game_browser. SocketService takes an array of Object3D and will instanciated a thread for each of them with worker_threads where Object3D is running. Then it handles websocket communication with threads.

flowchart TB
subgraph client_1
ExternalContext_1
end

subgraph client_n
ExternalContext_n
end

subgraph backend
subgraph SocketService
thread_Parent_1
thread_Parent_m
end
subgraph thread_Child_1
Object3D_1
end
subgraph thread_Child_m
Object3D_m
end
end

ExternalContext_1-->|websocket Command|SocketService
ExternalContext_n-->|websocket Command|SocketService
SocketService-->|websocket State|ExternalContext_1
SocketService-->|websocket State|ExternalContext_n

thread_Parent_1-->|message|thread_Child_1
thread_Child_1-->|State|thread_Parent_1
thread_Parent_m-->|message|thread_Child_m
thread_Child_m-->|State|thread_Parent_m

Installation

  • You can install @ud-viz/game_node via npm:
npm install @ud-viz/game_node

 Example

Parent entry

const { SocketService } = require('@ud-viz/game_node');
const { Object3D } = require('@ud-viz/game_shared');

const socketService = new SocketService(httpServer);
socketService.loadGameThreads(
  [new Object3D({ name: 'game_1' }), new Object3D({ name: 'game_2' })],
  './path/to/your/thread/child/entry.js'
);

You can find an implementation here

Child entry

const { thread } = require('@ud-viz/game_node');

const child = new thread.Child();
child.start([scriptsOfYourGames]);

You can find an implementation here

Documentation

Online Documentation

Contributing

Contributions are welcome! Feel free to submit bug reports, feature requests, or pull requests on the GitHub repository. See Contributing.md.

License

This package is licensed under the GNU Lesser General Public License Version 2.1, with copyright attributed to the University of Lyon.

Credits

@ud-viz/game_node is developed and maintained by VCityTeam. See Contributors.md.