Giter Site home page Giter Site logo

clippy's Introduction

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

clippy's People

Contributors

cosmo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

clippy's Issues

Retina friendly Agents

I love the project! Also, I would love to see an option to change the scale of an agent. First and foremost, it wouldn't look like garbage, and second, on a 13" MBP screen real estate is precious. ;) Keep on rockin!

i love the concept. but can you add this feature in next?

I love Clippy but I wish you could type in Notepad or Sticky Note apps and he coulactor you ideas d animate like Clippy used to do. and I also hope you would make him do animations and if you add this idea i would jump in joy and nostalgia! oh, and thanks for making this! oh! and lastly, maybe you could add ChatGPT like the other one from windows 11? it would be VERY useful! so now i dont have to open a tab and enter openai.com. now I would have clippy! lightly right click on him, click "connect to ChatGPT", and then he would do the internet animation when he turns into a ball with his eyeball riding along. and then a chatbox herI where i can type in anything and he would help out! alr done now. THANKS!

[Suggest] Use Clippy to Always on Top & Automatic animated beetween time

Hello, thank you for creating Clippy,

I have more suggest for better Clippy

  1. Use Clippy to always on top in layer
  2. Use automatic between time ex : 30s-60s will be automatic animated
  3. as an option between number 2 maybe it can be animated just by click, instead of rightclick and animated

thank you

What is the black paperclip symbol and what am I missing in the process?

Not sure I understand the instructions. I unzipped and have the clippy looking icon. Double clicking does nothing. Nothing happens. The line below is something I'm not seeing anywhere and I don't know what the black paperclip looking character below means -> ๐Ÿ“Ž -> never seen this before.

Pick an Agent under ๐Ÿ“Ž โ†’ Agents โ†’ โ€ฆ

remote control

Instead of command line remote control would you please consider using AppleScript for this please?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.