Giter Site home page Giter Site logo

gidget's People

Contributors

mjslee avatar

Stargazers

Eugene Hsu avatar Daniel Garcia avatar  avatar Charles Hardnett avatar  avatar Amy J. Ko avatar

Watchers

Amy J. Ko avatar  avatar James Cloos avatar Charles Hardnett avatar  avatar

Forkers

seer-lab

gidget's Issues

animate NAME changes

Currently, the name is just modified with no fanfare. Should it be more apparent that it changed?

Phantom Gulls need to be able to set energy of Gidget when at the same location

If a gull is enclosed within walls, a "phantom" (that we can't see), will continue to pursue gidget. He does not "avoid" this phantom gull, resulting in failure.

Example: Uncommenting some of the walls in Level 34 (relaseGulls_bug) will produce this behavior. Level 34 also exhibits Gidget not avoiding correctly with or without the walls.

Analyze

ANALYZEing an item has gidget state:
"I analyzed X. Now I can make it do things!"

Analyze does the following things:

  1. Let's gidget see attributes (e.g. the rock is RED)
  2. Let's gidget see functions (i.e. API calls) (e.g. the battery can ENERGIZE)

Currently:

  1. User can mouse over an icon in Gidget's "memory" to see attributes (e.g. this rock is RED)
  2. There is no way the user can know what commands an object can execute (e.g. there is never any record, mouse-over, gidget speech, or otherwise, indicating that ENERGIZE is a legal command).
  3. There is no clear indication that mousing-over an analyzed object will show attributes.

Possible solutions:

  1. Have gidget state: "I analyzed X. It is RED and I can ask it to ENERGIZE!"
  2. Have gidget state: "I analyzed X. It has special attributes, I can check my memory banks to see what they are."

Multi-scan/analyze in "memory"

SCANning or ANALYZEing an item more than once continues to add multiple instances of itself to Gidget's "memory," i.e. the "scanned" and "analyzed" lists on the right column.

This potentially makes it appear as if there are more instances of things than there actually are in the world.

gidget's "memory" window is not removing past "focus" and "results" consistently

Gidget's memory window is adding multiple instances of the same "thing" in his 'focus' and 'results' lists.

This happens consistently in any level where gidget is SCANning and GOTOing to multiple things. Level learnCompounds (currently level 8) is a good example.

Visually, in "focus," multiple instances of the same things are added to the same list. In "results," it looks like a new list is being made for each insatnce of the thing.

execution buttons are conceptually inconsistent with the idea of collaboration

Currently, it feels like Gidget is talking at the user, but the user isn't talking back. Are there ways we can present the play, next, next line, and end buttons more as a response to what Gidget is saying, rather than some user interface control?

One of the challenges of this from a UI perspective is that if we put them below Gidget's text, they'll keep moving, which will make the 'next' button difficult to click repeatedly.

implement TAG and UNTAG commands

TAG and UNTAG will be used to give things attributes that can be checked with the IS command. We don't have a use for this at the moment, but I anticipate it being a nice feature for level design.

Level 01 - Gidget's sense of self

SCANning gidget causes some unexpected behaviors:

  1. First line is not highlighted during execution using "next line" button.
  2. Goal complete successfully, independent of whether gidget was scanned. Examples:
    A) (no code) == success
    B) "scan gadget" == success

Gulls blocking a path

If a gull is blocking the only path to an object that Gidget is trying to "goto" while "avoiding," it will cause him to fail.

Example: Level 30 (getTwoRocksGull_Bug).

Blocked "rat" doesn't move, even after a path opens up.

This is probably related to the Gidget problem we had earlier (his giving up if there is no valid path). This is not an essential feature and can be prioritized lower since the level can be redesigned if this feature doesn't work.

In level, learnAll (currently level 20), rats are initially barricaded inside walls (i.e. no path to Gidget). Gidget proceeds to press a button which lowers the walls and opens up a path. Currently, the unexpected behavior is that the rats don't move out of their initial position (probably because their initial "goto" failed and they aren't executing it again). GOTOing to a rat drains Gidget's energy as expected.

Intro animation - Feature requests

Feature requests after trying to implement movie in current animation script:

  1. Animation area resolution to support 640x480px image (i.e. background --> currently loaded as a sprite).

Optional (let's discuss):
2. Sprite rumbling/shake animation (like we saw in the Nintendo DS example - can be used in the "boom" sequence and/or when Gidget lands on his/her/its head).
3. Sprite rotation (CSS3 compatibility with older browsers may be limited)
4. Glide ability from (x1,y1) to (x2,y2) for sprites (can be used for Gidget's falling sequence, factory workers running out of building, and possibly for helicopters.)


If we choose not to implement the optional section above, we might not have to actually "animate" anything. Instead, we could just use the current code, as-is, and have it go through the storyboard frames (much like the MOV file I uploaded). However, depending on the number of frames we implement, this can appear choppy.

blackhole needs to be able to grab things that pass over it

Perhaps my code is wrong here, but I am trying to have "blackhole" "grab" gidget's items if he passes over it.

Possible outcomes after item is stolen:

  1. Gidget can "grab" it again if on top of it
  2. Gidget cannot "grab" it anymore - level must be restarted.

avoid only avoids one thing with a matching name

Mike's words: " "avoid" does not work consistently with more than one thing to dodge. E.g. if you uncomment some of the code I left out in Level "learnAvoidPassive," Gidget does not avoid the blue goops. This is consistent with "avoid"ing multiple rats."

Gulls on an object

It appears if a gull is on an object, gidget will not "goto" it if "avoiding".

Example: Level 31 (getTwoRocksGull2_Bug)
[Gidget sees two rocks, but only goes and grabs one.]

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.