I know you say you don’t want to use any packages, but I’d highly recommend re-evaluating that as a lot of otherwise mundane stuff is done for you. In this particular case, JSON parsing. I get not wanting to use MonoGame.Extended for its Tiled support (I’ve had issues with this myself), but writing your own Json parser to boot is a lot to take on. I would look into this…
(It’s also on NuGet)
Also, it looks like the Tiled file format itself is just an XML file, so you could use the built-in .NET library to parse that.
Anyway, past that, you can see the wikipedia article (or other places you find on google) for the file format.
Thanks. I actually didn’t realize Microsoft didn’t have built in JSON support. I’ll check it out.
Newtonsoft can process the JSON file but you will need to create the type to deserialize to. You’ll have to figure out the layout of the file and provide the appropriate attributes. Tiled is pretty well documented so it shouldn’t be too big of a problem. If not you should be able to figure it out from the XML/JSON.
There is also System.Text.Json as alternative.