User Tag List

Page 1 of 2 1 2 LastLast
Results 1 to 10 of 24

Thread: Attributes, Stats, & Modifiers, oh my!

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    The Time-Loop Continues ZC Developer
    Gleeok's Avatar
    Join Date
    Apr 2007
    Posts
    4,826
    Mentioned
    259 Post(s)
    Tagged
    10 Thread(s)
    vBActivity - Stats
    Points
    12,962
    Level
    33
    vBActivity - Bars
    Lv. Percent
    26.6%
    OK, check it.

    So far items, characters, and monsters are stored kinda like this:

    Code:
        <Monster name="Goblin" description="" script="Goblin">
            <Attributes>8,6,6,1,1,80,0,0,4,4,2,6,4,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0</Attributes>
            <Elements>0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0</Elements>
            <Status>0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0</Status>
            <Flags attrib="0" elements="0" status="0" family="0" class="0" misc="0"/>
            <ItemDropSet count="0" multiple="false"/>
        </Monster>
    Obviously items and players don't have a drop set, and will need some spell/skill data also (not started on that yet). Other than those, am I missing anything? ...requests?
    This post contains the official Gleeok seal of approval. Look for these and other posts in an area near you.

  2. #2
    Wizrobe Flash Man's Avatar
    Join Date
    Aug 2000
    Location
    N/A
    Posts
    2,491
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    vBActivity - Stats
    Points
    1,504
    Level
    13
    vBActivity - Bars
    Lv. Percent
    10.77%
    It might make more sense to store the information using more XML elements, instead of implying a particular order with a comma delimited list. It will increase the size of the document, however it will make the format extensible by allowing more complex storage as necessary for future development.

    Code:
        <Monster name="Goblin" description="" script="Goblin">
            <Attributes>
                <Attribute type="hp">8</Attribute>
                <Attribute type="mp">6</Attribute>
                <Attribute type="attack">1</Attribute>
                <!-- More attributes. -->
            </Attributes>
            <Elements>
                <Element type="fire">0</Element>
                <!-- More elements. -->
            </Elements>
    
            <!-- ... -->
        </Monster>

  3. #3
    The Time-Loop Continues ZC Developer
    Gleeok's Avatar
    Join Date
    Apr 2007
    Posts
    4,826
    Mentioned
    259 Post(s)
    Tagged
    10 Thread(s)
    vBActivity - Stats
    Points
    12,962
    Level
    33
    vBActivity - Bars
    Lv. Percent
    26.6%
    What I don't like about that is that it makes each element over 100 lines long. Multiply that by 128 and we've already got about 13,000 lines instead of a few hundred... This way should allow 3rd party interaction with the files much easier, plus it's a breeze to parse right now now.

    There should be a key available which would give the string at any id though for sure, you are right about that. Something like:

    Code:
    <AttribStr>
      <Index id = "0" name = "HP"/>
      <Index id = "1" name = "EXP"/>
    </AttribStr>

    Also, last question (I think)

    Spells/ Skills / Monster Skills :
    -Should these use the same stats/atrributes as items, and should these be condensed into one list?

    ..If you make a blue mage class I guess it would be dumb to have 2 "white wind" spells. :\ Does anyone know how, say, FFIV or VI do these internally?
    This post contains the official Gleeok seal of approval. Look for these and other posts in an area near you.

  4. #4
    Octorok Glenn the Great's Avatar
    Join Date
    Oct 2000
    Location
    Bible Belt, USA
    Posts
    338
    Mentioned
    13 Post(s)
    Tagged
    3 Thread(s)
    vBActivity - Stats
    Points
    2,420
    Level
    16
    vBActivity - Bars
    Lv. Percent
    15%
    Quote Originally Posted by Gleeok View Post
    Spells/ Skills / Monster Skills :
    -Should these use the same stats/atrributes as items, and should these be condensed into one list?

    ..If you make a blue mage class I guess it would be dumb to have 2 "white wind" spells. :\ Does anyone know how, say, FFIV or VI do these internally?
    I think what the classic Final Fantasy games have is one big list of "battle effects".
    This list comprises every possible action that can happen in battle, regardless of whether it is a magic spell from any school, a monster ability that players may or may not have access to, a skill, or an item.
    In this manner, the code that executes these effects can be generalized.

    The different schools of magic/skills/etc. are just another system that you navigate through for a battle effect to be chosen and handed off to the system that applies them.
    If an effect should behave differently when used by mobs vs. by players, you define the effect twice with the same spell name but different ID numbers.

    Shattered Earth, coming soon!

    Mappers needed. If you want to help, send a PM to MasterSwordUltima.

  5. #5
    Wizrobe Flash Man's Avatar
    Join Date
    Aug 2000
    Location
    N/A
    Posts
    2,491
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    vBActivity - Stats
    Points
    1,504
    Level
    13
    vBActivity - Bars
    Lv. Percent
    10.77%
    Quote Originally Posted by Gleeok View Post
    What I don't like about that is that it makes each element over 100 lines long. Multiply that by 128 and we've already got about 13,000 lines instead of a few hundred... This way should allow 3rd party interaction with the files much easier, plus it's a breeze to parse right now now.
    I think that we would want to direct people to using the editor provided with the package. In addition providing a richer schema would enable those who wish to tinker with the content to better understand the format; XML is verbose. If size is the concern, then the content can always be reduced using a form of compression.

    Quote Originally Posted by Glenn the Great View Post
    I think what the classic Final Fantasy games have is one big list of "battle effects".
    That is exactly how I envisioned it; they are just repetitive effects that have slightly different calculations, visual displays and sound effects.

  6. #6
    Octorok Glenn the Great's Avatar
    Join Date
    Oct 2000
    Location
    Bible Belt, USA
    Posts
    338
    Mentioned
    13 Post(s)
    Tagged
    3 Thread(s)
    vBActivity - Stats
    Points
    2,420
    Level
    16
    vBActivity - Bars
    Lv. Percent
    15%
    Quote Originally Posted by Flash Man View Post
    ... XML is verbose. If size is the concern, then the content can always be reduced using a form of compression.
    A lot of people are dumping XML in favor of JSON. If you guys do decide to use XML, you might want to stop and consider it.
    It might be a little less human readable (especially if you're not used to seeing it), but it's just as flexible if not more so than XML, while using less characters to express the same data. Supposedly there is no conceivable data structure that can't be expressed in JSON.

    Shattered Earth, coming soon!

    Mappers needed. If you want to help, send a PM to MasterSwordUltima.

  7. #7
    Gel
    Join Date
    Oct 2012
    Posts
    7
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    vBActivity - Stats
    Points
    437
    Level
    7
    vBActivity - Bars
    Lv. Percent
    55.71%
    Quote Originally Posted by Glenn the Great View Post
    A lot of people are dumping XML in favor of JSON. If you guys do decide to use XML, you might want to stop and consider it.
    It might be a little less human readable (especially if you're not used to seeing it), but it's just as flexible if not more so than XML, while using less characters to express the same data. Supposedly there is no conceivable data structure that can't be expressed in JSON.
    JSON (or possibly even YAML) is definitely a better way to go than XML. XML is ridiculously verbose; JSON is actually easier to read thanks to the removal of all the clutter the opening/closing tags bring with XML. You should go with what's most human-readable. Sure, XML would get you standardized validation, but if you're going to do things like smash tons of int values into a single text node like your example, you're losing a fair amount of that.

    File size is pretty irrelevant; JSON/YAML has the benefit of being smaller, but no matter what the format it's going to be ultimately compressed anyway, and any text format is going to compress more than well enough.

  8. #8
    Floormaster Imzogelmo's Avatar
    Join Date
    Sep 2005
    Location
    Earth, currently
    Age
    45
    Posts
    387
    Mentioned
    7 Post(s)
    Tagged
    3 Thread(s)
    vBActivity - Stats
    Points
    1,465
    Level
    12
    vBActivity - Bars
    Lv. Percent
    95.84%
    Quote Originally Posted by Gleeok View Post

    ..If you make a blue mage class I guess it would be dumb to have 2 "white wind" spells. :\ Does anyone know how, say, FFIV or VI do these internally?
    Yes, I have complete and exacting info for how FFVI's data is arranged. What do you need to know exactly?
    All spells in the game are one table (including sub-ranges for regular magic spells, esper summons, blue magic, and enemy-only spells).

    This is distinct from the list of items (a couple of items are implemented with spells, i.e. they have a unique spell that is fired off when the item is used, but that is really an exception and not the rule).

  9. #9
    The Time-Loop Continues ZC Developer
    Gleeok's Avatar
    Join Date
    Apr 2007
    Posts
    4,826
    Mentioned
    259 Post(s)
    Tagged
    10 Thread(s)
    vBActivity - Stats
    Points
    12,962
    Level
    33
    vBActivity - Bars
    Lv. Percent
    26.6%
    Quote Originally Posted by Imzogelmo View Post
    Yes, I have complete and exacting info for how FFVI's data is arranged. What do you need to know exactly?
    All spells in the game are one table (including sub-ranges for regular magic spells, esper summons, blue magic, and enemy-only spells).

    This is distinct from the list of items (a couple of items are implemented with spells, i.e. they have a unique spell that is fired off when the item is used, but that is really an exception and not the rule).
    Great! Thanks!

    Do you know if items contain the same number of bytes regardless of type? (like potion : armor)
    This post contains the official Gleeok seal of approval. Look for these and other posts in an area near you.

  10. #10
    Octorok Glenn the Great's Avatar
    Join Date
    Oct 2000
    Location
    Bible Belt, USA
    Posts
    338
    Mentioned
    13 Post(s)
    Tagged
    3 Thread(s)
    vBActivity - Stats
    Points
    2,420
    Level
    16
    vBActivity - Bars
    Lv. Percent
    15%
    Quote Originally Posted by Gleeok View Post
    Do you know if items contain the same number of bytes regardless of type?
    Let me direct your attention to this fine page: http://www.tales-cless.org/docs/ff6hack.htm#part4

    According to this, every item is stored with 30 bytes, though not every item uses all 30 of them.

    Shattered Earth, coming soon!

    Mappers needed. If you want to help, send a PM to MasterSwordUltima.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
About us
Armageddon Games is a game development group founded in 1997. We are extremely passionate about our work and our inspirations are mostly drawn from games of the 8-bit and 16-bit era.
Social