Designing an XP System for Real-Life Skills

Designing an XP System for Real-Life Skills

Check out the previous entry in the series:Can a new iOS developer ship an app in two monthsIn case you still decide to skip on reading arguably one of the best literary articles ever written, let me just remind you that Levely is an RPG inspired focus-timer app in which users level up their real life skills. The main screen for Levely With that out of the way let’s roll up our sleeves and dive into the murky waters of designing a leveling system for your life. First of all, why is a proper leveling system important? Well, as I’ve previously stated, I want to help users focus and improve their real life skills by making it fun & rewarding. What’s my idea of fun? Playing RPG’s. I’ve realized at one point last year that the reason I’m actually playing RPG’s is because I love the sense of progression that they provide. I want to be able to bring that to real life. The difference however is that in real life you don’t have a skill bar that shows you how good you got at playing guitar. Video games have two ways to assess your competence. The skill bar, which shows your level of experience with that skill (I will call it visual progressionfrom now on) and a physical progression (you actually get stronger and can overcome more difficult challenges). Real life however, has only one verifiable way to determine your skill progress, the physical progression, meaning your ability to handle more difficult tasks related to the skill you’re trying to get better at. Levely’s objective is to provide the visual progression that is ‘lacking’ in real life. It sounds pretty simple, right, just slap an XP bar on top of a skill and call it a day. Well, not really. There are some fundamental differences between video games and real life. Let’s walk through each one. The first and most obvious one is that you don’t have a skill cap in real life. You can never truly master anything. I’m sorry to burst your bubble but its true. You will never ever know everything about a subject. You will never truly master playing guitar, cooking or programming. Second, the rate of progress is not linear. George Leonard, in his book ‘Mastery’ gave a superb breakdown on the stages of skill acquisition. I will probably butcher his explanations but bear with me. Every person goes through a series of stages when learning something new. One of the most intriguing is a stage called ‘the plateau’. The plateau basically means that you keep practicing without seeing actual progress, yet somehow you are progressing. Feels kind of counterintuitive, right? Look back on your own experiences and you will realize that George is right. If you ever spent time trying to get better at something you will probably remember that it wasn’t a simple ascending path. It probably looked more like a zig-zag line that somehow managed to keep an upwards trajectory. This is the second difference, progress is not linear. Press enter or click to view image in full size Third, in video games you just perform the same motion over and over with your insert weapon of choice and somehow you keep getting better. In real life, repeating the same motion will get you better at that specific action, and only that. Take for example playing guitar. If you practice playing the same chord over and over again you will truly become really great at playing that chord. But just one chord doesn’t make a song. Those are the three main differences that need to be overcome. Now let me tell you how! You can’t! At least not with an app that’s supposed to be fun to use. Now you might be thinking: “Radu, god damn, you’ve forced me again to stretch my attention span to it’s limit by reading for the last four minutes just to tell me you can’t???” I’m sorry my dear attentionally impaired reader, but I cannot monitor that your practice sessions are deliberate, have the proper difficulty levels and produce growth. Even if I take the decision to ignore your right to privacy and have you turn on the camera while using the app, I still can’t measure that what you’re doing is actually determining you to improve at your actual skill. Some have attempted to solve dilemmas such as this by integrating AI recommendations. I am not a fan of this approach because any AI integration would require data on your exact training, actions, habits, goals, etc. I could force the users to write their intent before starting a focus session, but I’m worried that it’s an extra step between opening the app and getting a session going. I want the whole in-app experience to be smooth and easy. It shouldn’t take more than a few seconds to get a session going. Now where does that leave us exactly? As you can probably tell, I’ve put a lot of thought into this problem and I arrived at the conclusion that you have to know where to set some boundaries in regards to what an app can do. We have to turn the problem around and redefine what an XP point measures: XP measures commitment and consistency. Levely can’t actually tell you how good you are at Writing, but it can show you that you’ve worked your ass off and that you’ve put in the time, and that reaching level 70 truly is an achievement of grit and persistence. Levely will give users an extra incentive to stay focused on the task at hand by providing visual feedback and a small reward (in the form of XP) for completing focus sessions. That’s it! In order to achieve this, the leveling system should feel like the journey of acquiring a new skill. Levelywill grant you XP points for every minute spent in a focused state. Every level will have a certain amount of XP required.The problem is that you can’t have the same XP requirements for each level. Let’s say that you want each level to require 10XP points. It would be too easy and each level will take the exact same amount of time to reach. Usually you progress very fast in the beginning and tend to slow down as you become more competent. In terms of gameplay, that means that the initial levels need to have a smaller XP requirement than the later ones. After some digging I came across the concept of a quadratic curve. No, don’t you dare open TikTok again, let me explain, it’s pretty easy actually: totalXPRequired(level) = C × level² C is simply a constant number that I need to determine based on how fast or slow we want users to level up. Getting to level 2 should be achieved after a 25 minute session and XP should be gained per minute. For level 10 the requirement would be 625XP, meaning 625 minutes spent in a focused state (or roughly 10 hours). Hmm, that’s quite a lot. For level 20, the number of focused minutes required would be 41 hours, and for level 50 it would be roughly 260 hours!!! Now true mastery takes time, lots of time spent in intense focus, but we’re trying to motivate people, not demoralize them by having an XP bar that barely moves. We need to improve on the formula. So, there are two criteria that I want the leveling system to achieve: Initial levels must be attained relatively fast Level 100 must represent a real achievement that is also within reach for dedicated users In my earlier drafts, I wanted level 100 to represent 10.000 hours of focus, like in Malcolm Gladwell’s book Outliers, but then I did the math and I went running for the hills. If someone logs a 50 minute session in Levely every day for two whole years they would still only get to 600 hours!! It’s insane to expect the average user to have that kind of commitment. We need to go lower. 5000 hours? Hell, no! 2000? Nope, still too high. 1000? That sounds about right. It’s an amount of time that only truly dedicated users will spend while still being reachable. In order to keep the rate of progression for the first 20 levels fast, we will use the quadratic system and after level 20 we will switch to what is known as a quadratic spline interpolation. Holy shit, that sounds scary! Don’t worry, that fancy named spline thing above will be used to address the break-off that occurs when we suddenly switch between formulas for calculating XP. Phew, that was a lot to write. If anyone ever says: “Oh no, not another focus timer app” I will personally find you and I will ……. make you try out the app? Joke aside, I hope that by reading these articles people get to understand the level of thought that goes into making even an apparently simple app. There are still questions left unanswered, maybe 1000 hours is way too much to demand from someone? Or maybe the break-off point should be at level 50? I honestly don’t know, but maybe, my dear reader, you can tell me. Follow me on X and join the waitlist at https://levely.quest/

Original Source

Read the full article at Hackernoon →

KhanList aggregates and links to publicly available news content. We do not host full articles from third-party sources. Always verify important information with original sources.