forked from yuggrdrasill/megaten-sj-pw-generator
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
445 lines (414 loc) · 23.3 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>真・女神転生 ストレンジ ジャーニー 悪魔召喚プログラム 属性・コスト計算追加版</title>
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="http://netdna.bootstrapcdn.com/bootswatch/2.1.1/cyborg/bootstrap.min.css">
<link rel="stylesheet" href="http://code.jquery.com/ui/1.9.2/themes/black-tie/jquery-ui.css" />
<link rel="stylesheet" href="css/main.css"></head>
<body>
<div id="wrapper">
<div class="container-fluid">
[
<a href="http://www20.atwiki.jp/strange_journey/">まとめサイトに戻る</a>
]
<hr>
<div id="data-info-button"
title="クリックすると出力したステータスとパスワードを見ることが出来ます(alt+shift+s)"
class="hidden-phone"
data-toggle="modal"
role="button"
data-target="#data-info" accesskey="s"> <i class="icon-check"></i>
</div>
<!-- Modal -->
<div id="data-info" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="data-info-title" aria-hidden="true">
<div class="modal-body" id="data-info-body"></div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
</div>
</div>
<div id="explanation">
<h1>真・女神転生 STRANGE JOURNEYストレンジ ジャーニー 悪魔召喚プログラム 属性・コスト計算追加版</h1>
<h2>■このツールについて</h2>
パスワード予想ツールです。<br>
<strong>※このツールは原作者に無許可で個人的に改造しました。<br>
パターン・属性・コスト関連を追加しています。<br>
改変部分については原作者に関係がありません。<br></strong>
HP/MPなどオリジナルに存在しない計算は
<a
href="http://kohada.2ch.net/test/read.cgi/handygover/1256614693/336">【DS】真・女神転生 STRANGE JOURNEY パス改変スレ2 レスNo.336</a>
のxlsファイルからの移植です。感謝します。<br>
持ち帰り用 zip ファイルはこちら →
<a href="//yugg.s101.xrea.com/strange_journey/pub/msj_dsp_mod.zip">MOD版(このファイル)</a>
本家:[
<a href="http://www20.atwiki.jp/strange_journey/pub/comp/MSJ_DSP.zip">持ち帰り用zip</a>
]
<ol class="warning">
<li>このツールを利用することにより、ゲームバランスが著しく崩壊する可能性があります。</li>
<li>通常のプレイをしたい方には利用しないことをおすすめします。</li>
<li>また、下記の通りバグを誘発する可能性があることも踏まえ、利用は自己責任でお願いします。</li>
</ol>
<h2>■諸注意</h2>
<ol class="warning">
<li>ブラウザ表示サイズが幅768px未満はあまり考慮されていません。
ブラウザの幅768px以上を推奨します。<br>
iPhone等は横でブラウズすることを推奨します。
</li>
<li>「ダミー」や悪魔 ID 後半のもの(リスト内で末尾に(?)が付いているもの)は、
敵専用で本来召還できない悪魔なので召還の際は注意。<br>
(全書に載ってしまう → 全書から消せない。他のバグも誘発するかも?)</li>
<li>「敵専用っぽい悪魔」は大抵説明欄が【NO DATA】となっている模様。これらの本来登録できない悪魔を登録した状態で周回プレイすると全書がバグることがあるようです。(未確認)<br>
(本来登録できない悪魔を登録後周回し、登録済の普通の悪魔を召還すると、
指定した悪魔と違う悪魔が召還され、スキル等もバグっている、らしい)
(そのデータを消しても、そのセーブスロットの全書はバグったまま、など?)</li>
<li>上記のバグは確認できた事象ではありませんが、
リスクを負いたくない場合は敵専用悪魔やスキルは使用しない方が無難です。</li>
<li> スキル欄を飛ばして入力する(1が未入力で2を入力、等)と、
スキル表示がバグった悪魔になります。<br>
(所持はしているが、スキル欄上は表示されない
または別名表示される(隣の悪魔の同スロットのスキル名が残る))</li>
<li> また、ステータス基準値を実値よりも高く設定し、
レベルアップにより基準値が 128 を超えた場合、オーバーフローにより 0 に戻るようです。</li>
</ol>
</div>
<form id="password-generator" name="foMain" class="form-horizontal" onsubmit="return false;">
<div id="data-input">
<fieldset id="status-patern">
<legend>パターン</legend>
<select name="slPattern" id="password-pattern"></select>
<label for="enemy-exclusive"
title="エラーになるスキルや敵専用のモノを表示します">敵専用スキル・仲間に出来ない敵を表示する</label>
<input id="enemy-exclusive" name="enemyExclusive" type="checkbox"></fieldset>
<fieldset id="devils">
<legend>□悪魔 ID (0~490)</legend>
<div class="left-indent">
<select id="devil-id" name="slDevil"></select>
<select name="stanceFilter" id="stance-filter" class="filter"></select>
<select id="devils-clone" name="devilsClone" class="hidden"></select>
<button id="set-default" name="setDefault" class="btn"
accesskey="d"
title="悪魔が本来持っているステータスとスキルを設定します。(alt+shift+d)">既定ステータスをセットする</button>
<label class="checkbox" for="allway-set-defualt">
<input type="checkbox" id="allway-set-default" checked="checked">既定ステータスを常にセットする</label>
</div>
</fieldset>
<fieldset id="status-lv">
<legend>□Lv (1~99)</legend>
<div class="left-indent">
<select name="slLv" id="lv" class="status"></select>
<br></div>
</fieldset>
<fieldset id="status-exp">
<legend>
□経験値 (0~
<span id="exp-max-label">2097151</span>
)
(※ NEXT が 0 以下になるような値は不可)
</legend>
<div class="left-indent">
<input type="number"
id="exp" name="txExp" value="0"
size="12" min="0" max="2097151">
<br></div>
</fieldset>
<div class="row-fluid">
<fieldset id="status-effective" class="span6">
<legend>□能力値・実値 (1~99)</legend>
<div class="status-controls">
<label for="slStr" class="status-label">力</label>
<select id="slStr" name="slStr" class="status"></select>
</div>
<div class="status-controls">
<label for="slInt" class="status-label">魔</label>
<select id="slInt" name="slInt" class="status"></select>
</div>
<div class="status-controls">
<label for="slVit" class="status-label">体</label>
<select id="slVit" name="slVit" class="status"></select>
</div>
<div class="status-controls">
<label for="slAgi" class="status-label">速</label>
<select id="slAgi" name="slAgi" class="status"></select>
</div>
<div class="status-controls">
<label for="slLuc" class="status-label">運</label>
<select id="slLuc" name="slLuc" class="status"></select>
</div>
<div class="info-cost">
現在の召喚コスト:
<span id="info-nowcost">0</span>
</div>
</fieldset>
<fieldset id="status-base" class="span6">
<legend class="inline-block">□能力値・基準値 (1~99)</legend>
<div class="status-controls">
<label for="slStrBase" class="status-label">力</label>
<select id="slStrBase" name="slStrBase" class="status status-base"></select>
</div>
<div class="status-controls">
<label for="slIntBase" class="status-label">魔</label>
<select id="slIntBase" name="slIntBase" class="status status-base"></select>
</div>
<div class="status-controls">
<label for="slVitBase" class="status-label">体</label>
<select id="slVitBase"
name="slVitBase" class="status status-base"></select>
</div>
<div class="status-controls">
<label for="slAgiBase" class="status-label">速</label>
<select id="slAgiBase"
name="slAgiBase" class="status status-base"></select>
</div>
<div class="status-controls">
<label for="slLucBase" class="status-label">運</label>
<select id="slLucBase"
name="slLucBase" class="status status-base"></select>
</div>
<input type="checkbox" id="cbBaseEqReal" name="cbBaseEqReal">
<label class="checkbox inline" for="cbBaseEqReal">実値と連動させる</label>
</fieldset>
<div id="status-attr" class="span6 offset4 centered-text"></div>
</div>
<fieldset id="skills">
<legend>□スキル (0~419)</legend>
<div class="row-fluid">
<div class="skill-controls span4">
<label for="slSkill0">[1]</label>
<select id="slSkill0" name="slSkill0" class="skills"></select>
</div>
<div class="skill-controls span4">
<label for="slSkill1">[2]</label>
<select id="slSkill1" name="slSkill1" class="skills"></select>
</div>
<div class="skill-controls span4">
<div class="span">
<label for="slSkill2">[3]</label>
<select id="slSkill2" name="slSkill2" class="skills"></select>
</div>
</div>
</div>
<div class="row-fluid">
<div class="skill-controls span4">
<label for="slSkill3">[4]</label>
<select id="slSkill3" name="slSkill3" class="skills"></select>
</div>
<div class="skill-controls span4">
<label for="slSkill4">[5]</label>
<select id="slSkill4" name="slSkill4" class="skills"></select>
</div>
<div class="skill-controls span4">
<label for="slSkill5">[6]</label>
<select id="slSkill5" name="slSkill5" class="skills"></select>
</div>
</div>
<div id="elemental">
<label for="skill-filter">スキルフィルタリング</label>
<select id="skill-filter" name="element"></select>
</div>
<input id="hide-skill0" name="hideSkill0" type="hidden"/>
<input id="hide-skill1" name="hideSkill1" type="hidden"/>
<input id="hide-skill2" name="hideSkill2" type="hidden"/>
<input id="hide-skill3" name="hideSkill3" type="hidden"/>
<input id="hide-skill4" name="hideSkill4" type="hidden"/>
<input id="hide-skill5" name="hideSkill5" type="hidden"/>
</fieldset>
<fieldset id="password-input">
<legend class="inline-block">☆パスワード入力欄</legend>
<input type="radio" name="rbInputMode" id="rbCharMode" value="0" checked>
<label for="rbCharMode">文字モード</label>
<input type="radio" name="rbInputMode" id="rbBitMode"
value="1">
<label for="rbBitMode">ビットモード</label>
<br>
<textarea id="password-input-area" name="taIn" cols="16" rows="2"></textarea>
<input type="button" class="btn" name="btIn" id="password-parse" value="入力">
<br>
<br></fieldset>
<fieldset id="data-output">
<legend class="inline-block">■出力</legend>
<label for="debug-mode" class="checkbox" id="debug-mode-label">
<input type="checkbox" name="cbDebugMode" id="debug-mode">デバッグモード</label>
<br>
<!-- Modal -->
<div id="message-dialog" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="message-dialog-title" aria-hidden="true">
<div class="modal-body" id="message-dialog-area"></div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
</div>
</div>
<div id="message-area"></div>
<div id="output-area"></div>
</fieldset>
</form>
<hr>
<div>
<h2>■説明書</h2>
<ol>
<li>入力したステータスに対応したパスワードを出力します。</li>
<li>能力値・基準値の「実値と同じ値を使う」にチェックを入れると、常に実値と同じ値になります。</li>
<li>出力の「デバッグモード」にチェックを入れると、解析補助用の付加情報が出力されます。</li>
<li>
入力値がひとつでも許容範囲外だと、「無効なパスワード」としてはじかれるようです。
<br>(NEXT がマイナスとなるような経験値、等)</li>
<li>
「☆パスワード入力欄」にパスワードを入れて「入力」ボタンを押すと、
入力されたパスワードを解析してフォームに適用します。
</li>
<li>毎回ステータス入力するのが面倒なときは、パスワードを控えておき、この機能を使うと楽です。</li>
</ol>
<h2>■補足</h2>
<ol>
<li>経験値はそのレベルにおける獲得経験値。レベル上がりたては 0 。</li>
<li>能力値の「実値」は実際の能力値で、「基準値」は御霊合体の成長上限の基準値。<br>
(基準値はレベルアップ時に実値と共に上昇する)<br>
(例1 : 力の実値が 10 で基準値が 8 の場合、成長限界は 14 (8 + 6)。力は御霊であと 4 強化可能)<br>
(例2 : 力の実値が 99 で基準値が 1 の場合、成長限界は 7 (1 + 6)。御霊合体時に 7 まで下がる)</li>
<li>※このMOD版に関する報告は
<address>yugg@s101.xrea.com へメールを送信してください</address><br>
オリジナルの不具合報告等はこちらへお願いします。→ [<a href="http://www20.atwiki.jp/strange_journey/pages/27.html">簡易掲示板</a>]</li>
</ol>
<h2>■実装状況</h2>
<ol>
<li>Lv:1 ~ 99 まで位置特定済、実装済、確認済。</li>
<li>経験値:21bit 目まで位置特定済、実装済、確認済。</li>
<li>能力値・実値:1 ~ 99 まで位置特定済、実装済、確認済。</li>
<li>能力値・基準値:1 ~ 99 まで位置特定済、実装済、未確認。</li>
<li>スキル:位置特定済、実装済、確認済。</li>
<li>チェックサム:位置特定済、仕様確定、実装済。</li>
<li>移送パターン:全 256 パターン実装済み。</li>
<li>[済] 移送パターンの未対応分の解析、実装。</li>
<li>[済] COST 算出方法の解析、実装。</li>
<li>[済] HP, MP の算出方法の解析、実装。</li>
<li>[済] フォームの利便性向上。</li>
</ol>
<h2>■タスク</h2>
<ol>
<li>
[済] 毎回変化するパスのパターンから、解析対象パターンを1つに決める。<br>
→ [
<a href="http://www20.atwiki.jp/strange_journey/pages/18.html">解析対象パターン</a>
]
</li>
<li>[済] 経験値のみ変化させた時の変化文字から、文字:ビット列の対応関係を確定。(64文字)<br>
→ [
<a href="http://www20.atwiki.jp/strange_journey/pages/22.html">文字対ビット列対応表</a>
]</li>
<li>[済] 能力値の値が異なるいくつかのサンプルから、能力値と関係する文字位置を推測。<br>
→ [
<a href="http://www20.atwiki.jp/strange_journey/pages/25.html">サンプルパスワード</a>
]</li>
<li>[済] 3.で推測した位置の文字を改変し、能力値の文字位置を確定。
→ [
<a href="http://www20.atwiki.jp/strange_journey/pages/24.html">ビット列上の能力値分布</a>
]</li>
<li>[済] 悪魔とID、スキルとIDの対応表をなんとかする。<br>
→ [
<a href="http://www20.atwiki.jp/strange_journey/pages/19.html">悪魔ID対応表</a>
]<br>
→ [
<a href="http://www20.atwiki.jp/strange_journey/pages/21.html">スキルID対応表</a>
]</li>
<li>[済] チェックサム算出方法の解析。</li>
<li>[済] ジェネレータ作成。</li>
<li>[済] COST 算出方法の解析、実装。</li>
<li>[済] HP, MP の算出方法の解析、実装。</li>
<li>[済] 他パターンの移送パターン調査。</li>
</ol>
</div>
<hr>
<dl>
<dt>** MOD LAST UPDATE : 2012/12/31 ver1.1/02 mod2012-12-31</dt>
<dd>悪魔のスタンスによるフィルタを追加した。</dd>
<dd>スキルによる耐性変化を実装した。</dd>
<hr>
<dt>MOD LAST UPDATE : 2012/12/30 ver1.1/02 mod2012-12-30</dt>
<dd>悪魔の既定のステータスが初期設定されるように変更した。</dd>
<dd>レイアウトを微修正した。</dd>
<dd>結果表示ダイアログを追加した。</dd>
<dd>パターンを追加した。</dd>
<hr>
<dt>MOD LAST UPDATE : 2012/12/28 ver1.1/02 mod2012-12-28</dt>
<dd>画面を大幅に変更した。スライダー追加。</dd>
<dd>スキルフィルタリングを実装した。firefoxのみ、chromeは中途半端、ie8動作不可。</dd>
<dd>ステータス値をスライダーで選択できるようにした。</dd>
<hr>
<dt>MOD LAST UPDATE : 2012/12/05 ver1.1/02 mod2012-12-05</dt>
<dd>jQueryを使ってソースを整理した。</dd>
<dd>スキルハイライトを追加した。</dd>
<hr>
<dt>MOD LAST UPDATE : 2012/11/21 ver1.1/02 mod2012-11-21</dt>
<dd>ステータスの値をスライダーで選択できるようにした。</dd>
<dd>
コスト・HP・MP算出を追加した。
<a
href="http://kohada.2ch.net/test/read.cgi/handygover/1256614693/336">【DS】真・女神転生 STRANGE JOURNEY パス改変スレ2 レスNo.336</a>
のxlsファイルからの移植。
<br></dd>
<dd>既定データ設定ボタンを追加した</dd>
<dd>最大経験値表示、入力制限を追加した</dd>
<dd>初期状態で敵専用のものを隠し、チェックボックスで見えるようにした。</dd>
<dd>色のコントラスト比を下げた。</dd>
<dt>LAST UPDATE : 2009/11/30 ver1.1/02</dt>
<dd>
[
<a href="http://www20.atwiki.jp/strange_journey/pages/26.html">更新履歴</a>
]
<br></dd>
</dl>
<hr>
<p id="footer">
■免責事項
<br>
当サイトの利用により発生した損失・損害については、当サイトは一切の責任を負いません。
<br>
<br>(C) 2009 ATLUS CO., LTD. ALL RIGHTS RESERVED.</p>
</div>
</div>
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" ></script>
<script>!window.jQuery && document.write('<script src="./js/jquery.min.js"><\/script>')</script>
<script type="text/javascript" src="js/plugins.js" ></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js" ></script>
<script>!window.jQuery(document).slider && document.write('<script src="./js/jquery-ui.min.js" ><\/script>')</script>
<script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/js/bootstrap.min.js" ></script>
<script>!window.jQuery(document).modal && document.write('<script src="./js/bootstrap.min.js" ><\/script>')</script>
<script src="http://twitter.github.com/hogan.js/builds/2.0.0/hogan-2.0.0.js" ></script>
<script type="text/javascript" src="js/skill-data.js" ></script>
<script type="text/javascript" src="js/genus.js" ></script>
<script type="text/javascript" src="js/devil-data.js" ></script>
<script type="text/javascript" src="js/indexmap.js" ></script>
<script type="text/javascript" src="js/exptable.js" ></script>
<script type="text/javascript" src="templates/templates.js" ></script>
<script type="text/javascript" src="js/MSJ_DevilSummoningProgram.js" ></script>
<script type="text/javascript">
if (document.referrer.match(/google\.(com|co\.jp)/gi) && document.referrer.match(/cd/gi)) {
var myString = document.referrer;
var r = myString.match(/cd=(.*?)&/);
var rank = parseInt(r[1]);
var kw = myString.match(/q=(.*?)&/);
if (kw[1].length > 0) {
var keyWord = decodeURI(kw[1]);
} else {
keyWord = "(not provided)";
}
var p = document.location.pathname;
_gaq.push(['_trackEvent', 'RankTracker', keyWord, p, rank, true]);
}
var _gaq = _gaq || [];
var pluginUrl =
'//www.google-analytics.com/plugins/ga/inpage_linkid.js';
_gaq.push(['_require', 'inpage_linkid', pluginUrl]);
_gaq.push(['_setAccount', 'UA-36468856-1']);
_gaq.push(['_trackPageview']);
(function () {
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
</script>
</body>
</html>