VC++ 2008开发网络百家乐街机游戏(上)2010-10-22 comprg.com.cn 唐洁前言:目前街头电子游戏厅内充斥着各类明目繁多的街机游戏,画面绚烂,游戏方式各异。其实剖开游戏的表面,分析内部的系统架构,您将会发现大大小小的街机游戏开发模式都是一直的,先在PC机上完成编码架构与环境测试,再移植到专用的街机平台上,有的甚至就是PC终端直接改装成街机。本文将以Visual C++ 2008平台下开发网络百家乐街机游戏为例,向您详细阐述街机游戏开发的全过程。一、游戏背景介绍街机游戏厅内最为常见的就是百家乐一类的游戏,街机游戏迷们大多对此类游戏有兴趣,一为娱乐二为彩头。百家乐英文为Baccarat,其名字取自义大利语中的“零”,因为在大部份扑克牌游戏中占着高价值的人面牌及十点牌,在百家乐游戏中却都算作零。一些历史学家认为百家乐游戏起源于中世纪的意大利西西里岛,后来流传到法国,并广受豪门贵族欢迎,在传入美国后逐渐发展成熟起来,规则得到进一步完善。不论起源于哪,百家乐最早是只有庄家和玩家两人参加的数位博彩游戏,由庄家给玩家和自己各发两张牌,谁的两张牌加起来的总数最接近9,谁就赢。几个世纪以来,适用于第三张牌的一系列博彩规则,以及从每一个玩家收取一定拥金的规则不断发展变化。时至今日,百家乐成了博彩业最追捧的游戏。上世纪60年代年代,何鸿燊的合伙人叶汉将这种游戏引入澳门博彩业,并为其起了一个具有东方色彩的好名字─百家乐,百家乐成了中国人喜欢玩的一种博彩游戏。当然,本文以百家乐游戏为例,不是让您以此去做违法的事,只是百家乐的游戏规则是一种精辟的数学分析,它的规则能充分综合概率统计与数字逻辑的运用。对于软件开发者而言,设计一款完善的网络百家乐街机游戏,能很好的将软件开发与数学思维综合在一起,从而提升软件研发水平。二、游戏规则数学分析百家乐游戏一般需用6副扑克(每副52张牌, 不包括大, 小王). 庄家和闲家将各发到两张牌. 然后依照标准的百家乐规则, 将第三张牌发给闲家或庄家. 百家乐游戏的目的是要玩家预测庄家或闲家谁手上纸牌的点数最接近 9 点. 你可将押注押在庄家, 闲家, 或是和局. 当双方的点数相同时即为平手. 如果游戏达成平手, 押在庄家和闲家的押注会退还. 庄家和闲家的赔率都是相同的, 只是如果你押庄家而庄家赢, 庄家会收取 5% 的佣金. 如果你下分和局同时结果正确的话, 将可以获得 8 赔 1 的赔率金额. 所有十点的牌都以 0 计算, 而A牌则计为一点, 其它按其原先牌面点数. 如果牌的点数总和超过9, 则将总和减去10.例如: 手中的牌 点数总和9+8=17 75+5+5=15 510+9=19 9庄和闲如何补牌早已设计好了,由荷官按规则执行,只要闲或庄任何一方两张牌的总点数为8点或者9点,胜负已定,这种情形称为天然赢。只要不是天然赢,闲家及庄家按下面顺序决定要不要第三张牌:只要闲的点数是5点或者5点以下,必须补第三张牌。如果闲家没有补第三张牌(即闲家两张牌的点数为或者7点)而庄家点数5点或5点以下,庄家必须要第三张牌;如果闲家补了第三张牌(即闲家的点数在5点或者5点以下),那么庄家依照下面的图表决定补不补第三张牌。
庄家
点数 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
7 | - | - | - | - | - | - | - | - | - | - |
6 | - | - | - | - | - | - | 补牌 | 补牌 | - | - |
5 | - | - | - | - | 补牌 | 补牌 | 补牌 | 补牌 | - | - |
4 | - | - | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | - | - |
3 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | - | 补牌 |
2 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 |
1 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 |
0 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 | 补牌 |
人们喜欢百家乐也是因为它的“快”,只要庄家给玩家和自己各发两张牌,谁的总数越接近9谁就嬴了。百家乐和 BLACKJACK 、POKER 等游戏不同,在百家乐局上虽然也有庄和闲的分别,但玩家既可以把注下在庄上也可以把注下在闲上,那么运营方是怎样来实现其在规则上的优势呢,首先按照补牌规则,庄补牌比闲更具优势,闲输给庄,但玩家要是始终把注下在庄上,运营方岂不要吃亏,因此在百家乐游戏中还有一个补充规定,庄赢要抽水5%,这个5%要大于庄对闲的优势,这样一来,下在庄上的注也占不到任何便宜。下面我们进行具体分析。百家乐的庄与闲分别最少也有两张牌,最多也只有三张牌。由百家乐的规则很容易想到,百家乐也存在着一个庄与闲的点数的概率分布表,但并不能直接用这个概率分布按照公式(2?1?1)来计算收益率,因为百家乐的点数和对方的牌点甚至和对方的第三张牌有关,显然,三张牌的“6”点从来就不会和对方的“8”点遇到一起,因此这张表并没有更多的意义。
点数 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
庄家 | 8.88 | 6.93 | 6.91 | 7.28 | 9.34 | 10.07 | 12.11 | 12.84 | 12.80 | 12.84 |
闲家 | 9.40 | 7.45 | 7.43 | 7.45 | 7.43 | 7.45 | 13.32 | 13.37 | 13.32 | 13.37 |