Pages: [1] :: one page |
|
Author |
Thread Statistics | Show CCP posts - 0 post(s) |
Lateris
Gallente Dark Star Industries
|
Posted - 2009.11.13 19:56:00 -
[1]
Hence the title What is Procedural generation?
|
Destination SkillQueue
Are We There Yet
|
Posted - 2009.11.13 20:27:00 -
[2]
Linkage
|
B'Oogie Knight
Gallente Federal Navy Academy
|
Posted - 2009.11.13 20:27:00 -
[3]
Edited by: B''Oogie Knight on 13/11/2009 20:29:39 Link
It's a technique used to build a set things based on a specified procedure rather than individual designs.
For example, EVE star systems could have been built using a procedure that defined certain parameters like must have a Sun; can have upto 10 planets; each planet can have upto 10 moons etc. etc. By then feeding the procedure with 'seed' number the procedure will generate a specific, reproducable system.
The advantages of doing things this way is you only need to store the procedure and each 'seed' number to generate a consistant universe.
Edit: Must remember LINK LINK LINK.
|
Gartil
|
Posted - 2009.11.13 21:04:00 -
[4]
That is actually how EVE was originally generated... and the seed number used was ..... drums.... 42 ;-D
|
KingsGambit
Caldari Knights
|
Posted - 2009.11.13 23:44:00 -
[5]
As has been stated, procedural generation is a different form of generating content. Traditionally, if you took say level design...you'd have a map designed with walls, floors and objects. And for each element there would be a texture applied to it. Or for example with character design, you would programme in its behaviours. With procedural programming, you programme in a method whereby those graphics or behaviours can be generated instead, within certain parameters. The guy who invented Spore did so because he was inspired by procedural programming. The game doesn't have a preset selection of creatures...you can add any limb to a torso and the game then works out how the creature should behave as a result.
The Eve universe above is a good example. Instead of a human designing each star system, placing the star, planets, moons and belts the human designed the procedure by which many systems could be generated, with parameters so their suitably random/different. For a great example of procedural programming at its finest, you MUST check out farbrausch. Download .the .product. It will make you... happy. -------------
|
Lateris
Gallente Dark Star Industries
|
Posted - 2009.11.14 00:38:00 -
[6]
Thank you! Would this actually make an MMORPG not lag as much or allow planetary flight from space to the surface without a loading screen?
|
KingsGambit
Caldari Knights
|
Posted - 2009.11.14 13:38:00 -
[7]
Originally by: Lateris Thank you! Would this actually make an MMORPG not lag as much or allow planetary flight from space to the surface without a loading screen?
There's no reason why not for the second. A program could just as easily load the code that generates the sky as it could one that was designed prior. But as for lag, probably not. Lag is caused by the client waiting on information from the server. If your own game client generated the information for example, about where in space you were as well as where your enemies were, you could potentially run a 3rd party app that could tamper with that information. That's why it's the server that stores the information about where all ships are located, what weapons are being fired, what their shield/armour resists are, etc.
I don't know an exact number, but to illustrate, say that it takes 64kB of data for each ship. The server has to update two clients each with two 64kB packets, so 128kB per client. When your turret fires, the server has to run the calculation (did it hit, how hard) and both clients again get updated. For two ships it's not much data, but multiply it by 100 and the task is much harder. Add in other issues like each players different geographic location/ISP, bandwidth, Internet traffic...packets can get lost or delayed. I'm sure in the case of Eve it's pretty efficient but as long as that stuff is handled server-side (which is the only way it can be fair), it doesn't matter if you run a procedural programme or not, the information still needs to be sent from server to client(s).
Lag isn't just caused by the above though. If your connection suffers high latency, packets would take longer to reach you. Having things downloading in the background, using Wi Fi with encryption/access control, using a proxy, being further away from server (in terms of number of routers) will contribute too. Having graphics settings on max and an antivirus turned on can also cause lag, though not for the same reason. In the case of higher GFX, your PC has to spend more time/effort drawing what you see, and in the case of AV it has to scan and approve packets as they come in for virus activity, before it hands them back to the game client. Back in the day, people playing Quake II and UT f.ex, would run mods that painted other players on-screen as wire frames without textures and removed all blood, gibs, etc. Just for that extra edge... -------------
|
Lateris
Gallente Dark Star Industries
|
Posted - 2009.11.14 23:08:00 -
[8]
Thank you- I just read up on on using this to generate items. Me thinks I found my game plan.
|
hired goon
|
Posted - 2009.11.15 10:06:00 -
[9]
Hired goon here with fun facts about Procedural Generation. PC game 'Spore' is almost entirely procedurally generated in all of its assets. Legendary game 'Frontier: Elite II' procedurally generated its galaxy, enabling hundreds of thousands of explorable planets that you could fly down to and land on - on one floppy disk. -omg-
|
Feilamya
Pelennor Swarm THE KLINGONS
|
Posted - 2009.11.15 14:35:00 -
[10]
Originally by: KingsGambit Edited by: KingsGambit on 13/11/2009 23:48:46 For a great example of procedural programming at its finest, you MUST check out farbrausch. Download .the .product. It will make you... happy.
They made an FPS too. Check out .kkrieger.
Also, the product was yesterday. Check this out: http://www.pouet.net/prod.php?which=52938 (it takes some time to start, so be patient)
Well-known examples for (almost) fully procedurally generated games:
Nethack Diablo 2
If ever a game comes out which combines the two and doesn't suck, I will be hooked.
Quote: EDIT: This is an example of procedural AI gone terribly wrong. Because the PC was in there when he shouldn't have been, the dogs hated him. But because the husband likes the PC, he attacks his dogs. Because the wife likes the dogs, she then attacked her husband. Because she attacked her husband, she was a criminal that had to be put down...like a dog.
Reminds of EVE ... Couldn't we give CONCORD some more ... "advanced" AI?
|
|
Reiisha
Evolution IT Alliance
|
Posted - 2009.11.16 14:09:00 -
[11]
Edited by: Reiisha on 16/11/2009 14:09:28 .debris
That's an example of insane procedural generation. 177k though, but for what you're getting it's amazing.
"If you do things right, people won't be sure you've done anything at all"
|
|
|
|
Pages: [1] :: one page |
First page | Previous page | Next page | Last page |