# Game Design Theory

This topic is 2135 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

Hey guys, just joined. I've recently been really intrigued about the process of creating video games and everything that goes into it. I really have no understanding of any of it... coding wise and all that. But I get the basic concept of it. I don't have much time so I'm just going to get right to my theory or question, and see if I can get answers or spark a discussion.

Why don't programmers program "laws" into a game engine or whatever. Say these laws could be physics, lighting, how matter reacts to other matter with a different mass or same doesn't matter. I know they have physics engines, but why are physics engines convincingly fake when we have all the equations and the real physics data that we could input to create a real-life physics engine? Then once all the foundational "laws" are programmed and set in space, you sort of create the "Big Bang" within the game and let matter react to what the laws state can and can't happen.

A game that kind of showcases what I'm thinking is No Man's Sky. It's all procedurally created. So you don't manually have to program everything into the game, the computer auto-generates it based on laws of the world that have been created I'm assuming. This would save so much power and space on the CPU/GPU (Am i right on this?) and be extremely efficient because there are less objects/sequences that have been manually added that takes up space

I'm thinking if you could create games like how the Universe was created in essence. The Universe, say, has laws set up that every atom of matter reacts to within the limits of these laws. The laws tell the matter that develops within the space what it can and can't do. These laws can be the law of relativity, gravity, etc. etc. We have the math behind the forces of gravity, we can predict what gravity will do to an object with any amount of mass. Why can't we incorporate these predictions into a game/world using mathematical equations/algorithms? With these laws set, we could then go into an engine, let's say, and all you would do to add objects into the environment is choose or create the object then insert values for it's mass, weight, color, density, etc.. whatever values that need to be input so that the pre-programmed laws of the world can read and identify the object and can now react to the said object realistically because the variable in which the pre-programmed law needed to complete the algorithm/equation is now given(Inserted values of object being added). I feel like this way of computation is extremely efficient because once laws are in place, everything else just reacts to it and you don't have to worry about manually programming reactions and interactions.

Of course you could still go in and add dialogue where wanted and NPC and the buildings but you have more room for those things because of the efficiency of the laws.

Please let me know what you guys think, if this is even close to being practical. If there's blockades within programming language that prevents this computational behavior... etc.

Edited by Med Bottle

##### Share on other sites
Please let me know what you guys think, if this is even close to being practical.

I bet there are more skilled coders writing lengthy and patient explanation on this but for example simulating the Big Bang where all matter is packed to a single point of infinite density... Come on. Theoretically the odds that you get anything like Earth out of simulating Big Bang even if your physics correlated perfectly to the real world are infinitely small.

In brief, people don't simulate physics to this accuracy because making it work would take huge amount of time and running physics and graphics on nuclear level for every rock that stands still would be insanely heavy. In a word pointless. You could download Blender and try for yourself how many rigid/soft body objects (that are still very crudely simulated compared to actual physical laws) you can simulate with Bullet physics engine, and I'd guess you're limited to anything less than a million.

No offense but you should trust that things are faked when it makes sense and leave it to people that have the insight. If you want to learn, understand and see for yourself this forum and probably "For Beginners" is a good place to start. :)

##### Share on other sites
"Laws" are not content. After you set up your laws the universe is empty.

Metaphysical theories about the actual universe include some starting point, ranging from detailed divine intervention to a "simple" big bang with curiously nonuniform results to almost pure symmetry breaking (e.g. ancient atomists like Epicurus and Lucretius).

In a game, you don't have the luxury of eternally waiting for randomness and natural laws to make intheresting things come into being: you need tools for intentional design.

The best you can obtain with procedural generation is trading off computation for expressive power, describing abstract structures (e.g. "make a star system with a sun-like star, two gas giant planets, an asteroid belt, four earthlike planets and a bunch of comets") and rules (e.g. "a typical comet has a perihelion between 0 and 0.5 AU from the sun and an aphelion between 30 and 80 AU, feel free to use uniform random distributions from those ranges") instead of low-level details (e.g. an awful lot of atoms).

Every game has its appropriate abstractions; for example, the sophisticated level generators that make Doom levels (just to remember the anniversary) operate in terms of polygonal sectors, linedef attributes, IWAD textures, a standard catalogue of monsters and objects, difficulty calibration given available weapons, etc. There is no place for basic physical laws.

##### Share on other sites

^ Haha, nice examples, +1 :)

##### Share on other sites

@Med Bottle

Physics and lighting are fake because it's still impossible for the average user's computer to render all graphics and calculate all laws in the universe in real time.

A loaded program is much larger than one stored on your hard disk. There is no exact compression ratio, but an example would be I start a 4 mb game, it is  68 mb on the virtual RAM after it opens up every single 2 dimensional image file, a 3 dimensional image is much larger than a 2d one after rending every single angle you can view one object from.

Of course you could still go in and add dialogue where wanted and NPC and the buildings but you have more room for those things because of the efficiency of the laws.

Maybe I want the game to have different physics too.

how matter reacts to other matter with a different mass or same doesn't matter

Remember, physics are fake because atoms are incredibly small objects.  Several government controlled supercomputers may be running simulations similar to what you're asking about, they wouldn't all make very fun games.

Edited by ActiveUnique

##### Share on other sites

^ Haha, nice examples, +1

Hehe thanks. :)

##### Share on other sites
I think the term you are looking for is "God," and I'll say it's impossible for humans to accurately replicate Him.

You'd have to be able to procedurally generate infinite things with "specific designs" and "classifications".

The world isn't just a mathematical formula. And not everything was procedurally generated.

You see, you can't just have physical laws, you also have to have behavioral laws.

An example of a behavioral system I have seen in game programming is in the Game Press app for iPad.

The law system is a good idea though, and would naturally have limits (again, you're not God and never will be).

I thought of a procedural system which would require1,000! computations at least. What computer can even calculate 1,000! ? If it can, can it calculate 1,000,000! as well?

I really do like your idea for a sort of law system (yes, it is possible easily) because it actually would go well with my "Senses System".

A good example of a behavioral system in game programming is the Sims 4 video game.

##### Share on other sites

Thank you guys for your insight. I had some speculation that was a case of lack of technology. I just don't know about these things in-depth so I appreciate you guys filling me in. Excuse my ignorance

Would it be possible to do what I suggested on a smaller scale? Maybe cut parts out and shape it to how the developer would want it but have a system of laws in a game?

Could someone explain what No Man's Sky is trying to do with it's game a little more. With the procedural system and all. It says in the trailer that every atom, rock, leaf, planet, etc.. is procedurally generated. But as you guys stated going by atoms would be a nightmare for computers right now. Take a look at the trailer:

##### Share on other sites

The trailer's statement is a Hyperbole, an atom is the smallest building block a layman will understand. The previous statement is an oxymoron.

The truth is you can't tell what a game will be like before someone reviews it out of their own curiosity, I might as well be quoting someone.

http://www.rockpapershotgun.com/2013/12/09/first-look-no-mans-sky/

Someone had to have intentionally modeled a fish, and in that article they admitted to it.

This next part is my opinion:

The procedural generation process may have been the method used to create the starting point of their universe, where every planet begins. I must compare this with Spore. "Planet painting tools" were available during Spore's production. There were too many planets for all of them to be hand crafted. Some special land formations were apparently being reused as I visited different worlds, and I remember finding repeats.

I think they're trying to catch a wave... you know, something like: http://www.kickstarter.com/projects/cig/star-citizen

So many people who like space exploration, and so generous $.$

• ### Game Developer Survey

We are looking for qualified game developers to participate in a 10-minute online survey. Qualified participants will be offered a \$15 incentive for your time and insights. Click here to start!

• 16
• 11
• 9
• 24
• 51