Page 1 of 1

[2.1.12] lua api: rendering in chart mode is impossible above render_layer 190

Posted: Thu Jul 30, 2026 11:14 pm
by kuviman
Trying to use rendering.draw_sprite using render_mode = "chart" works with only layers less or equal to 190 ("arrow").
If use render_layer above 190 (191 / 255 / "cursor"), nothing gets rendered.
Issue is only present in "chart" render_mode

Reproduced with a simple mod, just control.lua like this:

Code: Select all

script.on_event(
    defines.events.on_tick,
    function(event)
        for i, player in pairs(game.players) do
            if player.character ~= nil then
                rendering.draw_sprite({
                    sprite = "item.iron-plate",
                    x_scale = 100,
                    y_scale = 100,
                    time_to_live = 1,
                    target = player.character,
                    surface = player.surface,
                    render_mode = "chart",
                    render_layer = 191,
                })
            end
        end
    end)

Re: [2.1.12] lua api: rendering in chart mode is impossible above render_layer 190

Posted: Fri Jul 31, 2026 12:19 am
by boskid
What you are saying is partially true, there are layers 213, 214, 215 and 216 that are above 190 and are being rendered. This is tricky to decide because script rendering in order to work correctly has to hook into chart rendering, and chart rendering was not adjusted to make it draw all render layers but only those that are relevant to chart as there is also rendering of other sprites not strictly associated to render layers.

Re: [2.1.12] lua api: rendering in chart mode is impossible above render_layer 190

Posted: Tue Aug 18, 2026 1:09 pm
by Rseding91
I decided to change the logic for the next release so it will render the remaining layers.