Skip to content

Latest commit

 

History

History
96 lines (62 loc) · 8.42 KB

user-experience.md

File metadata and controls

96 lines (62 loc) · 8.42 KB

Git Slayer - User Experience Guide

The Git Slayer Game aims to enhance the developer experience on GitHub/GitLab through subtle, non-intrusive gamification. This guide provides an overview of the intended user experience, including leveling paths, item rewards, and example gameplay scenarios. Our priority is to ensure that Git Slayer complements daily workflows without disrupting the developer's focus or adding unnecessary complexity.

1. Core Experience Philosophy

Git Slayer is built around the principle that developers, project managers, and operators should feel rewarded, not interrupted. The game is designed to integrate smoothly into GitHub/GitLab, providing gentle encouragement and a sense of progression without forcing players to change the way they work. Gamification should serve as a lighthearted, optional enhancement rather than a mandatory layer.

Key Design Principles

  • Non-Intrusive: The interface and game mechanics operate subtly, with visual feedback that doesn’t distract from core tasks.
  • Seamless Integration: Git Slayer leverages native GitHub/GitLab activities to track progress and rewards without requiring extra effort from users.
  • Positive Reinforcement: Players are rewarded for their contributions through visual cues, leveling, and item drops, fostering a sense of accomplishment.
  • Progress at Your Own Pace: Developers can engage with Git Slayer at any intensity level, from casual enjoyment to focused progress. The experience is fully flexible.

2. Leveling Paths

In Git Slayer, leveling up occurs naturally as contributors engage with GitHub/GitLab activities. The experience points (XP) system is tailored to recognize meaningful actions without creating pressure for “grinding” or repetitive tasks. Users can level up at their own pace, with each level bringing small but rewarding progress.

Leveling and XP Gain

  • XP is awarded based on core GitHub/GitLab activities, such as commits, pull requests, issue resolutions, and code reviews.
  • Small XP rewards accumulate gradually, allowing users to progress without feeling the need to "chase" XP. Contributions are naturally rewarded, creating a continuous sense of achievement.
  • Level Milestones: Every few levels, players reach milestone rewards that might grant items or new abilities, making milestones feel rewarding but not overwhelming.

Leveling Paths by Role

  1. Developers: Gain XP through commits, pull requests, and code reviews. Leveling up feels like a reflection of their steady contributions.
  2. Project Managers: Earn XP for overseeing tasks, closing issues, and organizing projects. Their contributions are recognized through leveling up without needing direct technical involvement.
  3. Operators: Gain XP for handling deployments, CI/CD tasks, and infrastructure configurations. Their contributions behind the scenes also earn progression and rewards.

3. Item Rewards

Items are an optional but rewarding component of Git Slayer. Players acquire items at certain level milestones, from rare drops, or by completing specific achievements. Each item grants small, beneficial bonuses tailored to their role and class.

Item System Overview

  • Subtle Bonuses: Items provide minor XP boosts or time-saving perks without significantly altering workflow. For example, a Knight’s Shield might add a 5% XP bonus for bug fixes, encouraging contributions without adding pressure.
  • Class-Specific Items: Each class (Knight, Sorcerer, Paladin, Druid) has unique items aligned with their gameplay style, allowing for some customization.
  • Inventory and Customization: The addon’s Inventory tab lets players view their items, but items are automatically equipped to reduce management burden. Players don’t need to “optimize” their loadout—Git Slayer will handle that.

Item Drop Scenarios

  • Milestone Rewards: Every few levels, players receive milestone rewards such as new items that provide subtle XP boosts.
  • Achievement-Based Drops: For significant contributions, like resolving a high-priority issue or merging a major pull request, players might receive rare items.
  • Special Events: Occasionally, Git Slayer hosts special events where contributors have a chance to earn unique items for certain activities (e.g., a "Documentation Drive" that rewards Paladin players for documentation contributions).

4. Gameplay Scenarios

Below are a few scenarios illustrating the intended user experience and demonstrating how Git Slayer integrates with regular workflows.

Scenario 1: A Developer Merges a Pull Request

  1. Pull Request Merged: The developer merges a pull request after completing a code review.
  2. XP Awarded: They gain 25 XP, and a small notification appears in the bottom-right corner, confirming their XP gain.
  3. Level-Up (If Applicable): If they level up, a gentle animation highlights their new level.
  4. Item Drop (Chance-Based): They have a chance to receive an item, like the “Sorcerer’s Staff of Ingenuity,” providing a 10% XP boost for complex code contributions.
  5. No Disruption: The notification fades, and the developer continues their work without additional interactions.

Scenario 2: Project Manager Oversees and Closes Issues

  1. Issue Closed: The project manager closes an issue marked as “high-priority.”
  2. XP Awarded: They gain 15 XP for the issue closure, with a quick visual confirmation.
  3. Achievement Notification: Since they reached a milestone (e.g., closing 50 issues), they receive a congratulatory message with a small visual celebration.
  4. Optional Item Drop: They may receive an item like “Paladin’s Banner of Teamwork,” which adds a minor bonus for collaborative tasks.
  5. Minimal Impact on Workflow: Notifications are brief and non-disruptive, allowing the project manager to stay focused on their tasks.

Scenario 3: Operator Configures a CI/CD Pipeline

  1. Pipeline Configuration: The operator sets up a new CI/CD pipeline for an upcoming deployment.
  2. XP Awarded: They gain 15 XP for a non-code task, acknowledging their behind-the-scenes contributions.
  3. Class-Specific Bonus: If they are a Druid, they receive a slight XP boost due to the versatility of their contributions.
  4. Non-Intrusive Feedback: A notification briefly acknowledges their XP gain, then disappears without further input.

Scenario 4: A Team Defeats a “Dragon” (Event-Based Scenario)

Occasionally, Git Slayer hosts collaborative challenges, where a team of contributors works together to “defeat” a dragon. This challenge encourages team engagement without adding pressure.

  1. Dragon Event Begins: The Git Slayer addon notifies team members about a dragon event, where they can contribute XP collectively to defeat a “dragon” over a defined period.
  2. XP Contributions: Every XP earned during this time counts towards the dragon’s “HP,” encouraging regular activity but not requiring it.
  3. Victory Celebration: Once the dragon is defeated, a celebratory overlay briefly appears, with confetti and sounds (optional), congratulating the team.
  4. Reward Distribution: Each team member receives a small bonus item, like a limited-time "Dragon Slayer Shield," granting a temporary XP boost.

5. Addon Preferences

To ensure that Git Slayer enhances rather than distracts from GitHub/GitLab workflows, contributors have control over their addon preferences:

  • Sound and Animation Controls: Players can enable/disable sound effects, adjust animation levels, or opt for a minimal interface.
  • Notification Settings: Players can set preferences for notifications, choosing to receive only major updates or all activity updates.
  • Participation Level: Players can opt into or out of certain events, like dragon battles or special achievement notifications, allowing them to focus on specific areas of engagement.

6. Progress Without Pressure

The core design of Git Slayer prioritizes progress without pressure. Contributors should feel rewarded for their actions, not burdened by additional tasks or distractions. This structure creates an experience where leveling up, earning items, and contributing to special events feel enjoyable and additive to their work, rather than disruptive.

Git Slayer aims to build an environment of lighthearted achievement and camaraderie, where contributors can engage as much or as little as they wish without impacting their productivity.