Bug BP-devs cant tell time! -Or calculate for that matter!

Discussion in 'General Archive' started by Theusen, Nov 9, 2015.

Dear forum reader,

if you’d like to actively participate on the forum by joining discussions or starting your own threads or topics, please log into the game first. If you do not have a game account, you will need to register for one. We look forward to your next visit! CLICK HERE
Thread Status:
Not open for further replies.
  1. Theusen

    Theusen Padavan

    Right... After being tipped off by my friend Snede, I just tested out the following:
    I set my char to 1,00 attackspeed, then I put on green ess (the ess was just so I could count the shots fired precisely) and let my char (mage) autoshoot magic missiles for 1 minute excactly!

    My result: 95 shots fired in 60 secconds!!!

    Now... I AM aware of speedbreaks (which BTW is a VERY bad way to program a game IMHO, I am actually at a point in the game now, where even if I get 50% more speed, my char will in fact not inflict more damage), Im also aware, that when then game shows I have 1,00 attackspeed, that number isnt completely excact...

    The same bad math occours, when U put blue ess! The blue essense is supposed to boost my total damage by 100%! But in reality BP is also 50%+ off here!

    -But even all that does NOT account for the game being more than 50% WRONG!

    Considering all the REALLY bad calculations this game makes, its simply impossible to compare characters strenght!
    It also makes it VERY hard, actually impossible to optimize your character...

    I know that BP is planning to insert some kind of DPImeasurer in the next release... But from what I have seen so far on TS, that calculator is just as big a joke as the compare-item-tool (dont even get me started on how BAD that tool is... Yeah I know! -U are also going to improve that in the next release, but I am not holding my breath for that 1)

    So once again... Like I have done MANY times during theese more than 4 years I have been playing this game, I propose this:

    Make us some attackdummies, we can test out the power on our chars on! Its not that hard to implement!

    This way, when we get new loot, we can actually compare it to our old items and see if we get more powerfull with the new item! -As it is now, there really is no way of telling what boost a char and what nerfs it! The charsheet certainly dont work!
     
    Last edited: Nov 9, 2015
  2. trakilaki

    trakilaki Living Forum Legend

    I completely agree with you ... that "tool" is most ridiculous stupid feature that the devs have done it so far ...
    They are spending their time to introduce such features ... that no one needs ... and neglecting the features that need to be corrected.
     
  3. misterbean

    misterbean Padavan

    yes, no tool can tell you what you actually need for your build, playstyle, specific situation, pvp or pve etc etc.
    And about the math. It's bad enough that it's not accurate, it's even worse that they don't care to inform us about any of that. We have to figure it out on our own.
    And why do you say that even if you increase your speed by 50%, you still don't do more dmg? can you give an example?

    If you have 2k dmg with 2.01, I think you will do more dmg with 2k dmg and 3.01 speed
     
    Theusen likes this.
  4. Theusen

    Theusen Padavan

    First: Explanation of the word speedbreak; how fast Ur char in reality is manipulated in terms of movement, attacks, jumps etc...
    I.E. your char does not shoot, when U ask it to shoot! First Ur char has to do the animation for shooting, THEN the shot actually get fired! and then theres an animation after the shot... BP-devs has put limits (speedbreaks) on how fast a char can do those animations, and all animations has to be done before next shot is fired...
    Yeah I know it sounds complicated, but heres what that means: Imagine 2 mages stading side by side, shooting magic missiles on a target!
    Mage#1 has 2,74 APS
    Mage#2 has 3,00 APS
    Result: Both mages will now shoot with EXCACTLY THE SAME SPEED!
    (pls note speedbreaks are dependant on animations, so different attacks will result in different speedbreaks because its different animations)

    Yep! I have ofc made out what speedbreaks works for mages... They are 2,73 and the next is 3,33! (Again my friend Snede has made a list of all the speedbreaks for mages)

    This actually means, that as I am currently 2,74 attacks pr sec (APS), that even if I get 0,50 APS more, I do NOT reach the next speedbreak, and thus my char would still do the same dmg with 3,24 APS as it is doing now with 2,74 APS!

    I can explain the mechanics more in depth if U wish, but since my real topic is the mindnumbingly bad calcs BP-dev do throughout the game, I thought that a lotta numbers trown in peoples faces would just clutter up the tread....
     
    Last edited: Nov 9, 2015
    Celticrain1982 and misterbean like this.
  5. pydragons

    pydragons Padavan

    This is getting so intense. BP, I know you dont have a single unit test, but if you don't start writing some, these guys will hack you soon...oh wait they already started, oh wait it's too late for adopting unit testing :D

    All these architecture is shaky.
    Either BP will cry or the milking done it's job for all these years.
     
  6. Snede

    Snede Forum Apprentice

    That's right. I made two tests
    • 1 minut at 1,00 attacks per sec: 94 shots fired (ess goes from 8294 to 8200)


    • 1 minut at 2,73 attacks per sec: 250 shots fired (ess goes from 8138 to 7888)
    I'm well aware of the speed steps, and the 2,73 is above the 2,73 threshold.

    I'm also dissapointed that the 2,73 attack speed is only 2,66 times faster than 1,0.
    There is missing like 7 shots!!

    The numbers are COMPLETELY off, which is quite worrying. What about the percentages given for critical hit - are they also completely off?
    The whole premise of character strength is absurd if we cannot trust the numbers in the character window.

    *EDIT:
    The speed steps around 1,00 are 0,968 and 1,034. So at 1,00 the attack speed would be 0,968. This number looks alot like the number of shots being fired (94ish). However the 250 is way off 2,73*100=273.
     
    Last edited: Nov 9, 2015
  7. misterbean

    misterbean Padavan

    I see what you mean now, but I don't get why bugpoint would set the breakpoints so far ahead of each other. From 2.73 to 3.33 pffffffff
     
  8. Novadude

    Novadude Commander of the Forum

    Can you run it at 2.74 or slightly higher, and see if there is a jump? It's possible the breakpoints have changed
     
  9. rpfo

    rpfo Padavan

    Guys this is a game , looks like ur taking it away too serious :). It may be something wrong in DSO codes? - Yes , ofc there is!
    But all of you forgot this is a server based game. The "rules" arent on ur computer / desktop. Between every act ur char does and what server receive and give a return there is a delay , that in general ,u can, in a bad way, check by pinging a DSO server. Everywhere you see a client/server base there is delays. There is a lot of things between our connection till DSO servers and vice-versa, that i suggest to check before saying things like this. Even a graphic card may show u different than what the server is really understanding u are doing.

    Also , if its wrong for one class, its wrong for the others! So its not wrong ! lol

    Lets just have fun! ;)
     
  10. trakilaki

    trakilaki Living Forum Legend

    That is not true ... the rules are executed by the client.
    The server is playing a role of "judge" ... and checking "occasionally" if someone has changed the rules.
    That is why you can modify the attack speed.
     
  11. Theusen

    Theusen Padavan

    Guys... U are getting off topic here in a way...
    The point is that the numbers in the game is WRONG!
    -Hence the charsheet is WRONG!
    -Hence we cant find out if a new item is better or not for our char!
    -Hence its impossible to optimize Ur char!
    And aside the fact that Im tired of using the word "hence";), Im REALLY both tired and frustrated over the fact, that a game like DSO throws so many numbers in Ur face, but cant even do simple math themselves:mad:...

    We all know that in order to keep this game running, we need to support it finacially! Or to put it in BP-language: We need 2 PAY 2 PLAY:rolleyes:!
    What I really want to know is why I would get new gloves, open slots on them with ander and buy gems for them etc, when it does NOTHING to perform my chars performance:confused:?

    To recap; BP-devs: At least allow us to test out our new items and sets on attackdummies:cool:! We dont need bad, useless, annoying and ineffective comparetools or incorrect charnumbers:p!
    Ask Urselves: "How can this implementation be bad for us:eek:?"
    Answer: "It cant! When people know for certain that a new item is better, they will pay to open slots etc;)... as it is now people will rather keep what they have than to go out on a limb!"
     
  12. misterbean

    misterbean Padavan

    Attack dummies and also dummies that attack you would be nice, so you can test your shield or armor too. It would be nice to set the dummies dmg, defense and make it attack you with fireballs, lightning strike, precision etc.
    Sure we can do that with random people we find in the arena, but it's not consistent. I want to be able to test against the same dummies with the same stats I set it to have so I can see my increase in dmg / defense over time.

    One of my dummies so far has been sigris hard. I can see how much dmg I do to him and he always has the same stats and I can also see how much dmg he does to me, with different builds and settings.

    But I can't change his stats and attacks and he isn't even level 50.
    I want to have a dummy that can be both monster or like a real player, who uses a shield.
     
  13. rpfo

    rpfo Padavan

    What i was saying is: there is my computer , a server , your computer. When i hit u, we are both alocated in the server ! When i start a hit on u , a msg from my CLIENT goes to the server , the SERVER accepts the hit , reduces ur hp acordingly to my dmg, send a msg to MY INSTANCE that ur lower on dmg and also to YOUR INSTANCE. As i said is a client /based game. The SERVER defines what happens. If the SERVER does not communicate "perfectly " with the client , for sure everything in the game can fail, depending on the failed msg sent/received. The client may work independently , but if the server does not get the correct communication , it will fail! I am an DB administrator and I know what im talking about!
     
  14. _Baragain_

    _Baragain_ Living Forum Legend

    They don't actually set the speed breaks by putting a number in a table or chart. It is related to the number of frames in an animation. Basically it is a division problem with desecrate steps due to rounding errors associated with the frames per attack. If you have a 20 fame attack the speed breaks are related to 1/20 increments of the inverse of the attack speed, and if you have a 15 frame attack, it is related to 1/15 increments of the inverse of the attack speed. You can read more about it in Snede's post that I linked above.


    P.S. This is my 2000th post. It makes me happy that I'm discussing math with this milestone post. :D
     
    Knifefromjack and misterbean like this.
  15. Snede

    Snede Forum Apprentice

    No you don't. You have no idea on the protocols, caching or inner working of Drakensang. All you know is that the client talks to the server. (Unless you are a developer on the team, of course).

    The speedstep problem is severe enough. The fact that I can spend almost 2 million anders on gems (4xroyal spphires) and not have ANY impact on my damage per second (DPI) is outrages in it self (going from 2,74 to 3,24 in speed will not boost anything at all).

    But when the basic premises that a speed which 2,81 times faster (going from speed steps 0,968 to 2,727) only yields a speed which is 2,66 times faster. That's really worrying. Tt's like doubling you basedamage, but you're only getting 1,89 times more damage.

    Or that you should have 50% critical hits, but you only 45 % in reality.

    If this is the case, how on earth can you compare for instance a ring with 1000 crit to another ring with 100 dmg.
    It's impossible if we cannot trust the math!!
     
  16. littlemichel

    littlemichel Active Author

    what you say, it's different thing , you talk about latency but in this case ,even we have same latency with 2 different attack speed ( like that e.g , 2,74 and 3,24 ) but still in same bracket of attack speedbreak point , you will get same output. just like it that e.g 2.74 with 3,24 has same output at least we go up again to next bracket. so latency no issue here.
     
  17. sebastian_fl

    sebastian_fl Count Count

    just in case you are curious how those steps are calculated, in addition to what was said in the previous attack speed breakpoints thread, the formula is quite simple
    for the AF15 skills the breakpoints are
    (15/15+15/14)/2
    (15/14+15/13)/2
    (15/13+15/12)/2
    (15/12+15/11)/2
    (15/11+15/10)/2
    (15/10+15/9)/2
    (15/9+15/8)/2
    (15/8+15/7)/2

    etc. same thing for the af20 skills. Things are a little bit more complicated with the very fast speeds, after 2.73. and the max possible speed is 4.00.

    Actually if you are developer, not DSO developer, just some smart dev guy, you will know much more.

    You will know that the protocol is of course UDP. you will know they use QT framework which is easier to hack comparing to pure c++. you will know they use client-side prediction to compensate latency as every other game does, and that means client is FAT so has all the information on the physics of the game, and the breakpoints are just a matter of frames divided by frames and you couldt really create something smarter than that) and of course as a Dev you will know much much more.

    I'm not saying he is right of course)

    bad or not, it is the only way possible) unless speed in the game is so small that 1 shot with the lowest speed takes 50 seconds, so there are enough frames to make the animation faster and faster with very small steps)
     
    Last edited: Nov 10, 2015
  18. rpfo

    rpfo Padavan

    lol , sry Im not so smart. Im sure u have all the tools to calculate now and so ill just watch ur smart thread!
     
  19. sebastian_fl

    sebastian_fl Count Count

    not a big deal. you just made wrong assumption, the very basic assumption of yours that client awaits for server to do something. It was like that in Doom and Quake 1 before the QuakeWorld update release. That changed gaming forever by introduction of latency compensation with fat predictive clients and autocratic server.
    As an IT guy, I would recommend you to study one very interesting article on the game networking. google 'what every programmer needs to know about the game networking'

    so if you go through it, you will understand that there is 'no' latency in the network games anymore, they are compensated since the QuakeWorld lots of years ago. Client is trying to predict what would happen on the server if server was able to receive message from the client the same moment (0ms latency). So client starts the action immediately (almost, lets skip the preamble of the action), notifies server about the action, and server also performs that action with no delay (server starts it from the later moment so they are in sync), notifies other clients and they start the same action, but also with some minor shift. If other client received an action few frames later, he will just skip the first frames of the action to be in sync. even if there are any packets lost, does not matter. UDP allows that, and all the parties will just get into account latest information. so treat the game as there is zero latency.

    that also means client knows everything. you could theoretically change the speed on the client, but the server will roll that back, and that would be messing only with your local client. other users will see no difference. what your client does is only prediction.

    thats why we sometime have a collision - two players trying to jump onto the same spot. whoever does that later, will be moved back to the spot before the action after the ongoing sync with the server is complete. it happens because your client is unable to predict actions of other client, and also mobs whose actions were affected by other clients, such as an aggro change.
     
    VMmage and Snede like this.
  20. Snede

    Snede Forum Apprentice

    According to the above formula, there should be speedstep at 2,75 (15/6+15/5)/2.
    However the speedstep is without question below 2,74 and most likely between 2,72 and 2,73.
    This is obvious to the eye (and ears) if you try to make builds around those two speeds.

    All of that doesn't really change anything (been a dev for 10+ years and an architect about the same albeit not in gaming through).
     
    Last edited: Nov 10, 2015
    sebastian_fl likes this.
Thread Status:
Not open for further replies.