Release v3.0.0
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.elementsto support future colors- Colors now supports custom background and foreground elements in the format of
color:{bg: "[SOLID ELEMENT NAME]", fg: "[SOLID ELEMENT NAME]"}
- Colors now supports custom background and foreground elements in the format of
- Colors structure changed to be under
- Added scripts
- Maps can now have an optional
script.jsfile that can use theCML.scriptAPImethods or anything else such asgameInstanceto 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
onPlayerLandedandonPlayerMoved. (Check wiki for more info) - Scripts can call cinematics to control the player camera temporarily using the
CML.scriptAPI.playCinematicfunction. (Check wiki for more info) - Scripts can now spawn particles and manipulate elements on the map through the scriptAPI.
- Maps can now have an optional
- 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