乙女アタック簡易体験版

■■乙女アタック簡易体験版:制作@115スレ「68MgF9/y」氏
+乙女アタック検証スクリプト
+ケンシンの連チャン数検証スクリプト


■遊び方(要PC。携帯の人は泣いて下さい)
以下のVer.1~4の好きなものをメモ帳などのテキストエディタにコピペして拡張子vbsで保存(例:乙女アタック.vbs)
保存したファイル(VBScript Script File)をダブルクリックでゲーム開始です。
セリフをカスタマイズして楽しむ事も可能です。



□簡易版Ver.1

Dim atack,MyValue,Game
Randomize
Call MsgBox("乙女アタック開始", vbOKOnly)
Do Until Game = vbNo
For atack = 1 to 8
Select Case atack
Case 1
Call MsgBox("我はヒデヨシ 覚悟しろ!", vbOKOnly)
Case 2
Call MsgBox("我はケンシン 行くわよ!", vbOKOnly)
Case 3
Call MsgBox("我はイエヤス 覚悟してください", vbOKOnly)
Case 4
Call MsgBox("我はヨシモト お覚悟はよろしくて?", vbOKOnly)
Case 5
Call MsgBox("我はシンゲン 覚悟はいいか?", vbOKOnly)
Case 6
Call MsgBox("我はマサムネ 覚悟!", vbOKOnly)
Case 7
Call MsgBox("我はノブナガじゃ 覚悟はよいかっ!", vbOKOnly)
Case 8
Call MsgBox("我はミツヒデ 覚悟はできたか?", vbOKOnly)
End Select
MyValue = Int((16 * Rnd) + 1)
If MyValue = 16 Then
Call MsgBox("勝利", vbOKOnly)
Call MsgBox("大当たり!", vbOKOnly)
Exit For
Else
Call MsgBox("敗北", vbOKOnly)
End If
Next
If MyValue < 16 Then
Call MsgBox("乙女アタック終了", vbOKOnly)
End If
Game = MsgBox("もっかいやる?", vbYesNo)
Loop


□簡易版Ver.2

Dim atack,MyValue,NextValue,Game
Randomize
Call MsgBox("乙女アタック開始", vbOKOnly)
Do Until Game = vbNo
For atack = 1 to 8
MyValue = Int((16 * Rnd) + 1)
Select Case atack
Case 1
Call MsgBox("我はヒデヨシ 覚悟しろ!", vbOKOnly)
Case 2
Call MsgBox("我はケンシン 行くわよ!", vbOKOnly)
Case 3
Call MsgBox("我はイエヤス 覚悟してください", vbOKOnly)
Case 4
Call MsgBox("我はヨシモト お覚悟はよろしくて?", vbOKOnly)
Case 5
Call MsgBox("我はシンゲン 覚悟はいいか?", vbOKOnly)
Case 6
Call MsgBox("我はマサムネ 覚悟!", vbOKOnly)
Case 7
Call MsgBox("我はノブナガじゃ 覚悟はよいかっ!", vbOKOnly)
Case 8
Call MsgBox("我はミツヒデ 覚悟はできたか?", vbOKOnly)
End Select
If MyValue = 16 Then
NextValue = Int((100 * Rnd) + 1)
If NextValue <= 9 Then
Call MsgBox("オウガイ参上!", vbOKOnly)
ElseIf NextValue <= 37 Then
Call MsgBox("切り刻んであげる…", vbOKOnly)
ElseIf NextValue <= 87 Then
Call MsgBox("僕の出番だ!", vbOKOnly)
Else
Call MsgBox("わお~ん", vbOKOnly)
End If
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("じゃきーん!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Call MsgBox("大当たり!", vbOKOnly)
Exit For
Else
NextValue = MyValue * 100 + Int((100 * Rnd) + 1)
If NextValue <= 970 Then
Call MsgBox("オウガイ参上!", vbOKOnly)
ElseIf NextValue <= 1436 Then
Call MsgBox("切り刻んであげる…", vbOKOnly)
Else
Call MsgBox("僕の出番だ!", vbOKOnly)
End If
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("じゃきーん!", vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
End If
Next
If MyValue < 16 Then
Call MsgBox("乙女アタック終了", vbOKOnly)
End If
Game = MsgBox("もっかいやる?", vbYesNo)
Loop


□簡易版Ver.2.1

Dim otome(3, 8),enemy(3, 4)
'乙女の名乗り
otome(1, 1) = "我はヒデヨシ 覚悟しろ!"
otome(1, 2) = "我はケンシン 行くわよ!"
otome(1, 3) = "我はイエヤス 覚悟してください"
otome(1, 4) = "我はヨシモト お覚悟はよろしくて?"
otome(1, 5) = "我はシンゲン 覚悟はいいか?"
otome(1, 6) = "我はマサムネ 覚悟!"
otome(1, 7) = "我はノブナガじゃ 覚悟はよいかっ!"
otome(1, 8) = "我はミツヒデ 覚悟はできたか?"
'乙女の勝利
otome(2, 1) = "勝っちゃったもんね~ やったね!"
otome(2, 2) = "フフッ口ほどにもない"
otome(2, 3) = "やりました"
otome(2, 4) = "ひれ伏しなさい お~っほっほっほ、楽勝ですわ"
otome(2, 5) = "よっしやー"
otome(2, 6) = "間合いが甘い たわいもない"
otome(2, 7) = "楽勝、楽勝!ハッハッハッハ!"
otome(2, 8) = "フフ…私の勝ちだ"
'乙女の敗北
otome(3, 1) = "いった~い"
otome(3, 2) = "不覚…"
otome(3, 3) = "やられちゃいました…"
otome(3, 4) = "この私が…"
otome(3, 5) = "ってえなぁ…"
otome(3, 6) = "無念…"
otome(3, 7) = "ちっくしょう…"
otome(3, 8) = "よくも…"
'敵の名乗り
enemy(1, 1) = "オウガイ参上!"
enemy(1, 2) = "切り刻んであげる…"
enemy(1, 3) = "僕の出番だ!"
enemy(1, 4) = "わおーん"
'敵の勝利
enemy(2, 1) = "あーははは!"
enemy(2, 2) = "おーほっほっほ!"
enemy(2, 3) = "ぼ、僕だって!"
'敵の敗北
enemy(3, 1) = "不覚!"
enemy(3, 2) = "いった~ぃん…"
enemy(3, 3) = "つ、つよい…"
enemy(3, 4) = "くぅ~ん"
'勝率(パーセント)
Const SS = 6.6
'勝利試合の中での敵のパーセンテージ
Const WIN_OUGAI = 4
Const WIN_MURASAME = 27.5
Const WIN_KOTAROU = 61
'敗北試合の中での敵のパーセンテージ
Const LOST_OUGAI = 56.3
Const LOST_MURASAME = 37.3
Dim atack,MyValue,NextValue,Game
Randomize
Call MsgBox("乙女アタック開始", vbOKOnly)
Do Until Game = vbNo
For atack = 1 to 8
MyValue = CSng((100 * Rnd) + 1)
Call MsgBox(otome(1, atack), vbOKOnly)
If MyValue <= SS Then
NextValue = CSng((100 * Rnd) + 1)
If NextValue <= WIN_OUGAI Then
i = 1
ElseIf NextValue <= (WIN_OUGAI + WIN_MURASAME) Then
i = 2
ElseIf NextValue <= (WIN_OUGAI + WIN_MURASAME + WIN_KOTAROU) Then
i = 3
Else
i = 4
End If
Call MsgBox(enemy(1, i), vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("じゃきーん!", vbOKOnly)
Call MsgBox(enemy(3, i), vbOKOnly)
Call MsgBox(otome(2, atack), vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Call MsgBox("大当たり!", vbOKOnly)
Exit For
Else
NextValue = CSng((100 * Rnd) + 1)
If NextValue <= LOST_OUGAI Then
i = 1
ElseIf NextValue <= (LOST_OUGAI + LOST_MURASAME) Then
i = 2
Else
i = 3
End If
Call MsgBox(enemy(1, i), vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("じゃきーん!", vbOKOnly)
Call MsgBox(otome(3, atack), vbOKOnly)
Call MsgBox(enemy(2, i), vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
End If
Next
If MyValue > SS Then
Call MsgBox("乙女アタック終了", vbOKOnly)
End If
Game = MsgBox("もっかいやる?", vbYesNo)
Loop


□簡易版Ver.3:改編@115スレ「Z76uUf9s」氏

Dim atack,NextValue,Game
Randomize
Call MsgBox("乙女アタック開始", vbOKOnly)
Do Until Game = vbNo
For atack = 1 to 8
NextValue = Int(1515 * Rnd + 1)
Select Case atack
Case 1
Call MsgBox("我はヒデヨシ 覚悟しろ!", vbOKOnly)
Case 2
Call MsgBox("我はケンシン 行くわよ!", vbOKOnly)
Case 3
Call MsgBox("我はイエヤス 覚悟してください", vbOKOnly)
Case 4
Call MsgBox("我はヨシモト お覚悟はよろしくて?", vbOKOnly)
Case 5
Call MsgBox("我はシンゲン 覚悟はいいか?", vbOKOnly)
Case 6
Call MsgBox("我はマサムネ 覚悟!", vbOKOnly)
Case 7
Call MsgBox("我はノブナガじゃ 覚悟はよいかっ!", vbOKOnly)
Case 8
Call MsgBox("我はミツヒデ 覚悟はできたか?", vbOKOnly)
End Select
If NextValue <= 2 Then
Call MsgBox("vs オウガイ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Call MsgBox("大当たり!", vbOKOnly)
Exit For
ElseIf NextValue <= 1000 Then
Call MsgBox("vs オウガイ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
ElseIf NextValue <= 1017 Then
Call MsgBox("vs ムラサメ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Call MsgBox("大当たり!", vbOKOnly)
Exit For
ElseIf NextValue <= 1335 Then
Call MsgBox("vs ムラサメ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
ElseIf NextValue <= 1401 Then
Call MsgBox("vs コタロウ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Call MsgBox("大当たり!", vbOKOnly)
Exit For
ElseIf NextValue <= 1500 Then
Call MsgBox("vs コタロウ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
ElseIf NextValue <= 1515 Then
Call MsgBox("vs シロ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Call MsgBox("大当たり!", vbOKOnly)
Exit For
NextValue = Int(1515 * Rnd + 1)
End If
If atack >= 8 Then
Call MsgBox("乙女アタック終了", vbOKOnly)
End If
Next
Game = MsgBox("もっかいやる?", vbYesNo)
Loop

□簡易版(通常時大当たり付き)Ver.3.1:改編@115スレ「Z76uUf9s」氏

Dim attack,NextValue,Game,Rcount,kaiten,Round
Randomize
kaiten = 0
Rcount = 0

Do Until Game = vbNo

'通常モードの処理
Do
kaiten = kaiten + 1
NextValue = Int(9945 * Rnd + 1)
If NextValue <= 3 Then
Call MsgBox(kaiten & "回転で 15R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 15
kaiten = 0
Exit Do
ElseIf NextValue <= 100 Then
Call MsgBox(kaiten & "回転で 5R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 5
kaiten = 0
Exit Do
End If
Loop
'乙女アタックの処理
If Round <= 5 Then
Call MsgBox("乙女アタック開始", vbOKOnly)
For attack = 1 to 8
kaiten = kaiten + 1
NextValue = Int(3030 * Rnd + 1)
Select Case attack
Case 1
Call MsgBox("我はヒデヨシ 覚悟しろ!", vbOKOnly)
Case 2
Call MsgBox("我はケンシン 行くわよ!", vbOKOnly)
Case 3
Call MsgBox("我はイエヤス 覚悟してください", vbOKOnly)
Case 4
Call MsgBox("我はヨシモト お覚悟はよろしくて?", vbOKOnly)
Case 5
Call MsgBox("我はシンゲン 覚悟はいいか?", vbOKOnly)
Case 6
Call MsgBox("我はマサムネ 覚悟!", vbOKOnly)
Case 7
Call MsgBox("我はノブナガじゃ 覚悟はよいかっ!", vbOKOnly)
Case 8
Call MsgBox("我はミツヒデ 覚悟はできたか?", vbOKOnly)
End Select
If NextValue <= 4 Then
Call MsgBox("vs オウガイ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Round = RoundCheck()
Call MsgBox(Round & "R 大当り!", vbOKOnly)
kaiten = 0
Rcount = Rcount + 1
Exit For
ElseIf NextValue <= 1800 Then
Call MsgBox("vs オウガイ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
ElseIf NextValue <= 1846 Then
Call MsgBox("vs ムラサメ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Round = RoundCheck()
Call MsgBox(Round & "R 大当り!", vbOKOnly)
kaiten = 0
Rcount = Rcount + 1
Exit For
ElseIf NextValue <= 2700 Then
Call MsgBox("vs ムラサメ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
ElseIf NextValue <= 2820 Then
Call MsgBox("vs コタロウ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Round = RoundCheck()
Call MsgBox(Round & "R 大当り!", vbOKOnly)
kaiten = 0
Rcount = Rcount + 1
Exit For
ElseIf NextValue <= 3000 Then
Call MsgBox("vs コタロウ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
ElseIf NextValue <= 3030 Then
Call MsgBox("vs シロ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Round = RoundCheck()
Call MsgBox(Round & "R 大当り!", vbOKOnly)
kaiten = 0
Rcount = Rcount + 1
Exit For
NextValue = Int(3030 * Rnd + 1)
End If
If attack >= 8 Then
Call MsgBox("乙女アタック終了", vbOKOnly)
Rcount = 0
End If
Next
End If
'戦国モード+乙女モードの処理
While Rcount <> 0

Do
kaiten = kaiten + 1
NextValue = Int(1515 * Rnd + 1)
If NextValue <= 3 Then
Call MsgBox(kaiten & "回転で 15R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 15
kaiten = 0
Exit Do
ElseIf NextValue <= 100 Then
Call MsgBox(kaiten & "回転で 5R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 5
kaiten = 0
Exit Do
End If
Loop While kaiten < 8
If kaiten <> 0 Then
Do
kaiten = kaiten + 1
NextValue = Int(9945 * Rnd + 1)
If NextValue <= 3 Then
Call MsgBox(kaiten & "回転で 15R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 15
kaiten = 0
Exit Do
ElseIf NextValue <= 100 Then
Call MsgBox(kaiten & "回転で 5R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 5
kaiten = 0
Exit Do
End If
If kaiten >= 100 Then
Call MsgBox(Rcount & "連チャン で 乙女モード終了", vbOKOnly)
Rcount = 0
End If
Loop While kaiten < 100
End If

Wend
Game = MsgBox("もっかいやる?", vbYesNo)
Loop

'乙女アタック時の15R判定用サブルーチン
Function RoundCheck()
NextValue = Int(100 * Rnd + 1)
If NextValue <= 3 Then
RoundCheck = 15
Else
RoundCheck = 5
End If
End Function


□簡易版(通常時大当たり付き)Ver.3.2:改編@129スレ「QqghILvc」氏

Dim attack,NextValue,Game,Rcount,Dcount,kaiten,Round
Randomize
kaiten = 0
Rcount = 0
Dcount = 0

Do Until Game = vbNo

'通常モードの処理
Do
kaiten = kaiten + 1
NextValue = Int(9945 * Rnd + 1)
If NextValue <= 3 Then
Call MsgBox(kaiten & "回転で 15R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 15
Dcount = Dcount + 1500
kaiten = 0
Exit Do
ElseIf NextValue <= 100 Then
Call MsgBox(kaiten & "回転で 5R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 5
Dcount = Dcount + 500
kaiten = 0
Exit Do
End If
Loop
'乙女アタックの処理
If Round <= 5 Then
Call MsgBox("乙女アタック開始", vbOKOnly)
For attack = 1 to 8
kaiten = kaiten + 1
NextValue = Int(3030 * Rnd + 1)
Select Case attack
Case 1
Call MsgBox("我はヒデヨシ 覚悟しろ!", vbOKOnly)
Case 2
Call MsgBox("我はケンシン 行くわよ!", vbOKOnly)
Case 3
Call MsgBox("我はイエヤス 覚悟してください", vbOKOnly)
Case 4
Call MsgBox("我はヨシモト お覚悟はよろしくて?", vbOKOnly)
Case 5
Call MsgBox("我はシンゲン 覚悟はいいか?", vbOKOnly)
Case 6
Call MsgBox("我はマサムネ 覚悟!", vbOKOnly)
Case 7
Call MsgBox("我はノブナガじゃ 覚悟はよいかっ!", vbOKOnly)
Case 8
Call MsgBox("我はミツヒデ 覚悟はできたか?", vbOKOnly)
End Select
If NextValue <= 4 Then
Call MsgBox("vs オウガイ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Round = RoundCheck()
Call MsgBox(Round & "R 大当り!", vbOKOnly)
Dcount = Dcount + Round * 100
kaiten = 0
Rcount = Rcount + 1
Exit For
ElseIf NextValue <= 1800 Then
Call MsgBox("vs オウガイ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
ElseIf NextValue <= 1846 Then
Call MsgBox("vs ムラサメ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Round = RoundCheck()
Call MsgBox(Round & "R 大当り!", vbOKOnly)
Dcount = Dcount + Round * 100
kaiten = 0
Rcount = Rcount + 1
Exit For
ElseIf NextValue <= 2700 Then
Call MsgBox("vs ムラサメ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
ElseIf NextValue <= 2820 Then
Call MsgBox("vs コタロウ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Round = RoundCheck()
Call MsgBox(Round & "R 大当り!", vbOKOnly)
Dcount = Dcount + Round * 100
kaiten = 0
Rcount = Rcount + 1
Exit For
ElseIf NextValue <= 3000 Then
Call MsgBox("vs コタロウ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("敗北", vbOKOnly)
ElseIf NextValue <= 3030 Then
Call MsgBox("vs シロ", vbOKOnly)
Call MsgBox("いざ、勝負!", vbOKOnly)
Call MsgBox("勝利", vbOKOnly)
Round = RoundCheck()
Call MsgBox(Round & "R 大当り!", vbOKOnly)
Dcount = Dcount + Round * 100
kaiten = 0
Rcount = Rcount + 1
Exit For
NextValue = Int(3030 * Rnd + 1)
End If
If attack >= 8 Then
Call MsgBox("乙女アタック終了", vbOKOnly)
Rcount = 0
End If
Next
End If
'戦国モード+乙女モードの処理
While Rcount <> 0

Do
kaiten = kaiten + 1
NextValue = Int(1515 * Rnd + 1)
If NextValue <= 3 Then
Call MsgBox(kaiten & "回転で 15R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 15
Dcount = Dcount + 1500
kaiten = 0
Exit Do
ElseIf NextValue <= 100 Then
Call MsgBox(kaiten & "回転で 5R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 5
Dcount = Dcount + 500
kaiten = 0
Exit Do
End If
Loop While kaiten < 8
If kaiten <> 0 Then
Do
kaiten = kaiten + 1
NextValue = Int(9945 * Rnd + 1)
If NextValue <= 3 Then
Call MsgBox(kaiten & "回転で 15R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 15
Dcount = Dcount + 1500
kaiten = 0
Exit Do
ElseIf NextValue <= 100 Then
Call MsgBox(kaiten & "回転で 5R 大当り!" , vbOKOnly)
Rcount = Rcount + 1
Round = 5
Dcount = Dcount + 500
kaiten = 0
Exit Do
End If
If kaiten >= 100 Then
Call MsgBox(Rcount & "連チャン で 乙女モード終了", vbOKOnly)
Call MsgBox(Dcount & " 発獲得", vbOKOnly)
Rcount = 0
End If
Loop While kaiten < 100
End If

Wend
Dcount = 0
Game = MsgBox("もっかいやる?", vbYesNo)
Loop

'乙女アタック時の15R判定用サブルーチン
Function RoundCheck()
NextValue = Int(100 * Rnd + 1)
If NextValue <= 3 Then
RoundCheck = 15
Else
RoundCheck = 5
End If
End Function



□簡易版Ver.4:改編@115スレ「UsWdvlKQ」氏

' 3030の乱数のうち200までが当たり(確率1/15.15)。
' 当たり乱数200個のうち、8個をオウガイでの当たり、
' 55個をムラサメでの当たり、122個をコタロウでの当たり、
' 15個をシロでの当たりとしています。
' はずれ乱数2830個のうち、1592個をオウガイでの外れ、
' 1055個をムラサメでの外れ、183個をコタロウでの外れとしています。
' (注)数字は体感上や書込みデータをもとに適当に求めたもの。
' もっと良い値があると思われるときは直して使って下さい。
' セリフはまとめwikiを参照
'
' まとめると
' 当たり: 外れ 信頼度
' オウガイ 8 : 1592 = 1:199 0.5%
' ムラサメ 55 : 1055 ≒ 1: 19 5%
' コタロウ 122 : 183 = 1:1.5 40%
' シロ 15 : 0 100%
'
Dim Attk 'アタック順を格納
Dim Tyusen '当落判定乱数格納
Dim Atari '当たり時登場敵判定用
Dim Hazure 'はずれ時登場敵判定用
Dim EndSW '終了判定
'
Do Until EndSW = vbNo
Call MsgBox("乙女アタック開始", vbOKOnly)
'
' 8人分ループ
For Attk = 1 To 8
' 乙女登場時のセリフ
Select Case Attk
Case 1
Call MsgBox("我はヒデヨシ 覚悟しろ!", vbOKOnly)
Case 2
Call MsgBox("我はケンシン 行くわよ!", vbOKOnly)
Case 3
Call MsgBox("我はイエヤス 覚悟してください", vbOKOnly)
Case 4
Call MsgBox("我はヨシモト お覚悟はよろしくて?", vbOKOnly)
Case 5
Call MsgBox("我はシンゲン 覚悟はいいか?", vbOKOnly)
Case 6
Call MsgBox("我はマサムネ 覚悟!", vbOKOnly)
Case 7
Call MsgBox("我はノブナガじゃ 覚悟はよいかっ!", vbOKOnly)
Case 8
Call MsgBox("我はミツヒデ 覚悟はできたか?", vbOKOnly)
End Select
'
' 当落判定乱数を求める。200以下なら当たり
' 乱数初期化
Randomize
Tyusen = Int((3030 * Rnd) + 1)
If Tyusen <= 200 Then
' 当たり時敵武将登場判定
Atari = Int((200 * Rnd) + 1)
If Atari <= 8 Then
Call MsgBox("フンッ!", vbOKOnly)
Call MsgBox("不覚ッ!", vbOKOnly)
ElseIf Atari >= 9 And Atari <= 63 Then
Call MsgBox("ハァッ!", vbOKOnly)
Call MsgBox("痛ったぁ~い", vbOKOnly)
ElseIf Atari >= 64 And Atari <= 185 Then
Call MsgBox("たぁ~!", vbOKOnly)
Call MsgBox("つ、つよい", vbOKOnly)
Else
Call MsgBox("わぉ~ん!", vbOKOnly)
Call MsgBox("くぅ~ん", vbOKOnly)
End If
' 乙女勝利時のセリフ
Select Case Attk
Case 1
Call MsgBox("勝っちゃったもんね~ やったね!", vbOKOnly)
Case 2
Call MsgBox("フフッ口ほどにもない", vbOKOnly)
Case 3
Call MsgBox("やりました", vbOKOnly)
Case 4
Call MsgBox("ひれ伏しなさい お~っほっほっほ、楽勝ですわ", vbOKOnly)
Case 5
Call MsgBox("よっしやー", vbOKOnly)
Case 6
Call MsgBox("間合いが甘い たわいもない", vbOKOnly)
Case 7
Call MsgBox("楽勝、楽勝!ハッハッハッハ!", vbOKOnly)
Case 8
Call MsgBox("フフ・・私の勝ちだ", vbOKOnly)
End Select
Call MsgBox("戦国モード突入!", vbOKOnly)
Exit For
' 201以上なら外れ
Else
' 外れ時敵武将登場判定
Atari = Int((2830 * Rnd) + 1)
If Atari <= 1592 Then 'オウガイ
Call MsgBox("フンッ!", vbOKOnly)
ElseIf Atari >= 1593 And Atari <= 2647 Then 'ムラサメ
Call MsgBox("ハァッ!", vbOKOnly)
ElseIf Atari >= 2648 And Atari <= 2830 Then 'コタロウ
Call MsgBox("たぁ~!", vbOKOnly)
End If
' 乙女敗北時のセリフ
Select Case Attk
Case 1
Call MsgBox("いった~い", vbOKOnly)
Case 2
Call MsgBox("不覚…", vbOKOnly)
Case 3
Call MsgBox("やられちゃいました…", vbOKOnly)
Case 4
Call MsgBox("この私が…", vbOKOnly)
Case 5
Call MsgBox("(痛)ってえなぁ…", vbOKOnly)
Case 6
Call MsgBox("無念…", vbOKOnly)
Case 7
Call MsgBox("ちっくしょう…", vbOKOnly)
Case 8
Call MsgBox("よくも…", vbOKOnly)
End Select
' 外れ時敵武将のセリフ
If Atari <= 1592 Then 'オウガイ
Call MsgBox("ウェァ~ハッハッハ", vbOKOnly)
ElseIf Atari >= 1593 And Atari <= 2647 Then 'ムラサメ
Call MsgBox("フッフフフフ", vbOKOnly)
ElseIf Atari >= 2648 And Atari <= 2830 Then 'コタロウ
Call MsgBox("ぼ、ぼくだって", vbOKOnly)
End If
If Attk = 8 Then
Call MsgBox("乙女アタック終了", vbOKOnly)
End If

End If
Next
EndSW = MsgBox("再挑戦?", vbYesNo)
Loop



■乙女アタック検証スクリプト@117スレ「xY2EKkF2」氏

Dim atack,MyValue,Game,Did,Win,Lost,MaxWin,MaxLost,WinCount
Did = CLng(InputBox("ノブナガ「トライ回数を半角英数字で入力するのじゃ!」"))
If Did < 1 Then
Call MsgBox("ノブナガ「数値が変じゃ!ふざけるな!くらえ!非情ノ大剣!")
Call MsgBox("ずぎゃーん!!!")
Else
Call MsgBox("ノブナガ「では、" + CStr(Did) + "回、試行しようぞ!」" )
Randomize
Call MsgBox("ヒデヨシ「じゃあー、始めるよー!」", vbOKOnly)
For Game = 1 to Did
For atack = 1 to 8
MyValue = CInt((1515 * Rnd) + 1)
If MyValue <= 100 Then
WinCount = WinCount + 1
Win = Win + 1
If Win > MaxWin Then MaxWin = Win
Lost = 0
Exit For
End If
Next
If MyValue > 100 Then
Lost = Lost + 1
If Lost > MaxLost Then MaxLost = Lost
Win = 0
End If
Next
Call MsgBox("オウガイ「わーはっはっは!最大連続スルー" + CStr(MaxLost) + "回だ!!」")
Call MsgBox("ヒデヨシ「でもでも!最大連覇" + CStr(MaxWin) + "回だよ!!」")
Call MsgBox("ノブナガ「結局、" + CStr(Did) + "回中、勝ったのは" + CStr(WinCount) + "回だな!」")
End If



■ケンシンの連チャン数検証スクリプト@122スレ「ym4pMQnN」氏

Dim sengoku,MyValue,Game,Did,Win,MaxWin,MaxLost,average,otome,Tan
Call MsgBox("ケンシン「ああ、いい水浴だった…あ、上杉ケンシンです」")
Call MsgBox("ケンシン「乙女アタック突入回数に対する最高連チャン数を調べてみましょう」")
Did = CLng(InputBox("ケンシン「トライ回数を半角英数字で入力してね」"))
If Did < 1 Then
Call MsgBox("ケンシン「数値がおかしいわ!馬鹿にする気!?雷光連撃槍!」")
Call MsgBox("ずきゅーん!!!")
Else
Call MsgBox("ケンシン「では、" + CStr(Did) + "回、試行しましょう」" )
Randomize
Call MsgBox("シンゲン「ナッシャー! いくぞ!!」")
average = 0 : Tan = 0
For Game = 1 to Did
Win = 1
Do
For sengoku = 1 to 8
MyValue = CInt((1515 * Rnd) + 1)
If MyValue <= 100 Then
Win = Win + 1
If Win > MaxWin Then MaxWin = Win
Exit For
End If
Next
If (MyValue > 100) and (Win > 1) Then
For sengoku = 1 to 92
MyValue = CInt((9945 * Rnd) + 1)
If MyValue <= 100 Then
Win = Win + 1
If Win > MaxWin Then MaxWin = Win
Exit For
End If
Next
End If
Loop Until MyValue > 100
If Win = 1 Then Tan = Tan + 1
average = average + Win
Next
Call MsgBox("ケンシン「結局、アタック" + CStr(Did) + "回の最大連チャン数は…」")
Call MsgBox(CStr(MaxWin) + "回…")
Call MsgBox("ケンシン「うち乙女アタックを突破できなかったのは…」")
Call MsgBox(CStr(Tan) + "回…")
Call MsgBox("ケンシン「平均" + CStr(CSng(average/Did)) + "連チャンとなりました…」" )
Call MsgBox("ケンシン「実機でも頑張ってね」" )
Call MsgBox("シンゲン「ナッシャー!」" )
End If

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2009年03月16日 12:15
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。