白色相簿2结局游戏日本原版和汉化版的结局数量是不是不一样?如果不一样,有多少结局呢?

白色相簿2破解版v1.0
语言:中文
大小:5.86GB
扫一扫 下载到手机
白色相簿2破解版资讯7篇
GalGame一般指美少女游戏,是一种可以与美丽动人的动画少女进行互动的电子游戏,特属于日本的绅士文化现象。今天小编给玩家整理的就是一个galgame大全,希望玩家们能够在其中找到自己所喜欢的游戏。
萌萌的提升自己的视力
封印者手游
猎人学园欢迎您
美少女梦工厂白色相簿2 coda篇各结局概率分析
本人很喜欢一款叫做白色相簿2的游戏,最近闲得无聊研究了一下coda中各结局的概率,在这里和各位喜欢二次元和算法的朋友交流
首先,coda篇中选项好感度变化大家可以看这一篇贴吧帖子https://tieba.baidu.com/p/。我把它画成了流程图(字比较潦草),这里上传上来给大家简单看一下。
可以看到整个过程非常错综复杂。如果只有选项或者判定那么计算概率还会容易一些,但这里还有一些选项会由于好感度不同而被屏蔽,鄙人深感自己数学功力不足,于是决定借助计算机来帮助解决问题。
接下来说说鄙人是怎么设计算法的:
我将每一个选项,判定或者结局用结构体Choice来表示。Choice主要起到两个作用,其一便是存储到当前Choice的各种数值,我这里定义了三个变量kazusa,setsuna,fq分别存储到当前Choice为止的冬马好感度,雪菜好感度以及浮气度,接着定义两个布尔类型neFlag,setsunaFlag分别表示NE的flag和雪菜TE的flag;其二便是要为下一个Choice做指引,这里就相对比较复杂。我这里定义了好多变量,首先定义了三个int变量deltaKazusa,deltaSetsuna,deltaFq分别来表示选项对于冬马好感度,雪菜好感度以及浮气度的变化关系,这三个变量可以分别取0,1,2,比如deltaKazusa取0表示没有选项会对冬马好感度起作用,deltaSetsuna取1表示选项A会对雪菜好感度起作用,取2表示选项B会对雪菜好感度起作用,接着定义两个int类型openNEFlag,openSetsunaFlag来表示选项对于开启flag的作用,取值和前面三个一样,不多做叙述了。每个Choice要包含两个指针(
或者也可以是两个序号),分别表示选A和选B(或者判定的是,否)所对应的后一个Choice应该是什么。
现在该说说整体算法设计思路了。我觉得这个问题应该用栈解决,这里我提供两种思路(其实是大同小异)。第一种,选项1的Choice入栈。每次栈顶元素tmp出栈(注意是出栈, 移出去了),然后把它的两个儿子复制之后得到tmpA,tmpB,利用tmp计算出tmpA和tmpB的各项好感度以及flag是否开启,然后将tmpA和tmpB入栈。重复这样做直到栈空。第二种,我这里给Choice添加了一个int变量status,可以取0,1,2分别用来标识它是准备选A选项,还是准备选B选项,还是A,B都选过了。选项1的Choice入栈,每次判断栈顶元素的status,如果是0,代表准备选A,将status加一,然后修改A儿子的各个数值之后将其入栈;如果是1,代表准备选B,status再加一,然后修改B儿子的各个数值之后将其入栈;如果是2,代表A,B都选过了,将其出栈。我个人推荐第二种方法,因为占用空间少,第一种需要复制大量的Choice同时压到栈里,第二个等于只有十几个Choice,我们做的只是在修改它的值而已。至于选项A,B能不能选,就另外加条件判断,这里贴出代码。
#include&iostream&
#include&stack&
struct Choice {
Choice* A;
Choice* B;
//-1代表结局,0代表正常选项,1代表NE判定,2代表TE判定
int endingT//0代表雪菜TE,1代表雪菜NE,2代表冬马NE,3代表冬马TE
//0代表下一个选A,1代表下一个选B
//选项序号,用于屏蔽选项
//冬马好感度
//雪菜好感度
//增加好感度,0,1,2分别代表不增加,A选项增加,B选项增加
int deltaK//冬马好感度+1
int deltaS//雪菜好感度+1
int deltaFq;//浮气度+1
bool neF//雪菜NE,冬马NE flag
bool setsunaF//雪菜TE flag
//打开flag,0,1,2分别代表不打开,A选项打开,B选项打开
int openNEF//打开NE flag
int openSetsunaF//打开雪菜TE flag
Choice* chooseA(bool weightFlag) {
A-&status = 0;
if (weightFlag) {
A-&weight =
A-&weight = weight / 2;
//冬马好感度+1
if (deltaKazusa==1) {
A-&kazusa = kazusa + 1;
A-&kazusa =
//雪菜好感度+1
if (deltaSetsuna==1) {
A-&setsuna = setsuna + 1;
A-&setsuna =
//浮气度+1
if (deltaFq==1) {
A-&fq = fq + 1;
//打开NE flag
if (openNEFlag==1) {
A-&neFlag =
A-&neFlag = neF
//打开雪菜TE flag
if (openSetsunaFlag==1) {
A-&setsunaFlag =
A-&setsunaFlag = setsunaF
Choice* chooseB(bool weightFlag) {
B-&status = 0;
if (weightFlag) {
B-&weight =
B-&weight = weight / 2;
//冬马好感度+1
if (deltaKazusa==2) {
B-&kazusa = kazusa + 1;
B-&kazusa =
//雪菜好感度+1
if (deltaSetsuna==2) {
B-&setsuna = setsuna + 1;
B-&setsuna =
//浮气度+1
if (deltaFq==2) {
B-&fq = fq + 1;
//打开NE flag
if (openNEFlag == 2) {
B-&neFlag =
B-&neFlag = neF
//打开雪菜TE flag
if (openSetsunaFlag == 2) {
B-&setsunaFlag =
B-&setsunaFlag = setsunaF
Choice(int dK , int dS , int dF , int oNF,int oSF,Choice* cA,Choice *cB,int n,int t=0,int eT=0) {
status = 0;
kazusa = setsuna = fq = 0;
neFlag = setsunaFlag
deltaKazusa = dK;
deltaSetsuna = dS;
deltaFq = dF;
openNEFlag = oNF;
openSetsunaFlag = oSF;
endingType = eT;
int main() {
int endingNumber = 0;
int endingTypeNumber[4] = { 0 };
int endingWeightNumber[4] = { 0 };
bool flagA, flagB;
Choice *setsunaTrueEnding = new Choice(0, 0, 0, 0, 0, 0, 0, 0, -1, 0), *setsunaNormalEnding = new Choice(0, 0, 0, 0, 0, 0, 0, 1, -1, 1), *kazusaNormalEnding = new Choice(0, 0, 0, 0, 0, 0, 0, 2, -1, 2), *kazusaTrueEnding = new Choice(0, 0, 0, 0, 0, 0, 0, 3, -1, 3);
Choice *pd4 = new Choice(0, 0, 0, 0, 0, setsunaTrueEnding, kazusaTrueEnding, 4, 2),
*pd3 = new Choice(0, 0, 0, 0, 0, pd4, setsunaNormalEnding, 3, 2);
Choice *choice14 = new Choice(0, 0, 0, 0, 0, pd3, pd4, 14),
*choice13 = new Choice(0, 0, 0, 0, 0, kazusaNormalEnding, choice14, 13),
*choice12 = new Choice(1, 0, 0, 0, 2, choice13, choice13, 12);
Choice *pd2 = new Choice(0, 0, 0, 0, 0, choice13, choice12, 2, 1);
Choice *choice11 = new Choice(2, 1, 0, 0, 0, pd2, pd2, 11);
Choice *pd1 = new Choice(0, 0, 0, 0, 0, choice13, choice11, 1, 1);
Choice *choice10 = new Choice(1, 0, 2, 0, 0, pd1, pd1, 10),
*choice9 = new Choice(0, 1, 0, 0, 0, pd1, choice10, 9),
*choice8 = new Choice(1, 2, 1, 0, 0, choice9, choice9, 8),
*choice7 = new Choice(0, 1, 2, 0, 0, choice8, choice8, 7),
*choice6 = new Choice(1, 2, 0, 0, 0, choice7, choice7, 6),
*choice5 = new Choice(0, 1, 1, 0, 0, choice7, choice6, 5),
*choice4 = new Choice(2, 0, 1, 0, 0, choice5, choice5, 4),
*choice3 = new Choice(0, 2, 0, 0, 0, choice4, choice5, 3),
*choice2 = new Choice(0, 2, 0, 1, 0, choice5, choice3, 2),
*choice1 = new Choice(0, 1, 0, 0, 0, choice2, choice2, 1);
choice1-&weight = 16384;
stack&Choice*& choiceS
choiceStack.push(choice1);
while (!choiceStack.empty()) {
Choice* tmp = choiceStack.top();
if (tmp-&type==0) {
if ((tmp-&num == 13 && tmp-&setsunaFlag) || (tmp-&num == 12 && tmp-&setsuna & tmp-&kazusa + tmp-&fq)) {
if (tmp-&num == 14 && tmp-&kazusa & 6) {
if (tmp-&status==0) {
tmp-&status = tmp-&status + 1;
if (flagA) {
choiceStack.push(tmp-&chooseA(flagB));
else if (tmp-&status == 1) {
tmp-&status = tmp-&status + 1;
if (flagB) {
choiceStack.push(tmp-&chooseB(flagA));
choiceStack.pop();
else if(tmp-&type==1){
choiceStack.pop();
if (tmp-&neFlag) {
choiceStack.push(tmp-&chooseA(true));
choiceStack.push(tmp-&chooseB(true));
else if(tmp-&type==2){
choiceStack.pop();
if (tmp-&setsunaFlag) {
choiceStack.push(tmp-&chooseA(true));
choiceStack.push(tmp-&chooseB(true));
else if (tmp-&type == -1) {
choiceStack.pop();
endingNumber++;
endingTypeNumber[tmp-&endingType] = endingTypeNumber[tmp-&endingType] + 1;
endingWeightNumber[tmp-&endingType] = endingWeightNumber[tmp-&endingType] + tmp-&
cout && "endingNumber:" && endingNumber &&
cout && "雪菜TE:" && endingTypeNumber[0] &&
cout && "雪菜NE:" && endingTypeNumber[1] &&
cout && "冬马NE:" && endingTypeNumber[2] &&
cout && "冬马TE:" && endingWeightNumber[3] &&
cout && "雪菜TE:" && endingWeightNumber[0] &&
cout && "雪菜NE:" && endingWeightNumber[1] &&
cout && "冬马NE:" && endingWeightNumber[2] &&
cout && "冬马TE:" && endingWeightNumber[3] &&
}我们最后计算出雪菜TE总共有432种情况,雪菜NE总共有299种情况,冬马NE总共有299种情况,冬马TE总共有4种情况,全局共有1034种情况。很多人到这里可能松一口气,我们拿各个种类的结局数除以1034不就能得到每个结局出现的概率了吗?
这种想法显然是错误的。我给大家举个例子,我们玩抛硬币游戏,我说给你抛两次,你两次都抛反面算你赢,请问你赢的概率是多少?这个是小学数学对吧,是个人都知道4种 情况所以是1/4。这里我再加个条件,我说你只要抛一到一次正面就算我赢,你不用抛了,那么你赢的概率是多少?这个时候其实只有3种情况,就是1正,1反2正,1反2反,但你肯定不会说1/3吧?因为这三个结果概率并不相等,1正的概率是后面两个的两倍,所以依然是1/4。
那么放到我们这里的问题怎么计算呢?我这里提出一个思路,我加入一个名为权重weight的变量,这个weight的值我们这个Choice底下潜在的能选的值是多少(注意,weight值 不代表真实能选的数量,但是与weight总量的比值依然能反映出该到选项有多大概率),选项1的Choice我给它的weight赋值为1次方),每次如果是2选1的选项,A,B两个Choice的权值取为当前Choice的一半;如果是判定,由于判定结果具有唯一性,它的下一个Choice权值不变;如果是两个选项有一个被屏蔽掉,那么余下的那个获得当前Choice的全部权值。然后把每个结局获得的所有weight累加起来,最后再除以16384,就是当前结局的概率。
最后贴出结果:
雪菜TE概率:39.3%
雪菜NE概率:30.3%
冬马NE概率:30.4%
冬马TE概率:0.024%
(以上结果是基于每次都是等概率地选两个选项,如果不是概率那么就要复杂很多)
好了,洋洋洒洒写了这么多,也不知道自己说清楚了没有,有问题欢迎随时和我交流。最后告诉大家,我是雪菜党哦,欢迎大家有空来百度的小木曾雪菜吧坐坐!
没有更多推荐了,白色相簿2游戏百度云|白色相簿2下载汉化序章终章整合版-乐游网游戏下载
安全的单机游戏下载大全
→ 白色相簿2 汉化序章终章整合版
白色相簿2汉化序章终章整合版( 又到了白色相簿的季节 )
白色相簿2扎心的很,这他妈讲的就是我的故事啊,可惜雪菜不会一直在原地等我,冬马也越走越远再也追不上,想想看最倒霉的还是我,如果当初不要三心二意,如果当初没有摇摆不定,结果可能会完全不一样,相比游戏我还是喜欢动画,毕竟时间可以定格在白学现场那一刻,三个人不要分开……
游戏大小:6.35G
白色相簿2扎心的很,这他妈讲的就是我的故事啊,可惜雪菜不会一直在原地等我,冬马也越走越远再也追不上,想想看最倒霉的还是我,如果当初不要三心二意,如果当初没有摇摆不定,结果可能会完全不一样,相比游戏我还是喜欢动画,毕竟时间可以定格在白学现场那一刻,三个人不要分开……游戏介绍《白色相簿2》是由LEAF会社制作的游戏,作品讲述了在积雪连连的冬日,各自努力着的几位男女主角之间纠葛复杂的友情和爱情。作品亦改编为同名电视动画。游戏评测雪菜无论遭遇如何的侮辱和背叛,内心都不被击溃的坚韧与温柔冬马为了你断送自己现实的幸福,未来甚至没有与你在一刻重要避免伤害她们,却又不可能不伤害她们我该怎么办如果一开始就没有遇见是不是更好不管选择了谁我都要反复咀嚼被撕碎的真心去迎接所谓美好的结局为了一个人的幸福就必须要扼杀,颠覆和另一个人的所有回忆脱宅神作自然有神作的道理,反正这个东西真的是感同身受,大概在感情的世界没有谁是真正的赢家吧!想要爱情又想要友情,却失去一切值得珍惜的人,想潇洒转身成全别人,却留下了无尽的念想一生的痛苦,说着不希望任何人受伤,却想要享齐人之福的,更是该去坐好船。为什么会有三个人我是春哥的话,我也会犯罪,选不出来,下不了决心,不愿意伤害我想伤害自己传达不了的恋情,已经不需要了因为已经不再有人,值得去爱了游戏背景序章寒冷的风中,传来一阵歌声――黄昏中,那歌声就像在唱和音乐室里我弹奏的吉他。也像在唱和隔壁教室里那不知是谁在弹奏的钢琴。来自屋顶的歌声,犹如清脆的铃音般清澈高亢,它让我们原本凌乱的三种旋律紧紧联系到了一起。一切的开始都在这个晚秋。彼时彼刻,是谁恋上了谁?无论是谁都付出了全心全意。无论是谁都在以坚强意志向前。无论是谁都一心一意地,很纯粹地、坦诚地――想要在内心深处结合,获得无可替代的瞬间。所以在那时,谁爱上了谁。是一步也不能迟疑的恋爱。而后的冬天――从天而降的积雪,掩盖了所有的罪。不久的春天――所有的惩罚,都与积雪的融化一同降临.终章在寒风中颤抖之时、听到了歌声――在傍晚的校园里,在无人在的食堂里,在孤寂的校舍窗边。三年前被冰封的那首歌曲。被热情突然迫动,点缀着纯粹的思念,欺瞒的歌曲逐渐溶化在夜里。那时,三人一起的冬天已经远去,一个人和另一个人的季节却在循环往复。后续,就在这样的晚秋。那个时候似要撕裂的羁绊的丑陋伤痕尚未干却,但是伴随着有什么将要改变的预感中,开始了。寂寞的两首旋律,互相吸引而再伤害彼此,因此,新的旋律被召集来了。不久,新的冬天即将到来。不能和那个人在一起、而另一个人也已不在的冬天。“白色相簿”什么的,已经无所谓了。因为已经不再有歌,值得去唱了。人物介绍北原春希配音:水岛大宙峰城大附属3年E班。前任班长。所属轻音乐同好会。担当第二吉他手(杂务)。特技是好管闲事和无法还嘴的说教和完美的理论武装。成绩头等。因为他太会照顾人,加上不妥协的性格,全校教师都会顺应他,学生们自然也仰慕着他。在校园生活最后的一年,想要留下一点美好的回忆,所以就计划要踏上校园祭的舞台。可是手指却很笨拙。小木曾雪菜配音:米泽圆峰城大附属3年A班。 峰城大附属小姐连续两年获胜,受到能够获得三连胜的期待的高岭之花。和华丽得身姿不相称的是,待人接物平易近人的态度,不会犯错的女孩子。性格好到让周围的人三年间都深信是这种女孩子的她,却只对打破那面看不见的墙壁,触碰到她内心的人展现出恶作剧般的微笑。对所有人都隐瞒的情况之下,兴趣是卡拉OK,不过都是自己一个人去卡拉OK,并且可以单独连续唱数个小时。每次的开场曲,都是稍微有点老的流行歌。冬马和纱配音:生天目仁美峰城大附属3年E班。 经常在窗边的座位上睡着,迟到。逃课的惯犯。抱有“大人们无法理解我”这样的冤屈,不合时代的女孩子。有着长而艳丽的黑发,和不会输给模特的外貌。因为那细长的瞳孔中蕴含着那种孤高而暴力的性格所表现出的锐利之美的原因,陷入了总是和周围人产生距离的恶性循环之中。但本人则是一副毫不关心的逞强。虽然是谁也没有提过,但要说起来的话,那就是绪方理奈派。
安卓官方手机版
IOS官方手机版
其他版本下载
下载周排行
下载总排行
◎ 我们收集了众多网友经常出现的问题,点击浏览:如果下载的时候提示 &Service Unavailable& ?请务必使用
下载本站游戏!
◎ 游戏1号群:336883(满),游戏2号群:,欢迎加入。
◎ 提供 白色相簿2
中文破解版,保证完全无毒病,请大家放心下载.
◎ 本站仅创建用户沟通交流的平台,所展示的游戏资源内容均来自于用户上传分享,版权问题均与我站无关。资源仅作为用户间分享讨论之用,如该游戏触犯了您的权利,请发送至邮箱:,我们第一时间给予删除。同步各端记录
下载PC客户端,上传视频更轻松!
药品服务许可证(京)-经营-
请使用者仔细阅读优酷、、
Copyright(C)2017 优酷 youku.com 版权所有
不良信息举报电话:
《白色相簿2》大结局
《白色相簿2》大结局—在线播放—《《白色相簿2》大结局》—游戏—优酷网,视频高清在线观看
微信/手机 扫码分享
点击一下 网页分享
<input id="link4" type="text" class="fn-share-input" value="" data-spm-anchor-id="0.0.0.i1" />
复制通用代码
<input type="text" class="fn-share-input" id="link3" value="" />
复制Html代码
复制Flash代码
将启用PC客户端下载视频
《白色相簿2》大结局
用优酷移动APP扫码
或用微信扫码观看
二维码2小时有效
没有客户端?扫码马上安装
IPHONE / 安卓
《白色相簿2》大结局
使用HTML5播放器
使用FLASH播放器}

我要回帖

更多关于 白色相簿2汉化版 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信