GameMakerHub / Catalyst

A tool for Game Maker Studio 2 to manage dependencies and speed up your process
https://gamemakerhub.net/catalyst
MIT License
10 stars 2 forks source link

potential problems #31

Open deogo opened 3 years ago

deogo commented 3 years ago

hi, this is nice project but i see two problems, which is originated from hard dependencies in yyp files

  1. if any of contributors will decide to delete/rename files in their packages, this will break everyone's projects using those files. For example it would be expected to refactor all those millions of scripts into one-two files after GMS2.3 release, but this will require to manually edit every yyp to remove old dependencies...

  2. current model makes stand-alone packages unusable, since cloned directly from git GMS won't open them requiring missing "dependencies", hard-linking it to catalyst, which is not that fast way to "try things"

so, to make all this work, it would require to mess directly with yyp/yy files, reading, storing, comparing uuids all over every project, may be even searching through sources to find changed name. or is there any workaroud i missed?

RobQuistNL commented 3 years ago

Hi, thanks!

For 1: That is always a risk with online package managers; See link and one big (easy) feature that could be implemented would be to add renames / proxy functions. You could then install the new project and it would work like the old ones. Even an automated code editor could work if someone decides to rename scripts / resources.

2: That used to be true. You can add certain files to your "ignore to include" list ( as per https://github.com/GameMakerHub/Catalyst/releases/tag/0.2.2-alpha ) - you can then ignore certain assets to be included and that allows you to create a working example / unit test setup in your package without it getting installed in the clients projects.

Editing UUID's in the yyp files has always been a problem and has been around since GM1.4 (I had a package manager for that, too) - it would always end up in editing files.

Unfortunately I'm not that into the Game Maker community anymore so I haven't even spent the time to update this project to support GM2.3.. Sorry!