Forums » Suggestions

improving (maybe) physics engine

«123»
Oct 27, 2003 zhuk link
Magus, you do not need tera-flop computations to simulate a flight at high velocities. You need exactly the same computations as at 200m/s, it is just x=v*t. If somebody finds a speed uncomfortable for him, just slow down. I would prefer to decide myself, what speed is comfortable for me instead of in game inforcement. I am definitly not going to fly over 1000m/s near s10 station, but I would like to be able to do this in the other locations.

Galorin, the engine can continue to accelerate infinitly. This is exectly what it does in empty space, when you switch thruster on. Put more fuel and go up to the speed of light. Again nobody forces you to do this, stay at velocity which is comfortable for you.

Sorry pilots, but I still do not see any logic in speed limitation.
Oct 27, 2003 roguelazer link
You may not need tera-flop computations, but you need a terabyte line. The way the protocol works, position data is sent to the clients about other clients, not just vector data. Therefore, if you were moving at 10000m/s, you would end up sending position data like crazy and lagging the sector.

Also, unlimited speed is bad for gameplay. We used to have it, but it... doesn't work. Battles are boring if shots are moving at realistic speed. Then you also have range problems. Range in Vendetta is determined by speed and "Shot time", which is how long the shot will last. Therefore, if you shot a 5 second weapon while going 10000 m/s, the weapon would go 50000m at 10000m/s. And, because of your "unlimited speed", acceleration data would probably bump that up quite a bit. Do you want to be sitting at station when someone 45km out in the sector shoots you with a stream of almost-infinite-speed weapons shots in some kind of super zoom? Me neither.

Don't get me wrong. I do think we need some higher speeds. I wouldn't mind seeing "Accelerators", like the Magnetic Launchers in some Clarke stories. Get in one and you go shooting off at several thousand m/s in a set direction, decellerating as you go. It would be disorienting, though. I've hit far in excess 4000m/s with the s10 exploit. I stopped something like 60km away from the nearest warphole. It wasn't exactly an experience I'd like to have unless I specifically wanted it.

You need to work on your physics, BTW. E=mc^2 tells us that as you increase the energy of an object (the speed), you increase its mass by a pretty large amount. This means (AFIAK- I have never taken physics, but Celebrim knows) that an object going at the speed of light (c) would have its mass increased to essentially infinite mass. Even a small fraction of the speed of light would result in a noticable change in mass of any object under the Relativistic model, and going the speed of light should be impossible. Enough Physics, I'll get Celebrim to correct me if I messed up my equations somewhere.

Several people have brought up some othe valid points. Space dust, for one. Read the book "The Songs of Distant Earth" by Arthur C. Clarke for some good information. Basically, space is nowhere NEAR a vacuum. At our speeds, that's ok. We just need to avoid the really big particles. But as speed increases, the relative speed of the space dust increases too. What was once harmless would turn a ship into a cloud of vapor instantly at high speeds.

Time for one more correction.

>>>I'm a bit shaky on this, but I have been under the impression
>>>that an engine can not continue to accelerate infinitely.
>>>Current technology allows for ion engines, and these can go no
>>> faster forward than the ions can come out the ship's
>>> backside. I believe the same holds true for solid fuel,
>>> liquid fuel, and other forms of conventional propulsion,
>>> possibly even unconventional propulsion.

This is entirely wrong. The propulsion system exerts a force on the ship, which increases its acceleration. In a non-vaccuum, you would be mostly right. But in a mostly vacuum like space, you're entirely wrong. It takes no energy to maintain speed in a vacuum, so all exerted energy increases speed. A ship with its thrusters on exerting a force of 10m/s^2 for one second would be going 10m/s a hundred years later as long as it didn't hit anything. If it accelerated at 10m/s^2 and kept the engines on, however, it would be going 10m/s after 1 second, 20m/s after 2 seconds, etc. It would be going 600m/s after 1 minute. 3600m/s after one hour. 86.4km/s after one day. After about 10 years (3469 days), it would reach the speed of light. Therefore, a ship that weighs 1kg would need to exert 10 Newtons of force for 10 years to reach the speed of light. Darnit. I got into Physics again. Now, let's take an 800 lb (350kg) astronaut + spacesuit. 35,000 Newtons of force for 1 year could get that astronaut up to the speed of light. Horray.
Oct 27, 2003 Kastin Thunderclaw link
E=mc^2 Simply gives the amount of energy "E" released if an object of mass "m" was totally anhiliated. It also works in reverse in that to create a particle of mass "m" you would need "E" amount of energy. This is how particle accelerators (such as CERN and SLAC) can create exotic particles. RL, you seem to contradict yourself, as you imply in your last paragraph that you CAN accelerate an object to the speed of light.

At the end of the day "real" physics in games is pretty much unplayable.. dogfights would be non-existant, and docking etc would be very very difficult.

Kastin Thunderclaw (Physics BSc hons)
Oct 27, 2003 roguelazer link
However, it also implies that if that much energy were used, that much mass would be generated by itself.

And I didn't say that you can in the last paragraph. I only used that as an example to show the case of acceleration in an extreme case. Now to make an engine that can put out 35000 N for a year straight.
Oct 27, 2003 Kastin Thunderclaw link
I wasn't saying you were wrong, just stating what its normally used for. The whole mass/energy thing is a little fuzzy really. Personally from my knowledge/experiences, i think that "mass" does not really exist, and it is just how we perceive concentrated bundles of energy. So it dosn't really generate mass... just becomes combined into the total energy of the object... That's just how i view things in my mind anyway.

Ion drives produce a tiny force but can sustain it for very very long periods of time as they are much more efficient compared to conventional rockets.
Oct 27, 2003 zhuk link
Come on people, nobody is going to simulate the universe in a game. I was talking just about such a simple thing like to remove 200m/s speed limit. This is it. Even if you'll be accelerating for an hour with reasonable acceleration rate of 3*g, you will end up with something around 100 km/s, which is too small compared with the speed of light 300,000 km/s, so you can skeep all that relativistic crap. Actually, velocities in the game would be much less then 100 km/s, because nobody will have patience to boost for an hour in the same direction. Try to play Frontier, unlimited speed does not make any harm to playability.
Oct 27, 2003 roguelazer link
It's not that small. It's 0.33%. That is -many- times faster than any human being has ever gone. For that matter, speeds that high would have all the problems of disentegrating ships and accelerations of 3g would mean that combat maneuvers would turn the pilot into jelly.

We won't boost for an hour? Au contraire. People have boosted for 50+ hours straight. At those speeds, sectors would crash all the time.

As for playability, well, we don't need examples from othe games. We had it. It didn't work.
Oct 27, 2003 zhuk link
100 out of 300,000 is not 0.33%, it is 100/300,000*100=0.033%, which is a small fraction, so you really deal with a simple Newtonian physics.

Acceleration 3g is experienced by the jet plane pilots during combat maneuvers, and they are not turned into jelly, because a trained person can stand it without big problems.

>> We had it. It didn't work.

Fair enough. I just tried to understand why.
Oct 27, 2003 Celebrim link
zhuk: A couple of reasons why realism and high speeds aren't necessarily good for the game...

10) The faster the ships, the farther they are spread out on average, and thus the less you get to appreciate the games graphics. Ships are already pretty small dots at 400 or 900m. At 'realistic' engagement distances - 300km? 3000km? 300,000km? - how much are you going to be able to appreciate the graphics?
9) The faster the ships are relative to thier ability to accellerate (or decellerate) the harder it is to interact - you just zip by each other and it can be some time before either of you can turn around. This would totally change combat, and pretty much elimenate the idea of the 'dog fight' from the universe.
8) The faster the ships the more inadequate human reflexes are for controlling them, and the more computer calculations as opposed to 'seat of the pants flying' are required to successfully navigate between points. The skill curve gets to be an unreasonable for a casual gamer as you move toward 'realism'. Ever tried landing a space shuttle without auto pilot in a flight sim?
7) The faster the ships are relative to thier ability to accelerate the more evasion depends on simple erraticness (ei luck) and the less it depends on actively dodging (ei skill). Munitions moving at realistic speed at a target with realistic acceleration would leave insufficient time for human reflexes to respond. Realisticly, the real physics of space encourages letting the computer control the actual movements of the ship.
6) The faster the ships, the faster perspective changes, and the fewer frames you can insert between displaying objects of a certain size and another, and thus the choppier the graphics look.
5) The game universe is finite, and the faster the ships move, the more easily this becomes apparant.
4) If ships move sufficiently faster than current technology permits, then you not only lose the ability of humans to realisticly control the technology but you lose touch with all the mythology of 'fighters' that comes to the player from film footage, movies like star wars, and most video games - all of which present fighters moving basically at WWII speeds and performing WWII type combat. I'm not saying that you couldn't have a realistic space combat game, but it would be much more like an attack submarine simulation than a game of 'fighter' combat.
3) This isn't a single player game. The greater the absolute distance between objects, the more extended the octree becomes, and the more time consuming the math is.
2) You aren't being more realistic anyway. Three g accelleration over a period of hours? Is the mass of your ship 99.9% fuel or something? Try .3g or more likely .03g if you want realistic rates of acceleration. You might have some sort of hot rocket assist to let you have 3g boosts for a few seconds, but your main drive isn't going to have nearly that sort of accelaration. And space is big. Really really big. Even if you can accelerate continiously at nice fast rates like .1g, realisticly it should take you days of moving through empty space to get anywhere, and days more decellerating to match speed with whatever you are planning on docking with. And forget FTL travel. That's just insanely unrealistic.

And the #1 reason...

1) Its been tried, and people thought it was boring.
Oct 28, 2003 roguelazer link
Yay! Thanks Celebrim.

/me wanders off saying that he invoked Celebrim
Oct 28, 2003 Phaserlight link
One final sidenote from Phaserlight the Physics Phreak to all you E=mc2 'ers out there:

Kastin is right; e=mc2 refers to mass-energy conversion. The equation you're thinking of is the Lorentz transformation for relativistic speeds:

Vr = 1/(sqrroot(1-(v^2/c^2)))

By this equation, as v approaches the speed of light your relativistic velocity blows up into infinity. In order for relativistic speeds to be significant, you have to be going at least about 0.1c, or 30,000,000 m/s.
Oct 28, 2003 Smurfy link
Ah, Phaserlight.

No inertia only means infinite speed if we were using rockets or something that throws something else to apply force.

Since the fuel would also have no inertia, you wouldnt be able to toss something out the back to gain speed.

So the.. you'd accelerate instantly, doesnt work. As its would need a new kind of engine we have no examples for.
Oct 28, 2003 roguelazer link
Phaser: I know a little about the Lorentz formula. It may be applicable, but E=mc^2 could also be used. If that much energy were to be expended, you don't think mass would come into play? Oh well. We've done enough. We've proved that having no speed limit is a -really- bad idea. Let's stop arguing amongst ourselves before the silly people mistake it for weakness and get back on their "infinite speed" kick.

Smurfy: Maybe a really long piece of rope?
Oct 28, 2003 zhuk link
>>We've proved that having no speed limit is a -really- bad idea.

Actually, there was no "proved" here. All the arguments for unnecessary low speed limit were full of evident mistakes. The only unbeatable one was "we do not want". There is nothing to say against it.
Oct 28, 2003 Celebrim link
"All the arguments for unnecessary low speed limit were full of evident mistakes."

Oh really?? That sounds almost like a challenge to me. So by all means, attack my arguments. I'm willing to elaborate any part that you don't understand. I'd love to see you come up with something other than 'I want the speed limit removed' and 'Hey! We should make this game just like Frontier!'. The devs started without a speed limitation. They added one for what I think are some very sound reasons. If you'd rather be playing massively multi-player Frontier, then I suggest you go program it yourself.
Oct 28, 2003 zhuk link
2 Celebrim:
The very last argument, #1, is the only one that works.

I said this not because I want to push somebody to remove speed limit too much, finally it is not a big deal, it was about argumentation which is "buggy" (it is not only your arguments, but all different E=mc^2 arguments too). An also I never said 'Hey! We should make this game just like Frontier!', Frontier is a very out-of-dated game. Devs made this forum for our input, so here is my input, is anything wrong?
Oct 28, 2003 Celebrim link
"The very last argument, #1, is the only one that works, all written above is not true."

Ahh... now that's a classic. The debater can't defend himself, so he asserts an unsupported falsehood as self-evidently true. That's the old, 'if you tell a lie, make it a big one', theory.

Problem is of course, some of the reasons I gave aren't opinions at all, but simple facts. You can't honestly say that they aren't true; the best you can claim is that they aren't relevant. But no, we have to deal with this stupid blanket denial launched with the hope that some other readers are too stupid to go back and check that the reasons I listed are in fact factual.

'The game universe is finite' is not true?
'Ships are already pretty small dots of at distances of 400m or 900m' is not true?

You are going to have to tell one that won't be obviously false to a 5th grader if you are going to pull one over on the board like that.
Oct 28, 2003 zhuk link
>>'Ships are already pretty small dots of at distances of 400m or 900m' is not true?

True. How is it related to speed? They will stay the same small dots at 10 km and more at any speed.
Oct 28, 2003 Celebrim link
"How is it related to speed?"

Speed is the scalar value of the first derivative of distance with respect to time, right?

Larger speeds relative to each other (you don't expect everyone to be traveling in the same direction do you?) imply that on average people will be farther apart and will have a harder time matching speed with each other to stay close together. Staying farther apart means that most of the time the player doesn't get dynamic 'cinematic' close ups associated with say WWI or even WWII fighter combat, but instead has the more 'realistic' horizon to horizon views associated with modern jet fighter combat. Imagine what happens when you are going 3000m/s and encounter an enemy going the opposite direction at 3000 m/s? Lets say you wait to fire your gauss (or Sunflares or whatever) 400m from your target. The gauss gets to the target in just over ~.06 seconds, or just over the limit of human perception of .05 seconds and faster than the limit of human conscious reflex at around .10 seconds. On your screen with a good card running 60 frame of high resolution graphics per second, you get maybe 4 frames of animation each showing the target 100m closer than before. By the time that you get a good look at the target, its nearly 400m behind you. But why would you wait till 400m? You can start firing at 3000m or so and be just fine. The incoming munitions will have a relative speed of more than 6000m per second, far too quick to dodge, and will reach the target in under a half second or about the time it takes the initial volley of rockets to cross the distance to the target at present. Maybe you'll get lucky (you sure couldn't aim using unassisted human perception). If you do, there really isn't anything that the target can do about it.

Except keep his distance.

That is even more true as the weapons morph from the arcadish ones we have now, to more 'realistic' ones designed to accomodate the changed physics.

Imagine we lifted the speed cap on ships and let them use true Newtonian physics, but did not increase the speed of the weapons.

What would fights look like?

Well, for another, the current homing weapons have speeds relative to the frame of the 'observer' - of if you like 'absolute speeds'. If we didn't also change them to use Newtonian physics, it would look even more strange than it does now because most of the time homing weapons would drop _really_ out of frame rather than just a little out of frame. You'd be 1000's of meters from the homing missile mere moments after firing it, and you can forget about a homing missile going 75m/s chasing a ship going 1000m/s or 300,000m/s. So clearly, homing missiles would have to be changed to be Newtonian as well, meaning that they would carry the velocity of the firing platform.

But what would that look like? Well, you'd have to give up on homing missiles having a constant speed. You'd have to give them an acceleration, otherwise they could really 'home' the way you'd expect them to. They'd just turn around and streak off into the distance, never correcting thier course. But if the acceleration was relatively small compared to the speeds of the firing platforms, it would make homing missiles pretty pointless. An acceleration of 5m/s^2 would put the missile only a few meters from the direct line of travel of the firing platform 3 or even 5 seconds after it was fired. In order to be worthwhile, homing weapons would need more realistic accelerations - say 50-100m/s^2 sounds realistic to me for a short burning rocket. In that way, a homing missile could engage targets 300m or so out of the direct path of travel with only a lead of a few seconds. Granted that lead might imply that the firing vessel had an course that intercepted within 300m of the target while still (as we saw above) 10km from the target when it was nothing but a dot moving against the star scape and a blip on radar. Imagine the perceptiveness that takes. You are going to plot a course to within 300m or so of where the target is going to be in three seconds while still 10km or so away and fire the homing missile far enough out that it can correct its course by 300m or so and hit the target. Actually its worse than that. Imagine the perceptiveness required of the homing missile. It can't be like our current homing missiles and try to stay pointed at the target. If it waits to start accelerating in say direction X until its close enough to know that its going to miss it will never catch the target. Instead, if you are planning on passing the target 300m off your port, the homing missile needs to start immediately accelerating straight sideways point itself to your port so as to bring itself onto an intercept course. And its not like you get a second chance. If the homing missile misses, it needs a full minute of burn time just to get itself 'turned around' and moving in the right direction (and in the mean time its slung itself 9km or so past its target).

I could keep on in this vein for pages and pages, but frankly its boring the hell out of me to be explaining things that are this obvious in this level of detail. If you can't understand immediately why distances between things might increase when speed increases, then I don't think we are ever likely to get to the point where you and I could have a meaningful exchange of ideas.

By all means, give us your input. But when people don't agree with you input, you could at least try to understand their reasoning instead of outright dismissing it again and again and again without logical rebuttle or apparent consideration. Frankly, if you are the one advocating change the burden of proof is on you, not on everyone else. Why should we change to a game without speed caps, other than that is your personal preference?

I'm not going to try to defend all the 'physics' and arithmatic that got tossed around here, but that doesn't mean people didn't give you some valid reasons and mistakes in thier arithmatic doesn't mean that thier overall point was wrong. There are limitations to human reflexes and perceptions. We have had people boost for 50 hours straight. There are limitations imposed by 32bit floating point numbers. It is a finite universe. There is extra burden on the engine if the octree is extended over a very large region, etc. etc. etc.
Oct 30, 2003 shadow_slicer link
I seem to have come in a bit late for this discussion, but here goes:

I am in favor of a completely realistic physical model.

Others have maintained that that limitation on speed is important for gameplay, and while I agree with their reasoning, I think that these issues can be solved while still maintaining a realistic physical model.

I propose a "soft" speed limit for ships where the ships take damage when moving at excessive speed.
The reason for this limit would be the impact of cosmic dust on the hull (the damage would be proportional to v^2, with the proportionality constant related to density of the dust and the forward surface area of the ship).
Myself, I would like a realistic approach where the ships *always* take damage moving at any velocity, I would just balance the effects of the damage to make the damage excessive for velocities that are "to high". I think this would add a "maintenance" aspect of the game, forcing even the most skilled players to come to a station eventually.

Of course if having continuous damage (I'm talking about a really small amount here) is too troublesome, you can just have it occur over a maximum speed.

Also, in order to prevent excessive damage for people that like to sit on the accelerator, you can require the pilot to press a "safety override" button in order for the computer to let you go over a certain speed.

This way the (effective) maximum speed of the ship would be proportional to its armor. This would allow merchants in more armored cargo ships to move faster than pirates (after taking a f-ing year to get up to speed) because they carry more armor.

Of course this makes the afterburner only useful for acceleration, but I kind of like it that way....