11831 Posts in 1017 Topics - by 528 Members - Latest Member: Blade

Author Topic: Zico's development blog 3  (Read 2512 times)

0 Members and 1 Guest are viewing this topic.

Online zico

  • Administrator
  • Hero Member
  • *****
  • Posts: 3140
    • DXX-Rebirth
Re: Zico's development blog 3
« Reply #30 on: February 21, 2012, 09:31:13 PM »
As answered in some other posts - but let's make it finally official here:
Nope it is not planned. It requires a huge rewrite of the whole engine (if done right) and my love for this hobby does not go far enough to do that. Especially because I could not care even less for Multiplayer than I do now (not meant as an offense but that is simply a fact).

Also I do not know what a didicated server would actually be good for when not having player-bot support.
« Last Edit: February 21, 2012, 09:36:07 PM by zico »
The greatest pleasure in life is to do what people say you cannot do.
Uhm... Honey, there's a head in the toilet!

Online zico

  • Administrator
  • Hero Member
  • *****
  • Posts: 3140
    • DXX-Rebirth
Re: Zico's development blog 3
« Reply #31 on: February 29, 2012, 05:33:11 PM »
Hello guys,

I feel the need for a little statement as right now basically everything goes wrong here. As I already mentioned in some places I am currently reworking the whole Multiplayer to give the Host/Server more authority over the game which should finally fix inconsistencies between clients as a result from lag, packet loss, etc. I am also preparing some more improvements especially to take off some usage from the game host due to the new packet transfer.

As this takes quite some time, we have decided to release a Bugfix version which should fix the most annoying bugs, especially some compile-time issues as well as the most prominent that causes bosses not to fire at you.

However due to the update of some libraries the OS X release gives us some trouble. As soon as this is fixed however, we'll publish the current development code - which has been tested for some time now - to public so shorten the time to the next full-blown release which will then hopefully be heaven for all fans of Multiplayer.

Sorry for the inconvenience.
« Last Edit: February 29, 2012, 05:36:01 PM by zico »
The greatest pleasure in life is to do what people say you cannot do.
Uhm... Honey, there's a head in the toilet!

Online Blarget2

  • Full Member
  • ***
  • Posts: 183
Re: Zico's development blog 3
« Reply #32 on: March 03, 2012, 08:37:42 PM »
After testing for hours, I'd have to say i cant find anything wrong with 57.2 so far. No one ever lagged on my screen. everything was hitting the ship where the ship was on my screen. Everything was super smooth. LOVE IT  ;D

Offline aqqman

  • The worst-case scenario
  • Full Member
  • ***
  • Posts: 168
  • This one's headed for Uranus
    • IceWolf of Descent Rangers
Re: Zico's development blog 3
« Reply #33 on: March 04, 2012, 03:10:11 AM »
So, basically its just bugfixes - the latest beta with new libraries. As far as I can see the lag issues is a story for 58, same about weapon disappearing in D1.
Descent Rangers
Name: IceWolf
Assignment: Black Squad
Rank: Lt.Commander

Current season stats

Flip

  • Guest
Re: Zico's development blog 3
« Reply #34 on: March 04, 2012, 03:32:21 AM »
Gauss needs to be let loose a little more. I sat still and let Ice hit me twice. I could see the red flashes on my hud but my shields held at 70. The 3rd time he hit I went down to 54. Gauss is definitely dropping shots.

Online zico

  • Administrator
  • Hero Member
  • *****
  • Posts: 3140
    • DXX-Rebirth
Re: Zico's development blog 3
« Reply #35 on: March 04, 2012, 06:55:57 PM »
So two bursts of shots took each around 15 shield units and another burst took around 16. Sounds about right to me. Considering the Gauss doing 8 shots per second - pretty good precision, Ice.
The greatest pleasure in life is to do what people say you cannot do.
Uhm... Honey, there's a head in the toilet!

Offline Alter-Fox

  • I was an E-Bandit in a previous life
  • Sr. Member
  • ****
  • Posts: 260
  • Scourge of the Limefrost Spiral system!
Re: Zico's development blog 3
« Reply #36 on: March 05, 2012, 02:53:36 AM »
I think Flip means his shields were already at 70 when the gauss started hitting him (they 'held'), but the first two shots didn't do any damage.
I used to see this kind of thing in D3 a lot.  It always tended to happen to the mega missiles I shot at people ::) .
So there!
---------------------------------------------------
You think you got balls?  Cause I have a hammer!
Check out my music @ www.myspace.com/snowfoxd

Offline aqqman

  • The worst-case scenario
  • Full Member
  • ***
  • Posts: 168
  • This one's headed for Uranus
    • IceWolf of Descent Rangers
Re: Zico's development blog 3
« Reply #37 on: March 05, 2012, 04:10:24 PM »
Ye lol thx zico.
So it's just another example of visual inconsistency, when what you see is trying to catch up after what happens in the netcode and can't catch up sometimes.

Descent Rangers
Name: IceWolf
Assignment: Black Squad
Rank: Lt.Commander

Current season stats

Online zico

  • Administrator
  • Hero Member
  • *****
  • Posts: 3140
    • DXX-Rebirth
Re: Zico's development blog 3
« Reply #38 on: March 05, 2012, 04:43:45 PM »
Ye lol thx zico.
So it's just another example of visual inconsistency, when what you see is trying to catch up after what happens in the netcode and can't catch up sometimes.
Which is not at all how the game works. Maybe I am too stupid to understand what your actual problems are but the game does not "catch up". You can have lag - yes - which is a delay that happens when packets travel slower than you are used to. That is something *usual* and are particular annoying in video games. Sometimes your packets can even get lost in the process. And if this happens frequently that rather is a problem on your end - not mine.
But either something HAPPENS or it does not. Maybe it's also a general misunderstanding on how a game works in a Network but I am not sure at all.

So if you are HIT by something and your screen flashes red you DO get damage. That is because the red flash is a visual effect called by the function which decreases the shield of your ship. But beware: There is some misleading visual secret here! Your ship can actually take less than 1 shield unit of damage! so if you bash into a wall you CAN take damage but the shield value will stay the same. That is because the shield is represented in an integer value and rounds up. So after bashing into a wall you get 99.75 shield but the evil HUD shows 100.

However the Vulcan fire 20 shots a second and Gauss does 8. So I would not try to base damage/shot-observations on these weapons at all. The Gauss can do different damage if you just press the trigger some milliseconds longer than before. especially with the Vulcan you are probably not fast enough to time two bursts of fire precisely and this is what I assume happened here.

But fun aside:
We can assume the heck out of everythign here. But as long as I am presented with false assumptions about the root of a problem we'll get nowhere. If you take three minutes to read the "How to post a bug" thread you might find a safe way on how to report an issue and if you follow all steps correctly I can say that we have a good chance finding out what is haunting you. But like this, nothing will ever come out of this as I am STILL not sure WHAT your problem is.
« Last Edit: March 05, 2012, 05:04:00 PM by zico »
The greatest pleasure in life is to do what people say you cannot do.
Uhm... Honey, there's a head in the toilet!

Offline aqqman

  • The worst-case scenario
  • Full Member
  • ***
  • Posts: 168
  • This one's headed for Uranus
    • IceWolf of Descent Rangers
Re: Zico's development blog 3
« Reply #39 on: March 05, 2012, 06:04:40 PM »
There is some misleading visual secret here! Your ship can actually take less than 1 shield unit of damage! so if you bash into a wall you CAN take damage but the shield value will stay the same. That is because the shield is represented in an integer value and rounds up. So after bashing into a wall you get 99.75 shield but the evil HUD shows 100.

Argh you are right, I did not consider such case. It might be what happened to flip, it could be fraction of splash damage or whatever.
Visual inconsistency erm that is what I described somewhere already with smart missing the target and killing the target at the same time, anyway... it doesn't go anywhere...
Descent Rangers
Name: IceWolf
Assignment: Black Squad
Rank: Lt.Commander

Current season stats

Online zico

  • Administrator
  • Hero Member
  • *****
  • Posts: 3140
    • DXX-Rebirth
Re: Zico's development blog 3
« Reply #40 on: March 05, 2012, 06:20:52 PM »
There is some misleading visual secret here! Your ship can actually take less than 1 shield unit of damage! so if you bash into a wall you CAN take damage but the shield value will stay the same. That is because the shield is represented in an integer value and rounds up. So after bashing into a wall you get 99.75 shield but the evil HUD shows 100.

Argh you are right, I did not consider such case. It might be what happened to flip, it could be fraction of splash damage or whatever.
Visual inconsistency erm that is what I described somewhere already with smart missing the target and killing the target at the same time, anyway... it doesn't go anywhere...

And here is the case where you are actually right about something that looks different than it actually is. However what you observe here is something done by a distant player. You see the shot miss but on the persons screen the shot was a full hit. The single discrepancy by this is caused due to the ping of you, the server or the client - or mostly: by all three pings that cause a visual difference between where the actual "point of hit" was and where you visualize the player.

Again, this can happen in *every* game - it's simple lag - as described above. However again this is something completely different than: "I was hit but received no damage". Seems the same but is a totally different behaviour because when you get hit - visually - your game is supposed to compute the damage. Not the one shooting at you and not the server. But you. Your visual is the criteria of wether *you're* hit or not. What others see in that case is not important and can differn depending on lag/delay.
So HERE you are right by saying "what you see is not what happens". Because due to the fact that packets do not trravel light speed it's impossible to 100% accurately simulate the same visual on every screen (not in a game like this - in chess it might be possible). The trick is to keep the delay as small as possible to not see these effects too often. Partially this can be done by programming but the most important part is the ping of the players involved.
The greatest pleasure in life is to do what people say you cannot do.
Uhm... Honey, there's a head in the toilet!

Offline Trent Hawkins

  • Terraformation Pilot
  • Sr. Member
  • ****
  • Posts: 473
  • ▬•• • ••• ▬•▬• • ▬• ▬      ••▬ ▬• •▬• • •▬ •▬••
Re: Zico's development blog 3
« Reply #41 on: March 05, 2012, 06:22:43 PM »
The later is explainable, as hits are client decided combined with the special theory or relativity. Relative time delay between events. For you, my ship is away from the impact point of the smart at the time it happens. For me it happens a bit later than what you see, and at that time, I get hit. So double our relative ping, you get message that I was destroyed. Hence, what you see aqq, is your blobs flying spreading away, like they have no target, and double ping time later, you see my ship destroyed, near the impact point your smart detonated 2 pings ago. With relatively high pings (surmounting to even 0.5 seconds of time delay total for the double ping), this effect can be significant under the right circumstances.

As for the gauss, I can assure that splash damage can play tricks on us, especially on highrate firing weapons like gauss. I remember how with a wrong splash damage settings on darkflamewolf's weapons, they would deal no damage at all.

Of course, to be clear, this doesn't necessarily mean that little buggies do not lurk somewhere. This merely means that the data are insufficient to even speculate where to start to look, if anything is there. So far these observations are harmless in other words.
Live and explore the myriad vacua of space(time)...
Bonds are as bonded as the bonded...


Descent Rangers
Captain of Black Lions squadron

The Stalker 21.126
Zica Laser
Guided Micro Bombs
Microcorp HXS Class C
Gravitron PulseWave
Zica SuperCharger

Offline aqqman

  • The worst-case scenario
  • Full Member
  • ***
  • Posts: 168
  • This one's headed for Uranus
    • IceWolf of Descent Rangers
Re: Zico's development blog 3
« Reply #42 on: March 05, 2012, 08:13:46 PM »
Packets can't travel fast enough - OK, it's not the point. The point is to make the game appear the same on both ends. I see it did hit him and he sees the same thing - then it's ok.
Otherwise I see it missed target_1 and went to target_2. Target_1 dies because it did hit him on his screen but I could overlook this fact or I may think he got hit by my lasers or anything else, I pay attention to my smart balls - and I see as they did hit the target_2 and did no harm to him. Target_2 says - "I didn't see any smart going at me, I saw it killed target_1"

And there we are - mess. Is there a way to create feedback of some kind to inform the shooter where his rocket went to display it properly on his screen?

Those things happened with less than 250 ping, even on both ends its less than 0.5 second, or maybe there is much more (feels like) but if it is then its generated on host alone for whatever reason. I need to do more testing on lan connected PC's...
« Last Edit: March 05, 2012, 08:22:59 PM by aqqman »
Descent Rangers
Name: IceWolf
Assignment: Black Squad
Rank: Lt.Commander

Current season stats

Online zico

  • Administrator
  • Hero Member
  • *****
  • Posts: 3140
    • DXX-Rebirth
Re: Zico's development blog 3
« Reply #43 on: March 05, 2012, 09:15:22 PM »
Of course you can make the game "more synchronized" between all clients. That will happen when all input and all movements will be executed and verified by a server. That of course needs a dedicated server and not to forget:
Soon as your ping exceeds ~200-300 ping (depenpending on the client side movement prediction, hittbox accuracy, etc,) your movement will become sluggish - as you'd freeze for a short time one or two times per second to compensate your movement difference OR (depending on how the syncronization is done) you are just sometimes hit by something you think you've successfully dodged.

So in one case or another you HAVE to deal with disadvantage to compensate the inescapable delay. The more time (and money) programmers spend into this, the less obvious this becomes for players. Right now we have a good average of what we can do with our own resources. I can improve upcon that (which is planned for 0.58) but it will not be perfect. If you exceed 200ms of Ping you will sooner or later notice some of these inaccuracies.

However your example is not entirely correct: if you fire a seeking projectile it will carry the target it's supposed to follow. So even if it misses it's target on your own screen it should *not* randomly go after other targets which differ from player to player. So it either goes to Target 1 and hits or misses - not go to Target 2 when it *locally* misses Target 1. At least this is how this is supposed to happen but I have yet to verify and solidify this part of the code to flesh this out.
« Last Edit: March 05, 2012, 09:18:06 PM by zico »
The greatest pleasure in life is to do what people say you cannot do.
Uhm... Honey, there's a head in the toilet!

Offline aqqman

  • The worst-case scenario
  • Full Member
  • ***
  • Posts: 168
  • This one's headed for Uranus
    • IceWolf of Descent Rangers
Re: Zico's development blog 3
« Reply #44 on: March 06, 2012, 08:03:56 AM »
Quote from: zico
I can improve upcon that (which is planned for 0.58) but it will not be perfect. If you exceed 200ms of Ping you will sooner or later notice some of these inaccuracies.
If you can do it then it would be enough, playing with more than 250 is no joy anyway.

Quote from: zico
However your example is not entirely correct: if you fire a seeking projectile it will carry the target it's supposed to follow. So even if it misses it's target on your own screen it should *not* randomly go after other targets which differ from player to player. So it either goes to Target 1 and hits or misses - not go to Target 2 when it *locally* misses Target 1.
Actually it wasn't just an example but it did happen, the problem is I don't remember who the target_1 was it might have been the host which could be killed with laser and smart simply ignores the host target when someone else is there even far away .(bug reported some time ago).

Another much easier to reproduce I guess would be 'semi missed smart facial', which I guess wont take place in 58. It's when 2 players pass each other and one of them drops the smart. Smart misses on his screen and goes all the way straight to hit the distant wall, target player dies before smart hits that distant wall. I realize that it wont change the outcome but it doesn't look right.
Descent Rangers
Name: IceWolf
Assignment: Black Squad
Rank: Lt.Commander

Current season stats