If the data it’s looking for is equal to that of the root, the search ends there. In order to find the data in the tree, a program would first examine the very first node of the BST, called the root. Conventionally, left children always have a value that is below (or comes before) the value of the node whose child they are (their parent), and right children have a bigger value. The children are generally classified as right and left. Each node can have up to two children (sub-nodes), and each of those can have up to two children, etc. In a BST, the nodes are organized in a simple way. A BST is made up of nodes, objects that actually hold the pieces of data that the tree itself organizes. For instance, as an example, I’ll be using a BST that holds integers. Binary Search trees (and B-Trees in general) operate on data that can be ordered consistently, the simplest example being numbers. The B-Tree is a generalization of a Binary Search Tree, or BST for short. Before I go into what I managed to determine from the code, we may first take a look at one thing that we already know about the world format - it is a B-Tree.
#Starbound save editor 1.3 1 how to
This section will contain information on how to retrieve a value from a BTreeDB5 database. The only thing in FORMATs.md on this subject was: One key piece of information was missing from it - how the BTreeDB5 was organized beyond its header.
This file proved very helpful, though slightly incomplete. Py-starbound, nicely enough, actually has a file named FORMATS.md. Neither of these was in a language that I felt comfortable using for my project, so there was only one solution - to figure out the formats that they used, and try one more time to write my own. The next links in my search results were py-starbound, and its friend, by the same author, go-starbound. Instead, a very similar BTreeDB5 was what greeted me at the beginning of the file. According to the website, I was supposed to see: I tried to follow the outline with my own implementation, but things weren’t working. Looking up “starbound file formats” led me immediately here. There wasn’t a really clear idea in my head as to what I was going to do, but I wanted to start writing something and see what happens. After playing a few hours of Starbound, I decided that I wanted to mess around with its file format, perhaps make a save manager/swapper, or something.