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!

Thread history

Fragment of a discussion from User talk:Dfoplayer
Viewing a history listing
Jump to: navigation, search
Time User Activity Comment
No results

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.

11: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.

12: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?

01: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...

06: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
20: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.

23:53, 8 November 2018