乙女アタック簡易体験版

初代wikiからパクってきました。
大当たり確率は乙女2のものに変更済。


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


■乙女アタック検証スクリプト@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((1440 * 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((1440 * 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((9990 * 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


■通常大当たり+乙女アタック+乙女ループ複合

'初代戦国乙女wiki( http://www11.atwiki.jp/sengokuotome/ )より、
'"簡易版(通常時大当たり付き)Ver.3.2:改編@129スレ「QqghILvc」氏"
'を甘乙女2仕様に改変
'対戦相手の出現率や信頼度などは同wikiの
'"簡易版Ver.4:改編@115スレ「UsWdvlKQ」氏"
'の数値を2仕様に合わせて適当に手直しした
'5760の乱数のうち400が当たり
'その内訳は下記の通り
'
'     当たり:外れ  信頼度  登場率
'オウガイ   15  2985   0.5%   52.0%
'ムラサメ   105  1995   5.0%   36.5%
'コタロウ   251  380   40.0%   11.0%
'シロ     29   0  100.0%   0.5%
'
'
'○変更点
'・大当たり確率を2仕様に
'・セリフ周りも同様
'・新武将も投入。正確な出現率や信頼度はわからないので適当に代打で出現するだけ
'・PBはなし。PBアリとナシでOKを押す回数が違ってしまうため、実際に遊んでみるとダルかった
'・オウガイ無双、ムラサメ無双、ジェットストリームコタカウント
'・オウガイ無双達成確率は(2985/5760)^8≒0.52%。
'・同じくムラサメ無双は(1995/5760)^8≒0.02%。無理。
'・ジェットストリームコタは(380/5760)^2*(631/5760)≒0.05%? ちょっと自信ない。ちなみにこのスクリプトでさっき達成した。
'
'


Dim attack,NextValue,Game,Rcount,Dcount,kaiten,Round,NewChar,NewChar2,Ougai,Murasame,Kotaro,Motonari,Motochika,Sorin,win,lose
Randomize
kaiten = 0
Rcount = 0
Dcount = 0

Do Until Game = vbNo

'通常モードの処理
Do
kaiten = kaiten + 1
NextValue = Int(9990 * Rnd + 1)
If NextValue <= 5 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
win = 0
lose = 0
NextValue = Int(5760 * Rnd + 1)
NewChar = Int(120 * Rnd + 1)
If NewChar = 9 Then
If Sorin = 1 Then
NewChar = attack
Else
Sorin = 1
End If
NewChar2 = attack
attack = NewChar
End If
If NewChar = 10 Then
If Motonari = 1 Then
NewChar = attack
Else
Motonari = 1
End If
NewChar2 = attack
attack = NewChar
End If
If NewChar = 11 Then
If Motochika = 1 Then
NewChar = attack
Else
Motochika = 1
End If
NewChar2 = attack
attack = NewChar
End If
'キャラ選択
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, "明智ミツヒデ参上!")
Case 9
Call MsgBox("我はソウリン!", vbOKOnly, "大友ソウリン参上!")
Case 10
Call MsgBox("我はモトナリ", vbOKOnly, "毛利モトナリ参上!")
Case 11
Call MsgBox("我はモトチカ!", vbOKOnly, "長宗我部モトチカ参上!")
End Select
'対オウガイ
If NextValue <= 3000 Then
Call MsgBox("我はオウガイ", vbOKOnly, "室生オウガイ参上!")
Select Case attack
Case 1
Call MsgBox("覚悟しろ!   参るがよい!", vbOKOnly, "ヒデヨシ vs オウガイ  勝負!")
Case 2
Call MsgBox("覚悟はいい?   参るがよい!", vbOKOnly, "ケンシン vs オウガイ  勝負!")
Case 3
Call MsgBox("覚悟してください!   参るがよい!", vbOKOnly, "イエヤス vs オウガイ  勝負!")
Case 4
Call MsgBox("覚悟はよろしくて?   参るがよい!", vbOKOnly, "ヨシモト vs オウガイ  勝負!")
Case 5
Call MsgBox("覚悟はいいか!?   参るがよい!", vbOKOnly, "シンゲン vs オウガイ  勝負!")
Case 6
Call MsgBox("覚悟!   参るがよい!", vbOKOnly, "マサムネ vs オウガイ  勝負!")
Case 7
Call MsgBox("覚悟はよいか!   参るがよい!", vbOKOnly, "ノブナガ vs オウガイ  勝負!")
Case 8
Call MsgBox("覚悟はできたか?   参るがよい!", vbOKOnly, "ミツヒデ vs オウガイ  勝負!")
Case 9
Call MsgBox("懺悔せよ!   参るがよい!", vbOKOnly, "ソウリン vs オウガイ  勝負!")
Case 10
Call MsgBox("後悔したいの?   参るがよい!", vbOKOnly, "モトナリ vs オウガイ  勝負!")
Case 11
Call MsgBox("覚悟はできた?   参るがよい!", vbOKOnly, "モトチカ vs オウガイ  勝負!")
End Select
Ougai = Ougai + 1
'対ムラサメ
ElseIf NextValue <= 5100 Then
Call MsgBox("私はムラサメ", vbOKOnly, "斉藤ムラサメ参上!")
Select Case attack
Case 1
Call MsgBox("覚悟しろ!   無理しちゃってぇ!", vbOKOnly, "ヒデヨシ vs ムラサメ  勝負!")
Case 2
Call MsgBox("覚悟はいい?   無理しちゃってぇ!", vbOKOnly, "ケンシン vs ムラサメ  勝負!")
Case 3
Call MsgBox("覚悟してください!   無理しちゃってぇ!", vbOKOnly, "イエヤス vs ムラサメ  勝負!")
Case 4
Call MsgBox("覚悟はよろしくて?   無理しちゃってぇ!", vbOKOnly, "ヨシモト vs ムラサメ  勝負!")
Case 5
Call MsgBox("覚悟はいいか!?   無理しちゃってぇ!", vbOKOnly, "シンゲン vs ムラサメ  勝負!")
Case 6
Call MsgBox("覚悟!   無理しちゃってぇ!", vbOKOnly, "マサムネ vs ムラサメ  勝負!")
Case 7
Call MsgBox("覚悟はよいか!   無理しちゃってぇ!", vbOKOnly, "ノブナガ vs ムラサメ  勝負!")
Case 8
Call MsgBox("覚悟はできたか?   無理しちゃってぇ!", vbOKOnly, "ミツヒデ vs ムラサメ  勝負!")
Case 9
Call MsgBox("懺悔せよ!   無理しちゃってぇ!", vbOKOnly, "ソウリン vs ムラサメ  勝負!")
Case 10
Call MsgBox("後悔したいの?   無理しちゃってぇ!", vbOKOnly, "モトナリ vs ムラサメ  勝負!")
Case 11
Call MsgBox("覚悟はできた?   無理しちゃってぇ!", vbOKOnly, "モトチカ vs ムラサメ  勝負!")
End Select
Murasame = Murasame + 1
'対コタロウ
ElseIf NextValue <= 5731 Then
Call MsgBox("ボクはコタロウ", vbOKOnly, "相田コタロウ参上!")
Select Case attack
Case 1
Call MsgBox("覚悟しろ!   ボクだって!", vbOKOnly, "ヒデヨシ vs コタロウ  勝負!")
Case 2
Call MsgBox("覚悟はいい?   ボクだって!", vbOKOnly, "ケンシン vs コタロウ  勝負!")
Case 3
Call MsgBox("覚悟してください!   ボクだって!", vbOKOnly, "イエヤス vs コタロウ  勝負!")
Case 4
Call MsgBox("覚悟はよろしくて?   ボクだって!", vbOKOnly, "ヨシモト vs コタロウ  勝負!")
Case 5
Call MsgBox("覚悟はいいか!?   ボクだって!", vbOKOnly, "シンゲン vs コタロウ  勝負!")
Case 6
Call MsgBox("覚悟!   ボクだって!", vbOKOnly, "マサムネ vs コタロウ  勝負!")
Case 7
Call MsgBox("覚悟はよいか!   ボクだって!", vbOKOnly, "ノブナガ vs コタロウ  勝負!")
Case 8
Call MsgBox("覚悟はできたか?   ボクだって!", vbOKOnly, "ミツヒデ vs コタロウ  勝負!")
Case 9
Call MsgBox("懺悔せよ!   ボクだって!", vbOKOnly, "ソウリン vs コタロウ  勝負!")
Case 10
Call MsgBox("後悔したいの?   ボクだって!", vbOKOnly, "モトナリ vs コタロウ  勝負!")
Case 11
Call MsgBox("覚悟はできた?   ボクだって!", vbOKOnly, "モトチカ vs コタロウ  勝負!")
End Select
Kotaro = Kotaro + 1
'対シロ
ElseIf NextValue <= 5760 Then
Call MsgBox("ワォォ~ン!", vbOKOnly, "きゃん!きゃん、きゃん!")
Select Case attack
Case 1
Call MsgBox("覚悟しろ!   キャンキャン!", vbOKOnly, "ヒデヨシ vs シロ  勝負!")
Case 2
Call MsgBox("覚悟はいい?   キャンキャン!", vbOKOnly, "ケンシン vs シロ  勝負!")
Case 3
Call MsgBox("覚悟してください!   キャンキャン!", vbOKOnly, "イエヤス vs シロ  勝負!")
Case 4
Call MsgBox("覚悟はよろしくて?   キャンキャン!", vbOKOnly, "ヨシモト vs シロ  勝負!")
Case 5
Call MsgBox("覚悟はいいか!?   キャンキャン!", vbOKOnly, "シンゲン vs シロ  勝負!")
Case 6
Call MsgBox("覚悟!   キャンキャン!", vbOKOnly, "マサムネ vs シロ  勝負!")
Case 7
Call MsgBox("覚悟はよいか!   キャンキャン!", vbOKOnly, "ノブナガ vs シロ  勝負!")
Case 8
Call MsgBox("覚悟はできたか?   キャンキャン!", vbOKOnly, "ミツヒデ vs シロ  勝負!")
Case 9
Call MsgBox("懺悔せよ!   キャンキャン!", vbOKOnly, "ソウリン vs シロ  勝負!")
Case 10
Call MsgBox("後悔したいの?   キャンキャン!", vbOKOnly, "モトナリ vs シロ  勝負!")
Case 11
Call MsgBox("覚悟はできた?   キャンキャン!", vbOKOnly, "モトチカ vs シロ  勝負!")
End Select
win = 1
End If
'対オウガイ 勝利
If NextValue <= 15 Then
win = 1
'対オウガイ 敗北
ElseIf NextValue <= 3000 Then
lose = 1
'対ムラサメ 勝利
ElseIf NextValue <= 3105 Then
win = 1
'対ムラサメ 敗北
ElseIf NextValue <= 5100 Then
lose = 1
'対コタロウ 勝利
ElseIf NextValue <= 5351 Then
win = 1
'対コタロウ 敗北
ElseIf NextValue <= 5731 Then
lose = 1
End If
'勝利時処理
If win = 1 Then
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, "ミツヒデ勝利!")
Case 9
Call MsgBox("祝福あれ!", vbOKOnly, "ソウリン勝利!")
Case 10
Call MsgBox("あなた弱いのね", vbOKOnly, "モトナリ勝利!")
Case 11
Call MsgBox("やったわ!", vbOKOnly, "モトチカ勝利!")
End Select
If Kotaro >= 3 Then
Call MsgBox("ジェットストリームコタ!", vbOKOnly, "ミッションクリア!")
End If
Round = RoundCheck()
Call MsgBox(Round & "R 大当り!", vbOKOnly, "乙女ループ突入!")
Dcount = Dcount + Round * 100
kaiten = 0
Rcount = Rcount + 1
Exit For
'敗北時処理
ElseIf lose = 1 Then
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, "ミツヒデ敗北・・・")
Case 9
Call MsgBox("神よ、お許しください・・・", vbOKOnly, "ソウリン敗北・・・")
Case 10
Call MsgBox("冥界に行けというの?", vbOKOnly, "モトナリ敗北・・・")
Case 11
Call MsgBox("やられたわぁ~", vbOKOnly, "モトチカ敗北・・・")
End Select
End If
NextValue = Int(5760 * Rnd + 1)
If NewChar >= 9 Then
If NewChar <= 11 Then
attack = NewChar2
End If
End If
If attack >= 8 Then
If Ougai = 8 Then
Call MsgBox("オウガイ無双!", vbOKOnly, "ミッションクリア!")
End If
If Murasame = 8 Then
Call MsgBox("ムラサメ無双!", vbOKOnly, "ミッションクリア!")
End If
If Kotaro >= 3 Then
Call MsgBox("ジェットストリームコタ!", vbOKOnly, "ミッションクリア!")
End If
Call MsgBox("乙女アタック終了", vbOKOnly, "単発・・・")
Rcount = 0
End If
Next
End If
'TTロード+チャンスタイムの処理
While Rcount <> 0

Do
kaiten = kaiten + 1
NextValue = Int(1440 * Rnd + 1)
If NextValue <= 5 Then
Rcount = Rcount + 1
Call MsgBox(kaiten & "回転で 15R 大当り!" , vbOKOnly, Rcount & "連勝!")
Round = 15
Dcount = Dcount + 1500
kaiten = 0
Exit Do
ElseIf NextValue <= 100 Then
Rcount = Rcount + 1
Call MsgBox(kaiten & "回転で 5R 大当り!" , vbOKOnly, Rcount & "連勝!")
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(9990 * Rnd + 1)
If NextValue <= 5 Then
Rcount = Rcount + 1
Call MsgBox(kaiten & "回転で 15R 大当り!" , vbOKOnly, Rcount & "連勝!")
Round = 15
Dcount = Dcount + 1500
kaiten = 0
Exit Do
ElseIf NextValue <= 100 Then
Rcount = Rcount + 1
Call MsgBox(kaiten & "回転で 5R 大当り!" , vbOKOnly, Rcount & "連勝!")
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
Ougai = 0
Murasame = 0
Kotaro = 0
Sorin = 0
Motonari = 0
Motochika = 0
Game = MsgBox("もっかいやる?", vbYesNo, "リベンジだ!")
Loop

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

タグ:

+ タグ編集
  • タグ:

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

最終更新:2012年03月26日 18:55
ツールボックス

下から選んでください:

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