Dismiss Notice
Want to stay up to date with Wynncraft? Follow us on twitter (@Wynncraft) and join our discord for fastest news, exclusive sneak peeks of future updates, store giveaways & more!
Dismiss Notice
Wynncraft, the Minecraft MMORPG. Play it now on your Minecraft client at (IP): play.wynncraft.com. No mods required! Click here for more info...

Announcement Making of the Ability Tree

Discussion in 'News & Patches' started by Salted, Jan 28, 2023.

Thread Status:
Not open for further replies.
  1. Salted

    Salted Game Design & Wynncraft Founder Staff Member Admin GM CHAMPION

    Messages:
    2,555
    Likes Received:
    51,143
    Trophy Points:
    278
    Creator Karma:
    Minecraft:
    Hello peeps!

    Back in 2015 after the Gavel update, I posted a thread going into more detail about how the item system was created. In 2.0 I was designing the Ability Tree system and most of its abilities, so I thought it may interest some of y’all to see the process behind it!

    Keep in mind this is only showing the system design side of it. A LOT of work went into the code, game design, testing and art as well, which was done by other very talented people in our team!

    Be also aware that game design (or at least the way I do it) is quite messy in its early stage. You won’t be seeing polished things, numbers and ideas will be all over the place.

    As it is usually the case with big projects like these, the Ability Tree was something we’ve been wanting to do for quite a while. It was also a recurring suggestion in the community. With large systems like this one, I generally start with problems I want to fix and that I think can actually be fixed with it.

    Problem #1: The game’s class progression stops too early and is too slow.

    Back in 2013-15, the content of the game basically ended in the level 70s at best. Unlocking your last upgrade at level 66 was fine and made sense. That ain’t the case anymore, and level 66 is now merely mid-game. Getting 1 upgrade every 10-15 levels was also much too slow.

    Problem #2: Spells are outdated.

    Not only did spells not look cool, but they were also really lacking and outdated in general. A strangely important but subpar system when compared to everything else. It needed something rad with more variety.

    Problem #3: Items are too complex and builds irrelevant until endgame.

    If you’re a long-time Wynncraft enjoyer you might disagree with the complexity problem, but it is an issue that’s grown to affect the early and mid game more and more over the years. The item system is loved by many and allows a fair share of fun diverse builds, but is also riddled with unclear combos that increase the complexity and require some learning. This is not a bad thing in itself necessarily, but the fast progression of the game makes it useless to learn any of this. In the end, it led to players not really interacting with the system as much as we would have wanted.

    I’ve always hated seeing new players ask questions about items and build, and getting told to not worry about it until the endgame. Most players never even come close to the endgame! It is a bit of poisoned advice that guts the fun out of the game for them.

    Now obviously, the Ability Tree doesn’t really change this that much, the item system is still quite complex. But if you start seeing this as not an item problem specifically, but a build-making problem, then it makes more sense how the AT could fix it.

    Those were the top problems I believed the Ability Tree could fix, or at least improve.


    One of the first things I did (one week after 1.20 came out) was ask the Content Team to send all of their upgrade ideas. I would end up using this list quite often. In the end, it had a total of 460 submissions! Not all of them got in as-is, but nonetheless, they were all useful in one way or another.

    image15.png

    At this point in development, it’s not the time for balance or anything too deep. It’s brainstorming and throwing things at the wall until it sticks. No numbers allowed! Only figuring out what the Ability Tree will be, and what fantasy we can achieve. No code is being written until we have a solid base.

    What do I mean by fantasy? Well, the idea is that game systems should encourage players to play and feel a certain way. If you pick up Fallen for example, you MUST feel like an aggressive berserker dealing massive damage. It’s what the archetype promises and the abilities must work in a way to encourage this. It’s an important step that is easy to forget the more you work on it. People play MMORPGs to get into a role in a living world, if they only cared about numbers and balance they would play barebone incremental games.


    Once I started getting ideas, I got going on Warrior abilities as a proof-of-concept. At that time, I didn’t know how the Ability Tree would work or look, or even progress. The only thing I knew 100% was that we should keep the simplicity of having only 4 spells.

    image12.png


    You can see here that some of the Warrior abilities were already there, though in different forms. Originally I wanted to make a Drunk Warrior gimmick, but it ended up becoming the Berserker (later Fallen) archetype.

    Some of the ideas/concepts figured out at this point were:
    • Conditional abilities (when X… after Y…)
    • Ability tiers and their differentiations (What makes a low tier ability different from a higher tier one?)
    • Convertor abilities (For every X item ID, gain Y)
    • How abilities were worded. It sounds superficial but it is important in order not to make the system hard to learn.
    I also wrote some more conceptual ideas to use later down the line.

    image24.png

    At this point I was satisfied with the early Warrior abilities and the possible fantasies and gimmicks. I started drawing diagrams of what the Ability Tree could look and how it could work. A lot of them.

    v1
    image27.png

    v2
    image26.png

    Around this time (summer 2021) we started coding the behaviour of the Ability Tree. Nodes connected together that can be unlocked and flow downwards. We made sure to make the system easy and quick to edit by making the connections between nodes automatic. It has its limitations, but overall it saved us a lot of time.

    image10.png

    nice!


    image4.png
    not nice! that’s what automatic connections get ya sometimes

    v3
    image13.png


    At the time, each archetype was planned to be separated into its own tree (after unlocking Bash). I ultimately decided against that later down the line, I’ll explain why later.

    image14.png
    every new CT member laughs when they see we use shitty MS paint drawings to plan things, but they always end up doing the same. always. creating a visual representation of what you want to do is surprisingly helpful

    v5 (v4 was nothing special)
    image17.png


    v6. At this point, I started experimenting with having a single tree per class. I also started writing random notes to myself, which shows I was spending way too much time looking at diagrams.
    image19.png

    v7 With an emphasis on progression instead of abilities
    image22.png

    This is probably the most recognizable version of the tree so far. The early game AT progression is slowed down, spells unlocks are together on page 2 with other minor abilities, and the elemental upgrades on page 3 are there. It’s not shown, but the 3 archetypes are also mostly decided: Berserker (Fallen), Monk (Battle Monk) and Tank (Paladin).

    Then real development began. Zeer and I spent hours every week in calls implementing, testing and changing things. Since there were many unknowns still, only he and I were working on it. I generally prefer to work with very small groups of people to start with, until the idea is solid enough to be open to criticism from the team. Ideas are very fragile in the beginning, so it’s important to be careful when showing it off, even to other people in the team. You need a good base for others to truly get it.

    image3.png
    v1 of the ability tooltip. a little too colourful

    Once we had a dozen or so abilities, I started working on a short design doc to explain to the CT how the tree worked and the concept of “Islands”.

    image8.png


    I also locked in some rules about the design of the AT GUI, such as:
    • Abilities are never on the first row of the page.
    • Abilities are also never on the last row of the page, unless the branch ends on that ability.
    • Ability connections flow downward or sideways, not upward.
    • Abilities with archetype requirements should always be unlockable with the abilities above it (aka don’t put an ability with requirements so high people can only unlock it much later).
    • Abilities shouldn’t be right next to each other, even if they are connected. Show the connections at all times.

    I had multiple choices for how the tree could work and look, and I ultimately decided to go with the one tree per class with an island system.
    • It made it easier for players to combo different playstyles
    • In Minecraft, we have very limited options for GUIs and having to fumble around multiple different menus isn’t optimal and becomes a chore when you have to do it often.
    • Allowed us to make some more generic abilities that don’t necessarily fit with any archetype
    • This one wasn’t originally planned, but I noticed once it was working that it also made the tree look a lot more filled in general. There are a lot of pages and a lot of abilities per page. Player perception is important in game design too!
    Some other ideas were:

    One separate tree per archetype
    Discouraged combos too much. The early abilities had to be weaker than the latter ones, so if you already invested a lot of points in an archetype tree it didn’t make sense to spend points in another one because you’d get weaker abilities to start with.

    One separate tree per ability
    Made it too easy to “one-trick” a single spell, I was afraid this would encourage stale gameplay.

    Midway through development we realized the old damage system Wynncraft used was slowing us down a lot. We spent almost as much time dealing with it as coding new abilities. So we decided to take a month off to rework it. This was by far the worst part of the development process but it ended up being worth it. There isn’t much to show from that time except some disgustingly complex docs.

    I do have this design diagram that wasn’t as useful as I had hoped (and is a bit outdated now), but at least it looks cool and I can use it to show how complex the Wynncraft damage system can be.
    image6.png

    Now that we’ve got the base Ability Tree system and a bunch of abilities, it’s time for the design -> implementation -> iteration flow. Each week we designed and coded new abilities, then went into a 2h call with the CT to talk about it and improve based on feedback. It’s a very repetitive process and went on for about 8 months.

    Although I was the one designing abilities, it doesn’t mean I did everything by myself! Here’s some of the chat I could get back from that time.

    Warning, the language can be a little rough.

    [​IMG]
    Designing the guardian angels ability


    [​IMG]
    Testing stuff with the CT during our weekly calls. I don’t know why we destroyed detlas for this

    [​IMG]
    Finding a good name and theme for an ability

    [​IMG]
    Showing the trapper’s wolf

    [​IMG]
    Figuring out how to make a complex ability sound less complex

    [​IMG]
    Testing the fallen archetype

    [​IMG]
    Showing the trickster’s clones

    [​IMG]
    Notes about animations we needed with the help of terrible MS paint drawings again

    [​IMG]
    Feedback about the potential viability of an ability

    [​IMG]
    Zeer and I teleporting into a house in Ragni for hours to polish the teleport spell and making it un-abusable. We had to recode every existing ability for the ability tree.

    [​IMG]
    Coming up with the riftwalker archetype

    [​IMG]
    Working on the tangled trap ability with random particles

    [​IMG]

    Figuring out a name for the summoner’s crimson effigy

    Let’s finish this by going back to the original 3 problems I wanted to fix/improve

    Problem #1: The game’s class progression stops too early and is too slow.
    You now continuously get points until level 104, and gain them much faster (especially in the early/mid game). Great success! It can even be extended easily if necessary.

    Problem #2: Spells are outdated.
    Abilities look cool! Partly due to better gameplay and design, but also because of the awesome particle effects created! A lot of people worked on those, but I want to highlight fishcute in particular who really did a ton of them. Zeer also did a surprising amount of them by himself!

    Problem #3: Items are too complex and builds irrelevant until endgame.
    I can’t say this has been dealt with 100%. As I said earlier, items are still about just as complex. We did improve and fix the compass damage calculations to help with that, but it can only do so much. What the AT did however, is create a second build-making system that is much less complicated. You generally only have 2-3 choices at once and are encouraged to follow your archetype’s path. Instead of being a puzzle with 3000 pieces working together, it’s now a 10 piece puzzle that can feel rewarding without too much work. The choices you make matter for the entire playthrough.


    That’s it for this time! Hope you guys found this interesting. Game Design is still not a perfected art and there are many ways to go at it, it’s just the way I personally like to do things. Don’t take this as THE way to design things.
     
  2. ____________birb

    ____________birb borpus Staff Member Moderator VIP+

    Messages:
    485
    Likes Received:
    344
    Trophy Points:
    72
    Minecraft:
    pretend i said something funny and/or witty here
     
    Last edited: Jan 28, 2023
  3. Samsam101

    Samsam101 Star Walker GM CHAMPION

    Messages:
    3,923
    Likes Received:
    11,880
    Trophy Points:
    217
    Creator Karma:
    Guild:
    Minecraft:
  4. Pickelated

    Pickelated Well-Known Adventurer

    Messages:
    14
    Likes Received:
    6
    Trophy Points:
    46
    Slated wyn craft
     
    Ariconnie48 and Fezzic like this.
  5. Bart (MC)

    Bart (MC) Ex-Item Maker & Day Counter (MC) CHAMPION

    Messages:
    1,610
    Likes Received:
    12,167
    Trophy Points:
    164
    Guild:
    Minecraft:
    Very cool that you did a writeup on this & I would absolutely be all over it if I wasn't already personally aware of all of this- but this piece is purely a community thing! Builds are so neat and rewarding to play around with in earlier levels and both are not as complicated as endgame yet offer uniquely available builds! People should really try using more than the random set items others deemed important :(
     
  6. Andkorn

    Andkorn Well-Known Adventurer HERO

    Messages:
    571
    Likes Received:
    167
    Trophy Points:
    64
    Minecraft:
    Would any additional Ability Points be avaliable beyond just gaining levels? IE; +AP on tomes / charms etc
     
    Fezzic likes this.
  7. point_line

    point_line Well-Known Adventurer

    Messages:
    864
    Likes Received:
    511
    Trophy Points:
    97
    drunk warrior moment
     
    Fezzic likes this.
  8. Druser

    Druser ele defs don't matter HERO Featured Wynncraftian

    Messages:
    5,888
    Likes Received:
    11,477
    Trophy Points:
    217
    Guild:
    Minecraft:
    Great post that explains a lot of things about how the ability tree ended up the way it is. I think the tree is one of the greatest examples of Wynncraft's "extremely ambitious and interesting but hampered by major balance problems" pattern.

    (I too really dislike when people say "don't worry about builds until endgame"...)
     
    luckeyLuuk likes this.
  9. Tealy

    Tealy a businessman of sorts GM CHAMPION

    Messages:
    1,828
    Likes Received:
    4,677
    Trophy Points:
    164
    Creator Karma:
    Minecraft:
    my main contribution was sending pog emotes
     
    Elysium_, Jackkoh, Gogeta and 2 others like this.
  10. ChaosDragon

    ChaosDragon Well-Known Adventurer Media CHAMPION

    Messages:
    169
    Likes Received:
    339
    Trophy Points:
    67
    Guild:
    Minecraft:
    I really enjoyed this glimpse into the development of the ability tree. It was a lot of fun to read.
     
    Krooza and luckeyLuuk like this.
  11. Linnyflower

    Linnyflower ironman btw Item Team HICH Master CHAMPION

    Messages:
    3,468
    Likes Received:
    4,001
    Trophy Points:
    194
    Guild:
    Minecraft:
    cool stuff big guy
     
    DvTheDowntimer likes this.
  12. Salted

    Salted Game Design & Wynncraft Founder Staff Member Admin GM CHAMPION

    Messages:
    2,555
    Likes Received:
    51,143
    Trophy Points:
    278
    Creator Karma:
    Minecraft:
    you're not completely wrong but honestly, i think we did alright balance-wise knowing we had to switch from 16 to 80+ upgrades per class. this shit gets really tricky when you start thinking about how all level ranges are affected and need to be balanced properly for various playstyles.
     
    Elysium_, FelixTape, Gogeta and 11 others like this.
  13. redhead123toad

    redhead123toad Well-Known Adventurer VIP+

    Messages:
    21
    Likes Received:
    22
    Trophy Points:
    48
    Minecraft:
    very cool salted ty
     
  14. GiantLittleWolf

    GiantLittleWolf Amarok HERO

    Messages:
    31
    Likes Received:
    50
    Trophy Points:
    51
    Guild:
    Minecraft:
    I am inspired by this. I'm not good at coding now but in the future I hope to be able to make my own stuff like you guys.
     
  15. Coolyoshi7

    Coolyoshi7 Just vibing with the mushrooms and making Waifus VIP

    Messages:
    403
    Likes Received:
    2,018
    Trophy Points:
    91
    Minecraft:
    HAHAHAH OH man That's a good one
     
    WithTheFish likes this.
  16. Olinus10

    Olinus10 Wynntuber, Quest Guider & Let's Player Media CHAMPION

    Messages:
    513
    Likes Received:
    1,769
    Trophy Points:
    91
    Guild:
    Minecraft:
    A very interesting read, a lot of work went in to it and it shows :)
     
    luckeyLuuk and CensingMarker51 like this.
  17. Deusphage

    Deusphage gruesome grue Modeler CHAMPION Builder

    Messages:
    2,198
    Likes Received:
    3,787
    Trophy Points:
    164
    Creator Karma:
    Guild:
    Minecraft:
    didn't show the screenshots of Dog Arrow discussion. I am disappointed in you Salted
     
    PercyTW, BethJerry and Salted like this.
  18. Femboy Orphion

    Femboy Orphion Bi Furry Femboy (Average Wynncraft Player) HERO

    Messages:
    466
    Likes Received:
    566
    Trophy Points:
    85
    Guild:
    Minecraft:
    That's really cool...
     
  19. ocu

    ocu penguin gang CHAMPION

    Messages:
    2,624
    Likes Received:
    8,155
    Trophy Points:
    209
    Minecraft:
    remember when you told me the wall jump ability wasn’t possible when I suggested it but then you did it anyways
     
    JoshLegacy, Krooza, BethJerry and 7 others like this.
  20. HeyZeer0

    HeyZeer0 Wynncraft Developer Staff Member Admin Developer Game Developer Featured Wynncraftian CHAMPION

    Messages:
    143
    Likes Received:
    1,299
    Trophy Points:
    67
    Minecraft:
    Oh yeah, only me and salted know the time I spent trying to make the jump feel good and go in the direction the player expects it to but still respect the wall.
    We were on an ability development call for like 4 hours and he was having a meltdown because I wasn't satisfied with how it worked lmao
     
    OmegaCKL, Krooza, BethJerry and 6 others like this.
Thread Status:
Not open for further replies.