使用python基本函数实现简易的《原神》抽卡系统

您所在的位置:网站首页 你游抽卡模拟器 使用python基本函数实现简易的《原神》抽卡系统

使用python基本函数实现简易的《原神》抽卡系统

2023-10-25 08:44| 来源: 网络整理| 查看: 265

使用python基本函数实现简易的《原神》抽卡系统 前言 基本思路 抽卡基本函数 抽卡概率设定 卡池 保底策略 抽卡结束做什么 统计背包 抽奖操作 交互系统 开始祈愿 祈愿记录 充值系统 退出 结语

前言

最近迷上了《原神》这款游戏,其中的抽卡系统也是很让人上瘾,尤其是1.3版本更新中魈的up池的开启,不知不觉氪金数额已近千元。看着瘪瘪的腰包,我想:为什么不自己写一个抽卡系统,爽个够? 说干就干

基本思路

原神的抽卡系统可以建立在单抽的基础上,主要有单抽和十连这两种选项。抛开其概率的设定不说,卡池分别包含五星角色(因为是模拟的魈up池所以没有五星武器)、四星角色、四星武器和三星武器。五星和四星又分别有保底政策。在抽卡函数之外,还需要一定的交互界面,比如查询、充值等选项。 大致思路如上,以下为具体做法

抽卡基本函数

先来个这个:

import random 抽卡概率设定

此处我使用的是random函数,由于也不是很懂设置概率的操作,直接就用生成随机数,再判断随机数的区间,只要把区间范围圈定,可以简单地设置抽卡的概率。代码如下:

def single(): """不保底时的抽奖""" i = random.randint(1, 10001)#生成10000个整数 if i in range(1, 61):#五星中奖概率为0.6% a = random.randint(0, 5) star = st5[a] stat.num_5 = 0 elif i in range(61, 316):#四星角色概率为2.55% cha = random.randint(0, len(cha_4)-1) star = cha_4[cha] stat.num_4 = 0 elif i in range(316, 571):#四星武器概率为2.55% wea = random.randint(0, len(weapon_4)-1) star = weapon_4[wea] stat.num_4 = 0 elif i in range(571, 10001):#其余为三星 star = '三星' else: #不知道为什么,实际操作中总是会生成写奇奇怪怪的 #东西,为了不影响原函数,这里else直接忽视 return None if star == up: stat.num_5 = 0 stat.up_num = 0 add(star)#这个函数会在后面解释 卡池

为了不影响阅读,还是把卡池内容贴上吧

"""卡池内容(未设置四星up角色)""" up = '魈' st5 = [up, up, up, up, up, '刻晴', '莫娜', '七七'


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3