作者GR0717 (老郭)
看板LoveLive_Sip
標題[閒聊] Live分數計算機 in Matlab
時間Wed Nov 5 18:00:48 2014
這三天發了瘋似的把Live分數計算機寫了出來
契機可追溯至
#1KJxvQhR (LoveLive_Sip)
因緣際會之下寫出計算機的雛形,但是不能計算Skill的效果
而且只是一串Code,非常不人性化、使用者不友善
當時EliAyase大大表示已經有網頁版:
http://ppt.cc/ehXH
我看到的感想是:功能強大、有人機介面
但是功能強大之餘,可填選部分琳琅滿目,有點雜亂...
而且看不懂計算結果,跟自己想像中的功能有點出入
因此決定研究一下人機界面,再把計算機功能補齊
一開始各種崩潰,畢竟GUI是自己沒有接觸過的領域...
好在程式還是順利完成了
--
介面:
http://i.imgur.com/JBZjWEU.png
使用方法就是輸入setting中的資料
Team Point:隊伍素質(各種加成後)
Perfect Rate:打出Perfect的比例 = Perfect/(Perfect+Great)
(我自己的經驗是不管什麼歌曲比例都差不多)
接著輸入Skill資料
Rhythm:Rhythm icon、Combo系列的技能 (其他如字面)
Per__(seconds):發動條件,如每九秒發動
Chance:發動機率
Score:技能發動後加幾分
雖然我花了很多時間設計Skill欄位(有九個 Skill 1~9)
但是使用起來實在太麻煩了,後來直接用「Import Team Skill」
跟「Import rhythm」一樣,先建立txt檔案後一鍵設定
內容格式如圖:
http://i.imgur.com/T6rgwRr.png
最後按下Calculate就會秀出結果了
Results:數字結果
Skill Score:技能賺取的分數期望值(條件成立次數*發動機率*獲得分數)
Live Score:點擊節奏的分數期望值
Total Score:前兩者加總
但是這只呈現期望值
例如我想知道這支隊伍能不能拿到47萬分,從這結果看不出來
因此我模擬10萬次Live中技能隨機發動的結果,進而得到右邊兩張圖
上圖藍線顯示拿到目標分數以上的機率,例如約28%的機會大於46.4萬
(幾乎不可能拿到47萬分QQ)
上圖綠線是分數的分佈圖,也就是獲得某分數的機率
(心血來潮做的,想知道是不是高斯分佈)
而下圖是「幾場Live後八成可以超過目標分數」
例如:5場Live後我八成可以達到46.4萬分
(「八成」聽起來比較順所以設為預設值,實際上Probability一欄可以改)
--
到後來幾乎是上癮了,目標是寫程式而非計算Love Live的分數...
本來想說月中的Score Match發個分析文
無奈要國軍Online ...QQ
版友若對這Live分數計算機有興趣的話歡迎推文索取
(研究GUI意外發現轉成exe檔的方法!)
要是能給點建議的話最好了XDDD
--
另外還有活動分數模擬器
入坑的第一個活動就幾乎完成(計算新手要不要拼2SR)
為了讓以後的自己不會忘了怎麼使用而圖形介面化XD
http://i.imgur.com/phoMkt1.png
http://i.imgur.com/lgUolBf.png
--
第一場有幸遇到版友!
http://i.imgur.com/GCGfQZr.png
--
Live分數計算機
檔案上傳到MEGA:
http://goo.gl/bWHp2Q
解壓縮後會有一個程式(.exe)和兩個文件(.txt)
文件裡需要修改的部分如圖所示紅框內的部分:
http://i.imgur.com/1QrPKGa.png
TeamSkill文件:
Skill 1: 每9秒 15%機率 加600分
Skill 2: 每22個Rhythm icon (or combo) 22%機率 加580分
(以此類推,'None'是沒有加分技能,'Score'則是每xxxx分發動)
TeamP 是隊伍能力(加成後)
nawatobi(EXPERT)文件:
總Combo數: 363
Live時間: 120秒
Combo 1~ 50 有 0個長音
Combo 51~100 有 5個長音
Combo101~200 有39個長音
(以此類推)
如果電腦沒有Matlab R2012b (8.0)的話要安裝MCR R2012b (8.0)
下載頁面:
http://www.mathworks.com/products/compiler/mcr/
註:Import的文件要跟主程式在同一個資料夾之下
--
Score Match 分數模擬器
下載網址:
http://goo.gl/UH8dMX
SM Simulation Data:記錄某個時間的狀態
紅框是需要更改的部分,如圖:
http://i.imgur.com/50d0LwI.png
Rank: 當下帳號等級
exp: 當下的經驗值
LP: 當下剩餘體力
eventpt:當下活動分數
2014/05/07 和 08:04 代表當下的日期和時間
程式介面:
http://i.imgur.com/lgUolBf.png
Setting:設定模擬開始的狀態
Loveca:代表此次模擬會消耗多少心
Rank100的選項,日版要勾選(預設),台版就取消勾選。Rank100以上可以忽略
Now、End兩個按鈕是調整結束時間的快捷鍵,Now是現在時間,End是活動結束時間
Browse按鍵可以讀取SM Simulation Data,直接設定Setting(Loveca還是得手動)
Panel:設定歌曲難度以及獲取的Score Rank
Placement Bonus:名次加成,是個修正項
(最好先記錄一下自己現在的狀態,
然後玩個十幾場後利用Placement Bonus修正平均獲取分數)
(有一次我忘了修正那個參數,沿用初次Score Match的參數
導致過度低估分數而吃了太多心...)
Simulation Results:模擬結果,結束時間點的狀態
這裏的Loveca代表剩下的Loveca數量
(以前debug留下的參數,現在應該沒有用了)
註:分數模擬器都是計算完全利用體力的理想情況,體力為零才會吃心
因此無法模擬不計損失狂吃心的情況
(不過因為是照抄舊版本Code,
不計損失狂吃心以及不計體力爆表安穩睡覺的功能都有留下,只是無法控制XD)
--
道具戰 分數模擬器
下載網址:
http://goo.gl/48IuEQ
IconEvent data:跟SM分數模擬器的文件一樣
可修改區域:
http://i.imgur.com/MamszQ4.png
比起前者多了「Token」,記錄當下所持道具數量
程式介面:
http://i.imgur.com/phoMkt1.png
通常歌曲:就是通常歌曲,獲得道具的歌曲
活動歌曲:就是活動歌曲,消費道具的歌曲
Score/Combo Rank:活動歌曲能夠拿到的Rank
註:分數模擬器都是計算完全利用體力的理想情況
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.175.16.14
※ 文章網址: http://www.ptt.cc/bbs/LoveLive_Sip/M.1415181650.A.C11.html
推 redhh: 推用心....太厲害了,國軍online加油唷 11/05 18:04
推 JLstar: 先推,不然別人會以為我看不懂怎麼用...( ′_>`) 11/05 18:05
推 aswfe412: 太強大惹推(雖然我也..XD 11/05 18:08
※ 編輯: GR0717 (1.175.16.14), 11/05/2014 18:10:39
推 eetspyler: 先推 Matlab 再說 現在我論文也是用這個在寫 QQ 11/05 18:13
推 Frozenmouse: 強者出現 (跪拜 11/05 18:18
推 impactwhite: 推工程師 登入加油 11/05 18:18
推 fucq47: 神 11/05 18:21
推 t27002899: 推神手 11/05 18:25
推 Adipz: 跪。 雖然我看不懂 11/05 18:25
推 maynightdado: 原來如此!! 11/05 18:28
推 Camera8025: 強者我版友!! 11/05 18:35
推 jack0602: 推!!! 11/05 18:46
推 gn00627687: 居然是MATLAB 只能推了ww 11/05 18:49
推 bniw: 推 想試試 11/05 19:00
上傳了~
在文章末有說明,有什麼不清楚的再問吧~
→ TBdrays: 必推! 11/05 19:13
推 oToToT: Matlab!!!! 11/05 19:18
※ 編輯: GR0717 (1.175.16.14), 11/05/2014 19:50:09
推 gbaian10: 結果樓樓上根本沒推?! 11/05 19:28
眼尖!XDDD
推 writheinpain: 推! \跪索取/ 11/05 19:46
補上連結和說明在文末了~
推 TBdrays: 補推 11/05 19:49
※ 編輯: GR0717 (1.175.16.14), 11/05/2014 19:51:37
推 bniw: 感謝! 來裝 11/05 19:52
※ 編輯: GR0717 (1.175.16.14), 11/05/2014 19:54:49
推 mkidi: (跪推 11/05 19:56
推 writheinpain: 拜裝! 11/05 20:10
→ f59952: 好眼熟的軟體XD 11/05 21:27
推 asd456fgh778: 好強…推! 11/05 21:43
推 Ryoui: 太猛了 這GUI要花很多時間寫耶Q__Q 11/05 21:45
推 Ryoui: 不過我用matlab 2013b不能直接開, 是什麼問題0.0? 11/05 21:47
三天廢寢忘食寫出來的XD
我身邊沒有其他版本無法測試...
不能開的話,有跳出什麼訊息嗎?
還是說安裝2012b的MCR試試看?
※ 編輯: GR0717 (1.175.16.14), 11/05/2014 22:03:10
推 Ryoui: 剛剛裝了MCR R2012b (8.0) 之後能開了0.0 11/05 22:05
看來Compile不相容呀...
感謝問題回報,來修改一下文末的說明~
※ 編輯: GR0717 (1.175.16.14), 11/05/2014 22:19:00
推 LinTom: ptt都臥虎藏龍啊 看到matlab 以為走錯版XD 11/05 22:34
推 redhh: 可以求活動分數模擬器的檔案嗎 11/05 23:21
已上傳,有問題歡迎推文~
※ 編輯: GR0717 (1.175.16.14), 11/05/2014 23:40:52
※ 編輯: GR0717 (1.175.16.14), 11/05/2014 23:44:53
推 typekid: matlab...神手@@ 11/06 00:01
推 EliAyase: 有空再幫你補齊歌曲資料@@ 11/06 01:08
感謝!若是資料齊全就可以拉選單了XD
不過除了道具戰的Live分數排名以外,有其他地方需要這計算機嗎@@
推 zergcho: Matlab控推! 11/06 08:07
※ 編輯: GR0717 (1.175.16.14), 11/06/2014 08:41:05
推 bniw: 入手新卡可以計算要不要換上去 SM戰也有用 11/06 08:51
有道理! 這部分一直都是無腦玩,沒想那麼多XD
PS: 道具戰分數模擬器也放上去了
上次利用他預測最後我可以多吃兩心拿三心
就很高興地衝上30000分(2SR底線26765...)
※ 編輯: GR0717 (1.175.16.14), 11/06/2014 09:49:08
推 alan0511: 可以考慮用常態分布直接丟函數,比真得去跑一萬次準 11/06 13:01
謝謝建議~ 來研究看看
不過為什麼要用常態分佈?(應該就是高斯函數吧?)
我以為要用二項分佈@@
※ 編輯: GR0717 (1.175.16.14), 11/06/2014 14:16:31