KeyCr@ft Odyssey: 有时候玩点音乐也是可以的(误)


为什么会有这篇文章?

肯定有人会问我这段时间又跑哪去了。
简单来说,哪也没去,只是我又跑出来搞事了。(误)
这次是带着一些干货来的。

实际上有一个我的个人的未公开计划,当时都没有一个明确的名字。而这个计划到前几天才有个真正的名字。

KeyCr@ft Odyssey

没错,你看到了Odyssey,也正如你想到的,这个词正是取自《超级马里奥 奥德赛》。
不要误会了,这个项目可没打算做一个开放世界的游戏。虽然我们的已公开的其他项目中确实在做开放世界的游戏(误)。
这个项目的名字的灵感正是因为《超级马里奥 奥德赛》中进入2D场景时的音乐切换。
此项目实际上属于一个更大的计划: 1stDim Odyssey Project。而这个计划里包括的就不只是Key系音乐了。

这个计划集合了我这三年来制作的一些音频文件。这些音频文件的特点是:都是8bit红白机风格的音乐,并且都是Key系的音乐。这些文件最早的能追溯到2015年,也就是LBLive还在苦苦挣扎的时候。
至于为什么最近我又把这个拿出来说了,是因为最近我个人终于实现了一次突破:
制作了第一个有人声的8bit风格混音。

于是也是时候拿出来和大家分享了。

接下来讲一讲这些文件的各自的和项目的故事。当然我们提供这些音频文件下载。如果你对这些音乐感兴趣的话,也欢迎使用这些音乐。这些音频的许可协议是 CC-BY-NC 4.0 International。不过如果VA找上门来的话,这些音乐的许可协议可能就变成公共领域了。至于为什么选这个协议...
因为不想被那些无底线的所谓"具有商业头脑"的人拿去滥用。

那么,我们就从三年前说起。

或许我们仍然可以回到那个时候

2014年。Little Busters! Live Project。
当时正是项目活跃度超高的时候,我们的各种计划都在进行,房子基本上盖出了个样子。实际上当时没人会觉得这个项目最终会进行不下去。
因为LBLive创建的时候是为了制作动画而去的,除了场景之外,音乐也是很重要的。 不过直接用KSLA里的原声的话有可能引来一些麻烦。毕竟我们也是很希望能够按照合理合法的途径去建立这个项目的。这个时候我想到了自己去把音乐“搞”出来。
因为以前玩过一段时间的MIDI,我大概知道软件合成器是个什么东西,于是就开始找这些MIDI文件。然后我搜索网络之后从贴吧找到了一个超大的文件包。

Key Sheet Music Collections

当时还是百度云不限速并且百度还没有那么完蛋的时代,于是我就下载了这些文件,看了一下Readme。似乎是前人留下的遗产?这些文件也是从互联网收集来的。事实上从我事后对文件本身的一些研究发现,这些文件真的是什么年代、哪里来的都有。

在我们之后发布的LBLive招工展示视频里,我们最开始的几个音乐(除了最开头的《We are Busters!》。这是GYang制作的音乐。)实际上都是用软件合成器在稍加修改一些参数的情况下"渲染"出来的。在这个过程中使用了很多开放免费使用的音色库。

当时收集了很多音色库,有小到8MB但音质一点也不差,有大到1.5GB不过声音相当真实的。那个时候我还在用Windows 8,系统里安装的是Timidity++合成器。用的编辑软件还是一个不知道从哪里下载的Cakewalk 9。而这个版本的Cakewalk还是Win95时代的。

不过也就是这个Cakewalk 9,陪伴了我了两年多。

一个未能实现的愿望

进入2015年了。Minecraft服务器计划进展的还算不错。LBLive的学校基本上盖完了,但招工视频一直被我咕咕咕。因为我的空闲时间在那时候还没有多到能做一整个视频编辑项目的。虽然最终还是在2015年8月暑假时尽快发出了。

当时在考虑商店街的建设计划,以及我们应该如何去开放我们的服务器。如果你看了我们当时的那个招工视频的话,你应该会注意到我们放了一些音乐播放器。其实那些是CustomNPCs Mod实现的。而这种玩法实际上我2013年就开始玩了。当时甚至都没有LBLive项目。不过我当时确实是想把我2013年的一个想法带到项目中。而这个想法是来自《超级马里奥银河》。

一个能够按照区域渐变切换BGM的Minecraft Mod。

在水上和水下的BGM实际上是有区别的,如果你玩过这个游戏,或者听过原声集的话,你也就明白我想说的是什么了。
毕竟CustomNPCs的音频切换实在是没法做,而Minecraft原生提供的音频控制也是相当的有限。甚至是有一个真正的BGM都很难。CustomNPCs的声音传播范围只有64方块半径的范围,超出之后就没声音了,更何况多个放音乐的NPC放在一起声音会重合,没法做到渐变。

而在全世界范围内我没能找到能够实现这种功能的Mod。

在2013年,没能实现,到了2015年,我决定试试。于是我开始寻找有兴趣的Mod开发者,也就是这个时候我才认识到,Minecraft这个圈子到底有多乱了。
终于,在LBLive成员的提示之下,我们与NullaDev取得了联系,他们之前制作了一个Key相关的Mod。很可惜的是他们最终弃坑了。而我把我的这个想法给他们分享了之后,他们的答复是:因为没人用所以懒得开发。

确实,这个需求可能全世界只有我需要了。这也不能怪他们。毕竟程序开发真的很累,这我很清楚,因为我也是写过一些程序的。
可惜我不会用Java并且也学不来。不过主要原因还是我真的不想学Java。因为当时能力真的有限。虽然我现在应该是有能力去深入学习Java了,但我恐怕没有那么多时间去做相关研究了。

直到现在,这个愿望仍然没有实现。

复古的复兴

在我的音色库收藏里,有一个文件很是特殊。
8bitSF.sf2
一个6MB左右大小的文件。但听起来画风和其他音色库完全不一样。

这就是红白机音效的音色库。来自一位同时是音乐家又是IT爱好者的** Cinos Modnar**。
这个红白机8bit音色库是以2A03、2A07、VRC6芯片的声音作为素材,模仿了一些红白机上的音色,并且对应到了General MIDI标准定义的乐器上。总体说来,你可以用这个音色库直接去播放一些MIDI文件,你会得到一个完全不一样的感受。
点击这里前往 Cinos Modnar 的主页

虽然使用这种音色库制作的音乐严格来说并不是红白机音乐,至少对那些能够制作出在红白机真机上放出音乐的创造者们是这样。不过我们更关注的是复古的那种感觉。

为什么会有人对技术复古如此着迷?我想可能是除了情怀之外,还有一种对极致的追求。毕竟这些东西在曾经是一个时代的象征,而当今的技术在持续发展,当今的很多技术都是由这些“过时”的东西奠基的。
当时的技术人都是生活在“开荒”的年代,和现在随便就能冒出一个“天才黑客”的环境根本不是同一个概念。

没有那些先驱者,可能我们就没有现在的生活。

而我们现在在技术更为先进的时代,我们或许也能够让这些“过时”技术展现出不同的一面。可能曾经因为各种技术上或者不是技术上的原因无法实现的事情,现在就能够实现了。
或许对技术复古爱好者来说,这是一种“不忘初心”的纪念方式。
而我也很有幸能够加入他们了,虽然我并没有那么有钱能够收藏各种设备,但至少我也有我能做到的。

于是我制作了第一个红白机音效的音乐。
因为怀旧可以不是技术上的,也可以是艺术上的。哪怕这种艺术出现到现在还不到20年。

在先进技术下复古

Cakewalk 9,Timidity++,Goldwave。
最初的三件套。看起来连软件都那么复古。
最开始用标准音色测试的时候我还在Windows上用的Cakewalk 9和Timidity++ Win32。不过之后我就转到Linux,并且把Linux作为主要的工作环境了,靠着Wine,我把Cakewalk 9和Goldwave这两个为Windows设计的程序给跑了起来,并且让Cakewalk 9通过Wine和Linux上运行的Timidity++连接了起来。
复古和“先进技术”就这样连接了起来,没有出问题,老铁没毛病

因为是第一次尝试制作,因此绕了一些弯路。第一个问题就是,在Key Sheet Music Collections里,同一曲可能有非常多的MIDI文件,并且质量也有高有低,并且适用范围也不一样。有的MIDI是为特定的硬件合成器设计的,比如SC-88Pro。不过从之前搞MIDI渲染的经验来看,我需要拿上这个音色对应进去试听一下,看看哪里需要调整。

怎么办呢?拿出手机。手机上也能安装基于软件合成器的MIDI播放器,只是当时让我找了很久。最开始用的是免费版的MIDI Voyager和MIDI Live Karaoke。支持SF2加载,这些都是我试验其他标准音色的效果时用的东西。于是把8bitSF复制到手机上,加载进去,开始一个一个的过。有时候我也会在电脑上过这些音乐来试听。一个终端,一个文件管理器,运行一个Timidity++,播放一个MIDI音乐。

至于为什么用终端操作,因为Linux下面用Timidity++最便捷的也就是终端界面了。一次可以打开一整个播放列表的文件,切换音乐也方便。更为重要的是,因为Linux下面没有Timidity++ Win32那种窗口显示的实时动作指示,我需要使用终端界面让它用字符画出来。(也就是Curses界面)

向那时致敬

也就是在这种界面下偶尔会有惊喜。比如用MIDI控制指令在实时动作指示上画出了Key的Logo什么的。虽然我相信这些加入的控制指令最初的目的是在硬件合成器的显示屏上画出一个Logo吧。说真的,很佩服这些搞艺术的先驱者们。只是在这个VST插件满天飞的时代,单纯去搞MIDI的人还会有多少呢?

timidity-keylogo.png

复古可以说是向那个时代致敬,很多项目都是如此。
至于我,我对自己在这方面的描述是,“我是一个Key的复古派”。

当然这就需要找出一些代表性的作品了。AIR、CLANNAD、Little Busters!。
如果你想问我Kanon去哪里了,我也在找机会去尝试,只是暂时还没有制作出成品。

制作的第一个红白机音效的音乐是 CLANNAD 的 小さなてのひら
嗯,很多人说这是神曲,那么我第一个制作这个应该也没啥问题。毕竟在现在说这是经典都没问题。


下载:
小さなてのひら (8-bit Sound Ver.).ogg

探索的过程是艰辛的也是快乐的

因为红白机自身的音色的原因,如果同时发声的轨道太多,听起来会非常嘈杂。
因此通常我在做普通音色时会选取尽可能大的MIDI文件的做法是行不通的,这种情况下只能自己一个一个尝试。而我最终从11个文件中选出了一个作为基础。33KB,在手机上听起来效果不错,并且没有出现明显的错误。

但在电脑上重新确认时发现了问题,问题出在了Timidity++上。
因为Timidity++在处理8bitSF时出了点问题,把一些单声道采样全部并到左声道去了,而正常来说应该是置中才对。这种情况下就需要手动调整各个轨道的平衡了。

在解决了置中问题之后,听了一下效果,发现有些锯齿波类型的轨道声音有些过大,听起来很嘈杂,解决方式则是降低音量和更换为基于方波或者正弦波的乐器。不过有些MIDI文件会在内部更改这些音量,因此仍然需要拿出MIDI事件编辑器一个一个找到并调整。

完成之后,渲染导出,发现整体音量似乎不是很大。于是拿出了"祖传"(误)的Goldwave进行编辑。使用了标准化工具把音频自动调整到了合适的音量。然后直接导出为wav(PCM)格式留档和ogg文件用于发布。

完成后的音乐我发给了群组 “Key-被光守护的坡道” 群组。那里曾经是一个论坛,并且也有很多来自Key Fans Club的曾经的成员。当时大家给出的的评价还不错。

而这一个文件似乎在当时费了不少时间才调试出最终版本。不过这包括了最初的摸索过程,因此也是值得的。

事实上,这些经验也确实提升了之后我的制作速度。

“简单”有时候就是正确答案

当天晚上我在手机上继续随意找着MIDI用8bitSF播放。试了好几个之后并没有找到什么感觉。直到我进入了一个文件夹:
原曲的《汐》就是一个简单的钢琴曲,并没有很多别的乐器来衬托。也难怪是CLANNAD的游戏的标题界面。
使用8bitSF音色库播放,原曲的宁静的气氛不但保留了下来,而且音色确实也变成了经典的红白机。红白机风格下的钢琴声的低音也更加明显,正好成为了在背景的陪衬。


下载:
汐 (8-bit Sound Ver.).ogg

于是,第二天,在没有经过更多修改的状况下,导出了音频并用Goldwave做了标准化音量调整,直接发出了。
并且也收到了好评。

失败总会是有的,但有时会歪打正着

因为在当时还是LBLive Project,肯定也会需要LB的音乐。那么不用想,第一个肯定是OP了。
于是选择的是《Little Busters! -Ecstacy Ver.-》。动感十足的一曲。

对软件合成器来说,电吉他的声音的模仿的真实度一直都是个问题。在硬件合成器上会有一些特殊的功能用于调整这些电吉他声音的合成,但软件合成器上就没有这种待遇了,严重依赖于音色的表现。而很多音色听起来和原曲一点都不像。可以说,在用标准音色复刻原曲的感觉上我是失败了。

但用了8bitSF音色之后,事情变得有趣了起来。

因为制作目的不再是按照原曲去严格复刻,因此只要感觉对了就不是问题。输入的MIDI文件没变,因此节奏方面是肯定一样的,对于红白机音色的音乐来说这就搞对了一半的感觉了,另一半则是对音色的选择。在调整了一些轨道的音色(可以说是大改了)之后,调整了音量,试听了之后感觉挺棒的。当然对于复杂的MIDI来说,事件编辑器里面做调整仍然是不可或缺的。


下载:
Little Busters! -Ecstacy 8-bit Ver.-.ogg

有时候并不需要什么特别的理由

单纯的听某个音乐觉得好听,转换之后也很好听的事情也是有的。就在前一个Little Busters发出的第三天下午,我转换了一个之前听着很不错的曲子,简单打理了一下音色和音量就发出了。因为这个曲子并不复杂。
同样来自Little Busters!的音乐,《猫と硝子と円い月》。


下载:
猫と硝子と円い月 -8-bit Ver.-.ogg

有时也应该挑战更大的规模

当天总共制作了三个音频文件。第二个是来自CLANNAD的OP,《メグメル》。
为了让MIDI产生的效果更佳自然一些,加入了一些新的控制指令进行了一些更为细节的调整,并且也修复了源文件中的一些小问题。而调整音色时也测试了不少的组合。
这一次的音频后期工具从Goldwave转换为了Adobe Audition来最后期处理和音量调整。
可以说这次的制作是扩大了规模。至于最终的效果,我自己的评价是,我尽力了。


下载:
メグメル (8-bit Sound Ver.).ogg

有时也应该问问其他人的意见

于是制作完了《メグメル》之后,我在“Key-被光守护的坡道”群组里问了一下,有没有曲目推荐来转为红白机音效的。之后我得到了一个推荐,来自《AIR》的神尾观铃的角色曲:《夏影
而这曲的特点主要是画面感,相信看过了《AIR》的动画的人都曾经被观铃的出场震撼到。实际上这首曲子除了在动画中所表现的画面感之外,自身也是有不少元素在其中的。

所以,对本曲的制作自然要还原这种画面感。比如开场的渐入的弦乐,比如01:18到01:58这一段的“仪式感”与”神秘感“,比如各种背景中的乐器的细节。虽然红白机音色自身的表现力并没有那么强,但适当的配合与调整也能做出很好的效果。


下载:
夏影 (8-bit Sound Ver.).ogg

制作完成发出之后,推荐我这个曲目的成员表示很满意。

偶尔可能会有的遗憾

实际上在这之后还有一个曲目的制作计划,来自CLANNAD的《-影二つ-》。
不过很显然这一曲我没能制作完成。因为在经过了很多尝试之后,我始终没能找出一种方式能够把本曲的各种感觉还原正确。因此这一曲一直都停留在了修改状态。与LBLive的上百GB的开发文件一并存储在我的硬盘里。

沉默并不意味着永远

进入了2016年,LBLive计划被KeyCr@ft Project取代,成为了KeyCr@ft的子工程,但实际状况是一直被”冷藏“。而这些内容也一直没有恢复制作。
好消息是,毕竟我的本业是服务器运维,这些数据在我的手上自然不会损坏或丢失。事实上这些数据有至少两份独立的备份。
在这段时间里,KeyCr@ft取得了一定的进展,也算是没有白费这些时光。

而这些红白机音色的音乐终于得以在2017年复活,其原因是——

Let's do the Odyssey

《超级马里奥 奥德赛》的在E3的披露与最终发售引起了一股热潮。虽然我是暂时没有钱买NS主机,但我也是靠着视频通关了。(当然有机会的话我肯定会亲自去通关的。)
关于游戏本身我并不需要去说太多,各大评测机构都打出了相当高的分数,甚至有几家给出的是满分。

相比这些,我更关注的是《超级马里奥 奥德赛》中的进入2D红白机风格画面时的切换。
是的,音乐同时就变成红白机风格了。并且音乐一如既往的好听。

这也让我想起了曾经在《超级马里奥银河》上度过的时光。当然也还有那个仍未实现的愿望。
任天堂对自己的经典的致敬可以说是做到了极致。实际上从很早开始,每一作的《超级马里奥》都能看到一些这种怀旧的影子。
不过,任天堂在《超级马里奥 奥德赛》的这个设计也让我想到了那些被冷藏的红白机风格音乐,于是我接下来想到的问题就是:

如果我们去尝试做一下类似的效果会怎样?

多说无用,行动为先

于是我马上就在手机使用基于FluidSynth的合成器软件渲染了两个版本的曲目,一个是GeneralUserGS音色库,这是一个标准音色库,另一个自然就是8bitSF。
而选择的曲目是CLANNAD的《有意義な時間の過ごし方》。
这也是时隔两年之后制作的第一个红白机音效音乐。

使用GeneralUserGS音色库的版本:

下载: (仅供比较和测试使用)
有意義な時間の過ごし方 (GUGS).ogg

使用8bitSF音色库的版本:

下载:
有意義な時間の過ごし方 (8bit Sound Ver.).ogg

然后我在手机上找了个打碟机软件载入了两个音频,模拟了一下切换动作。
效果确实很不错。不过我也并没有因此成为一名DJ。(笑)
只可惜我还是没办法把这个效果用在Minecraft里。

装备升级,重装上阵

需要提到的是,2015年10月,我最开始的酷派手机坏了,换成了一个华为手机,然后这个华为手机上也曾经安装过这些MIDI的软件,但在这个过程中,我找到了更多的合成器软件。到了2017年8月,这个华为手机也坏了,于是换成了我现在正在用的小米。而这些软件也进行了更新。
在2017年9月的时候我为LBLive时期的创始人之一,秋之忧郁,所制作的游戏也做过一个红白机音效的混音,作为同人项目给他提交过去了。不过具体的就不在本文的讨论范围内了。

新的手机上使用的都是基于FluidSynth的合成器。并且在2016年的时候,我在Linux电脑上的合成器也更换成了FluidSynth。事实上,使用相同的合成器引擎真的能够节省很多时间,因为你不用再担心不同合成器因为行为不一致而需要进行太多的调整去找回你最开始试验时的感觉了。

于是到此为止,我终于能够给这个红白机音效的音乐的工程找到一个名字了。

1stDim Odyssey Project

而这些源于Key的音乐的部分,则放在了这个工程下面的KeyCr@ft Odyssey之中。

尽力避开无理之人

其他软件也有一些更新。比如我现在已经使用的是全开源软件构成的工作空间了。
Audacity替代了Goldwave与Audition成为了新的波形编辑软件,Rosegarden替代了”祖传“(误)的Cakewalk 9。
而这些也是我的工作空间开源化、合规化的一部分。

至于我推进工作空间开源合规化,主要的原因是”避嫌“。

如果我真的要将这些作品发到国际互联网上,使用盗版软件制作的内容可能有时候并不能得到认可。
而即使能够被认可,在国内的一些所谓的”正版斗士“也可能找上门来对你挑骨头。
毕竟你无法立刻准确获知一个人可能会对你做出的行为是善意还是恶意的。有时候确实需要做好最坏的打算。
至于对正版的态度,我当然是支持的,并且我也愿意去支持正版。只是打着正版的名义故意搞事,那就是另一回事了。

目前除了音频编辑开源合规化,视频编辑我也已经实现了开源合规化。至少多媒体处理的合规性上我应该是没有什么可以被拿去挑骨头的了。

毕竟我不希望”无理之人“能够随随便便就去破坏掉别人辛苦的成果。

世上并无完美之事

虽然FluidSynth是更为现代一些的MIDI软件合成器的方案,但不得不提到的是,Timidity++对于一些为老MIDI硬件合成器编写的MIDI音乐的兼容会更好一些,甚至Timidity++提供了一些硬件行为模拟的选项。但这些是FluidSynth所不具备的。

这也造成了一部分曲目在播放的时候伴奏轨道会出现一些错误的声音。这个在Tomoyo After的《Light Colors》中尤为明显。也正如Tomoyo After的结局一样,世上并无完美之事。

不过好消息在于,那些被错误发声的音符,在对应到8bitSF的时候就没有声音了。因为8bitSF映射的只有General MIDI标准定义的内容,并且也只是映射了绝大部分,少部分没有做映射。那些发出奇怪声响的音符命令正好没有对应到任何声音。

于是这也就带来了2017年的第二个红白机音效的音乐了。


下载:
Light Colors (8bit Sound Ver.).ogg

但你可以将它做到极致

在制作出了这个红白机音效的音频之后,我突然想到,如果能够把人声合并进去,那会是怎样的效果?
我能够想到这个并不是空穴来风。因为《Light Colors》并没有出过伴奏版本。我在2016年为“Key-被光守护的坡道”群组的YY歌会制作消音的那个过程可以说是真的累到我了。而通常提取人声的做法就是将伴奏反向波形之后累加到歌曲上,这相当于做了个减法(1+(-1)=0),得到的就是人声。
只是我当时处理出的消音版本因为构成过于复杂,已经和原始波形差的太远,没法做准确的消除了。伴奏版还是需要原始文件,但很显然我们谁都没有,只有VA自己才有了。

于是在新的开源的工作空间里,我重新开始搞起了波形处理。最终得到了一条带有些许鼓点的人声音轨。看起来还算能用。

因为是要合成人声进去,和原本红白机的音效混在一起的话会过于嘈杂。所以需要对MIDI文件进行一定的改动。最重要的是:关闭原本表示人声的那个通道。因为我们现在加入了真正的人声,也就不需要那个占位的通道了。

把输出好的伴奏加入编辑轨道,与原曲做对齐,检查一下尾部是否也正确对齐。最后一步就是调整音量了。
只是这个音量调整是需要按照不同位置来调节的。
有些地方需要展现更多红白机的特质,有些地方则需要清晰的人声。针对不同类型做不同的调整。可能中间还得靠音量变化做点切换效果进去。

于是,这就是完成后的样子了:

autoshot-2017-11-07-23-53-47.png

我在编辑这个音频时用的确实是双屏幕。这样效率能提升不少。同样的,Linux环境下,终端就是你的伙伴。有终端能够帮你完成很多寻找或者即时操作的任务。

那么,我们来听一下最终的成果吧。


下载:
Light Colors ~8bit Mix~ - SuperMarioSF.ogg

可以注意到的是,因为鼓点和一些伴奏没有完全消掉,因此可能会听出残留。不过因为做好了对齐,因此听起来并不会有违和感。
事实上,如果你仔细听《超级马里奥 奥德赛》的关卡的8bit版本的音乐,你会发现其实那也不完全都是红白机音效。一部分背景的弦乐还是会播放,只是主要引起注意的乐器变成了红白机音效。
所以这也符合Odyssey的含义的引用,老铁没毛病

这并不是结束

实际上仍然有很多的Key的音乐是可以转为红白机音效的版本的。而我们最初做这个就是为了制作动画。虽然KeyCr@ft没办法马上就开始进行动画制作,但我个人觉得把这些东西拿出来与大家一起分享可能也是一个不错的选择。

毕竟之前还有大坑没填完,我能突然跑路么233333...

毕竟怀旧是一种艺术,也是一种情怀。不忘初心,方得始终。

在以后我也会抽一些时间继续去制作这些红白机音效的音乐,并且有可能会做其他的带人声的混音项目,毕竟对于现在的时代来说,这是一种艺术形式,对那个时代来说,这是一种致敬。我希望能够留下一些后人觉得有意义的东西,因此我分享了出来,我也希望有人能够与我们一起分享这些有趣的内容。或许我以后还会挑战更多的形式?也许还有等待我们去发掘的新的东西?

KeyCr@ft还有很长的路要走。


SuperMarioSF
2017-11-10


文章关键词:KeyCr@ftKeyCr@ft Odyssey
18luck 365bet 888zhenren aomenduchang aomenjinshayule baijiale bbin beplay bet007 betvictor betway bifa bst hg0088 bwin fenghuangyule jinbobao lebaijia long8 manbet quanxunwang shenbotaiyangcheng tengbohui ule vwin w88 wellbet WilliamHill yulepingtai laohuji