Skip to content
πŸ“ŽπŸ’¬πŸŽ‰ Clippy from Microsoft Office is back and runs on macOS! Written in Swift.
Swift Shell
Branch: master
Clone or download
Latest commit e264a6c Sep 9, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Clippy Shared Copy agents to agents directory on first launch Sep 9, 2019
Clippy iOS Move assets to their own platform Sep 8, 2019
Clippy macOS Bump version to 2.0 Sep 9, 2019
Clippy.xcodeproj Bump version to 2.0 Sep 9, 2019
.gitignore Add project files Sep 4, 2019
Clippy.gif Create Clippy.gif Sep 4, 2019
README.md Update README.md Sep 9, 2019
agent-convert.sh Create agent-convert.sh Sep 8, 2019

README.md

Clippy

Yes, Clippy from Microsoft Office is back β€” on macOS!


Clippy can be moved around (drag with mouse) and be animated (right-click).

The SpriteKit-Framework is used to animate through Clippy's sprite map.


First start

  1. Download Clippy for macOS or build from source.
  2. Run
  3. Click πŸ“Ž β†’ Show in Finder in the menu bar
  4. Unzip all files
  5. Click πŸ“Ž β†’ Reload
  6. Pick an Agent under πŸ“Ž β†’ Agents β†’ …

Todos

  • Animations (Right-Click β†’ Animate! or press the Space bar)
  • Always on top
  • Sounds
    • Mute / Unmute
  • Transparent when out of focus
  • Support for other agents
  • Agent picker
  • Menu bar Item
  • Original size / Zoom
  • Actions
    • Hide
    • Show
    • MoveTo x y
    • GestureAt x y
    • Play animation
  • Clean up
    • Rewrite the ugly parts (many references and force unwraps)
    • Extract the Agent reader into its own libary
    • Test!
  • HitTest on transparent regions
  • Support branching and probability
  • Idle animations
  • Languages
  • Control via command line

Demo

Demo

Build

git clone https://github.com/Cosmo/Clippy.git
  • Open project with Xcode
  • Build and run the macOS target

Add other Agents (optional)

An *.acs file includes all required resources (bitmaps, sounds, definitions, etc.) of an agent. Unfortunately, this project does not support *.acs files, yet. But hopefully in the future β€” pull-requests are welcome.

Until then, you can convert *.acs files with the "MSAgent Decompiler" by Lebeau Software. This software extracts all resources that we need, from an *.acs. There are a few steps involved.

Requirements

brew install imagemagick

Will be used to merge single *.bmp sprites into a single 32 bit PNG-file.

brew install ffmpeg

Will be used to convert *.wav-files in RIFF format to MP3 files.

Conversion

Included in this project is a converter called agent-converter.sh. This tool takes opaque BMP sprites, removes background colors, puts them together to one big transparent PNG file and converts all sounds to MP3.

./agent-convert.sh PATH_TO_AGENT NEW_NAME

AGENT_PATH path to decompiled agent directory. NEW_NAME should only include lowercase letters.

Example

./agent-convert agents/CLIPPIT clippy

Final step

After the conversion step, you will get a new folder called NEW_NAME.agent.

  1. Click πŸ“Ž β†’ Show in Finder in the menu bar.
  2. Move it to the Agents directory.
  3. Click πŸ“Ž β†’ Reload
  4. Select new Agent under πŸ“Ž β†’ Agents β†’ …

Attributions

Inspiration was taken from:

Graphics were created by Microsoft.

Clippy: The Unauthorized Biography

Watch the Unauthorized Biography with Steven Sinofsky, if you're interested in Clippy's history!

Clippy: The Unauthorized Biography

Contact

You can’t perform that action at this time.