Tuesday, July 24, 2012

Observation: Signing Up is a Thing of the Past

This is a quick overview of how people behaved when presented with a beta list signup versus social media buttons.

Intention: Measuring Interest

Don't laugh, but I've been having fun trying to predict the actions of the investors on Shark Tank, a show where people pitch their business ideas.  Despite its seemingly mass-media appeal, I think I've gleaned something useful

Below are the things that seem to matter most for negotiating a deal with or impacting the behavior of an investor.
  • Sales
  • Sales
  • Sales
If your idea or product is not at the point of sales yet, you need some hard numbers that could easily turn into sales.  Without that, your ideas are as worthless as any other unvalidated opinion.

When I turned on the tracking for http://liederboard.com, I was surprised at the high amount of traffic.  At the time of this writing, we're nearing 10k hits in a little over a month's time.  Taking a tip from Dropbox's story in Eric Ries's "The Lean Startup", I decided that a more substantial metric could be obtained through beta signups.

Beta Signups

Around July 11th, a beta signup page was implemented in my project.  Here are the figures around the beta signups today.
  • 6 signups total
  • 1 was a test entry from me
  • 5 were from individuals that I directly asked to sign up if they wanted to show their interest
That means that 0 out of at least 3,000+ hits over July 11th - July 22nd signed up purely due to the feature's existence.  Some people would sign up if I asked them to.

Conclusion: there is a strong indication that users are not willing to use forms to sign up for something of interest, regardless of whether interest exists.  A conclusion cannot be made about actual interest.

Social Media Buttons

Observing the failure in the strategy, I implemented social media buttons on the website.  On its first day, the measurable "interest" matched and exceeded the figures portrayed through the beta signup -- don't get too excited as not even double digits were required to accomplish that.

With no announcement, post, or any real attempts to propagate the feature beyond natural interaction and testing, the social media buttons stand with these figures.

There were over 1,000 hits on that first day, but that may have been due to repetitive testing and iteration.

Okay, So How Do I Do It?

My most effective method for the How To of social media buttons was to search on Google.  Seriously, if you enter "Google+ button" or "Twitter button", you will usually see an official page that will give you the code to paste into your HTML.  The buttons themselves work in javascript.

Here are the pages I used.

Google+ Button


Twitter Button


Facebook Button


LinkedIn Button

Note that if you want to point to a company page, you have to have a company page on LinkedIn.  That deterred me from implementing the LinkedIn button, but the page below has a "share" button that I might also incorporate later.


Pinterest Button

Scroll past the useless information at the top which will otherwise make you mistake it for an FAQ.


Reddit Button


Share the Wealth!

Hope that helps you gauge effectively.  Don't forget to +1/Like/Tweet/etc. my project!  If you're a redditor (boo to 9gag), imagine all the karma you'll get by submitting my project to a subreddit like music, musicians, or sheetmusicexchange!

Wednesday, July 11, 2012

Analysis for a Gameplay-Based Lore Framework

This segment was taken from another entry due to the length of that entry.  Here, you will find the analysis that leads to the lore framework discussed in that original entry.

League of Legends is Gameplay-Based

Like Monopoly, the most important thing in League of Legends is a gameplay that is meant to be adopted by a mass market (and equal to or greater than that which played DotA).  Lore is secondary to gameplay, so we can consider League of Legends to be a gameplay-based game.

Let's put on our game/user experience designer hats to understand the gameplay elements that will form the lore framework -- just like we did at a high level with the gameplay-based Monopoly lore framework.

- A user selects the champion they will control in the match.
- The 4 teammates and 5 enemy summoners select their own champions for the match.
- The match begins with all the users' selected champions at a spawn location.
- The spawn location provides a source of modifiers for champion stats or abilities.
- The spawn location provides restoration of a champion so they may maximize the time until which they are next forced back by the enemy.
- A set of minions stream out at regular intervals from the victory condition node to the enemy's victory condition node.
- Enemy users, obstacles, and enemy minions prevent minions from reaching the victory condition node.
- A team wins when their users overcome the obstacles and enemy users such that the enemy's victory condition node is reached.

Laying out the Static Elements of League of Legends

Now let's put on our creative director hats (we're creative directors that happen to understand game, UX, and technical design because we attended many GDC parties, okay?).  If you look at the above, it sounds very dry and mechanical -- which it should, because those awesome game designers know how to break down games to their bare mechanics.

It's your job to find the resultant lore framework elements and give those mechanics life and purpose.  Here's where the game stands with the description/chat from your designer -- as well as from playing the game yourself.

Minions = Minions
Spawn Location = "Fountain"
Victory Condition Node = "Nexus"
Source of Modifiers = "Item Shop"
Modifiers = "Items"
Obstacles = "Towers"

Most of the time,
it's the same things
every time.

You also understand that the macrocosmic unit of experience for a user is a "match".

The above are static because they are the same across all matches.  You might be thinking of a few other static elements, such as "the jungle" or champion death.  They were left out for brevity and because they are also unchanging across matches; more static stuff you can trust the excited writers on your team to tackle.

There are some remaining terms, though...

Users = Summoners
Champions = Characters released over time

These are dynamic across matches and real time, with champions being limited in the sense that they are always the same from a selection made by the user from a pool of champions available at that time.

These could be the opportunities for large-scale immersion beyond the scope of a single match experience.

Monday, July 9, 2012

Creating An Immersive Experience in League of Legends

The content described here in absolutely no way previews, hints, nor in any way whatsoever represents any development going on at any of my past employers' studios.  This is an original direction and vision for lore and game IP that is based only on my experience as a video game player; it is not based on any specific content or methods of development experienced at any studio.

One of the reasons I've been a League of Legends fan since the beta was to see how the game realized or failed the potential I saw in it.  The game, like many others, offers a fantastic opportunity for lore, story-telling, and immersion in the multiplayer space.

Since I'm not currently working for its developer or any competitors, I can finally write this out for fellow lore dorks dissatisfied with the video game industry's trend of story-telling.

A Game's Lore Framework

Because I get paid to do engineering and not writing, I've come to call this a "framework".  A lore framework is the space within which stories and events must be told to make sense of or contribute to the overall purpose or functioning of the universe.  This overall functioning is usually based on a creative director's vision or by the successful past works in the universe.

A story about how an orc and a human got along
despite a game where orcs were at war against humans.
In WarCraft III, a common lore element is redemption.  Redemption and internal conflict are a part of the most notable plots and characters in the WarCraft lore framework.  A harmony with the framework exists in WarCraft III when Thrall the orc makes nice with Jaina Proudmoore the human daughter of a naval fleet commander, despite their pasts, for a greater good.  A conflict with the framework exists in World of Warcraft when the player can in no way support nor interact with the opposite faction, because this flies directly against the elements of redemption and internal conflict.

Can I be like Thrall and Jaina
or does that quest bang mean "no"?

The League of Legends Lore Framework

A very interesting (and awesome) lore opportunity arises with the DotA-based game.  On launch day, there are no known actors.  There is no universe; there is a map.  The lore is haphazard and champion-based, with the world map only being relevant because it represents a champion's origins. With a few retcons to rectify some haphazard origins, this trend would pave a path that the game continues down -- to its 100th champion Jayce -- today.

Let's look at a successful, practical parallel to give us some perspective.

A Similar Lore Framework's Results

Monopoly is a multiplayer game with a single board.  Based on chance, players move to points of interest that provide opportunities or immediate consequences for their money.  The player with the most money is considered to be winning.

No one knows what Baltic Avenue is, what it looks like, or its history.  As people play, however, they naturally infer that it is something like a poor residential area or slum compared to Park Place and a personal connection to the landscape is formed based on nothing other than the gameplay.  Go ahead and bet on Baltic Avenue's history not being in the manual; even if it were, what would that matter?   Few people read the manual anyway -- much like mainstream players do not read game-external publications that are sometimes in no way relevant to its game and, more a fault of the system than of the authors, eventually are deemed non-successes by executives or senior management.

Thanks to the accessible and natural immersion of the player in the game mechanics, consumers that play Monopoly might immediately understand "That's the Boardwalk of Los Angeles" or "Don't go too fast, you'll go to jail.".  Furthermore, this identifies the consumer as a fellow player of what might be considered a subculture, reinforcing something of a community for the product.  Finally, there is a positive regard for fellow consumers of Monopoly simply due to its sheer popularity: if you don't get those references, you might be considered uncultured!

This is where you live, right? 
Just under here, Mr. I've-Never-Heard-of-Monopoly?
Thanks to that same immersion, developers of games easily draw connections between the original Monopoly landscape and that of any other world -- all by just honoring the lore framework established by the game's mechanics.

It's to the point that you could probably come up with a Monopoly variation right now.  Is there one for Pokemon, My Little Pony, or tech companies?  If you understand your own universe well enough, chances are that one indeed exists right now -- in your head, at least.

Analysis of the Gameplay Basis

For the sake of brevity, this segment has been posted to its own entry.

A Summoner-Based Lore Framework

Riot Games deserves a shout out for something it's done since its early days.

In pretty much every single forum post, their employees address their users as "summoners".  By doing this, users become attached to the role they play in the game and are unified regardless of currencies or tenure.

I don't care what team I'm on;
in my head
my robes are dark red.

Sadly, that's where this attachment ends.

Let's take advantage of that opportunity (how many game companies before Riot referred to their users as their in-game equivalents?) to further strengthen the role of summoners in the League of Legends IP.  As we roll out the lore framework for the game, summoners will be the main focus.  As a bit of a (common sense) bonus, this focus also embraces the Riot Games mission statement.

- A "Summoner" is an individual that summons champions. [Gameplay equivalent of user]
- Summoners rarely, if ever, take part in combat themselves. [Gameplay]
- Summoners mostly, if not always, interact with champions through summoning. [Gameplay, UX]
- A huge population of summoners exists. [Technical, Gameplay, UX]
- A huge number of matches exist. [Technical, UX]
- Champions have strong relationships with or against city-states in the game world, Valoran. [Gameplay]
- Champions have strong personalities conveyed through splash art, voice-overs, and in-game visual presence (animations, models, etc.). [Gameplay]
- Summoners summon champions at the The Institute of War. [Pre-existing Lore]
- The Institute of War was created to moderate war in the interest of environmental stability. [Pre-existing Lore]

Actionable Ideas from Our Lore Framework

With our understanding of our lore framework, even laying out those few elements may inspire some ideas.  It's time to meet with our team and discuss feasible possibilities, then make one of them a reality.

A Guiding Element from the Lore Framework

After sharing and explaining your list of elements with the team, you hit up the whiteboard and scrawl the conclusion that is going to guide them in satisfying the common lore dork like you.


In the League of Legends, you will immerse your players by having champion selections affect the in-game world.  You ask your engineering gal to get data on champion usage over the last week or two, look at who was the most popular and most victorious champion, and tell your artist what their city-state is all about.


1. On the Sunday night of every two weeks, get champion usage data from the last two weeks, ranked from most used to least used.  Iterate toward multiple factors and observe what happens, but we can simply start off with the following.
- champion name
- percentage/number for selection of that champion
- percentage/number of wins on that champion
- percentage/number of losses on that champion

2. On Monday, go over the numbers with your team and decide which city-state and their champion can be considered "most victorious" over that time period.  Reasons can be arbitrary, but document them; you'll be sharing those reasons with summoners as a record-keeper of the Institute of War's history.  Also document that victorious city-state; this is the beginning of the known history of the League of Legends.

3. After deciding which city-state is "most victorious", complete 2-week development on the following.  At the minimum, have an artist do the first.  Iterate to see what people actually respond to and use, and discontinue any features or methods that have diminishing returns.
- [1 junior-mid artist, 1-2 weeks] A summoner icon representing that most victorious city-state.
- [Agreement from Marketing and Design, 1 Engineer] Change of price of champions from that most victorious city-state to the maximum in the range (6300 IP at this time), and change of price of champions from least-victorious city-states to minimum in the range.
- [Web developers, 1 Community resource or Writer] A website containing the most victorious city states over time, the most victorious champion
- [1 Community resource or Writer] A forum post reporting the victorious city-state thanks to the summoners that supported their champions, explaining the criteria -- and whether or not they've changed -- as if from a record-keeper at the Institute of War.  Communication that the city-state will be rewarding the top summoners contributing to their glory; perhaps even a listing of those summoner names for notoriety.
- [1 Data Specialist and a Community resource or Writer] A list of the top X% of summoners that won with the city state champion -- the ones essentially responsible for the city-state's "victory" -- and an email to those summoners with a code for their city-state summoner icon.
- [?] City-state skin?  Forum avatar?  Voice-over that treats summoners with particular respect because of their contributions to the city-state? 

4.  At the end of the 2 weeks of development, deploy the summoner icon, send out the emails, post up the forum posts or website.

Maintenance, Measurement & Iteration

Congratulations!  You've used existing technology to create an immersive experience in the League of Legends universe!  That's the claim, anyway.  It's time to see whether or not your strategy is working.

Testing the Hypothesis

Among our leap-of-faith assumptions is that players want an immersive experience in League of Legends.  The advantage of starting small (with a single summoner icon, email, and forum post, for example) is an easily gauged answer within a matter of weeks. 

If that top percentage of summoners all redeem the codes emailed to them and set their summoner icons to that city-state icon, it is a strong indicator that they care about such tokens toward immersion.  If the forum consists of pages of posts from players wondering why they did not receive a summoner icon, it is a strong indicator that they care about such immersion.

If player match histories or the bi-weekly data numbers suddenly show a huge shift in champion selection that reflects city-state influence, you are well on the way to giving "Influence Points" and the "DEMACIA" battle call a whole lot more meaning.

The Future

Using the implementation above, the most important city-states will get summoner icon work that must only be done once per city-state.  Eventually, if all city-states are represented, all city-states will get summoner icon work done that does not require further investment.  The worst-case cost of this work is linearly proportional to the number of city-states that exist in the game.

Likewise, by exercising the strategy from this lore framework, champion developments are potentially funneled to the number of city-states as well.   Instead of future development scaling with the number of champions, costs are based on interactions with a summoner and based on the single city-state relationships of the champion being considered for development.

With the eventual completion of development for all city-states, summoners can start receiving their rewards directly after the period of judgment.  There's no more need to develop a Noxus icon three months in; it's already there.

Hand out the benefits to the elite % of summoners on the day of, or soon after, the judgment period.  Suddenly everyone's participation in the League of Legends becomes a conversation of champions, city-states, and lore -- all with the summoners at the root of those conclusions.

Measuring Up to Other Games

There's no reason games can't achieve the lowest common denominator.
(Comic from penny-arcade.com)
This is another entry in and of itself, but a good lore framework will provide elements to strengthen three major aspects of a game's universe.

- A macroscopic immersion in the game universe.
- A microscopic immersion in the game world.
- Story-telling and development around the character.

This implementation offers the player a macroscopic enjoyment by making each match (the microscopic experience) relevance throughout League of Legends history.  There is also a small-scoped impact in particular strategies, such as if IP prices change around summoner victories for a city-state.  Finally, the summoner gets to feel as if he or she is being rewarded for a devotion to a set of champions and a distinct sense of identity is formed that positively reinforces that identity and the identity of other summoners within League of Legends.


It is possible that selection of champions will be considered disruptive to game design.  The composition of teams may change, custom games may be started so summoners can select champions that earn a city-state's favor, or the already-existing behavior around champion selection might change in a way we don't foresee.


Wednesday, April 18, 2012

Auction House Feature Breakdown

This segment was taken out of this piece on MMOs for the sake of readability.

I'll analyze the auction house ("broker") feature because -- to say it diplomatically -- there's a reason SW:TOR now has to patch up their "auction house" in their next few patches (if they haven't already).

Use cases for the broker:
- Player wants to sell an item they possess.
- Player wants to purchase an item they need.

My expectation is for production to understand and own the implications of the use cases in the context of their particular games. Here, we'll look at the first case generally, avoiding going too far into game-specific minutiae.

In Aion, "Player wants to sell an item they possess" involves deciding the price and transferring the item to the broker system, which really means...
  1. Player travels to the broker NPC to interact with it.
  2. The interaction brings up some UI, but the player doesn't really care because...
  3. ... the player right-clicks on their item that they want to sell. The UI populates the search field with their right-clicked item.
  4. The user presses Enter or clicks the Search button to see all current listings.
  5. The player now knows what their item is worth. This is an intention!

Compare this against (disclaimer: what I remember of) the equivalent SW:TOR Galactic Market use case.

  1. Player travels to the Galactic Market terminal to interact with it.
  2. The interaction brings up a UI.
  3. The player looks at the drop-down labeled "Required" to understand the drop-down selections.
  4. The player chooses the drop-down selection that seems most appropriate for the item.
  5. The player hits search that returns the listings of that drop-down categorization at that time -- but to enable the Search textbox.
  6. The player types the name of their item into the Search textbox.
  7. The player presses Search to search for listings that correspond to their item.
  8. If no listings are found, the player might go back to step 3 to make a different guess at categorization. If listings are found, the player now knows what their item was worth at the time they searched for the categorization*!

Wednesday, April 4, 2012

The First Google Offers Experience

I've been called a Google enthusiast. Throughout my time as a Google fan, though, I don't immediately recall a huge push for Google Offers. Today's is the first, executed through Starbucks as a $5 for $10 offer that also donates $3 to American jobs on Google's behalf.

Jobs, drinks, and electronic payment innovation offered today.

Let's consider the hard, prospective gains for each involved party.

  • Starbucks stands to get more business from Google users.
  • Google gets some attention to its Google Offers product and Google Wallet product.
  • I (the common consumer) get five bucks toward Starbucks, as well as -- if you're into this sort of thing -- the feeling of charity for making Google give "American jobs" $3.

The Hope and General Conclusion

Today's experience was generally negative and could be considered a failure. There are many opportunities for this experience to be improved.

As soon as this offer was revealed, my hope was for an innovation in electronic offers and payments. I want to see ideas, which could especially (or only?) come from companies like Google, that eventually replace my wallet -- it's what they're trying to do anyway, and I'm excited! Could my shopping become as easy as installing an app on my phone and tablet from my desktop?

Not yet.

The User Experience

Let's break down one user's experience to clarify the problems and focus future improvement possibilities.

  1. The consumer receives an email, from the My Starbucks Rewards program, to inform them of the offer. A "Sign Up for Google Offers" button is prominent in the email.
  2. The consumer receives an email, from Google Offers, to inform them of the offer. A "VIEW AND BUY" button is prominent, and a relatively clean bullet list reveals details.
  3. The consumer receives an email, from Google Wallet, to inform them of the offer. A "Sign Up for Google Offers" button is prominent in the email.
  4. The consumer follows any of the aforementioned buttons, links, to arrive at the same page.
  5. The user clicks the button to purchase the offer to have Google Wallet load their payment information -- if it exists. I'd love to hear from anyone who didn't have Google Wallet payment information stored.
  6. The user confirms the purchase to complete the transaction.
  7. Google Offers sends the user an email receipt to inform them of the transaction.
  8. I don't know what to do right now. The user attempts to find information to obtain the goods purchased.
  9. The user sees a link to the Google Offers app advertised on the purchase confirmation page (not the email), which says the mobile device can be shown to the retailer -- perfect! -- and downloads the app. Momentary confusion: I have the Google Shopper app; is that different? Answer: apparently, yes.
  10. The user physically makes a trip to a Starbucks to find out more information and purchase a drink with the purchased offer.
  11. The user shows the Starbucks employee the Google Offers screen to obtain the purchased goods, because the app says "Show this screen to retailer to redeem your offer.". The Starbucks employee does not know how to make use of this.
  12. The Starbucks employees try to find out how to make use of the purchased offer. Specifically, they ask other employees, try to interact with the app, and call someone off-site to find out how to make use of the offer.
  13. The user opens up the web browser to navigate to the website listed in the app.
  14. The user navigates through all the required UI actions to get to their purchased offer under "My Offers".
  15. The user follows any UI component that could possibly lead to a resolution, to possibly reach a resolution. It works and a UPC bar appears.
  16. The Starbucks employee scans the UPC bar and adds $10 to the consumer's pre-existing, physical Starbucks card.

The User Intention

As a consumer, the primary intention was to get $10 for $5. After that, my secondary intention was to get a drink.

I didn't really care which services that involved -- I trust Google, perhaps more than I should. I'm already signed up for many of their services, even when some are not useful.

Sixteen outlined steps is huge. If you had the patience to get through it all, you can see that there's a lot that lies outside of the user intention. We can distill the process according to the user intentions.

Steps 1-4: Information.

Google partnered with Starbucks to give me $10 if I spend $5? Okay, sure -- I want that, but the following doesn't tell me how to get it.

Given the above, describe to me how I get my $10 for $5.

Steps 5-11: User Actions toward Intention.

What do I need to do to get my $10 for $5? Google and Starbucks did not provide the actions required from their consumers. The users could have been informed of the expected process, upfront. Here is what Google developers seem to have expected.

  1. Purchase the offer from Google Offers to take advantage of the offer.
  2. Navigate to google.com/offers, click the "My Offers" button, navigate to the Starbucks offer, and click the "Redeem" button to reach a page with a UPC bar.
  3. Present this UPC bar to a Starbucks employee to complete the transaction, either by printing out the page, or by navigating to this page on your mobile device.

Had this process been communicated to me from the very start, I could not so easily consider this Google Offers attempt a failure.

Steps 12-16: Delivery of Goods According to User Intention.

I expect a Starbucks employee to actually credit me with my purchased offer's goods. Once we all figured out how to do that, this delivery became possible.

The Payment Innovation Hope: A Successful Example

As stated, I'm excited to see the implementation of ideas that streamline the process of payment. Let's look at Eventbrite's implementation, which has achieved the following, simply because of graceful user interaction/experience design.

  1. Made me a user of Eventbrite where I would usually not be an Eventbrite -- or any event-organization service -- user.
  2. Streamlined the acts of making an RSVP, payment for event tickets, and attendance.

Just yesterday, I attended a screening of Indie Game: The Movie, at a 4-plex in Santa Monic. Here was how the process went.

  1. I receive an email, from Eventbrite, to inform me that a viewing will happen. Now that I think about it, I'm not exactly sure how they knew to email me -- possibly from GDC -- but that's okay since they correctly targeted an interested consumer.
  2. I see additional incentives via twitter, by sheer coincidence during my normal twitter consumption.
  3. I follow the link from the Eventbrite email to purchase tickets.
  4. I select the number of tickets, enter payment information (because I don't want to link my PayPal account), to complete my transaction.
  5. At the door, I show them my Eventbrite app, which immediately displays the barcode to allow me entry. The app was already downloaded and installed.

Note the closer mapping of information, user action, and delivery of goods. Especially consider that the hurdles are user-created -- I chose to consider additional incentives and look in two different mediums (email and twitter). It was not forced upon me by the process.

Let's look at my GDC experience with Eventbrite, which really made me an Eventbrite user.

  1. User "purchases" GDC party tickets from Eventbrite at $0.00, to gain entry to future party. There are many parties which do this.
  2. User forgets printed tickets. Unintended user action.
  3. User looks up confirmation email on mobile device, because it has the QR code in it, to show bouncer and gain entry to party. User sees there is an app.
  4. User downloads app to satisfy curiosity.
  5. User loads QR code from app to show bouncer and gain entry to party.

Again, we see a closer mapping between the user intention -- getting entry to a party -- and the minimized process to reach that. Complications are created by the user.

Eventbrite deserves further commendation because I was never at risk despite my own complications. Without their downloaded app, my QR code was still in my confirmation ticket. Compare that with today's experience for Google Offers, where my email confirmation only has a link to a website, which itself has a link to the actual purchased goods.

Three Recommended Future Steps

I want to see innovation on my payments, services, and delivery of purchased physical and virtual goods. Here's how I would make that happen if I had Google's development power.

  1. Clarify and communicate the process, with consideration for the user intention. Validation/results: user can correctly inform the developer of how to satisfy their intention through the developed system.
  2. Minimize the process, maximize the opportunity for intention satisfaction. Despite the user knowing how to reach their goal, the way to do that can still suck. You can steal Eventbrite's practices directly (why not give me my UPC code in my confirmation email?), or try to minimize the process in a new way -- just iterate with your developers' ideas on how to get better than the process from 1, while always making sure the user can recite it back to you without your having to teach them. Validation/results: user can achieve the same intention as 1 in a more efficient manner, as measured by time, interaction, steps in process, or whatever is relevant to your project.
  3. Reduce external confusion. With some solid process available, we can now expand into reducing the confusion outside of that. Users don't know why Shopper is different from Offers right now. Users don't know why Offers isn't showing the bar code that the Google Offers website does show. Eliminate these questions: choose a medium (I vote for the mobile app, personally) and synchronize all mediums with that one as the primary. Validation/results: you can delete the non-primary services while users know they can achieve their intention with that primary, single medium.

Wednesday, March 28, 2012

An Easy Win on Inventory in Your MMO

Courtesy of Aion.


Aion is a better game than a game without the following client-side feature. It's on the corner of the inventory, a magical little button that sorts your inventory.

You can see it in the icons even if you have no idea what these items are. The rock-looking stuff is all together. The potions are all together. The scrolls are all together. Sorting goes by level -- so much more sophisticated and smooth than games without arrangement. I had to actively try making this UI look messy for the comparison below.