• Hey Guest! Ever feel like entering a Game Jam, but the time limit is always too much pressure? We get it... You lead a hectic life and dedicating 3 whole days to make a game just doesn't work for you! So, why not enter the GMC SLOW JAM? Take your time! Kick back and make your game over 4 months! Interested? Then just click here!
  • Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

Discussion GMS 2 messed up my text formatting

I just migrated from GMS1 to GMS 2, and I just tried to import my old GMS1 project. It imported fine, a compatibility report was made... I had to fix a few things, but the game is running fine now with a few exceptions...

For some reason, GMS 2 is not drawing text the way GMS 1 did. Dialogue is now super squished and not properly spaced nor is it drawn at the correct coordinates. The font looks choppy, not at all like it did before.

I also noticed the alarms I use are finishing a lot faster than normal. I had to add an extra few seconds because they were going off too early for some reason.

So those are two big issues. The text is basically messed up everywhere: the inventory screen, the pause screen, quest menu, dialogue boxes, etc.

So my question is...

Is this just something GMS 2 does or is there some settings I need to adjust to fix this issue? Again it's really frustrating because now I have to go adjust all my alarms and reformat the text...
 
Last edited:

rIKmAN

Member
I just migrated from GMS1 to GMS 2, and I just tried to import my old GMS1 project. It imported fine, a compatibility report was made... I had to fix a few things, but the game is running fine now with a few exceptions...

For some reason, GMS 2 is not drawing text the way GMS 1 did. Dialogue is now super squished and not properly spaced nor is it drawn at the correct coordinates. The font looks choppy, not at all like it did before.

I also noticed the alarms I use are finishing a lot faster than normal. I had to add an extra few seconds because they were going off too early for some reason.

So those are two big issues. The text is basically messed up everywhere: the inventory screen, the pause screen, quest menu, dialogue boxes, etc.

So my question is...

Is this just something GMS 2 does or is there some settings I need to adjust to fix this issue? Again it's really frustrating because now I have to go adjust all my alarms and reformat the text...
Check that your application surface is the correct size for the text.

For everything being faster I’d take a guess that it’s because GMS2 recently changed to defaulting projects to run at 60fps rather than 30fps which is the default in GMS1 - so everything appears to be running twice as fast.
 
For everything being faster I’d take a guess that it’s because GMS2 recently changed to defaulting projects to run at 60fps rather than 30fps which is the default in GMS1 - so everything appears to be running twice as fast.
How do I change that? My game is 30fps.
 

Nocturne

Friendly Tyrant
Forum Staff
Admin
The text engine was changed for GMS2 (and a coming update is going to change how it works again, and will certainly help in situations like yours). Unfortunately the change meant that legacy GM projects which are imported may have issues such as this... In general, you want to make sure that:
  • Fonts are NOT scaled using draw_text_transformed (although scaling a large font down will give better results than scaling up)
  • Text is drawn at integer x/y positions (so floor/ceil the draw positions)
  • The app surface is 1:1 with the view port or room size
  • The GUI is the correct resolution (if drawing on the GUI layer)
As for changing the FPS, go into the Main Game Options and you can find the Game Speed, which you can change.
 

Nocturne

Friendly Tyrant
Forum Staff
Admin
Almost certainly that will influence things, yes. You'll want to floor the view coords when drawing, but this has the unfortunate side effect of meaning that the text may "jump" due to sub-pixel view positions. Ideally, you really want to use the Draw GUI event for any text like that. It negates the need for the view offset and resolves a lot of resolution based issues, since you can set the GUI res independently.
 
Top