“BallanceMMOClient”的版本间的差异

来自Ballance Wiki
跳转至: 导航搜索
(move some content to BMMO)
第2行: 第2行:
  
 
{{Seealso|Main Page: [[Ballance Massive Multiplayer Online]]}}
 
{{Seealso|Main Page: [[Ballance Massive Multiplayer Online]]}}
 +
 +
{{ambox|type=content
 +
|issue='''Encoding Warning'''
 +
|info=Due to the limitation of Ballance. Any non-ASCII character is not allowed in BallanceMMOClient, from server URL, username to message content. It means that you should not use any Chinese character, Katakana, Hiragana, Korea character, Cyrillic, Greek character and etc.<br />
 +
However, in some of commands introduced in following content, this restriction will be removed. Please pay an attention to it.}}
  
 
== Download ==
 
== Download ==
  
 +
* Download from [https://dl.bmmo.ml/ Publish Website]. Click "Download Standalone Package" to download. (Suggested)
 
* Join Multi-play QQ Group, and download from QQ Group Files.
 
* Join Multi-play QQ Group, and download from QQ Group Files.
 
* Join Ballance Discord Server.
 
* Join Ballance Discord Server.
* Download from the Release page of GitHub repository.(Not suggested because publish is not in time.)
+
* Download from the Release page of [https://github.com/Swung0x48/BallanceMMO GitHub repository].(Not suggested because publish is not in time.)
 
* Download project and build by yourself.(Not suggested because building this plugin is harder than imagine.)
 
* Download project and build by yourself.(Not suggested because building this plugin is harder than imagine.)
  
 
Please read the requirement of server which you want to join and download correct version. '''In most instances, downloading the latest version is the best decision.''' Server will reject the connection of obsolete client after some updates.
 
Please read the requirement of server which you want to join and download correct version. '''In most instances, downloading the latest version is the best decision.''' Server will reject the connection of obsolete client after some updates.
 +
 +
== Client Settings ==
 +
 +
After installation, there are 2 way to configure your BallanceMMOClient settings<br />
 +
First, you can enter BallanceMMOClient entry in BML Mods menu, then use its submenu to set the settings what you want set. If your settings is too long or contain complex words, you can use the next method instead.<br />
 +
Method 2, Close game, navigate to {{code|ModLoader/Config/BallanceMMOClient.cfg}} and open it. Now, you can change all settings directly.
 +
 +
=== Core Settings ===
 +
 +
Server URL and player name are 2 essential settings for this plugin. You should fill them before any multiplayer game.
 +
 +
Player name setting locate in Player - Playername. Please choose a clear name. By the way, BMMO server will check your given name and remove all invalid characters, so the name adopted by the server may not exactly same with your set name.
 +
 +
Server URL setting locate in Remote - ServerAddress. You must set your server URL correctly, and stay in the same server with your friends/competitors, otherwise you can not do a normal multiplayer game. If the port of this field is omitted, the plugin will connect to the default port {{code|26676}}.
 +
 +
=== Other Settings ===
 +
 +
Spectator Mode setting locate in Remote - SpectatorMode. If enable it, you will enter spectator mode when joining multiplay server. The player in spectator mode will not be account into level ranking. And your ball position also will not be shared. Spectator mode are frequently used by tournament commentary and referee. The name of online players in spectator mode will have a extra star ({{code|*}}) prefix to indicate them.
 +
 +
Extrapolation setting locate in Gameplay - Extrapolation. If enable it, plugin will use extrapolation algorithm to smooth the movement of shadow ball to get better visual effect. If you disable it, the path of each players ball will be dispersed ("Flash"). The default of this setting is enable and we highly recommend all players enable it.
 +
 +
Player list color setting locate in Gameplay - PlayerListColor. This setting allow you customize the color of player list panel which displayed at the right-bottom corner of game window. Usually no need to modify this.
  
 
== Client Usage ==
 
== Client Usage ==
  
{{ambox|type=content
+
=== Commands ===
|issue='''Encoding Warning'''
+
 
|info=Due to the limitation of Ballance. Any non-ASCII character is not allowed in BallanceMMOClient, from server URL, username to message content. It means that you should not use any Chinese character, Katakana, Hiragana, Korea character, Cyrillic, Greek character and etc.}}
+
There are the syntax of following commands introduction and some annotations.
 +
 
 +
* Use Space to split arguments. The argument without any modifier/bracket should be input directly.
 +
* {{code|<u>n</u>a<u>m</u>e}} indicate the long name of this argument is {{code|name}}. the short name of this argument is {{code|nm}}. Input short name will call the same function.
 +
* {{code|<nowiki><arg></nowiki>}} indicate this argument should be replaced with some string according to your requirement.
 +
* {{code|<nowiki>[arg]</nowiki>}} indicate this argument is optional (use default value instead).
 +
* {{code|<nowiki>arg1 | arg2</nowiki>}} Choose a argument between arg1 and arg2.
 +
* You can use Tab to auto fill command name, player name and player ID, except {{code|/mmo kick}}. Just like some UNIX terminals.
 +
* Command is case-insensitive. However, argument input by player is case-sensitive. Additionally, Tab Auto Fill rely on the function implemented by BML2, so it is also case-sensitive.
 +
 
 +
==== Server Status ====
 +
 
 +
* {{code|/mmo <u>c</u>onnect <nowiki>[地址]</nowiki>}} – 连接到地址对应的服务器。若不填地址则使用 Mod 设置内填入的服务器地址。
 +
* {{code|/mmo <u>d</u>isconnect}} – 离开玩家所在的服务器。
 +
 
 +
==== Player Status ====
 +
 
 +
* {{code|/mmo <u>l</u>ist<nowiki>|</nowiki><u>l</u>ist-<u>i</u>d}} – 显示所在服务器内所有玩家的名称列表。若使用 {{code|list-id}},则在列表内同时列出玩家名称和内部临时 ID。
 +
* {{code|/mmo <u>g</u>et<u>m</u>ap}} – 显示服务器内所有玩家各自所在的地图名称和小节号(方便寻找不同玩家)。
 +
* {{code|/mmo <u>g</u>et<u>p</u>os}} – 显示服务器内所有玩家各自的坐标和球的种类。<ref name="single-player">服务器内玩家数仅有 1 人(即玩家自身)时为节约运算和网络资源,服务器并不会向玩家发送坐标等状态信息,所以影子球不会跟随玩家移动。也因此服务器内仅有 1 名玩家(即玩家自身)时并不会正确显示坐标和球的种类。</ref>
 +
* {{code|/mmo <u>r</u>e<u>l</u>oad}} – 重新加载服务器内玩家状态。如果玩家名称标记和实际影子球错位,可以使用重载功能调整。
 +
* {{code|/mmo gettimestamp}} – 显示服务器内玩家的影子球插值用时间数据。''此命令为调试功能。''
  
=== Install Client ===
+
==== Player Interaction ====
  
Please ensure that you have installed the latest BML2. Then you need to put your downloaded zip file in {{code|ModLoader/Mods}} '''directly without decompression'''. If you have '''installed obsolete BMMO''' previously, '''please remove it instantly.''' Your installation is finished if you can see BallanceMMOClient entry in BML Mods menu.
+
* {{code|/mmo <u>s</u>ay <nowiki><文字></nowiki>}} 或 {{code|/say <nowiki><文字></nowiki>}} – 在服务器内公开发送一条内容为 <文字> 的聊天信息。<ref>Before 3.1.5-beta5, due to the implementation of BMMO, {{code|Space}} is not supported in message content. You need to use other symbol to split words if you need. For example, you can type {{code|wait/a/minute}} or {{code|wait-a-minute}} instead of {{code|wait a minute}}.</ref>.
 +
* {{code|/mmo <u>w</u>hisper <nowiki><玩家名称> <文字></nowiki>}} 或 {{code|/mmo <u>w</u>hisper <nowiki>#<玩家ID> <文字></nowiki>}} – 向对应的玩家发送私聊信息,只有对方能够看见。
 +
* {{code|/mmo announce <nowiki><文字></nowiki>}} – 在服务器内发送一条重要通知。可以显示包括中文在内的非 ASCII 字符。
 +
* {{code|/mmo bulletin <nowiki>[文字]</nowiki>}} – 设置服务器的常驻通知(会维持在游戏界面顶端显示)。<ref>常驻通知不会自动换行,请注意描述的简洁度;此外,服务器内所有玩家均退出(使得服务器内没有玩家)后常驻通知会自动清空。</ref>
 +
* {{code|/mmo <u>a</u>nnounce<u>m</u>ap}} – 在服务器内公开发送自己所在的地图和小节的信息(可以用于通知其他用户)。
 +
* {{code|/mmo <u>t</u>ele<u>p</u>ort <nowiki><玩家名称></nowiki>}} 或 {{code|/mmo <u>t</u>ele<u>p</u>ort <nowiki>#<玩家ID></nowiki>}} – 传送至服务器内其他玩家的坐标。只能在作弊模式(Cheat Mode)下使用。<ref>传送只能做到传送到玩家本地存储的其他玩家的坐标,不会连带切换玩家所在的地图或小节,也不会复原其他玩家视角的机关摆放;请与 {{code|/mmo getmap}} 等命令配合使用。</ref><ref name="single-player" />
 +
* {{code|/mmo kick <nowiki><玩家名称> [理由]</nowiki>}} 或 {{code|/mmo kick <nowiki>#<玩家ID> [理由]</nowiki>}}: 将对应名称(不区分大小写)或 ID 的玩家踢出服务器。
 +
* {{code|/mmo custommap <nowiki><名称|reset></nowiki>}}: 自定义自己所在地图的名称(仅对其他玩家有效,玩家自身无法查看)。切换地图或者切换小节时均会重置。
  
=== Configurate Server and Username ===
+
==== Tournament Status ====
  
After installation, there are 2 way to configure your server URL and username. If you are looking for some available servers, please check out the next chapter to get an available server.<br />
+
* {{code|/mmo cheat <nowiki>on|off</nowiki>}} – 开启或关闭服务器内所有人的作弊模式(Cheat Mode)。
First, you can enter BallanceMMOClient entry in BML Mods menu, then use Remote and Player submenu to set server URL and username. If your server URL or username contain complex words, you can use the next method.<br />
+
* {{code|/mmo countdown}} – 自动连续发出 3, 2, 1, 开始比赛的信号。
Method 2, Close game, navigate to {{code|ModLoader/Config/BallanceMMOClient.cfg}} and open it. Now, you can change server URL and username directly.
+
* {{code|/mmo dnf}} – 发出未能成功完赛所在地图的信号(同对应的快捷键)。
 +
* {{code|/mmo rank reset}} – 若玩家自己稍后发送比赛起跑命令,则同时重置服务器内所有地图先前已有的排行名次(适用于多地图连续比赛但仅发号一次的场景)。
 +
* {{code|/mmo <nowiki>ready|ready-cancel</nowiki>}} – 用于公开示意自己已经准备好了(进入已准备状态)或还未准备好(取消先前的准备状态)。
  
=== Basic Operations ===
+
==== Misc ====
  
The following operations are frequently to be used. Please ensure that you have known them well before starting multi-play.
+
* {{code|/mmo <nowiki>show|hide</nowiki>}} – 显示或隐藏本 mod 的命令行控制台。控制台内可以显示本 mod 的所有状态提示信息。命令行控制台的输入和输出将{{Color|'''不再有ASCII字符限制'''|red}}(即支持显示与输入中文等字符)。同时输入命令时也无需 {{code|/mmo}} 前缀。
  
* {{code|/mmo c}} or {{code|/mmo connect}}: Connect to server.
+
=== Keyboard Shortcuts ===
* {{code|/mmo d}} or {{code|/mmo disconnect}}: Disconnect from server
 
* {{code|/mmo l}} or {{code|/mmo list}}: List all online player clients.
 
* {{code|/mmo s <message>}} or {{code|/mmo say <message>}}: Send message(since 3.1.5-beta5)<ref>Before 3.1.5-beta5, due to the implementation of BMMO, {{code|Space}} is not supported in message content. You need to use other symbol to split words if you need. For example, you can type {{code|wait/a/minute}} or {{code|wait-a-minute}} instead of {{code|wait a minute}}.</ref>.
 
  
After anti-cheat update(v3.1), BMMO supports more anti-cheat features.
+
==== Self Status ====
  
* {{code|/mmo cheat [on or off]}}: Switch cheat mode '''for all online players'''. This command will force change each player's cheat mode without any notification. Please do not abuse this command.
+
* {{code|Tab}}: 显示/隐藏其他玩家的影子球的名称标签。
* A global message will be showed in chat dialog if any player change its cheat mode. The name of cheating player will automatically be attached with {{code|[C]}}.
+
* {{code|F3}}: 显示/隐藏调试信息。
 +
* {{code|F3 + A}}: 重新加载服务器内玩家状态。如果玩家名称标记和实际影子球错位,可以使用重载功能调整。
 +
* {{code|Ctrl + Tab}}: 显示比赛内非旁观玩家的实时状态(所在的地图和小节)列表。<ref>先按住 Ctrl 再按 Tab(其他快捷键同理),虽然要同时按下但顺序不可错乱。</ref>
 +
* {{code|Ctrl + <nowiki>`</nowiki>}}: 显示/隐藏自己的(经历网络延迟后的)实时影子球,方便观察自身延迟。<ref>{{code|<nowiki>`</nowiki>}} 键位于标准 QWERTY 键盘的 1 键左侧,同时可以用于输入 {{code|<nowiki>~</nowiki>}}。</ref><ref name="single-player" />
 +
* {{code|Ctrl + Shift + ↑}}: 重置自己的视角。防止比赛过程中意外切换到非 90 度视角状态后无法正常继续比赛。<ref>重置视角时摄像机需要有大约 1~2 秒的调整时间,此期间建议不要移动防止出现其他意外(可以在变球器上时调整视角,减少非必要的时间浪费)。</ref>
  
=== Advanced Operations ===
+
==== Tournament Status ====
  
* F3 for switching the display of debug information. Debug information mainly show network transfer status.
+
* {{code|Ctrl + <nowiki>[3 or 2 or 1]</nowiki>}}: 发出对玩家所在地图开始比赛的对应倒数命令。
* You can use keyboard to send contest preparation message quickly. It's mechanism is running {{code|/mmo say <message>}} with preset string.
+
* {{code|Ctrl + 0}}: 发出对玩家所在地图的起跑命令(玩家收到后会同时重置本地的比赛用时计时器)。根据服务器相关设置,地图相同的玩家收到后可能会自动重开所在地图。
** {{code|Left Ctrl + 3}}: Send {{code|3}}
+
* {{code|Ctrl + 4}}: 发出对玩家所在地图的准备命令。
** {{code|Left Ctrl + 2}}: Send {{code|3}}
+
* {{code|Ctrl + 5}}: 发出对玩家所在地图的确认准备状态的命令(用于提示玩家对自己是否准备好了进行示意)。
** {{code|Left Ctrl + 1}}: Send {{code|1}}
+
* {{code|Ctrl + D}} double click quickly: Send DNF (Did not finish) signal for current map.
** {{code|Left Ctrl + 0}}: Send {{code|GO!}}
 
  
 
== Available Servers ==
 
== Available Servers ==

2023年2月6日 (一) 09:31的版本

Chinese version / 中文版: BallanceMMOClient/zh

Download

  • Download from Publish Website. Click "Download Standalone Package" to download. (Suggested)
  • Join Multi-play QQ Group, and download from QQ Group Files.
  • Join Ballance Discord Server.
  • Download from the Release page of GitHub repository.(Not suggested because publish is not in time.)
  • Download project and build by yourself.(Not suggested because building this plugin is harder than imagine.)

Please read the requirement of server which you want to join and download correct version. In most instances, downloading the latest version is the best decision. Server will reject the connection of obsolete client after some updates.

Client Settings

After installation, there are 2 way to configure your BallanceMMOClient settings
First, you can enter BallanceMMOClient entry in BML Mods menu, then use its submenu to set the settings what you want set. If your settings is too long or contain complex words, you can use the next method instead.
Method 2, Close game, navigate to ModLoader/Config/BallanceMMOClient.cfg and open it. Now, you can change all settings directly.

Core Settings

Server URL and player name are 2 essential settings for this plugin. You should fill them before any multiplayer game.

Player name setting locate in Player - Playername. Please choose a clear name. By the way, BMMO server will check your given name and remove all invalid characters, so the name adopted by the server may not exactly same with your set name.

Server URL setting locate in Remote - ServerAddress. You must set your server URL correctly, and stay in the same server with your friends/competitors, otherwise you can not do a normal multiplayer game. If the port of this field is omitted, the plugin will connect to the default port 26676.

Other Settings

Spectator Mode setting locate in Remote - SpectatorMode. If enable it, you will enter spectator mode when joining multiplay server. The player in spectator mode will not be account into level ranking. And your ball position also will not be shared. Spectator mode are frequently used by tournament commentary and referee. The name of online players in spectator mode will have a extra star (*) prefix to indicate them.

Extrapolation setting locate in Gameplay - Extrapolation. If enable it, plugin will use extrapolation algorithm to smooth the movement of shadow ball to get better visual effect. If you disable it, the path of each players ball will be dispersed ("Flash"). The default of this setting is enable and we highly recommend all players enable it.

Player list color setting locate in Gameplay - PlayerListColor. This setting allow you customize the color of player list panel which displayed at the right-bottom corner of game window. Usually no need to modify this.

Client Usage

Commands

There are the syntax of following commands introduction and some annotations.

  • Use Space to split arguments. The argument without any modifier/bracket should be input directly.
  • name indicate the long name of this argument is name. the short name of this argument is nm. Input short name will call the same function.
  • <arg> indicate this argument should be replaced with some string according to your requirement.
  • [arg] indicate this argument is optional (use default value instead).
  • arg1 | arg2 Choose a argument between arg1 and arg2.
  • You can use Tab to auto fill command name, player name and player ID, except /mmo kick. Just like some UNIX terminals.
  • Command is case-insensitive. However, argument input by player is case-sensitive. Additionally, Tab Auto Fill rely on the function implemented by BML2, so it is also case-sensitive.

Server Status

  • /mmo connect [地址] – 连接到地址对应的服务器。若不填地址则使用 Mod 设置内填入的服务器地址。
  • /mmo disconnect – 离开玩家所在的服务器。

Player Status

  • /mmo list|list-id – 显示所在服务器内所有玩家的名称列表。若使用 list-id,则在列表内同时列出玩家名称和内部临时 ID。
  • /mmo getmap – 显示服务器内所有玩家各自所在的地图名称和小节号(方便寻找不同玩家)。
  • /mmo getpos – 显示服务器内所有玩家各自的坐标和球的种类。[1]
  • /mmo reload – 重新加载服务器内玩家状态。如果玩家名称标记和实际影子球错位,可以使用重载功能调整。
  • /mmo gettimestamp – 显示服务器内玩家的影子球插值用时间数据。此命令为调试功能。

Player Interaction

  • /mmo say <文字>/say <文字> – 在服务器内公开发送一条内容为 <文字> 的聊天信息。[2].
  • /mmo whisper <玩家名称> <文字>/mmo whisper #<玩家ID> <文字> – 向对应的玩家发送私聊信息,只有对方能够看见。
  • /mmo announce <文字> – 在服务器内发送一条重要通知。可以显示包括中文在内的非 ASCII 字符。
  • /mmo bulletin [文字] – 设置服务器的常驻通知(会维持在游戏界面顶端显示)。[3]
  • /mmo announcemap – 在服务器内公开发送自己所在的地图和小节的信息(可以用于通知其他用户)。
  • /mmo teleport <玩家名称>/mmo teleport #<玩家ID> – 传送至服务器内其他玩家的坐标。只能在作弊模式(Cheat Mode)下使用。[4][1]
  • /mmo kick <玩家名称> [理由]/mmo kick #<玩家ID> [理由]: 将对应名称(不区分大小写)或 ID 的玩家踢出服务器。
  • /mmo custommap <名称|reset>: 自定义自己所在地图的名称(仅对其他玩家有效,玩家自身无法查看)。切换地图或者切换小节时均会重置。

Tournament Status

  • /mmo cheat on|off – 开启或关闭服务器内所有人的作弊模式(Cheat Mode)。
  • /mmo countdown – 自动连续发出 3, 2, 1, 开始比赛的信号。
  • /mmo dnf – 发出未能成功完赛所在地图的信号(同对应的快捷键)。
  • /mmo rank reset – 若玩家自己稍后发送比赛起跑命令,则同时重置服务器内所有地图先前已有的排行名次(适用于多地图连续比赛但仅发号一次的场景)。
  • /mmo ready|ready-cancel – 用于公开示意自己已经准备好了(进入已准备状态)或还未准备好(取消先前的准备状态)。

Misc

  • /mmo show|hide – 显示或隐藏本 mod 的命令行控制台。控制台内可以显示本 mod 的所有状态提示信息。命令行控制台的输入和输出将不再有ASCII字符限制(即支持显示与输入中文等字符)。同时输入命令时也无需 /mmo 前缀。

Keyboard Shortcuts

Self Status

  • Tab: 显示/隐藏其他玩家的影子球的名称标签。
  • F3: 显示/隐藏调试信息。
  • F3 + A: 重新加载服务器内玩家状态。如果玩家名称标记和实际影子球错位,可以使用重载功能调整。
  • Ctrl + Tab: 显示比赛内非旁观玩家的实时状态(所在的地图和小节)列表。[5]
  • Ctrl + `: 显示/隐藏自己的(经历网络延迟后的)实时影子球,方便观察自身延迟。[6][1]
  • Ctrl + Shift + ↑: 重置自己的视角。防止比赛过程中意外切换到非 90 度视角状态后无法正常继续比赛。[7]

Tournament Status

  • Ctrl + [3 or 2 or 1]: 发出对玩家所在地图开始比赛的对应倒数命令。
  • Ctrl + 0: 发出对玩家所在地图的起跑命令(玩家收到后会同时重置本地的比赛用时计时器)。根据服务器相关设置,地图相同的玩家收到后可能会自动重开所在地图。
  • Ctrl + 4: 发出对玩家所在地图的准备命令。
  • Ctrl + 5: 发出对玩家所在地图的确认准备状态的命令(用于提示玩家对自己是否准备好了进行示意)。
  • Ctrl + D double click quickly: Send DNF (Did not finish) signal for current map.

Available Servers

Considering the security of server, you should join corresponding Ballance community according to your multi-play requirements. Then, you can get an available server. Also, you can create a personal BMMO server and play with it. Its method will be introduced in the following chapter.
If you want to play with Chinese Ballance players, you should join Multi-play QQ Group and get server URL within it.
Or, there is a big latency when you are connecting to Chinese BMMO server, or you want to play Ballance with over world Ballance players, you can join Ballance Discord server and get server URL from #multiplay channel.

Deploy a Personal Server

In general, creating an BMMO server on a Linux server is easier than a Windows server. You can check out the GitHub repository's README file of this plugin to know how to deploy a BMMO server.

References

  1. 1.0 1.1 1.2 服务器内玩家数仅有 1 人(即玩家自身)时为节约运算和网络资源,服务器并不会向玩家发送坐标等状态信息,所以影子球不会跟随玩家移动。也因此服务器内仅有 1 名玩家(即玩家自身)时并不会正确显示坐标和球的种类。
  2. Before 3.1.5-beta5, due to the implementation of BMMO, Space is not supported in message content. You need to use other symbol to split words if you need. For example, you can type wait/a/minute or wait-a-minute instead of wait a minute.
  3. 常驻通知不会自动换行,请注意描述的简洁度;此外,服务器内所有玩家均退出(使得服务器内没有玩家)后常驻通知会自动清空。
  4. 传送只能做到传送到玩家本地存储的其他玩家的坐标,不会连带切换玩家所在的地图或小节,也不会复原其他玩家视角的机关摆放;请与 /mmo getmap 等命令配合使用。
  5. 先按住 Ctrl 再按 Tab(其他快捷键同理),虽然要同时按下但顺序不可错乱。
  6. ` 键位于标准 QWERTY 键盘的 1 键左侧,同时可以用于输入 ~
  7. 重置视角时摄像机需要有大约 1~2 秒的调整时间,此期间建议不要移动防止出现其他意外(可以在变球器上时调整视角,减少非必要的时间浪费)。