Skip to content

Release v3.0.0

Choose a tag to compare

@github-actions github-actions released this 15 Mar 21:40

v3.0.0 is out!

I know it hasn't been too long since v2, but this update comes with a complete restructure of the CML globalThis variables along with the new script feature!

NOTICE: This update is NOT backwards compatible for a lot of maps! Map makers will need to update their map images (mainly fog_playtest.png) in order for the map to work in v3.0.0!!

So without further adieu..

V3.0.0 Changelog

  • Overhauled globalThis structure from prefixes (e.g. globalThis.CML_mapData) into an object structure. (e.g. globalThis.CML.mapData)
  • Changed meta file handling to support custom data instead of only defaults
    • Colors structure changed to be under colors.elements to support future colors
      • Colors now supports custom background and foreground elements in the format of color: {bg: "[SOLID ELEMENT NAME]", fg: "[SOLID ELEMENT NAME]"}
  • Added scripts
    • Maps can now have an optional script.js file that can use the CML.scriptAPI methods or anything else such as gameInstance to modify game behavior!
    • Scripts have event handlers in the form of exports such as pixelListeners, which register callbacks for when a pixel changes, as well as events such as onPlayerLanded and onPlayerMoved. (Check wiki for more info)
    • Scripts can call cinematics to control the player camera temporarily using the CML.scriptAPI.playCinematic function. (Check wiki for more info)
    • Scripts can now spawn particles and manipulate elements on the map through the scriptAPI.
  • Added map loader version below dropdown on main menu
  • Enforced width and height of fog_playtest.png; now must match the other images
  • Map loader now exposes extra info inside CML.internals