Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags
(1 edit)

P.s. for examples of how CML works, visit my website at https;//mybadstudios.com and visit the product page in the store. Since leaving the Asset Store I updated the site quite a lot and products now contain Tutorial and FAQ and other tabs to give people a better understanding thereof. MBSCore has quite a detailed demonstration of how CML works.

Quick recap:

  • In-memory database
  • Search and filter functions
  • Runtime strongly typed variable generation
  • When compared to a database you COULD have multiple "tables" inside a file since each one just needs a node to mark where it starts and then you just add your rows under that
  • When comparing to DB tables, CML "rows" do not need to have the same  cols for every row. Each row can be as unique as you want it to be
  • Technically speaking, each "row" could be a separate "table" if you want it to be. CML absolutely supports nested tables within nested tables up to infinity deep (or int.MaxValue, at least :P )
  • Safely access data that is not stored in the "row" without runtime errors. CML will return default values by type thus if a variable has the default value for that type you don't even have to bother saving it to the database. This applies to all supported typed: int, long, float, Rect, Vector2, Vector3, Color, Quaternion, string
  • Save anything that you can turn into a string (including base64 encoded binary files)

As you can see, quite a nifty little class to have :) See the product page for sample code to see just how insanely easy this is to use and why you will never want to use XML ever again after trying this! :D