User Tag List

Results 1 to 10 of 11

Thread: Imzogelmo's Propsal for FF1 item data template

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,961
    Level
    33
    vBActivity - Bars
    Lv. Percent
    26.45%
    Oh, right. 'derived'. I wasn't sure what you meant.

    D = [S/2] for Fi/Kn/Wm/Wz/Th/Ni/Rm/Rz
    = [(S+1)/2] for Bm/Bz/(armed Bb/Ma)*
    = LV x 2 for unarmed Bb/Ma

    *BUG: Immedately after a level up, D for an armed Bb/Ma is instead [S/2]+1.
    this is an actual effect and does not correct itself until you visit
    the weapons subscreen. It even persists if you save and reload the
    game

    H% = (initial value at LV 1) + (3 x (LV-1)) for Fi/Kn/Bb/Ma
    = (initial value at LV 1) + (2 x (LV-1)) for Th/Ni/Rm/Rz
    = (initial value at LV 1) + (LV - 1) for Wm/Wz/Bm/Bz


    A = 0 for all classes, except...
    = LV for a bare Bb/Ma*

    *BUG: Immediately after a level up, A for an armored Bb/Ma is instead equal
    to LV, regardless of whatever armor is being worn. This is an actual
    effect and does not correct itself until you visit the armor
    subscreen. It even persists if you save and reload the game. This
    bug does not affect special abilities granted by the armor you have
    on, such as resistances to certain elements

    E% = G + 48% for all classes
    So basically characters in ff1 have 0 (except 48 evade) in these (all) stats the whole game, which are only increased temporarily by equipment and buffs. Wouldn't we just handle it in the exact same way then?

    ...for instance the get methods for evade could be:
    Code:
    int get_base_evade() {
      return stats[EVADE] + agility; //stats.evade could always be 48 here.
    }
    
    int get_evade() {
      int mod1 = equipment.modifiers.stat[EVADE];
      int mod2 = buffs.modifiers.stat[EVADE];
      int e =  base_evade + mod1 + mod2;
      return e;
    }
    (side thought) ..dereferencing things can get more verbose than I had thought.
    Last edited by Gleeok; 01-14-2013 at 06:51 AM.
    This post contains the official Gleeok seal of approval. Look for these and other posts in an area near you.

  2. #2
    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,463
    Level
    12
    vBActivity - Bars
    Lv. Percent
    95.27%
    Well, D is "damage" which is the base for attacks. It's not 0, it's Str/2 for all but Bb/Ma; and for the Bb/Ma it depends on if he's armed or not.
    H% (hit percent) actually has an initial value whcih depends on class, and each class uses one of 3 formulas (the only thing the formulas need are the level though)
    A "absorb" is 0 unless talking about an unarmed Bb/Ma; in which case it is his level.
    E% is just agility plus 48.

    Of course all of this is before equipment is applied.


    That reminds me... level up data. We'll need some type of standard 'chunk' of data for that as well. We'll need an array of these chunks for each class (although they could use the same one, if desired), one entry per level.

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