Skip to content

se2p/IntelliGame

Repository files navigation

IntelliGame

This is the repository of the IntelliGame Plugin for IntelliJ to integrate Gamification into IntelliJ.

IntelliGame is a plugin for IntelliJ which rewards developers for positive testing behavior using a multi-level achievement system: A total of 27 different achievements, each with incremental levels, provide affirming feedback when developers exhibit commendable testing behavior, and provide an incentive to further continue and improve this behavior.

Development - How to add new Achievements

During development, the IntelliJ Platform SDK serves as the primary source for documentation.

  • Adding Achievements:
    • New Achievements should be stored in the achievements folder
    • The Achievements must implement the Achievement interface.
    • Furthermore, Achievements usually implement a listener to react to specific user inputs. These listeners, or in this case Achievements, are then subscribed to the Message Bus with the help of the plugin.xml or in the ProjectService under the appropriate topic. All possible listeners and the appropriate topics can be found here. Information on embedding the listeners can be found here.
    • In order to display the new Achievements in the Achievement Overview, they must be added to the appropriate Get method in the Util class. The Achievements are then automatically listed in the overview.
    • If a new Achievement group should be added, it has to be created in the MoreInformationDialog synchronously to the existing groups and a new get method with the associated Achievements has to be defined in the Util class.
  • To test the implementations, IntelliJ can be started using the intelliJ/runIde Gradle task in a sandbox that has the plugin installed.

Installation

  • Using IDE built-in plugin system (in the future):

    Settings/Preferences > Plugins > Marketplace > Search for "IntelliGame" > Install Plugin

  • Manually:

    Download the repository and run the gradle intelliJ/buildPlugin task. By simply dragging and dropping the resulting zip file over an IntelliJ window, the plugin can be installed.


Plugin based on the IntelliJ Platform Plugin Template.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages