Star Citizen - Chris Roberts, lots of spaceship porn, lots of promises

I understand perfectly why you agreed with him saying that software rights are often described in great detail. The thing that’s so funny to me is that he wasn’t covering both aspects of the argument, he was explaining why your side of the argument is wrong in his opinion.

As for the moons, I’ll let you respond to Juan and Timex.

There are no procedural moons or planets in 3.0. It’s all bullshit.

The manner in which they create the terrain, uses procedural tools to generate it. e.g. terrain (height maps created from World Machine), rocks etc. That’s the extent of their “procedural” tech.

Most of us who have developed procedural planets - in their entirety (e.g. see Outerra, Infinity Battlescape, Dual Universe, Battlecruiser 3000AD, Universal Combat etc), know the difference.

Basically, the planetoids and moons are simple CryEngine levels in which the terrain is generated from height maps.

And the placement of some assets (buildings etc) is hand placed by artists. We do the same thing in our games, including Line Of Defense for which the procedurally generated height map looks like this, and the resulting terrain looks like this, and the resulting assets placed (in an editor) on it, looks like this.

They were touting “procedural planets and moons” in which backers were under the impression that this would allow them to generate the 110 star systems and 500+ planets and moons within a reasonable amount of time. Effectively in real time, as it is supposed to be done.

After the fundraising drive for GamesCom 2016 and CitizenCon 2016 ended, and they got the money based on those promises, the reality sunk in.

Which is how, instead of planets and moons - as we gamers have come to know them, ended up being level based planetoids and moons. Meaning that, using this method, it would take them up to +10 years to build the universe they promised. That’s why the upcoming 3.0 that was originally promised as coming 7 months ago, has now been significantly scaled back to now have only 3 moons.

Well, that was not my understanding of it. If it wasn’t my understanding, I wouldn’t have agreed with it. I even highlighted the parts that I was in agreement with I think.

So we will just have to let him chime in on his intentions there; though I find it unlikely that he would use two different things to illustrate a singular point of contention.

Regardless, I think my missive above clearly illustrates why, any argument that IP automatically includes software, fails on merits alone.

So are you saying that the moons cannot be described as procedural because they’re not 100% arranged by algorithms? Should I use the term “moons created with procedural tools” instead?

The developers have said that they made a conscious decision to avoid complete reliance on procedural generation so as to avoid the random meaninglessness you would find in a game like No Man’s Sky. To quote Tom’s review of that game:

Exploration is only as meaningful as what you can find. If I explore the attic of my parents’ house, I can find my junior high yearbook. If I explore an unknown planet, I can find a fantastic new life form. That’s why there are more games about exploring universes than games about exploring attics. But if I explore No Man’s Sky, a game about exploring a universe, I can find the exact same thing I found ten minutes ago, and ten minutes before that, and ten minutes before that, and each of the ten minutes before that for the entire playing time. Exploration isn’t about exploration. It’s about discovery. No Man’s Sky doesn’t understand this at all.

But I suppose you are under the mindset that this is not an artistic choice, but due to them not having the technical ability to generate planets 100% procedurally?

I think the problem is that when someone describes something in a videogame as “procedurally generated” most people take that to mean that it’s done live in real-time while playing.

Minecraft may generate terrain from a algorithm but do it only once, … when is generated, is stored to disc, so the next time you visit that particular chunk… is not calculated but loaded from disc. Notch could have distributed Minecraft withouth the terrain generator algorithm, a lot of pre-generated terrain in the disc. If the terrain is generated in real time or not, is moot point. If the game developer can get away with it, it will be cached or pregenerated has much has possible.

But Dr. Smart mentions games like Infinity Battlescape and Dual Universe as games that use procedural generation proper. These are multiplayer games with a shared world that could not have been generated entirely in real time from the perspective of a new player. They’re playing with the same seed that was created at the beginning, regardless of when they joined.

Right, but the worlds are generated when someone fired the game up and asked it to do so. There’s a difference between that and something in a game that was created by a programmer using procedural generation tools before the game shipped.

For example, it’s entirely accurate to say “GTA V’s Los Santos landscape was created with a lot of procedural generation help” because vegetation, terrain, and NPCs were the result of some savvy use of that code. It would be odd to say “GTA V’s Los Santos is procedurally generated” because that implies a completely different process.

Sure. The latter is mainly just used to enable faster creation of planetary bodies.

They look pretty nice from what we’ve seen thus far.

Infinity Battlescape always takes place in the same system, with the same layout, according to the CEO.

With Dual Universe, it seems that everyone starts on the same two planets that have already been seen in the demo videos, with new solar systems expanding outward that are generated in real time.

True procedural generation enables things like you see in No Man’s Sky, where you have basically infinity planets you can go to.

In practice, it ended up being pretty boring after you saw a few.

I’m not saying otherwise. As long as you’re using the same seed and algorithm, you should get the same results. For example, No Man’s Sky, despite not actually connecting players in real-time, generates the same universe with the same content for everyone.

You said:

My point was that Infinity Battlescape will have the same layout for everyone because that’s the layout that the developers chose before the game shipped.

The CEO’s words:

I guess that depends on how you define “real” procedural generation. Our planets are about as procedural as they can get .

Yes, because the terms are NOT interchangeable. See my previous comment.

That came AFTER (I even wrote an entire article about it) it was made clear they were full of shit. See my previous comment.

It’s irrelevant. Nobody gives a shit HOW they do it. The issue with HOW boils down to the fact that 6 fucking years later, they don’t even have 1% of the promised game universe built. It’s now mid year 6, and 3.0 is going to have 3 moons. as levels.

So, if they were using procedural algorithms to define and create the world, while using manually work to create the actually landing areas/zones, that cuts out about 75% of the work they have to do for 110 star systems and 500+ planets and moons. THAT’S the problem. It’s a matter of 1 yrs, versus 10 years in building the world they promised, back when in 2014, $65m was enough to build the game.

Okay, so I will concede that Infinity Battlescape isn’t procedurally generated. Or is. I’m not even sure how we got into this discussion spiral.

The point is that most people understand “procedural generation” in a game to mean it’s being done live. As that Battlescape thread you linked shows, even the devs use of the phrase confused people.

Exactly. And that’s the distinction here as well.

The difference is, IMHO, whether a planet is generated on the fly from a series of very partial assets (textures, models and procedural code) or whether the content is baked in before going into the engine. That is, created using procedural tools outside of the engine with no procedural assembly in engine.

But I doubt you can bake-in assets the size of those moons. Most likely some stuff is baked in (height maps?) and some is procedurally generated (assigning geometry and detail to those heightmaps).

Infinity, iirc, was fully done in engine, with no bake in except for the more granular assets (textures and building modules).

Yes, exactly. I will just use my games as an example.

Battlecruiser (which evolved to…) and Universal Combat, have a massive universe consisting of space, planets, moons.

There is no concept of “levels”

The entire world is generated using a script (which you can download and see if you have my scripting tools which I released on Steam for UCCE a few months back)

That script determines where everything in the “world” is. And there is one that is specifically for moon and planet positions and generation.

It runs at startup.

When a moon or planet needs to be “entered” from space, the script builds the surface from another script, creates the terrain from a height map, and then places objects (e.g. buildings) on it at positions defined by…again, scripts.

I developed that tech back in the mid to late eighties because I knew that procedural methods were going to be the only way for me - a sole developer - to build the world I envisioned. That, and the AI language I developed, contributed to the delays of BC3K because I was out of my league, having to invent everything on-the-fly.

Over the years, as tech improved, across various games, I continued to improve on it, ending up with Universal Combat which became the combined arms game with space, planet, vehicles, naval, fps etc. I was the FIRST to do it.

In Line Of Defense, I opted for level based world because it is a smaller game in which only the terrain benefits from procedural techniques. And that is exactly what Star Citizen is currently doing. Except that whereby my artists have spent the better part of 5 years handcrafting 13 (4 space, 4 stations, 4 planetary, 1 carrier) scenes/levels in a level editor, CIG has the arduous task of creating 110 star systems and 500+ planets and moons - in a level editor. By hand. And six yrs later, they don’t even have 1% of that world built. With the upcoming 3.0 due in July/Aug, they will have 3 moons. It’s hilarious.

What’s interesting about random or procedural generation of levels, planets, whatever is that if its totally random with no parameters for generation that helps it “make sense”, it’s usually dull and pointless. You have to salt in various other elements at strategic points to keep it interesting for the player.

I was working on generating a random level inside of a ship (for my now-stalled game project) with various stairs, corridors, height variations, doors, rooms, pipes, computer banks, etc. that was truly different every game. As I went along, salting the generation with some pre-made elements that were then randomized made for much more interesting gameplay and stuff to look at. Quasi-random is a good term for it. It eventually worked quite nicely, but it took a lot of time and tweaking to get it right.

Yeah. It’s a massive time sink, and a bunch of things will all go wrong - usually at the same time.

I had fun back in the day, with water textures ending up being plastered over land mass. Then the AI aircraft, using the incorrect height-above-ground info (which is different between land and water based on elevation), ended up crashing into the ground. Or that time when there would be a mountain right behind a building, and there’s an AI aircraft attacking the building, pre-calculating the terrain behind, seeing a steep incline - then deciding to go vertical in order to climb the crest of the mountain - completely forgetting about the bombing run on the building. Time to move that building and put somewhere else.

Fun times.