Alright, so I’ve been messing around with this idea for a while now, and I finally got it working. It’s a Genshin Impact wish calculator. You know, for when you’re saving up those precious Primogems and want to figure out how many wishes you can get. I saw someone else did a calculation tool for getting how many wishes, but I thought I could make it more user-friendly. So I started to build my own one.
First off, I had to figure out the logic. How many Primogems do you get from daily commissions? How much from events? From exploration? I started digging through the Genshin Impact wiki and some community forums. It’s a bit of a mess, honestly, with all the different sources of Primogems, some people said 60 for daily, some said 90, I just took an average and went on. Also, I need to think about how many days I need to count.
Then I started to code. I’m not the best coder, but I know some basic Python. I chose Python because I learned it before and it looked simple enough. I created some variables to store the number of Primogems the player already has, the number of days they want to calculate for, and all that stuff. I used input() to get the data and used print() to show the results. Also, I used some basic math operators to do the calculations, not hard at all.
- Daily Commissions: 60 Primogems
- Events: This one’s tricky, it varies a lot, so I made it an average number that the user needs to fill in.
- Exploration: Again, it really depends, made this one customizable too.
- Other: For things like achievements, mail, and whatever else. Also, customizable.
After I got the basic math down, I started to make it look a little nicer. Adding some text to explain what each input was for, what the output means, and so on. You know, just making it easier to understand for people who might not be familiar with how all this works. It was some simple job.
The biggest problem I ran into was handling the pity system. I read the rules again and again and finally understand them. You’re guaranteed a 5-star every 90 wishes, and a featured 5-star every 180, so I added a part of the code that checks how many wishes the user will have and then tells them if they’ll hit pity or not. I wrote many if and else to do that.
I tested it out with my own Primogem count and my saving goals, and it seemed to be working pretty well! It told me how many wishes I’d have by a certain date and whether or not I’d hit pity. Pretty cool, right? So I shared it with some friends on a forum. They liked it, and some of them even pointed out some small bugs that I hadn’t noticed. I fixed them, and it was a huge improvement.
It’s still a work in progress. I might add more features later, like maybe factoring in the Welkin Moon or the Battle Pass. But for now, it’s a decent little tool that I think will be helpful for other Genshin players who are trying to figure out their wish counts.
Honestly, it was a fun little project. I got to practice my coding, learn more about how the wishing system in Genshin Impact works, and create something that other people can use. Not bad for a few evenings of work!