Can you confirm it's working on your environment?
Yes, everything works in this project. To reproduce the bug you need to change the tileset of the starting map to any other than the tileset on which the light is declared.
OcRam_Light_Layer.prototype.updateMapLights = function () {
this.clearLightLayer(); // Remove old sprites (light sources)
if (_tintBG === '') return; // No lights...
// Draw light layer background
var c = this._bg.canvas; var ctx = c.getContext("2d");
ctx.globalCompositeOperation = 'copy';
this._bg.fillRect(0, 0, this._width, this._height, _tintBG);
// ===============
// Applying masks:
// ===============
ctx.globalCompositeOperation = "source-over";
$gameMap._events.forEach(ev => {
if (ev !== null) {
if (ev._lightningMaskBitmap === undefined) {
const e = ev.event();
if (e.note.match(/<(?:MASK):(.*)>/i)) {
ev._lightningMaskBitmap = ImageManager.loadPicture(RegExp.$1);
} else {
ev._lightningMaskBitmap = "";
}
}
if (ev._lightningMaskBitmap !== undefined && ev._lightningMaskBitmap !== "") {
this._bg.bltImage(
ev._lightningMaskBitmap,
0,
0,
ev._lightningMaskBitmap.width,
ev._lightningMaskBitmap.height,
_margin + Math.round($gameMap.adjustX_OC(ev._realX) * OcRam.twh[0]),
_margin + Math.round($gameMap.adjustY_OC(ev._realY) * OcRam.twh[1]));
}
}
});Game_Party.prototype.maxBattleMembers = function() {
return 5;
};


Game_Party.prototype.maxBattleMembers = function() {
return 5;
};

Game_Party.prototype.maxBattleMembers = function() {
return 5;
};