String changes position and it's borders

Welcome to our brand new Clickteam Community Hub! We hope you will enjoy using the new features, which we will be further expanding in the coming months.

A few features including Passport are unavailable initially whilst we monitor stability of the new platform, we hope to bring these online very soon. Small issues will crop up following the import from our old system, including some message formatting, translation accuracy and other things.

Thank you for your patience whilst we've worked on this and we look forward to more exciting community developments soon!

Clickteam.
  • On most PC's my in-game text is shown in the correct position and with correct string object frame size. I don''t have any events that move this text in my game (only events that change it's font via FontEmbed extension).

    Please login to see this attachment.

    However, about 15-20% of users say that text is going out of frame, like in this example.

    Please login to see this attachment.

    After some try and error with one of users with that problem I've found out that this bug can be fixed by Disabling display scaling on high DPI settings.

    - How to fix: go to game local files and find ''.exe'' file (the game itself). Right click on it and select ''Properties''.
    Then select the tab ''Compatibility'' and turn off the ''Disable display scaling on high DPI settings''. This should fix the problem.

    - How to fix Solution-2: Instead, right click on your desktop, select "Display Setting", then under "Customize your display"
    set "Change the size of text, apps, etc" to "150%" (it might first force you to deactivate custom scaling and log off and back on)

    QUESTION:
    Is there a way to fix this problem with string without asking users on forums to manually change their display settings? Maybe there is some option I don't know about?
    Thanks in advance!

  • can you also add "edrt.exe" and re-test

    I'm sorry, this might be a dumb question, but where exactly or how should I add edrt.exe? I've tried to google what edrt.exe is, but I'm kinda blank on that...
    I'll post my code here again for convenience. Sorry for bothering you so much.

    Please login to see this attachment.

  • I'm sorry, this might be a dumb question, but where exactly or how should I add edrt.exe? I've tried to google what edrt.exe is, but I'm kinda blank on that...
    I'll post my code here again for convenience. Sorry for bothering you so much.

    Please login to see this attachment.

    When you run your .mfa in fusion, fusion will build your app to a temporary file and run it with edrt.exe (or edrtex.exe in 2.5+)
    This file is located at

    Code
    Clickteam Fusion 2.5\Data\Runtime\Unicode
  • I'm sorry but the solution with the Registry 2 object and relaunching the application is a lame hack that users shouldn't be forced to do. The proper way to make an application report as DPI-aware is to embed a manifest file into the executable declaring DPI awareness, as explained here: Please login to see this link.
    In fact, just editing the manifests for all EXE files in Fusion's Runtime folder to include DPI awareness completely eliminates the need to mess with registry for any applications built with it. There's no reason this shouldn't be an option in build settings.

    Now the problem with this overall is that most UI controls in Fusion weren't designed to be DPI aware (and Fusion itself isn't either - just look at how Picture Editor's icons look at 150%). So if you build an application that uses UI controls such as buttons or lists, there's a possibility that they will be scaled incorrectly if an application is forced to report as DPI aware. The issue posted in this thread is probably the reverse - the desired positioning of the string appears to have been made for cases when DPI awareness is force enabled like on the developer's PC, while the blurry and offset version reported by the testers is what the "correct" handling of that string is supposed to be, according to Windows anyway.

    I would recommend ditching the String object (if that's what you use for the text) for something that scales more predictably, such as a bitmap font. Maybe Text Blitter? I would still recommend to force enable DPI awareness though, because the entire application will be blurry otherwise.

  • can you also add "edrt.exe" and re-test

    Are you asking me to do something like this?
    Please login to see this attachment.

    Because I don't really see how this is going to change something. As I've said before - I don't have this problem on my developer PC (or 2 other PCs I've personally tested my game on). Thats how I (and most of players) see the string object:
    Please login to see this attachment.

    The problem appears on some PCs of other players/testers. So even if I will add edrt.exe to change its registry info - I won't be able to notice any difference. And, sadly, I can't ask my players to install clickteam fusion and download my mfa file (obviously). I've tried running the application in clickteam fusion with the line about edrt.exe in it and nothing changed for me. Should I send build with edrt.exe to testers? Will it change anything at all? Got any other suggestions? Thanks!

  • I'm sorry but the solution with the Registry 2 object and relaunching the application is a lame hack that users shouldn't be forced to do. The proper way to make an application report as DPI-aware is to embed a manifest file into the executable declaring DPI awareness, as explained here: Please login to see this link.
    In fact, just editing the manifests for all EXE files in Fusion's Runtime folder to include DPI awareness completely eliminates the need to mess with registry for any applications built with it. There's no reason this shouldn't be an option in build settings.

    Now the problem with this overall is that most UI controls in Fusion weren't designed to be DPI aware (and Fusion itself isn't either - just look at how Picture Editor's icons look at 150%). So if you build an application that uses UI controls such as buttons or lists, there's a possibility that they will be scaled incorrectly if an application is forced to report as DPI aware. The issue posted in this thread is probably the reverse - the desired positioning of the string appears to have been made for cases when DPI awareness is force enabled like on the developer's PC, while the blurry and offset version reported by the testers is what the "correct" handling of that string is supposed to be, according to Windows anyway.

    I would recommend ditching the String object (if that's what you use for the text) for something that scales more predictably, such as a bitmap font. Maybe Text Blitter? I would still recommend to force enable DPI awareness though, because the entire application will be blurry otherwise.

    I agree that this Registry 2 solution is bonkers and this setting should be included somewhere in Clickteam settings. However, right now I don't have a choice. The problem is that even this solution is not working for some of my testers. And I can't ditch the String object right now - a LOT of my game depend on it (about 2000 lines of code). If I want to release the game on time - I'll have to fix this somehow or even launch a game with this bug... I didn't know Clickteam had so many problems with a simple String object when I was starting to work with it. All tutorials on how to make a text object in a game lead me to believe String was a go-to function.
    Considering enabling DPI awareness to make application not blurry - I've never had a problem with blurriness. Only with text and only with certain PC's. No one (including me) have noticed any problems with blur so far, only the text going out of frame.

    Please login to see this attachment.

  • mm can you collect the information from users, windows version (complete, not only windows 10 or 8 or 7) it could be a bug in Microsoft

    One of them answered:
    "Windows 10 for 1 language
    Version 1903
    Install date: 18.11.2019
    OS Assembly: 18362.720"

    Is this info enough?

  • mm can you collect the information from users, windows version (complete, not only windows 10 or 8 or 7) it could be a bug in Microsoft

    Another tester replied with his Windows version:
    Windows 10 Corporate LTSC
    Version 10.0.17763 Build 17763

    Any info on if it's Microsoft bug?

  • i will take a look in deep, so far i found this

    Please login to see this link.


    ===================================================
    [MENTION=34911]thegd[/MENTION] forgot to ask what DX version is this application running?

    Regards,


    Fernando Vivolo

    ... new things are coming ...

    Edited 2 times, last by Fernando (April 20, 2020 at 4:58 PM).

  • i will take a look in deep, so far i found this

    Please login to see this link.

    ===================================================
    [MENTION=34911]thegd[/MENTION] forgot to ask what DX version is this application running?

    The YouTuber just had this bug on his channel with the text changing scale... Please login to see this link.

    So the DPIAWARE method is not working =(
    I can’t even test properly if it works or not because this error does not pop-up on my machine.

    The game was released several days before, so I need to find a solution to this bug fast =\

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!