Disecting the engine

  • Two Factor Authentication is now available on BeyondUnreal Forums. To configure it, visit your Profile and look for the "Two Step Verification" option on the left side. We can send codes via email (may be slower) or you can set up any TOTP Authenticator app on your phone (Authy, Google Authenticator, etc) to deliver codes. It is highly recommended that you configure this to keep your account safe.

Sleepwalker

Section 8 Founder
Aug 18, 2004
34
0
0
43
Sweden
Hello everyone, nice forum you seem to have going here.

I've got a few questions about the abilities of the current unreal engine. I've got answers to most of my questions but some still linger in the back of my head unanswered. Questions like..

1. Is there a limit to how huge you can make your maps? The approach i have for my ideas so far is to have the whole world in one big "streaming" map. Actually more of an universe than a classical square map. Lineage 2 which to my knowledge is built upon an older Unreal engine has the gameworld set up allmost like this. What i want to know, is to what extent this can be done.

2. Can the "gravity vector" be changed in-game and can there be several "gravity vectors" present in the current map? With spheres of influence for each?

3. Again bringing up Lineage 2, i was pondering the matter of server load. A standard UT2004 server is rather heavy to run even with 32 players. How does Lineage 2 cope with their massive server load? My guess is that the netcode is far frome closed for further development and that they have modified it from the current form of thin clients to use client side interpolation and lesser pollings. Is this correct do you think?

4. Why the hell has my roomate devoured my supply of coffee?

(more questions will follow, and btw.. i did rtfm)
 

GIBson3

New Member
Dec 12, 2000
17
0
0
The web
Visit site
2. Can the "gravity vector" be changed in-game and can there be several "gravity vectors" present in the current map? With spheres of influence for each?


well you can have zones that allow you to "change" gravity settings, I'm not sure to what extent you want to control gravity but I'd look into those.


3. Again bringing up Lineage 2, i was pondering the matter of server load. A standard UT2004 server is rather heavy to run even with 32 players. How does Lineage 2 cope with their massive server load? My guess is that the netcode is far frome closed for further development and that they have modified it from the current form of thin clients to use client side interpolation and lesser pollings. Is this correct do you think?

as for this I'm almost positive Lineage uses a totally custom network layer that doesn't exsist in regular Unreal. The "workings" of MMO's are a tad different than your usual 32 person FPS. you seem to understand this, but I don't think it would be possible and at the vary least extremely tough to get that sort of functionality out of "OOTB" with ut2k3/ut2k4

4. Why the hell has my roomate devoured my supply of coffee?

Because he's a roomate and aren't they supposed to eat all your food?
 
Last edited:

Sleepwalker

Section 8 Founder
Aug 18, 2004
34
0
0
43
Sweden
well you can have zones that allow you to "change" gravity settings, I'm not sure to what extent you want to control gravity but I'd look into those.

So if i would, lets say, want to have a set of floating spheres each with their own gravity and have players jumping between them beeing able to walk on their surface it should be possible right? I'm fully prepared to write as much code as may be requiered, i just don't want to throw myself into using this engine. I would get pretty upset if i found out after weeks of coding that i can't do what i want in it.


as for this I'm almost positive Lineage uses a totally custom network layer that doesn't exsist in regular Unreal. The "workings" of MMO's are a tad different than your usual 32 person FPS. you seem to understand this, but I don't think it would be possible and at the vary least extremely tough to get that sort of functionality out of "OOTB" with ut2k3/ut2k4

Yes i'm familiar with various styles of netcode, and i'm happy to see that it's possible to write your own like the lineage team probably did. I suspected this, but now after you write this, i'm pretty convinced they did. It seems logical. Is it possible to alter/rewrite the netcode while making a mod, or do i need the licensee-distribution for this?

Thanks a lot Gibson for your reply, it's allways nice to have someone to ball ideas back and forth with. Even though you're not aquainted with the project at hand.
 
Last edited:

BinarySystem

Banned
Jun 10, 2004
705
0
0
You can write your own netcode using sockets. Alternatively, you can cut down on the bandwidth usage of your Actors, which is probrably what Lineage II did. As far as "streaming maps" I don't believe that is possible without a license and likely would be difficult to do even with one as you would have to move things around in the world and stored vectors and such would not get updated which could cause wierdness. However, you can make the world very, very large.
 

Sleepwalker

Section 8 Founder
Aug 18, 2004
34
0
0
43
Sweden
BinarySystem said:
You can write your own netcode using sockets. Alternatively, you can cut down on the bandwidth usage of your Actors, which is probrably what Lineage II did. As far as "streaming maps" I don't believe that is possible without a license and likely would be difficult to do even with one as you would have to move things around in the world and stored vectors and such would not get updated which could cause wierdness. However, you can make the world very, very large.

I think maby "streaming maps" was a weird word for what i want.

Lets say you start at one point in the world and wander for quite some time to another part. When you get close enough to an object in that part it loads into the scene. So the engine doesnt have to keep the whole world in memory at all times. Sort of how all games work if you don't have enough memory on your graphics card. Textureswapping, but for objects.
 

Sleepwalker

Section 8 Founder
Aug 18, 2004
34
0
0
43
Sweden
Time to plunge into this and get some hands-on experience. I'm downloading the Runtime right now.. *feels like a child on x-mas* What you read now could very well be the beginning of something beautiful.. like the game you will be playing a few years from now. =)

edit: Teehee, download complete.
 
Last edited:

BinarySystem

Banned
Jun 10, 2004
705
0
0
Sleepwalker said:
I think maby "streaming maps" was a weird word for what i want.

Lets say you start at one point in the world and wander for quite some time to another part. When you get close enough to an object in that part it loads into the scene. So the engine doesnt have to keep the whole world in memory at all times. Sort of how all games work if you don't have enough memory on your graphics card. Textureswapping, but for objects.

Oh. This is quite possible for Actors, but not for BSP geometry. However, it is possible to make your entire world from static mesh actors.
 

T2A`

I'm dead.
Jan 10, 2004
8,752
0
36
Richmond, VA
Sleepwalker said:
So if i would, lets say, want to have a set of floating spheres each with their own gravity and have players jumping between them beeing able to walk on their surface it should be possible right? I'm fully prepared to write as much code as may be requiered, i just don't want to throw myself into using this engine. I would get pretty upset if i found out after weeks of coding that i can't do what i want in it.
So you want the players to be able to walk all around the spheres as if they have their own gravity pulling the players toward the center? I remember another thread like this and I believe the answer everyone came to was it's impossible with this engine. Gravity is done with zones and volumes; it's just a number that the engine uses to figure out how much it should update an object's position. The default is -950 on the Z axis, I believe, so it just takes anything affected by gravity and moves it with a 950 downward acceleration.
 

Sleepwalker

Section 8 Founder
Aug 18, 2004
34
0
0
43
Sweden
Turns2Ashes said:
So you want the players to be able to walk all around the spheres as if they have their own gravity pulling the players toward the center? I remember another thread like this and I believe the answer everyone came to was it's impossible with this engine. Gravity is done with zones and volumes; it's just a number that the engine uses to figure out how much it should update an object's position. The default is -950 on the Z axis, I believe, so it just takes anything affected by gravity and moves it with a 950 downward acceleration.

I <3 Boobies too.

Allright, well that's no longer a problem. While experimenting some i found that my original idea would never work anyways. The concept still works, i just have to go at it in a different way. *Scribbles away in his design document*

edit: I just read through what you wrote a second time. It should still be possible i think. Let's say you make a sphere and then cover it with gravity zones. I'm guessing you can use more than one axis for gravity, am i wrong? If not, then it's quite possible.
 
Last edited:

BinarySystem

Banned
Jun 10, 2004
705
0
0
It's possible, but probrably only if you write your own physics code. The thing is a player's feet aren't automatically rotated to the direction of gravity. Using the spider physics MAY help to resolve this, but you might need to write your own physics from scratch.
 

Sleepwalker

Section 8 Founder
Aug 18, 2004
34
0
0
43
Sweden
Ah, yes.. forgot the whole rotation of the player. Not that it really matters any longer since i've decided to solve this another way.

Thanks to you guys who discuss my questions here in this thread! You are helping me quite a bit. I hope you can sense that i'm not a newbie when it comes to much other than just this engine. It will change soon enough though since i just got my hands on the complete set of 3DBuzz VTMs =)
 

GIBson3

New Member
Dec 12, 2000
17
0
0
The web
Visit site
Ok, well I'm wondering, what type of "world" data are you looking at having. I'm not totally sure that you'll be able to influence the "Time Of Load" of objects no mater what type they are. anyway I'm currious to see you you are up to :D as for the covering the sphere part even if rotation worked it would be kind of "Hacky" Ugh, 1:18am and I have to be up for work at 6:30...

GL
 

Sleepwalker

Section 8 Founder
Aug 18, 2004
34
0
0
43
Sweden
GIBson3 said:
Ok, well I'm wondering, what type of "world" data are you looking at having. I'm not totally sure that you'll be able to influence the "Time Of Load" of objects no mater what type they are. anyway I'm currious to see you you are up to :D as for the covering the sphere part even if rotation worked it would be kind of "Hacky" Ugh, 1:18am and I have to be up for work at 6:30...

GL

Well, i don't want to give away any details so i'll give you a different scenario that would explain what i am pursuing.

Ok, imagine this.. hmm.. You are a crab. With red shiny claws. Aaand.. you lick a tab of LSD. Now you see huge balls everywhere and discover you stand on one of them floating in space with a very 70'-ish style backdrop. And then! you see a very deliciouslooking tart standing on a ball further away in this acid-crazed world of yours. You wish to get to her, but how, you inquire. You look around and find, to your delight, a small (but sturdy) boat. Manning the boat and prodly claiming it your own you shout out "Tart ahoy!" and start paddeling your way out in space. The Tart, that goes by the name of Mandy Suctioncup, waves you in as you swoosh through a cloud of wacko jacko-inspired waterfalls. You steer your mighty boat around like if it was your old trusty horse Bacon and land with ease right next to Mandy and take her as your wife. To love and pwn, forever and ever and ever.

Edit: I'm no longer trying to create such a world though. I went about it in another fashion.

I'm pretty sure that there are more people than you who are curious of my plans and scribbles, but no! You shall never obtain the necronomicon!!

The "time of load" is how the engine works automatically i think. On the condition that the object to be loaded is out of your sight when you enter the map and cannot fit in the memory at start for some reason. Unless it's a terrainmap that covers the whole map. Well.. basically because you stand on it when you enter. Hmm.. yes.... bacon.

Thanks to you kind sir, and good luck with your sleep-deprevation.
 
Last edited:

T2A`

I'm dead.
Jan 10, 2004
8,752
0
36
Richmond, VA
Everything is loaded into memory at start-up, as far as I know. If it's "out of sight" via occlusion (zones, antiportals, distance fog) it won't be rendered, but it's still sitting in RAM waiting to be seen. This is no Halo. Things don't load when you get to a certain point. You'd have to pay $350,000 for a license to make that happen. :)
 

Sleepwalker

Section 8 Founder
Aug 18, 2004
34
0
0
43
Sweden
Turns2Ashes said:
Everything is loaded into memory at start-up, as far as I know. If it's "out of sight" via occlusion (zones, antiportals, distance fog) it won't be rendered, but it's still sitting in RAM waiting to be seen. This is no Halo. Things don't load when you get to a certain point. You'd have to pay $350,000 for a license to make that happen. :)

Hehe yea i guess maby you're right, i'll set up a huge map with a great number of objects and such to test my theory. Worst case scenario, which still works for me, is that i'll have to settle for the usual swapmemory.. which allways works.
 

T2A`

I'm dead.
Jan 10, 2004
8,752
0
36
Richmond, VA
Swap memory? Isn't that a native C++-type of thing? You can't mess with that stuff unless you have a license. You can only mess with UScript without a license, not the native code.
 

Sleepwalker

Section 8 Founder
Aug 18, 2004
34
0
0
43
Sweden
Turns2Ashes said:
Swap memory? Isn't that a native C++-type of thing? You can't mess with that stuff unless you have a license. You can only mess with UScript without a license, not the native code.

Hehe ye but i meen standard windows memoryhandling =P

When the time is right btw, and i have enough material to convince myself (and the rest of Section 8) that it's worth it, i'll get my sexy sexy license.
 
Last edited:

Sleepwalker

Section 8 Founder
Aug 18, 2004
34
0
0
43
Sweden
Allright that's it. I'm sorry to say this, but the Unreal Engine cannot do what i want. It's a matter of drawing distance and various client-side only operations. Plus it can't really handle the type of scenes that i want.

It's a magnificent engine though.
 

elmuerte

Master of Science
Jan 25, 2000
1,936
0
36
42
the Netherlands
elmuerte.com
Just to state the fact that the UnrealEngine could handle it. But not via the currently available mod'able games.

Stating that the UnrealEngine can't do X is false. It's with UT2004 X is not possible or doesn't work well.