Text with new LCD API via scripts not showing in a DS

Zurhydryh shared this bug 4 months ago
Solved

While playing in a dedicated server, the LCD's do not display text written via a script in a programmable block.This applies for LCDs in cockpits, and any regular block LCDs using the new drawing API.

Comments (21)

photo
1

Hello, Engineer!


Thank you for your feedback! Your topic has been added between considered issues.

Please keep voting for the issue as it will help us to identify the most serious bugs.


We really appreciate your patience.


Kind Regards

Keen Software House: QA Department

photo
3

Based on what I've read people report - disconnect and reconnect refreshes the screen, but it stays static after that.

photo
1

Additionally, this happens with sprites drawn via scripts:


https://streamable.com/vxl48

photo
1

It does not only affect texts that are created with the API, but according to my observations, also texts that are written normally via the editor in the terminal.

photo
1

For anyone curious following this. You can still use traditional LCD panels and the WriteText() method for your updating displays in dedicated servers.

photo
1

Hello,

could anyone please upload a world or a blueprint with already set up script(s)? It would help us to report it faster.


Thanks in advance.

photo
2

Here is a blueprint with everything preconfigured.

photo
photo
2

To replicate the problem:

- Join a dedicated server

- Put a programmable block and a timer

- Load Automatic LCDs 2 in the programmable block

- Verify that it is working with a classic LCD Panel using the "Inventory" (without quotes) command in Custom Data

- Try on a cockpit screen or any other block with a screen (Control station, flight seat, pb itself, ...) using following commands in Custom Data :

@0 AutoLCD

Inventory


=> Sometimes something appears on the screen but it does not update

photo
1

hello, while testing the script I noticed that it did not show allied and neutral ships on the radar.
I tried to put it on another ship but it gave me the same problem, the ships were all naturally less than 600 meters away, and I checked the requirements several times.

photo
1

sorry, I was wrong to name the first image that, among other things, came very badly too:

Files: Ally.PNG
photo
photo
1

Joined my friend's game hosted by him. Non-dedicated server. I made a blueprint with a couple scripts loaded in, tested that everything worked in single player, but when we used it in multiplayer only the host could see the scripts update. The text doesn't get sent to clients. It updates every detail of a panel but not the text. All LCDs, cockpit LCDs, programmable block LCDs, etc don't update. Opening the panel shows there is no text but the host confirmed the panel is not blank and is updating for him.

photo
2

Can confirm this bug. This bug seems to apply to both DS and Non-DS and the problem only happens for the connected clients, not the host (Networking issue?). The screen is updated for the host but not the client until the client reconnects where the current displayed image/text will be refreshed and stay that way until you reconnect again. Using "IMyTextSurface.GetText()" will return the correct text that is supposed to be displayed.

photo
3

How is this "Solved"? Will someone let me in on what the "solution" is?

It's still not working for any of my scripts. Locally I can update the text on a cockpit display fine, but doing so on a dedicated server does not actually update the visible text. Am I doing this wrong, or was it marked as Solved when not actually Solved?

photo
1

fd32ead18189bc4638fcf12805bc82b9Stll not working

photo
4

Really feeling like they didn't actually test this 'fix' before marking it as fixed. Still seeing a LOT of reports of this bug today... why, Keen?

photo
1

Same here ... Not working :(

photo
4

I've just fully reproduced this issue on freshly installed DS server without any mods.

Just place PB with following script:


public Program()
{
    Runtime.UpdateFrequency = UpdateFrequency.Update100;
}

int i = 0;
public void Main(string argument, UpdateType updateSource)
{
    i++;
    Echo(i.ToString());
    Me.GetSurface(0).WriteText(i.ToString());
}
Switch the first screen in PB to display 'Text and Image'.

In singleplayer the screen will count from 1, 2, 3 .. etc.

In DS it won't display anything on screen even tho it is visible that the script is running as it writes to PB details text using Echo.

photo
1

yes. you can also see the resulting text if you try to manually edit the text. you just cannot see it on the outside surface. This is still an issue on my DS, but only after other players join the server. It works fine when I am alone on the server as the host.

photo
photo
1

Solved with last update (1.191.1) :)

Thank you very much !

It seems that the programmer block has a new bug, not important but PB screen cannot be set to anything, it stays on the "No Content" image event with simple text or image or script (ex: digital / analog clock).

photo
1

Working for me )))

photo
1

I don't think this is "Solved".

As a DS server host, I can only see the textsurface of the prog block when I am alone on the server.

As soon as someone else joins, I can no longer see the surface (it switches to the default blue symbol from when it was disabled) ....however, the client players can still see the text on those surfaces.