If there is an Achievement system plugin, what achievements do you think there will be for Tiddlywiki?

Obsidian: GitHub - Zachatoo/obsidian-achievements: Add achievements to Obsidian to help guide the user to build good habits in Obsidian.

Steam:
图片

Additionally to those you linked from obsidian, I think there can be achievements related to:

  • transclusions
  • parametrized transclusions
  • transclusions used as templates eg:{{||template}}
  • using system tags eg: Tagging a tiddler $:/tags/*
  • create at least one note within 5, 10, 20 consecutive days
  • create your own \function, \procedure, \macro or \widget
  • use of core macros, like <<tag>, <<tabs>> and so on.
  • “oldtimer” using 10+ CamelCase links
    • wikilink parsing rule is active
  • Related to parsing-rules
    • eg: using block-comemts in your content
    • using every possible parsing rule at least once
  • “Tester”: creating test-case tiddlers
  • Creating custom toolbars
  • Creating key-board shortcuts or modifying existing keyboard shortcuts
  • create wikitext tables
  • Using the list-widget
  • Using conditionals <%if%>
  • Using your own TOC in the sidebar
    • Have 5+ top-level toc-items
    • Structure is not deeper than 3 ()
    • Structure is deeper than 4 (“chaos artist”)
  • Drag & drop - Import
  • Export as JSON, single tiddler, HTML
  • Creating Permalinks
  • Creating Permaview
  • Using “New Here”, “New Journal Here”
  • Using “Clone”
  • Using “Close Others”
  • Using “Fold Tiddlers”
  • Using the Tiddler “Info Button”
    • User found tiddler → More → Info → Tools menu and used it
  • User used every option in the Tiddler → More dropdown at least once
  • Visited all tabs in the $:/ControlPanel tiddler eg: “Know your configurations” :wink:
  • User opened a Plugin Readme tag.
  • Advanced Search - User searched in “System”, “Shadows” and “Filters” tab
  • Filters-Tab - User used More Dropdown to select a predefined filter
    • User created a predefined filter
  • User successfully finished the “TW tour”
    • Once there are more of them. 1 achievement per tour
  • User changed a HiddenSetting
  • User used tiddler-fields
    • One tiddler has a field, 5, 10 tiddlers have at least 1 field
    • One tiddler has more than 3, 5, 10 fields …
  • User uses at least 3 different tiddler-type settings
  • User change editor-preview type
    • image
  • User opened Right Sidebar → More tab and visited at least 3, 5 all subtabs
  • User added an existing right-sidebar button to the sidebar eg: Tools → Home
  • User switches languages
  • User switches “layout”, “theme”, “storyview” or “palette”
  • User changes ControlPanel → Appearence → ThemeTweaks
    • eg: Change “Editor font family”
  • User uses a custom field in tiddler edit mode
  • Achievements related to Customize TiddlyWiki

I think that’s it for the beginning.
Have fun!
mario

3 Likes

Mario… how many brains do you have in your head??? Man!

1 Like

So do I understand this right:

The idea is a plugin that the user puts in his own wiki, that checks to see what techniques etc that the user is applying? What a super cool idea, and valuable if the results can point to further development of the user.

This could be added to official docs or brought under tips and tricks.
This is worth keeping for future references.

1 Like

Thank you, @pmario , these are very TiddlyWiki-native achievements!

I thought about: What makes TiddlyWiki unique. And once started – brainstorming just happened with the “help” of TW UI on the other monitor :wink:

2 Likes

Yes, and the underlying tool already exists, just the gamification plugin, it provides a $:/Tags/Gamification/ChangeFilter and reality-event-trigger-filter field to react to wiki changes.

But an instant achievement system is not yet implemented, currently the reward needs to be manually claimed and are only numerical.

I will take time for it, as a complement for the core tour system.

2 Likes

Maybe it is to unlock more advanced functions. In obsidian, there is a “vim mode” in the settings. To enable it, you need to correctly answer the “code to exit the vim mode” to unlock. If a user can unlock achievements, whether he is very proficient in this command or his powerful Internet information retrieval ability, it means that he can control the “less shackled obsidian/tiddlywiki”

That’s a great list!

I would add at least some of these:

  • Specify a username
  • Change the default tiddlers
  • Use at least three basic wikitext conventions (headers, ol and ul, strikethrough)
  • apply a color and/or icon to a tag
  • Use tag pill to select a tag’s “home” tiddler, and create a tiddler there.
  • reorder list field of a tag using tag pill drag-and-drop
  • Apply styles with @@ or *.class inline
  • Use the triple-curly-brackets shortcut for displaying filtered list
  • Make a custom stylesheet
  • Make a custom view template
  • Make a custom edit template
  • Add a condition to the cascade for body template and/or title template and/or edit template
  • add a list-before and/or list-after field to a tiddler
  • Edit a palette (beyond just switching palette)
  • Install a plugin (you’ve got open a plugin read-me, which comes later)
  • Use the html details widget (so powerful in TW!)
  • Encrypt a tiddler and/or the whole wiki.
  • Add a comment with <!--…--> syntax

This is really such a cool idea.

May I propose an approach that might make it simple (at least simpler): Make a “general frame” for it with an interface that then allows anyone to add “achievementdetector+reward” to. For the sake of this post, I will simply call an “achievementdetector+reward” and “achievement”.

If it is not clear what I mean, my Boosters plugin is an example of this; The plugin is basically just a shell to present the individual “boosters”. Basically it just lists stylesheets that are tagged in a certain way to present them in the sidebar.

For the achievement system “frame” there could be a form to fill in, which sets the standards for what constitutes an achievement. I’m guessing a lot of the detections are a matter of using a search filter, so there could be one form field for that. Another field is for the tiddler title of an image (assuming such is needed for a badge) which perhaps specifies a format, etc. Etc. Then the “frame” could package the entered data into an individual plugin or merge it into a bigger package where the previous ones have already been added. Maybe it is even enough with a common data tiddler to store all achievements.

So, the idea is the relieve you, or anyone, to personally implement all the achievements.

Just such a cool idea. And so extendable… logs for analysis, recommendations to docs, tips and tricks and, whoa, just so much.

1 Like

Yes, I’m thinking the best way to organize these tiddlers. It will based on existing change monitor utils in tw-gamification plugin, and I will create a new plugin to provide achievement creator and new layout.

There is already a gamification reward editor, I will use simillar technique for achievements.

I know many old tw users don’t like install too much plugins, so this is mostly intended for new users, I will pre-install it in TidGi app in the future.

But I’m not very hurry, because creating plugins for new users is only for fun, it’s priority is always lower than creating plugin that is for myself, for example WYSIWYG editor.

1 Like

I like the idea of a flexible, modular approach.

I could imagine asking students to create tiddlywiki projects for various purposes. But the purpose would never really be about TiddlyWiki per se. So, I could imagine prioritizing a certain set of “achievements,” tracked in a sidebar, that would be a more “go at your own speed” alternative to the tour plugin (or could be used alongside / after it), to encourage people to gradually develop familiarity with the features that are most directly relevant to getting fluent with TiddlyWiki (in the specific ways most relevant to the tasks at hand).

Here’s a crude prototype

https://achievements.tiddlyhost.com/

I think it could work. Which is what I am not doing. I’m tiddlyfiddling instead of working. Bad boy.