Object Browser

Introduction

The Object browser is the place where you can actually see how the data is stored safely in the cloud. This is a section you want to get familiar with, because here you will be able to see and manage the information you store in Gamedonia.

The data storage inside Gamedonia is organized in collections, which contain objects of a certain structure. The Object Browser lets you explore the collections of your game and see which objects they contain.

Syntax

The syntax of all the objects inside a collection follows a MongoDB NoSQL structure. Here is an example:

		{
			"hero":"Sir Finley",
			"gold":50,
			"bonus":1
		}
	

As you can see, it's a simple structure of key/value pairs. Of course you can create more complicated structures like objects inside objects and arrays of other types.

Basic usage

The basic management you can do in the object browser can be summarized in three actions:

Create an object

To create a single object in a collection, you just need to press the Create a new object button and then fill the structure with the content of the object you want to create.

If you want to create multiple objects at the same time, you will need to follow the same syntax as you would with an array of objects. Here is an example:

			[
				{
					"hero":"Sir Finley",
					"gold":50,
					"bonus":1
				},
				{
					"hero":"Mac Intosh",
					"gold":10000,
					"bonus":8
				},
				{
					"hero":"Guy Brush",
					"gold":0,
					"bonus":0
				},
			]
		

This will create three objects in the collection you are exploring. This of course makes it faster to populate collections through the Dashboard.

Update an object

To update an object, just select it using the corresponding checkbox and press Update. You will see you can edit the name and value of each field and then you just need to modify them at will.

Delete an object

Select one or more entities and then click on Delete. Be careful when deleting objects, there's no way to recover an object once you have deleted it.

Filter a collection

For example, let's say you want to show all the heroes named GuyBrush. You'd filter like this.

	{hero:"GuyBrush"}
  1. Select a collection from the dropdown
  2. Query with a standard NoSQL syntax (MongoDB)
  3. Filter by hitting the button
  4. Navigate the objects in the collection you just filtered
  • Sort your data with any sorting you’ve coded. For example,
    	{"date":-1}
    
  • Skip a certain amount of objects to see more data. For example, skip 30 objects.
  • Limit retrieved date to just a certain amount for your purposes. For example, limit the query to 8 objects.

Fiddle with this fields to find specific data you’re interested in. Plus, if you aren’t sure what query to use in your game to select some data, you can test the query in this same screen because the Object Browser screen uses the same language than the real SDK.

Advanced usage

Import from CSV

Gamedonia gives you the possiblity to import data stored in a .csv file and insert all objects listed into a Gamedonia collection.

The syntax you should use is, as the name says, comma-separated values with the following specifications:

  • The first row should contain the names of the fields for all objects (like the columns of a spreadsheet)

  • From the second row onwards, each row will contain values corresponding to an object. (these would be the rows on a spreadsheet).

Here you have an example of a .csv file with some enemies that can be imported directly into a collection with our tool:

		mario-enemy,description,speed,jump,ammo,water,fly
		"Bullet Bill","Slow but steady bullets that have eyes and arms.",3,0,0,0,0
		"Goomba","Mushroom traitors that walk back and forth",1,0,0,0,0
		"Hammer Brother","Green biped, helmeted Koopas that come in pairs.",2,2,1,0,0
		"Koopa Paratroopa","Koopas with wings.",2,3,0,0,0
		"Koopa Troopa","A soldier of the Turtle Empire that marches onwards.",3,0,0,0,0
		"Piranha Plant","A carnivorous plant that lives in pipes.",2,0,0,0,0

As you can see, the names of the fields are located in the first row, like description,speed, etc. Each row, like the one defining a Goomba, contains the values for each individual object that will be created in the collection.

To import, you just need to click on the Import objects button and drag your .csv file into the the pop-up box. You will see this loads your objects directly into the collection.

Using the Date type

The Date type is very useful to register time-related events. You will need to use a special notation to make Gamedonia realize that what you're storing is a Date. Here is an example of the creation of an object with a field of type Date.

	{
	    "mydate": { "@ISODate": "2012-12-19T06:01:17.171Z" }
	}

Where the format is YYYY-MM-DDThh:mm:ss.uuuZ and:

  • YYYY: Year

  • MM: Month

  • DD: Day of the month

  • hh: Hours

  • mm: Minutes

  • ss: Seconds

  • uuu: Milliseconds

To filter a collection by Date, you can use normal operators and sort like with any other filter. Heres in an example that will search all objects with a last_purchase later than 13/01/2016.

	{last_purchase:{$gte:ISODate("2016-01-14T00:00:00.000Z")}}