• 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 yy files are easier than romhacking

S

Storyteller

Guest
oops, I didn't know we couldn't talk about;

so yy files open up nicely in vs code. (I use vs code, I like minimal dev environments that aren't cluttered).

I took a look inside these yy files and they are basically GML headers.
Much of this metadata is fairly discernible to the naked eye. (great song by luscious jackson).

I am interested in discussing these internals and the creation of folders that have objects and their scripts all held together for portability. Thus I can make a button object I can move around from project to project. I know this is coming and think knowing the GMS2 code file structure may help with debugging or even making things go a bit faster for setting up scripting and such in say, vs code.

Is it ok to share and trade and post these yy files? Can we talk publicly about these files and their internals and how to do useful things in them? Does any of this violate the EULA?
 

Nocturne

Friendly Tyrant
Forum Staff
Admin
I'm pretty sure discussing the file format used to save projects is fine (but I'll check to make sure)... It's just hacking final executables that you can't discuss here. Keep in mind though, that as GameMaker Studio 2 evolves, so will the file format so things you may take for granted now may change in the future (although general principles probably won't).
 

sylvain_l

Member
I personally already talked about how it was possible to hack in the font folder and edit those file to adapt metrics of the imported font (offset, spacing, etc...)

seen someone else explaining how to customize some preference value hacking in the runtime folder

there is a all thread dedicated to nGML (an OO oriented language that would transcript in GML)

then come the themes for GMS2, people are already since the beta sharing their custom themes-

and fact that there are extension for editor (VS code, atom) for the GML langage.

never seen any staff condamning any of this for now.
 

Mike

nobody important
GMC Elder
Yeah, it's fine to poke around in the project files - this is one of the reasons they aren't in a binary format, but be aware they may change format without notice.
 

GMWolf

aka fel666
The project files are a little more complex than those in GMS1.x

I will be putting time aside myself to understand them better, and hopefully build a c# or java library to read/write to them easily. My ultimate goal is to build a set of tools to add boilerplate code to GM, as well as generating code (like get/setter for structs).

Is there any chance for a YYG staff member to write a quick summary on some of the fields, and how they would be modified? (I'd I remember correctly there are some long uuid looking strings, would be nice to know how to generate those)
 

Mike

nobody important
GMC Elder
Sorry, we have no plans to document the format, but its very hackable in terms of figuring it out yourself.
 
R

RobbSnow

Guest
I do want to give a big thank you for whoever suggested using JSON
 
Top