Welcome to the DFO World Wiki. With many major updates since the release of DFO, many items are missing. Visit Item Database Project to learn more.
Please remember to click "show preview" before saving the page.
Thanks for the updated logo snafuPop!

Estimated Skill Growth Table

Jump to: navigation, search
Revision as of 10 November 2018 at 05:32.
The highlighted comment was edited in this revision. [diff]

Hey Dfoplayer. Would it be okay if we use mathematical estimated expressions like this for certain skill growths? The amount of time and effort spent updating these pages becomes heavily taxing after a while. Also, it's very difficult to manually update each value when every new rework patch changes all the values anyway.

Right now, the only problems with this I see are that the values aren't exactly precise, and it becomes incredibly clunky with certain skills with multiple values like Flash.

    14:58, 3 April 2018

    Yes. I would not mind it.

      17:52, 4 April 2018

      Hey Dfoplayer. Due to table visibility issues, Bah Wikier and I have been discussing on his talk page about changing the skill growth table format on the SkillPage to a SkillAttribute List of expressions.

      Considering User:Everspace's suggestion about omitting non-changing information in tables and the fact that we are now using 'non-changing' mathematical expressions, it may be more beneficial to use a list format.

      If it's okay with you, we will be issuing this as the new makeshift standard for the skill growth section.

        12:17, 24 September 2018

        If you are suggesting to put the new list

        *{{SkillAttribute|Level|n}}
        *{{SkillAttribute|Lv Req|80+2(n-1)}}
        

        in |SkillGrowth= section, then I'm fine with it.

          13:02, 24 September 2018

          Hey Dfoplayer. I just had an idea.

          Out of curiosity, do we have a loop extension installed and would it be possible to construct a skill table from a #while loop extension?

          Here's an example I had in mind using the skill: Quick Punto.png Quick Punto

          {{#vardefine:maxlv | 50 }}
          {|{{SkillTableHeader}}
          !Level
          !Lv Req
          !MP
          !Melee Atk.
          !Lance Tip Atk.
          |-
          {{#vardefine:i| 1 }}{{#while:
          | {{#ifexpr: {{#var:i}} <= {{#var:maxlv}} | true }}
          | <nowiki />
          
          |-
          | <!--Level--> {{#var:i}}
          | <!--Lv Req--> {{#expr: 1+2*({{#var:i}}-1)}}
          | <!--MP--> {{#expr: 6+0.568*({{#var:i}}-1) round 0}}
          | <!--Melee Atk.--> {{#expr: 781+79.273*({{#var:i}}-1) round 0}}% + {{AbsoluteDamage| {{#expr: 1.95+0.198*({{#var:i}}-1) }} | 1 }}
          | <!--Lance Tip Atk.--> {{#expr: 1027+104.273*({{#var:i}}-1) round 0}}% + {{AbsoluteDamage| {{#expr: 2.57+0.261*({{#var:i}}-1) }} | 1 }}
          
          {{#vardefine:i| {{#expr: {{#var:i}} + 1 }} }} <!--Incrementation-->
          }}
          |}
          

          Ideally, this would create a table and output 50 rows for the skill. I'm not that good at MediaWiki coding, but would this type of implementation be possible?

            02:32, 7 November 2018

            I looked into this weeks ago when you asked me the first time, atleast trying to find some way for mediawiki to calculate mathematical formulas. We do not have loops installed. I asked the site owner sometime ago because of your timeline and she replied we need to see if Extension:arrays can be substituted. Shown below, the while loop does not work

            {{#while:

            | true
            | 
            
            • 0

            }}

            However, I did not know we had variables installed, so combining arrays and variables should definitely looked into. It could solve some more problems!

            I'll try to do some work on the weekend...

              07:47, 7 November 2018
              {{#arraydefine:maxrow|1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}}<!--Create an array named "maxrow" and fill it with 30 values-->
              {|{{SkillTableHeader}}
              !Level
              !Lv Req
              !MP
              !Melee Atk.
              !Lance Tip Atk.
              {{#arrayprint:maxrow||@@@@|<!--Each item in array maxrow is now @@@@-->
              {{#vardefine:i|@@@@}}<!-- Move item to an actual variable we can use -->
              {{!}}- {{#ifexpr: {{#var:i}} = 30 | {{MaxSkillRow}} }}
              {{!}} <!--Level--> {{#var:i}}
              {{!}} <!--Lv Req--> {{#expr: 1+2*({{#var:i}}-1)}}
              {{!}} <!--MP--> {{#expr: 6+0.568*({{#var:i}}-1) round 0}}
              {{!}} <!--Melee Atk.--> {{#expr: 781+79.273*({{#var:i}}-1) round 0}}% + {{AbsoluteDamage| {{#expr: 1.95+0.198*({{#var:i}}-1) }} | 1 }}
              {{!}} <!--Lance Tip Atk.--> {{#expr: 1027+104.273*({{#var:i}}-1) round 0}}% + {{AbsoluteDamage| {{#expr: 2.57+0.261*({{#var:i}}-1) }} | 1 }}
              {{!}}-
              }}
              

              The main point to "simulate a loop" is to create an array with integers. Then when you call #arrayprint, it will loop through the whole array and move each item to a specified symbol, which I called "@@@@". To make your code work, I assigned "@@@@" to var 'i' and the formula you had displays.

              Be sure to change the if check on MaxSkillRow.

              We will lose some stuff, like rowspan="10" for common columns. But we can put that outside in the attributes section, or hard code the column in the loop.

              Now that you brought Extension:Variables to my attention, i think I can fix the semantic errors in NPC and dungeon info boxes. Thanks!

              Quick Punto Skill table

              Level Lv Req MP Melee Atk. Lance Tip Atk.
              1 1 6 781% +
              1.95
              max-width:200px 100
              1027% +
              2.57
              max-width:200px 100
              2 3 7 860% +
              2.15
              max-width:200px 100
              1131% +
              2.83
              max-width:200px 100
              3 5 7 940% +
              2.35
              max-width:200px 100
              1236% +
              3.09
              max-width:200px 100
              4 7 8 1019% +
              2.54
              max-width:200px 100
              1340% +
              3.35
              max-width:200px 100
              5 9 8 1098% +
              2.74
              max-width:200px 100
              1444% +
              3.61
              max-width:200px 100
              6 11 9 1177% +
              2.94
              max-width:200px 100
              1548% +
              3.88
              max-width:200px 100
              7 13 9 1257% +
              3.14
              max-width:200px 100
              1653% +
              4.14
              max-width:200px 100
              8 15 10 1336% +
              3.34
              max-width:200px 100
              1757% +
              4.4
              max-width:200px 100
              9 17 11 1415% +
              3.53
              max-width:200px 100
              1861% +
              4.66
              max-width:200px 100
              10 19 11 1494% +
              3.73
              max-width:200px 100
              1965% +
              4.92
              max-width:200px 100
              11 21 12 1574% +
              3.93
              max-width:200px 100
              2070% +
              5.18
              max-width:200px 100
              12 23 12 1653% +
              4.13
              max-width:200px 100
              2174% +
              5.44
              max-width:200px 100
              13 25 13 1732% +
              4.33
              max-width:200px 100
              2278% +
              5.7
              max-width:200px 100
              14 27 13 1812% +
              4.52
              max-width:200px 100
              2383% +
              5.96
              max-width:200px 100
              15 29 14 1891% +
              4.72
              max-width:200px 100
              2487% +
              6.22
              max-width:200px 100
              16 31 15 1970% +
              4.92
              max-width:200px 100
              2591% +
              6.49
              max-width:200px 100
              17 33 15 2049% +
              5.12
              max-width:200px 100
              2695% +
              6.75
              max-width:200px 100
              18 35 16 2129% +
              5.32
              max-width:200px 100
              2800% +
              7.01
              max-width:200px 100
              19 37 16 2208% +
              5.51
              max-width:200px 100
              2904% +
              7.27
              max-width:200px 100
              20 39 17 2287% +
              5.71
              max-width:200px 100
              3008% +
              7.53
              max-width:200px 100
              21 41 17 2366% +
              5.91
              max-width:200px 100
              3112% +
              7.79
              max-width:200px 100
              22 43 18 2446% +
              6.11
              max-width:200px 100
              3217% +
              8.05
              max-width:200px 100
              23 45 18 2525% +
              6.31
              max-width:200px 100
              3321% +
              8.31
              max-width:200px 100
              24 47 19 2604% +
              6.5
              max-width:200px 100
              3425% +
              8.57
              max-width:200px 100
              25 49 20 2684% +
              6.7
              max-width:200px 100
              3530% +
              8.83
              max-width:200px 100
              26 51 20 2763% +
              6.9
              max-width:200px 100
              3634% +
              9.1
              max-width:200px 100
              27 53 21 2842% +
              7.1
              max-width:200px 100
              3738% +
              9.36
              max-width:200px 100
              28 55 21 2921% +
              7.3
              max-width:200px 100
              3842% +
              9.62
              max-width:200px 100
              29 57 22 3001% +
              7.49
              max-width:200px 100
              3947% +
              9.88
              max-width:200px 100
              30 59 22 3080% +
              7.69
              max-width:200px 100
              4051% +
              10.14
              max-width:200px 100
                21:47, 8 November 2018

                I didn't know about the #arrayprint option. I suppose it's a lot safer than having to worry about the consequences of an infinite loop.

                I'll do some experimentation on skills like Core Shield.png Core Shield and Blade Dance.png Blade Dance to test if I can hard code some of the columns into the table.

                  00:53, 9 November 2018

                  I disregarded the if check on your user page for coding rowspans, cause new editors might have a hard time reading the wikicode. But if it's working for you, the table does look much better IMO.

                    07:39, 9 November 2018

                    The tables themselves never bothered me in the first place. To be honest, I actually preferred the tables. The issue was that it was taking too long to manually update each value for every page.

                    Anyway, for consistency reasons, should we extend the table only to its Level cap value, the Master Level value, or the Max Level value?

                      10:54, 9 November 2018

                      "for consistency reasons." I believe we should stop at level cap of character. I haven't played DFO in sometime so I don't know what "master level" is.

                      Assume for a second that max character level is 70. In Seismic Crash look at Female PVE skill table. We have a row lv29, but when you can only achieve lv28. Is this data collected by a TP skill that raises skill levels, or maybe an equipment set bonus? Trying to record all the possibilities of going over level cap character could take sometime. (as i think my summoner can increase some skills by +3)

                      I think people would be okay with the skill table stopping at level cap, as anything above that should be considered a bonus...

                        15:21, 9 November 2018

                        Alright, sounds good. I'll get right to updating the pages as soon as I finish a reference guide for the new skill table format. You can view it here on my User page. Right now, I'm working on special cases that involve #ifexpr: statements or uses of rowspan or colspan for users who are interested in coding or table formatting.

                        Anyway, the terms "Master Level" and "Max Level" are relatively new.

                        • Master Level refers to a soft cap on skill levels. It controls the maximum amount of levels that can be obtained while adding points through the Skill Tree Window. Additional skill points can be added via items or effects, but cannot exceed the Max Level.
                        • Max Level refers to a hard cap on skill levels.
                          15:43, 9 November 2018

                          Oh I see. Lets go with "Master Level" then.

                          You have a very in depth reference guide on your generic formatting section.

                            16:41, 9 November 2018

                            Okay, I just re-updated the page Flash.png Flash. How does it look?

                              19:01, 9 November 2018

                              Looks pretty small. I think just one small works. Why are we displaying up to lv50? Can we even reach that high?

                                20:24, 9 November 2018

                                Lv 50 is the skill's "Master Level". It's listed as one of the attributes on the page. Usually skills up to Level 45 have a Master Level of 50, unless they are special buff/passive skills. 1st & 2nd Awakening skills have a Master Level of 30. For skills like Apocalypse (Male Crusader).png Apocalypse and Crux of Victoria.png Crux of Victoria, it might even be more beneficial to list up to the Master Level since most players intend to stack levels on the skill for special bonuses. I've seen players with these two skills up to Lv 27 for Beast Dungeon, when the normal obtainable amount is Lv 9.

                                Normally for Flash, we can only reach up to Lv28 since the level cap is 90 at the moment. Should I reduce the size of the array?

                                  22:21, 9 November 2018