Gamifying the ILS

This page is to keep track of our ideas for adding achievements/game mechanics to the patron experience of Koha. 
We could also gain a lot by adding this element to the staff side of things. That's going to be the topic of me KohaCon preso. Just think of the cataloguers! ;) -- BWSJ
I'm thinking of a system to create either public or private library achievements or badges based on library circulation and item data. The system would be opt-in only.
(I like Karma better than "achievements" as Karma has inherent non-competitive transcendent coolness, whereas "achievements" reeks of competition. Don't we want to encourage the inner coolness of patrons rather than engage them in a trite game? Why Badges? Does the score have to be public? I was thinking that Karma could be it's own reward and/or be converted to some xtras like xtra holds, additional renewal etc?)HB
Patrons might want a way to display their library achievements, like a copy-paste code widget they could put on their blog, for example. Another way to display library achievements would be a read only public OPAC profile page. I'm not ready to integrate full on social into this, it creeps me out. ++ 
(it creeps me out also HB)
The ability to display "most decorated patrons" on the front page of the OPAC might be cool too. ++
This would require keeping a lot more statistical data about patron reading history
As always, we need to be careful to include sound and such so that blind folks can join in. Surely we have friends like SH that can test for us. There are also cultural things to consider. --BWSJ
I want to help with this quite badly. I have been a gamer since the days of lode runner, so I has cookies. --BWSJ
Dude! Mozilla has totally done like a lot of work for us :D Checka, checka, check it out! Open Badges
==Basic rules for achievements==
* you cannot issue and return a book on the same day and have it count towards your achievements. -- Why? Verification to avoid abuse, perhaps? BWSJ
==Achievements==
"My cheevos!"
This was a slide from my KohaCon2011 talk. We can't just wholesale Blizzard's ideas, but the text categories are what's important here. I thought about what I would break a Library into from the staff side of things, and came up with these categories.
Categorisation and a summary of it is nice so folks can see at a glance what sort of user they are, and where they might avail of services they don't currently utilise.
(HB I have problems with the whole artificiality of game creation (badges, mounts etc) versus just trying to subtly encourage behaviors than benefit the community and subtly discourage behaviors than are detrimental, so I would rather see the whole thing stripped down to some bare essentials:
1. return items on time or early
2. Pick up holds on time or early
3. Place holds online
4. renew online
5. Cancelled a hold )'--Hankbank 14:34, 26 August 2011 (EDT)HB
Summat to keep in mind is that we need a nice blend of easy to get achievements coupled with some harder to earn ones. In WoW, the really hard ones get a virtual reward associated with them: a Title, a non combat pet, or even a mount. Perhaps it can escalate from low numbers to higher numbers, but also have beginning interactions (such as circulation) morph into more advanced activities like advisory through tags (recommended 10 things which other users found useful)
Achievements should have funny or descriptive titles. A few examples:
* check out x items by british authors "I kept calm and carried on" badge [Patron Achievements ---> Fiction ----> Broaden your Horizons] [Staff Achievements ----> Reader's Advisory]
* check out x vampire novels "blood sucking fiend" badge [Patron Achievements ----> Fiction ----> Broaden your Horizons] [Staff Achievements ----> Reader's Advisory]
* pay $x fines in one day "fine slayer" badge [Patron Achievements -----> Good Neighbours, General, or their Version of Circ?]
* no fines for a year "persistently punctual" badge (A whole year?! Saintly! This can also be incremented along with the number of points: A month 10pts, a year 50pts, et cetera. BWSJ) [Patron Achievements -----> Good Neighbours, General, or their Version of Circ?] 
* returned an item that was X <period> overdue "Another day another dollar" badge [Patron Achievements -----> Good Neighbours, General, or their Version of Circ?] (There should totally be a staff achievement for getting a Patron to return with their shamefully overdue items, too.)
* get a fine reversed (this could be dangerous, but funny) "I fought the law" badge (Heheheheh BWSJ)
* check out x items from the travel section "vicariously well traveled" badge [Patron Achievements -----> Non Fiction]
etc.
Example acheivements (of course there are infinite clever spins on all of these, probably thousands of acheivements in each category):(HB thinks these should be pared down -see above)
* 100 issues without an overdue(like it--Hankbank 14:34, 26 August 2011 (EDT)HB)
* fine slayer - pay $x of fines in one day(like it--Hankbank 14:34, 26 August 2011 (EDT)HB)
* a year with no fines (like it --Hankbank 14:34, 26 August 2011 (EDT)HB)
* check out x number of "classic" authors 
* check out x number of a particular popular author
* check out x items from an author of a given nationality
* check out an item from the section of the week/month
* check out x items from a given subject
* check out x number of <itemtype> in <period>
* check out x kids books (lots of achievements for kids and YA)
* returned an item that was X <period> overdue
* placed x number of holds in a year
* never missed a hold (a hold was never sent home without being picked up) for <period>(like it--Hankbank 14:34, 26 August 2011 (EDT)HB)
* received x holds from another branch
* renewed items online (like it--Hankbank 14:34, 26 August 2011 (EDT)HB)
* placed a hold online(like it--Hankbank 14:34, 26 August 2011 (EDT)HB)
* wrote a review
* left a comment
* wrote a purchase request
* tagged an item
* made a public list
* made a private list
* made the Librarian's day (staff issued)
* Cancelled a hold 
* picked up an item at a library other than your home branch
* requested an item from another branch
* returns items to the branch appropriate instead of their closest branch ;)(like it--Hankbank 14:34, 26 August 2011 (EDT)HB)
* had a purchase request accepted 
* had a purchase request denied
* had items issued in 3 consecutive years
* completed the (yet to be developed) OPAC first login tutorial.
* Friend of the Library
lots of ideas on achievements/badges here:
http://iactionable.com/gamification/achievements/. *to look into* http://code.google.com/p/userinfuser/
I'm wondering if it would be a lot of overhead to process all of this at actual check in/check out time. Circ speed is important, so maybe we need to compute achievements asynchronously via cronjob and email patrons the results (if they are opted in) useful link http://stackoverflow.com/questions/2600701/an-achievement-system-like-here-on-stackoverflow-in-php.
rather than write it all up ourselves, something like http://iactionable.com/ might be useful as well. (This is true of many different things we could roll in. There is a lot in the way of "Hey, let's integrate this" instead of "Hey, let's write this from scratch." GT System comes to mind.) 
It might be nice to have an interface for libraries to be able to define their own achievements, much like the report wizard. The ability to export and import badge definitions would be cool too (Like the frameworks). -- Definitely! This could be extremely popular, just like reports, and just like reports, I think it would be nice if there were like a "quick share" button so that things could be auto fed into bugzilla to be tested as enhancements without Librarians screaming for the hills about bug processing. -- BWSJ
==Quizz==
Make it possible to...
* create a multiple choice quizz (with one or more questions) and attach it to one or more records (e.g. could use the same quizz for the hardbound and paperback editions of a book, if they have separate records). This would help make sure people actually open their books, not just borrow them
* export and import quizzes, so they can be shared among libraries
* share quizz results on FB/Twitter/G+ etc
* award badges for good results.
==Public profiles in the OPAC==
Just some random thoughts on public profiles.
Opt-in only, of course. 
Could we distinguish between profiles that are completely open to anyone, and having them just open to others that are logged into the same OPAC? 
Things we could consider displaying (probably best if we let the user choose which ones should be turned on or off? lr: I think they should all be available privately to the patron.): 
* Achievements/badges as outlined above
* Comments
* Tags
* Ratings (stars)
* Actively published entries from the patron's reading history
* Share achievements to twitter/facebook/g+?
* Literacy plugins for Academics (A citation game, a source finding run of questions, classification made simple)
* Trivia timesink? Also, fuddy duddies want a tie in between gaming and education; trivia results _could_ solidify progress
* Links to crosswords, sudoko, blah blah blah
==Guilds==
Have to be able to have users self organise into guilds. Just. Have. To. (this to me is the stuff of madness HB)
==Feature preferences==
* entire feature on/off - global (g)
* public achievement profile on/off (patrons should be able to play even if they don't want to share) -- per patron (pp)
* share via widget (pp)
* receive library gaming email (pp)
* Groups done cleverly -- Book Club Cage match!
* Separate module for summer reading: Some folks might want this as a supplement that they're willing to turn on a few months of the year but not bother with the rest of the time. Just as I suspect that were we to revive the Childrens' Catalogue, this would be a natural partner for it
==Suggestions for libraries using this feature==
Types of help:
* making the most of achievements
* suggested rewards or incentives for getting an achievements
* writing good badges
* making an excellent 1st login tutorial/beginner mode
==Examples in the wild==
* Find the future - NYPL
* Under the Hood of the AADL Summer Game
* Lemon Tree - University of Huddersfield - "Lemon Tree seeks to increase the use of library resources through a social, game based elearning platform. Users will register with the system and be able to earn points and rewards for interacting with library resources, such as leaving comments and reviews of library books."
==Misc links==
* Gamifying the university library - Andrew Walsh talking at Online Information Conference 2011 (London, UK)
* Badgeville - commercial provider of JavaScript widgets and an API for gamification 
Category:Members/Patrons_RFCs