Skip to content
This repository has been archived by the owner on Apr 15, 2022. It is now read-only.

Releases: PBS-KIDS/Platypus

Platypus v0.6.3

29 Sep 17:14
Compare
Choose a tag to compare

-Fixed a bug in Vector introduced in the last version.

Platypus v0.6.2

29 Sep 14:42
Compare
Choose a tag to compare

A series of small updates.

-Made small changes to Vector to fix an issue with Safari optimization.

-Fixed LogicRebounder so that an object won't collide with the same static obstacle twice in a tick.

-Updated TiledLoader to display collision tiles if 'showCollisionTiles' is set to true.

Platypus v0.6.1

23 Sep 13:27
Compare
Choose a tag to compare

This is a minor update that fixes the visual progress bar provided by the RenderProgress component.

Platypus v0.6.0

22 Sep 20:40
Compare
Choose a tag to compare

This release offers an overhauled rendering system based on pixi.js and well as a few updates to the SpringRoll integration. The transition of a game from v0.5.0 to this version is relatively straightforward.

Major Changes

  1. This version requires SpringRoll v0.4.
  2. This version requires SpringRoll's PixiDisplay for rendering, rather than EaselJSDisplay.
  3. The configuration for Platypus must now be set up within config/platypus/ rather than directly within the `config/' folder.
  4. The current game instance is accessible from app.platypus rather than app.game. The game also remains accessible from platypus.game for custom-designed components.
  5. Due to pixijs limitations, pixel-perfect click-detection is no longer supported.
  6. Only a subset of CreateJS's tiny graphics API can be used with pixijs. This applies primarily to setting masks and hit-areas on RenderSprite.
  7. Unlike CreateJS Sprites, pixijs does allow objects with opacity of 0 to receive mouse/touch events.

Minor Changes

  1. The Audio component is now deprecated. Use AudioSFX for sound effects and AudioVO for voice over. Each new component provides a subset of the original Audio functionality. AudioSFX allows for setting various sound options on play, whereas the event list triggering system is now part of AudioVO.
  2. Created a PIXIAnimation class to mimic CreateJS Sprite functionality. This allows the same sprite sheet definitions from <= v0.5.0 to be used in 0.6.0.
  3. All render components have swapped out CreateJS display objects for equivalent pixijs display objects.
  4. RenderSprite now has a buttonMode property that, when set, changes the cursor on mouse-over.
  5. RenderSprite now accepts a visible property that sets initial visibility. If the component is state-based, this value is tied to the entity's state.
  6. RenderTiles now caches a 2048x2048 texture of map tiles by default or if the entire map can be contained in that area. Setting the buffer property will limit this to a buffered region around the viewport. Setting the maximumBuffer to a multiple of 2 will also change this size. Setting cacheAll will create a grid of the entire map out of 2048x2048 cached textures for faster performance (but it trades speed for memory, so use carefully).
  7. Adding new cached RenderSprites to RenderTiles forces a cache update.
  8. The Camera component now listens for "resize-camera" to resize its world viewport.
  9. Updated TiledLoader and PIXIAnimation to pull assets from SpringRoll's AssetManager if not found in the list of Platypus assets.

EDIT: @GopherwoodTodd wanted to know what the difference between "Changes" and "Updates", so I renamed the lists. Essentially, the first list will break games <= 0.5.0 whereas the second list shouldn't.

Platypus v0.5.0

28 Aug 20:04
Compare
Choose a tag to compare

This is the initial port of Platypus from its own compilation and deployment framework to SpringRoll. Check out the SpringRoll documentation for specific wrapper functionality. Documentation and full-featured functionality across all components is not yet complete. Notable changes:

  1. Games are no longer designed inside the folder structure of Platypus itself; instead, use the PlatypusSpringRollTemplate as a good starting point for a new project.
  2. Platypus requires the following standard SpringRoll modules (as of SR v0.3.10): Core, Tasks, Sound, and EaselJS Display.
  3. Platypus requires SpringRoll versions of PreloadJS, EaselJS, and SoundJS. It also requires TweenJS for some additional functionality.
  4. Game assets are no longer copied and optimized during compilation. Place assets directly in deploy/assets/.
  5. Audio needs no longer be concatenated. Include MP3's and OGG's in deploy/assets/. See SpringRoll documentation for audio asset config syntax.
  6. Platypus component names now use common JavaScript class notation with preceding capitals instead of the original hyphenated notation for entity components.
  7. A "root element" no longer needs to be provided. Platypus no longer natively supports DOM elements and uses SpringRoll's EaselJS Display for rendering.
  8. The Camera component now requires both width and height properties to properly display game world.
  9. The RenderSprite component now requires a sprite sheet and images are no longer tied to individual sprite sheets.

Legacy Platypus

12 Aug 17:28
Compare
Choose a tag to compare

This is the original Platypus HTML5 Game Engine with built-in support for compiling games and assets using native Windows CScript or Java-based Rhino. Games built using this version of the engine require substantial changes to be ported to a 0.4+ release.