基于python的公主連結(jié)PCR抽卡模擬器制作

前言:
個人介紹:
作為一個經(jīng)常在B站投稿偶像大師live的UP主,也經(jīng)常會突破常規(guī)去投一些各式各樣的視頻和專欄文章。如果覺得我的內(nèi)容對您有幫助,請關(guān)注、點贊、收藏哦~
也歡迎來關(guān)注我的個人網(wǎng)站,我經(jīng)常會發(fā)一些有趣的內(nèi)容在網(wǎng)站上:https://www.fyf99170.top

項目介紹:
經(jīng)歷了前段時間日本語能力測試的考試后,又有時間來研究python了。作為一名普通的大學(xué)生,也是初次接觸python編程。其實在之前,我已經(jīng)發(fā)了關(guān)于PCR公主連結(jié)抽卡模擬器的相關(guān)專欄,也有很多人關(guān)注。但我總覺得自己寫的代碼過于的隨心所欲,邏輯上非常的混亂。因此在今天,又重新把代碼全部重寫了一遍,以提升可讀性,也希望和大家進行交流。至于可執(zhí)行版本的公開,還請等到下一篇專欄文章,望大家諒解!本文已公布所有代碼,位于文章結(jié)尾處。代碼請自由使用,本文未經(jīng)許可禁止轉(zhuǎn)載。

原理介紹及代碼特色:
1.首先,在本次演示當(dāng)中,我采用了臺服10月卡池,即卯月(NGS)的三星限定UP卡池,我將卡池數(shù)據(jù)導(dǎo)入到一個txt文件當(dāng)中,方便修改。通過讀取外部文件來獲得卡池相關(guān)信息。其中第一行為卡牌名,第二行為稀有度,第三行為是否為三星限定角色:

2.其次,下面將對本卡池的抽卡原理進行解釋,1-9連中,s卡抽卡概率為79.5%,sr卡抽卡概率為18%,SSR卡抽卡概率為2.5%,限定角色抽中概率為0.7%。第10連中,s卡概率為0%,sr卡概率為97.5%,SSR卡概率為2.5%,限定角色抽中概率為0.7%。可見,就算是第10連必定sr及以上,對于抽中三星并沒有什么實質(zhì)性的幫助。


3.考慮抽卡自動化,當(dāng)抽中限定三星角色后即停止while,當(dāng)觸發(fā)“天井”即停止while。因此,可以直截了當(dāng)?shù)目焖倏吹叫枰嗌賯€10連才能夠抽中限定角色,并且可以看到SSR率是多少,以判定自己的歐氣程度。同時,可以看到每一次10連能夠抽到哪些角色,這些都能清晰的展示在你的面前。
4.創(chuàng)建“卡池”和“玩家手”兩個類,清晰的顯示卡池當(dāng)中有多少張卡牌,各自的稀有度如何。通過“玩家手”可以看到自己獲得了哪些卡牌。調(diào)用方便。

結(jié)果展示:
注意:以下為在macOS運行效果,不代表Windows運行效果。請使用原圖觀看!




代碼展示:
由于B站專欄不提供代碼高亮,因此暫時以截圖方式呈現(xiàn)。請使用原圖觀看:







結(jié)尾:
感謝您的觀看,如果覺得我的文章還不錯的話,請關(guān)注、收藏、點贊哦!