• 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.

Question - IDE New undo system

FoxyOfJungle

Kazan Games
What is going on exactly? I didn't particularly have any problems with it... I think there is no way to disable it by the sight, as it was something that changed a lot internally because of a new system they added (Inspector).
 

chamaeleon

Member
Guys, I need help! The new undo system is killing my nerves too much, is there any way to turn it off?
1. Download and install Microsoft PowerToys
2. Start PowerToys
3. Open Settings (right-click icon in taskbar)
4. Go to Keyboard Manager
5. Click Remap a shortcut
6. Type = Ctrl (Left) and Z, Type = Undefined, Target App = gamemakerstudio.exe
7. Type = Ctrl (Right) and Z, Type = Undefined, Target App = gamemakerstudio.exe
8. Click OK
9. Enjoy a Ctrl-Z undo free experience! ;)

(Edit -> Undo is still there, but not as easy to invoke by mistake)
 
Can anyone else give their thoughts on the new undo system? I thought I was the only one that hated it, so I didn't bother to post anything on it, but maaaaaaan do I hate it.

I don't know if somehow my project is corrupted or something, because I can't imagine how this new system could possibly pass testing in it's current state. It is really messing with my experience.

If I edit multiple sprites, and just want to undo one from earlier, it goes through all the sprites I've edited since that one and undo-s them. How could anyone possibly want that? But it's also broken, and I can't pinpoint exactly why. Sometimes it opens the sprite editor when I haven't changed anything about the sprite itself, just the image. Then maybe I try to redo, and it's forgotten the brush stroke I've made. I just don't know what's going on.

Like, I'll be making some "prototyping" changes to a sprite, knowing I'll probably undo it all, and if I spam undo, eventually the sprite will be back to where it was, but if I go one step further, it'll bring me to the SPRITE editor, so I have to click back to the image editor. And sometimes it seems like "lock" the first change, so I can't even get it to it's original state. I mean, I don't always know at exactly what point my sprite is back to how it was. It's just kind of a "undo until you can't anymore" thing. But now it has the potential to make a permanent change to my sprite if I'm not careful.

I've also had it re-open scripts I've deleted, but without any text actually coming back, and without it being added to the resource tree. So I have like a random ghost script in my workspace. This particular case was from undo-ing an image change too. I was just drawing something and I undo-ed and it just switched to my workspace and opened a blank script with the name of one I deleted earlier.

There's just so many problems, I don't even know how to report it. It is seriously slowing down my workflow. Please, can we do something about this?
 

kupo15

Member
I haven't updated yet but it sounds like a disaster. Id be curious to see if anyone else experiences this too. I very much prefer to have my undo history stop at the point that I open a resource as well that way I can spam undo to the last opened state. Being able to go back even further doesn't sound helpful to me. Would be great if they made an option where the undo history starts when you open a resource
 

PocketForge

Member
>If I edit multiple sprites, and just want to undo one from earlier, it goes through all the sprites I've edited since that one and undo-s them. How could anyone possibly want that? But it's also broken, and I can't pinpoint exactly why. Sometimes it opens the sprite editor when I haven't changed anything about the sprite itself, just the image. Then maybe I try to redo, and it's forgotten the brush stroke I've made. I just don't know what's going on.

This is the main reason for my hatred of the new system, such things should be optional
 
Uhhhh... bump? How is no one talking about this yet? I've tested it with a new project, and it still is very buggy. I refuse to believe this is intended behavior.

Open 2 sprite image editors. Make changes to A, then make changes to B. Make a change to A again. Go to B and undo. It'll undo A, then B, while also opening sprite editors in-between.
 

FoxyOfJungle

Kazan Games
Uhhhh... bump? How is no one talking about this yet? I've tested it with a new project, and it still is very buggy. I refuse to believe this is intended behavior.

Open 2 sprite image editors. Make changes to A, then make changes to B. Make a change to A again. Go to B and undo. It'll undo A, then B, while also opening sprite editors in-between.
The solution is that you don't use the GMS 2's built-in sprite editor, as you don't like it's behavior :)
There are several types of external programs that are even better (such as Aseprite, Piskel, Photoshop...). I suggest using the GMS 2 image editor for placeholders only.
 

TsukaYuriko

☄️
Forum Staff
Moderator
Uhhhh... bump? How is no one talking about this yet? I've tested it with a new project, and it still is very buggy. I refuse to believe this is intended behavior.

Open 2 sprite image editors. Make changes to A, then make changes to B. Make a change to A again. Go to B and undo. It'll undo A, then B, while also opening sprite editors in-between.
You can refuse all you want, but this is the intended behavior according to the release notes:
  • It's always going to be the most recent action which is undone - e.g., in previous releases if you create a Sprite, resize it in the Sprite Editor, open it in the Image Editor and add some content, then click the Sprite Editor and press Ctrl+Z it would be the resize which was undone rather than the Image Editor change. Now, focus is set back to the Image Editor and the last change there is undone (and pressing Undo again would step back through the change history for the asset as you would expect)
  • It's also now possible to undo a change to an asset after you have closed its editor - as above, the editor would be reopened and the change performed
If you encounter technical issues with this, please file a bug report. If you don't like these changes, please forward your feedback to the developers. You do both via the contact form.

If you're having trouble finding out reproduction steps, record a video of you using the IDE. That will allow you to retrace your steps.
 
You can refuse all you want, but this is the intended behavior according to the release notes:
As I understand it, it's supposed to be a per-asset undo system, but it behaves like a per-resource undo system, at least for sprites.
I get the idea. It's supposed to tie-together the undo-ing of the sprite editor and image editor (because they share the same asset). But it should not be undo-ing my door image while I'm working on my apple image. Anyone who works on multiple sprites at once is gonna have a bad time.

Imagine if you were working on multiple scripts at once, and you look back at an old one, realizing you messed up so you need to undo it a few steps, but as you undo, it's undo-ing every script change you've made since then, across all of your scripts, including one's you've closed. That's what's happening with sprites.

Listen, I'm sorry for ranting, but it's a frustrating change, and no one else (except PocketForge) seems to care, which is baffling to me. I've been using the built in editor for like 7 years and I really enjoy using it, especially since I can code/draw in a single program. But I guess I may be switching to the holy grail that is aseprite if this doesn't change.

With that said, I'll file a bug report as well as give feedback. I appreciate you replying :)
 

chamaeleon

Member
I get the idea. It's supposed to tie-together the undo-ing of the sprite editor and image editor (because they share the same asset). But it should not be undo-ing my door image while I'm working on my apple image. Anyone who works on multiple sprites at once is gonna have a bad time.

Imagine if you were working on multiple scripts at once, and you look back at an old one, realizing you messed up so you need to undo it a few steps, but as you undo, it's undo-ing every script change you've made since then, across all of your scripts, including one's you've closed. That's what's happening with sprites.
The new undo system keeps the undo history for a single asset
If pressing undo undoes something in a different asset than the one you're currently working with, I'd classify it as a bug, and I think YYG would too.
 

Nocturne

Friendly Tyrant
Forum Staff
Admin
Listen, I'm sorry for ranting, but it's a frustrating change, and no one else (except PocketForge) seems to care, which is baffling to me. I've been using the built in editor for like 7 years and I really enjoy using it, especially since I can code/draw in a single program. But I guess I may be switching to the holy grail that is aseprite if this doesn't change.
Don't apologise for venting here about something that is obviously not working. This is all very valid feedback and we appreciate you sharing it with us and giving everyone an opportunity to examine the issue and comment on it. All I can do is repeat what Tsuka said earlier and if everyone could file a bug report about this - as @Octopus_Tophat has done - then it'll be fixed a lot quicker. Especially as the behaviour being described does seem to contradict the intended behaviour of the undo system as specified in the release notes.
 
Top