Sentinel is (or... will be, that's what this article is about) the main development platform for Entropy content. Sentinel will of course be open-source and will most likely use GTK or QT (probably GTK as, well, QT is way too C++-dependent, and GTK has the oh-so-wonderful [and cross-platform!] GTK-Sharp) that provides an interface to the entire pipeline. It'll even do a remote connection to a "planet server" (which I'll talk more in-detail about in my next update), which is probably its most important goal.
What it's about.
With Sentinel, you can take any supported model and texture formats and get them into Entropy. You can change remote server details (like planet names and such), edit the spatial database (which says where planets are), and monitor the galaxy live (Sentinel will use the same basic client libraries as the actual game). All of this basically makes it the hand of god, which may have you asking "but how will you keep things secure? Surely a simple login system will not keep people out!" Solutions are boundless. We'll be using SSH to secure our transmissions. Most planets will be internal to us (only the O-G team will be allowed on), giving the maximum privacy to those areas where a lot of people play. We also don't require that you let us into your servers either (but we may make the decision to remove you from our galaxy if you do naughty things).
Let's get into some more details.
First up is the content pipeline: Everything in Entropy will obviously be streamlined to easily transfer between the server and your client. Most all content will be dynamically generated from various building blocks - your characters armor is built from different different arm, leg, torso, etc pieces that are then per-mutated based on your specific set up, that's a standard MMO thing), buildings are built from blueprints that point to various wall/door/etc. models and textures (as are larger ships), and so on. Sentinel provides an interface to both sides of this equation - it allows content developers to set up the base models and get them into the global cache, and it also allows them to test and implement various combinations (such as designing new buildings and ships).
Once the content is built and ready to go, we need to put it into play. Sentinel offers access to a "global cache" for those properly authenticated (you'll need to register with us if you want global cache access, otherwise you won't be able to make new content outside of what stays on your planet). This cache is basically just a server (or set of servers) that holds new models and other content for download from outdated clients (we'll try and ship the entire cache as a single package for distributions, though, and it'll be retrieved directly with the Windows installer). Once it's in the cache, it's available for use. For character models, this just means you now have the option to use this base parts if you're at the appropriate levels (remember, Entropy has many typical MMO elements - you'll need to level up to get better stuff). If it's a weapon or vehicle, it'll be available in the palette in the next phase. Weapons will also be available in the automated shops.
And now that the content has been created and properly registered with the system, the last step for a building or vehicle is to be placed on your planet. This is where we use the live interface to drop stuff in (where no one is active, and with equal distribution between occupied areas, we see giving a team in a firefight a brand new turret as bias!). At this point, it really is that simple, just zoom over to the spot and drop it in, and you're done.
Before you can do any of this, you need a planet to build on. We foresee new planets as a rarity (some of us don't expect the game to go beyond two, but a one-man planet isn't that bad, so we'll have plenty for you to explore regardless of the number of players), but we still need an interface to build them from, so Sentinel takes that job as well. Creating a planet happens in the live editor (because where better to sculpt your mountains than from 30,000 feet? You can still use a variety of external tools to generate height data if you wish.). A new planet will need a name, a rough size (which will be ridiculously small to keep things simple for everyone), mass (referenced mostly by the gravity of the planet, which will always be ridiculously dense for the size), and a location (preferably a sun to orbit around, you'll want to read the next article on planet servers for more information that). If you choose to use Sentinel's editing tools to create your planet, you'll be presented with a pretty blank sphere to draw terrain on. Now, we're not experts in this area (we'll be using Terragen mostly to create our unique features and give each of the base planets its own flair), so don't expect too much, but you will be able to raise and lower the terrain in different increments, down to the smallest available detail level (which will again be described in the planet servers article, we're just talking about editing here). After getting a basic model for your planet, you can set up the water level and atmosphere (did we mention Entropy will have a simple weather system?) and then it's off to pain the surface. A planet's surface must define regions of various types (like forests, plains, deserts, and even water that isn't plane with the ocean) which will then use (mostly predefined) content to build those areas (like generated trees with pseudo-random plots defined by a seed value so all clients make the same plot). Once you're done with the natural formation of the surface, you can start dumping in buildings and other objects.
Well, I've got things to do so, let's wrap this up:
Sentinel lets users:
- Edit available content for Entropy
- Monitor game play
- Act as the hand of god, live
- Create new planets
In the next update, I'll talk all about planet servers, how they work, what information they store, and what you can do to help out.
This article is the first in a series describing the ins-and-outs of how Entropy is being/will be developed.
If you're intrigued, or even in disbelief (we know quite a few people don't think we can get this done in the next year and a half), and want us to explain a specific topic in detail, just send us an email: firstname.lastname@example.org.
Please also note that nothing in this article is done. In fact, it's not yet been started. Sit tight, it will all come in due time. Sentinel will actually be released before the completed game makes its debut, as we need content to build a galaxy before we even beta test.
Discuss this news post here.
(One comment please)
e: Oh, and in the "not all that important updates" section, we're using Tao with Mono (.NET on Windows for better compatibility, but we'll do our best to ensure it still runs in Mono). Tao is under the X11 ("MIT") license, which is of course GPL compatible. We'll be going GPLv3 because we're a fresh new project and so we should use the newest version of the license. See you Saturday for #2!
-Posted by BobtheGreatII