{"repo":"zpl-c/librg","free":true,"listed":false,"github":"https://github.com/zpl-c/librg","clone":"git clone https://github.com/zpl-c/librg.git","description":"🚀 Making multi-player gamedev simpler since 2017","language":"C","stars":1494,"topics":["zpl","enet","networking","gamedev","library","header-only","multiplayer","sync","lightweight","low-level"],"license":"BSD-3-Clause","category":"game-templates","readme_excerpt":"Making multi-player game dev simpler since 2017. Single-header cross-platform world replication in pure C99. Built with love using zpl &bull; Brought to you by @inlife , @zpl-zak and other contributors Introduction librg is a lightweight library that serves as a middleware between data-transferring libraries (networking, file-streaming, etc.) and core application/game logic. The main responsibilities of the library include: entity tracking (tracks which entity belongs to what world and what states they have) owner tracking (tracks which participant owns what entity) Area of interest management (controls what can and cannot be seen by a participant) world replication (re-creates a limited representation in a destination world of what is considered visible to a participant in the source world) The library was born to solve the complexities of setting up and managing the flow of multi-player games and dedicated game servers. It came a long way in stripping out things that were non-essential, slowly sculpting into its current form, which you are able to see and use today. Why you need it Without librg Usually, the networked game world consists of a set of networked players and a bunch of networked entities. The typical variant of setting up the synchronization relations between entities and players is to set up Everything-to-Everyone connections. This is the most basic setup to follow. However, with an increasing amount of entities, it becomes rather bandwidth-inefficient. With l","default_branch":null,"files":null,"tree":[],"storefront":"/r/zpl-c","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/zpl-c/librg/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}