Ballance Massive Multiplayer Online

来自Ballance Wiki
跳转至: 导航搜索
Chinese version / 中文版: Ballance大型多人在线游戏
This page is served for BMMO system, not BallanceMMOClient and its usages.
Ballance Massive Multiplayer Online
Bmmo.png
The multiplay game window implemented by BallanceMMO system.
Basic Infomation
Author Swung0x48, BallanceBug
Suitable for Ballance
Dependency The Latest BML2 or BMLPlus
Release Date 19 Apr, 2021 (2 years, 11 months ago)
Final Version N/A
Project Link GitHub Repository, Publish Website
Development Status In active development
License
  • v1:Apache License
  • v2 and v3:Unknown License

This is a brand-new, groundbreaking system. This system revives Ballance community.
——yyc12345

Ballance Massive Multiplayer Online(abbr, BMMO) is a groundbreaking system created by Swung0x48 and maintained by BallanceBug. It allows a player to play Ballance with other players with low latency via a deployed central BMMO server. The ball of other players will be rendered as a shadow ball (transparent ball) in the game, and a player name label will also be attached to it. Moreover, real-time chat, detecting cheat status (cheat mode on or off) are also available. BMMO is stable enough and has been used for Chinese Ballance Community Tournaments and BallFighters' competitions.

Components

Ballance Massive Multiplayer Online consists of two parts. First is a plugin based on BML2. Another part is the server which takes responsibility for game context.

BallanceMMOClient

BallanceMMOClient is the client side plugin for end players. The BML framework is required to load this mod. Before connecting to a server and starting to play online, the user must set up a few parameters, such as the server URL.

BallanceMMOServer

BallanceMMOServer is the core server of this system. Since BMMO is opensource, it's possible to set up your own server. This is usually unnecessary for a normal player. Instructions for setting up a server is available in the linked page for those who need them.

History

There are 3 major changes in BMMO history, according to its GitHub commit history.
V1 is based on TCP connection. Some basic message structures are established in this version and the plugin has been tested in production environment a few times. But the biggest problem is the quality of connection will significantly drop if the client is in a bad network environments. This is unacceptable in some cases.
V2 use a custom transfer protocol developed by Swung0x48. But this version was phased out quickly as well.
V3 is the current version and widely adopted by the Ballance multiplayer community. It still in active development. This version use Valve's GameNetworkingSockets as its network library. This version of BMMO is highly regarded, thanks to its low latency powered by GameNetworkingSockets. The quality of connection is acceptable even if players online are scattered in the globe.