Slowdive's Little Daily Blog

Discuss anything in general about the IceBlink Engine + Toolset project (or anything else) here.

Re: Slowdive's Little Daily Blog

Postby slowdive » Mon Jul 02, 2018 2:43 pm

Started building a test module from scratch to test the toolset and the engine. I also added a zip and unzip feature to the splash screen so that builders can more easily share their module folders and even pass the module back and forth between devices more easily (I'm building the test module on my iPad when at home and on my phone when on the go). I think I will try and have an alpha build out in a couple of weeks for those who may want to try building a test module as well (think early IB days of Raventhal, Hearkenwold, and Red Carnival only maybe simpler and smaller for testing purposes).
User avatar
slowdive
Site Admin
Site Admin
 
Posts: 3106
Joined: Wed Nov 21, 2012 11:58 pm

Re: Slowdive's Little Daily Blog

Postby youngneil1 » Mon Jul 02, 2018 2:50 pm

Trying to build a mini-module using the alpha version will be great fun, looking forward to it very much :) .
User avatar
youngneil1
Backer
Backer
 
Posts: 4877
Joined: Sat Dec 08, 2012 7:51 am

Re: Slowdive's Little Daily Blog

Postby slowdive » Tue Jul 03, 2018 3:27 pm

I'm going to work on a quick tool to convert old modules to IBbasic. There will definitely be some manual work involved since areas are a little different and to also try and use some 3d view areas in those old modules. Any suggestions on which one to do first? I'll use this converted module for testing the toolset and engine.
User avatar
slowdive
Site Admin
Site Admin
 
Posts: 3106
Joined: Wed Nov 21, 2012 11:58 pm

Re: Slowdive's Little Daily Blog

Postby youngneil1 » Tue Jul 03, 2018 5:14 pm

It's been a long time since I played The Raventhal! So maybe that one :) ?
User avatar
youngneil1
Backer
Backer
 
Posts: 4877
Joined: Sat Dec 08, 2012 7:51 am

Re: Slowdive's Little Daily Blog

Postby slowdive » Wed Jul 04, 2018 5:57 am

I added the code to the old IBmini toolset for importing old IB modules and then exporting to IBbasic format. I was able to export The Raventhal to IBbasic and will need to spend some time adjusting the areas and encounters to the IBbasic system.
User avatar
slowdive
Site Admin
Site Admin
 
Posts: 3106
Joined: Wed Nov 21, 2012 11:58 pm

Re: Slowdive's Little Daily Blog

Postby youngneil1 » Wed Jul 04, 2018 1:10 pm

Sounds like a great, solid foundation to work from. This import functionality is very helpful indeed.
User avatar
youngneil1
Backer
Backer
 
Posts: 4877
Joined: Sat Dec 08, 2012 7:51 am

Re: Slowdive's Little Daily Blog

Postby slowdive » Thu Jul 05, 2018 3:38 pm

Played around with the import functionality a bit to get as much of The Raventhal to come over automatically. It worked out very well. It is mostly up and running already, I just need to implement a data file override or append/replace for custom races, classes, spells, traits, effects, etc. I will still have the winforms version of the toolset for those wanting to create more custom settings.
User avatar
slowdive
Site Admin
Site Admin
 
Posts: 3106
Joined: Wed Nov 21, 2012 11:58 pm

Re: Slowdive's Little Daily Blog

Postby slowdive » Fri Jul 06, 2018 2:27 pm

Did more work on setting up the engine to work better with custom modules like The Raventhal. Mostly with the data file being appended. It is slow work and not too exciting, but the end result will be fun with The Raventhal on my iPad :D
Poll: which areas should I convert to 3d view?
User avatar
slowdive
Site Admin
Site Admin
 
Posts: 3106
Joined: Wed Nov 21, 2012 11:58 pm

Re: Slowdive's Little Daily Blog

Postby youngneil1 » Fri Jul 06, 2018 3:13 pm

I dont remember indoor/outdoor ratio from the Raventhal too well, but maybe all outdoors 2d and indoors 3d? Then again 3d outdoors with time of day changes would be fun to see in action, too, mmmmmhhh...
User avatar
youngneil1
Backer
Backer
 
Posts: 4877
Joined: Sat Dec 08, 2012 7:51 am

Re: Slowdive's Little Daily Blog

Postby slowdive » Fri Jul 06, 2018 8:25 pm

Was able to get custom data file appended to the default in game. So you just have a data file in your module's folder called "data.json" that only contains the data you want to append to the default data. The engine then adds all the custom data to the game when the module is loaded.

Here is my party:
IceBlink 2 7_6_2018 1_19_28 PM.png
IceBlink 2 7_6_2018 1_19_28 PM.png (171.9 KiB) Viewed 1230 times

IceBlink 2 7_6_2018 1_24_27 PM.png
IceBlink 2 7_6_2018 1_24_27 PM.png (42.74 KiB) Viewed 1230 times


Here is the "data.json" for The Raventhal
Code: Select all
{
  "dataPlayerClassList": [
    {
      "name": "Claw Fighter",
      "tag": "clawFighter",
      "UsableByPlayer": false,
      "description": "Not meant for Players, only for NPCs.",
      "startingHP": 12,
      "startingSP": 7,
      "modifierFromSPRelevantAttribute": "intelligence",
      "hpPerLevelUp": 10,
      "spPerLevelUp": 7,
      "hpRegenTimeNeeded": 0,
      "spRegenTimeNeeded": 0,
      "spellLabelSingular": "Spell",
      "spellLabelPlural": "Spells",
      "baseFortitudeAtLevel": [
        0,
        2,
        3,
        3,
        4,
        4,
        5,
        5,
        6
      ],
      "baseWillAtLevel": [
        0,
        0,
        0,
        1,
        1,
        1,
        2,
        2,
        2
      ],
      "baseReflexAtLevel": [
        0,
        0,
        0,
        1,
        1,
        1,
        2,
        2,
        2
      ],
      "babTable": [
        0,
        1,
        2,
        3,
        4,
        5,
        6,
        7,
        8,
        9
      ],
      "xpTable": [
        0,
        200,
        400,
        800,
        1600,
        3200,
        6500,
        12500,
        25000,
        50000
      ],
      "spellsToLearnAtLevelTable": [
        0,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1
      ],
      "traitsToLearnAtLevelTable": [
        0,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1
      ],
      "itemsAllowed": [
        {
          "resref": "campingKit",
          "tag": "campingKit_10815",
          "name": "Camping Kit",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "healingPotion",
          "tag": "healingPotion_10816",
          "name": "Healing Potion",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "healingPotionExtra",
          "tag": "healingPotionExtra_10817",
          "name": "Extra Healing Potion",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "spPotion",
          "tag": "spPotion_10818",
          "name": "Spell Points Potion",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "silvc1",
          "tag": "silvc1_10819",
          "name": "Silver Claws",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "goldenClaws",
          "tag": "goldenClaws_10820",
          "name": "Golden Claws",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "diamondClaws",
          "tag": "diamondClaws_10821",
          "name": "Diamond Claws",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "stoneArmour",
          "tag": "stoneArmour_10822",
          "name": "Stone Armour",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "lavaArmour",
          "tag": "lavaArmour_10823",
          "name": "Lava Armour",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        }
      ],
      "traitsAllowed": [
        {
          "name": "Cleave",
          "tag": "cleave",
          "atWhatLevelIsAvailable": 2,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Two Attacks",
          "tag": "twoAttack",
          "atWhatLevelIsAvailable": 4,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Intimidate (L2)",
          "tag": "intimidate2",
          "atWhatLevelIsAvailable": 4,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Intimidate (L1)",
          "tag": "intimidate",
          "atWhatLevelIsAvailable": 1,
          "automaticallyLearned": true,
          "allow": true
        }
      ],
      "spellsAllowed": [
        {
          "name": "Breathe Fire",
          "tag": "breatheFire",
          "atWhatLevelIsAvailable": 3,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Explosive Fireball",
          "tag": "explosiveFireball",
          "atWhatLevelIsAvailable": 5,
          "automaticallyLearned": false,
          "allow": true
        }
      ]
    },
    {
      "name": "Faery Thrower",
      "tag": "faeryThrower",
      "UsableByPlayer": false,
      "description": "Not meant for Players, only for NPCs.",
      "startingHP": 6,
      "startingSP": 5,
      "modifierFromSPRelevantAttribute": "intelligence",
      "hpPerLevelUp": 6,
      "spPerLevelUp": 5,
      "hpRegenTimeNeeded": 0,
      "spRegenTimeNeeded": 0,
      "spellLabelSingular": "Spell",
      "spellLabelPlural": "Spells",
      "baseFortitudeAtLevel": [
        0,
        2,
        3,
        3,
        4,
        4,
        5,
        5,
        6
      ],
      "baseWillAtLevel": [
        0,
        0,
        0,
        1,
        1,
        1,
        2,
        2,
        2
      ],
      "baseReflexAtLevel": [
        0,
        2,
        3,
        3,
        4,
        4,
        5,
        5,
        6
      ],
      "babTable": [
        0,
        1,
        2,
        3,
        4,
        5,
        6,
        7,
        8,
        9
      ],
      "xpTable": [
        0,
        125,
        250,
        500,
        1000,
        2000,
        4000,
        7000,
        11000,
        16000
      ],
      "spellsToLearnAtLevelTable": [
        0,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1
      ],
      "traitsToLearnAtLevelTable": [
        0,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1
      ],
      "itemsAllowed": [
        {
          "resref": "healingPotion",
          "tag": "healingPotion_10824",
          "name": "Healing Potion",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "healingPotionExtra",
          "tag": "healingPotionExtra_10825",
          "name": "Extra Healing Potion",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "spPotion",
          "tag": "spPotion_10826",
          "name": "Spell Points Potion",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "stone",
          "tag": "stone_10827",
          "name": "Stone",
          "canNotBeUnequipped": false,
          "quantity": 20,
          "isRation": false
        },
        {
          "resref": "stonefire",
          "tag": "stonefire_10828",
          "name": "Stone of Fire",
          "canNotBeUnequipped": false,
          "quantity": 20,
          "isRation": false
        },
        {
          "resref": "faerieSling",
          "tag": "faerieSling_10829",
          "name": "Faerie Sling",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "hqFaerieSling",
          "tag": "hqFaerieSling_10830",
          "name": "High Quality Faerie Sling",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "dhFaerieSling",
          "tag": "dhFaerieSling_10831",
          "name": "Dragonhide Faerie Sling",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "faerieLarmour",
          "tag": "faerieLarmour_10832",
          "name": "Faerie Leather Armour",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "faerieChainmail",
          "tag": "faerieChainmail_10833",
          "name": "Faerie Chainmail",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "tinyKnife",
          "tag": "tinyKnife_10834",
          "name": "Tiny knife",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        }
      ],
      "traitsAllowed": [
        {
          "name": "Evasion",
          "tag": "evasion",
          "atWhatLevelIsAvailable": 2,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Bluff (L1)",
          "tag": "bluff",
          "atWhatLevelIsAvailable": 1,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Bluff (L2)",
          "tag": "bluff2",
          "atWhatLevelIsAvailable": 4,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Diplomacy (L1)",
          "tag": "diplomacy",
          "atWhatLevelIsAvailable": 1,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Diplomacy (L2)",
          "tag": "diplomacy2",
          "atWhatLevelIsAvailable": 4,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Pick Pocket (L1)",
          "tag": "pickpocket",
          "atWhatLevelIsAvailable": 1,
          "automaticallyLearned": true,
          "allow": true
        },
        {
          "name": "Pick Pocket (L2)",
          "tag": "pickpocket2",
          "atWhatLevelIsAvailable": 3,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Spot (L1)",
          "tag": "spot",
          "atWhatLevelIsAvailable": 1,
          "automaticallyLearned": true,
          "allow": true
        },
        {
          "name": "Spot (L2)",
          "tag": "spot2",
          "atWhatLevelIsAvailable": 3,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Stealth (L1)",
          "tag": "stealth",
          "atWhatLevelIsAvailable": 1,
          "automaticallyLearned": true,
          "allow": true
        },
        {
          "name": "Stealth (L2)",
          "tag": "stealth2",
          "atWhatLevelIsAvailable": 3,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Disable Device (L1)",
          "tag": "disabledevice",
          "atWhatLevelIsAvailable": 1,
          "automaticallyLearned": true,
          "allow": true
        },
        {
          "name": "Disable Device (L2)",
          "tag": "disabledevice2",
          "atWhatLevelIsAvailable": 3,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Point Blank Shot",
          "tag": "pointblankshot",
          "atWhatLevelIsAvailable": 2,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Precise Shot (L1)",
          "tag": "preciseshot",
          "atWhatLevelIsAvailable": 3,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Rapid Shot (L1)",
          "tag": "rapidshot",
          "atWhatLevelIsAvailable": 4,
          "automaticallyLearned": false,
          "allow": true
        }
      ],
      "spellsAllowed": []
    },
    {
      "name": "Bounty Hunter",
      "tag": "bountyHunter",
      "UsableByPlayer": false,
      "description": "Quick and deadly.",
      "startingHP": 6,
      "startingSP": 0,
      "modifierFromSPRelevantAttribute": "intelligence",
      "hpPerLevelUp": 6,
      "spPerLevelUp": 0,
      "hpRegenTimeNeeded": 0,
      "spRegenTimeNeeded": 0,
      "spellLabelSingular": "Spell",
      "spellLabelPlural": "Spells",
      "baseFortitudeAtLevel": [
        0,
        2,
        3,
        3,
        4,
        4,
        5,
        5,
        6
      ],
      "baseWillAtLevel": [
        0,
        0,
        0,
        1,
        1,
        1,
        2,
        2,
        2
      ],
      "baseReflexAtLevel": [
        0,
        2,
        3,
        3,
        4,
        4,
        5,
        5,
        6
      ],
      "babTable": [
        0,
        1,
        2,
        3,
        4,
        5,
        6,
        7,
        8,
        9
      ],
      "xpTable": [
        0,
        125,
        250,
        500,
        1000,
        2000,
        4000,
        7000,
        11000,
        16000
      ],
      "spellsToLearnAtLevelTable": [
        0,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1
      ],
      "traitsToLearnAtLevelTable": [
        0,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1,
        1
      ],
      "itemsAllowed": [
        {
          "resref": "chainmail",
          "tag": "chainmail_10835",
          "name": "Chainmail Armor",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "larmor1",
          "tag": "larmor1_10836",
          "name": "Leather Armor",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "studdedLeather",
          "tag": "studdedLeather_10837",
          "name": "Studded Leather Armor",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "robes",
          "tag": "robes_10838",
          "name": "Robes",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "campingKit",
          "tag": "campingKit_10839",
          "name": "Camping Kit",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "ringOfProtection",
          "tag": "ringOfProtection_10840",
          "name": "Ring of Protection",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "ringOfFireResist",
          "tag": "ringOfFireResist_10841",
          "name": "Ring of Fire Resistance",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "healingPotion",
          "tag": "healingPotion_10842",
          "name": "Healing Potion",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "healingPotionExtra",
          "tag": "healingPotionExtra_10843",
          "name": "Extra Healing Potion",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "spPotion",
          "tag": "spPotion_10844",
          "name": "Spell Points Potion",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "crossbow",
          "tag": "crossbow_10845",
          "name": "Crossbow",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "dagger01",
          "tag": "dagger01_10846",
          "name": "Dagger",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "elvishshortsword",
          "tag": "elvishshortsword_10847",
          "name": "Elvish Short Sword +1",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "fireDagger",
          "tag": "fireDagger_10848",
          "name": "Fire Dagger",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "handaxe",
          "tag": "handaxe_10849",
          "name": "Hand Axe",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "mace",
          "tag": "mace_10850",
          "name": "Mace",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "shortBow",
          "tag": "shortBow_10851",
          "name": "Short Bow",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "ssword01",
          "tag": "ssword01_10852",
          "name": "Short Sword",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "sling",
          "tag": "sling_10853",
          "name": "Sling",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "fireSling",
          "tag": "fireSling_10854",
          "name": "Sling of Fire",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "arrow",
          "tag": "arrow_10855",
          "name": "Arrow",
          "canNotBeUnequipped": false,
          "quantity": 20,
          "isRation": false
        },
        {
          "resref": "stone",
          "tag": "stone_10856",
          "name": "Stone",
          "canNotBeUnequipped": false,
          "quantity": 20,
          "isRation": false
        },
        {
          "resref": "stonefire",
          "tag": "stonefire_10857",
          "name": "Stone of Fire",
          "canNotBeUnequipped": false,
          "quantity": 20,
          "isRation": false
        },
        {
          "resref": "bolt",
          "tag": "bolt_10858",
          "name": "Bolt",
          "canNotBeUnequipped": false,
          "quantity": 20,
          "isRation": false
        },
        {
          "resref": "branchclub",
          "tag": "branchclub_10859",
          "name": "Branch Club",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "crueldagger",
          "tag": "crueldagger_10860",
          "name": "Cruel Dagger",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "katana",
          "tag": "katana_10861",
          "name": "Katana",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "blesslong",
          "tag": "blesslong_10862",
          "name": "Banric Blade",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        },
        {
          "resref": "idris",
          "tag": "idris_10863",
          "name": "Idris",
          "canNotBeUnequipped": false,
          "quantity": 1,
          "isRation": false
        }
      ],
      "traitsAllowed": [
        {
          "name": "Sneak Attack",
          "tag": "sneakattack",
          "atWhatLevelIsAvailable": 2,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Critical Strike",
          "tag": "criticalstrike",
          "atWhatLevelIsAvailable": 3,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Evasion",
          "tag": "evasion",
          "atWhatLevelIsAvailable": 2,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Bluff (L1)",
          "tag": "bluff",
          "atWhatLevelIsAvailable": 1,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Bluff (L2)",
          "tag": "bluff2",
          "atWhatLevelIsAvailable": 4,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Spot (L1)",
          "tag": "spot",
          "atWhatLevelIsAvailable": 1,
          "automaticallyLearned": true,
          "allow": true
        },
        {
          "name": "Spot (L2)",
          "tag": "spot2",
          "atWhatLevelIsAvailable": 3,
          "automaticallyLearned": false,
          "allow": true
        },
        {
          "name": "Stealth (L1)",
          "tag": "stealth",
          "atWhatLevelIsAvailable": 1,
          "automaticallyLearned": true,
          "allow": true
        },
        {
          "name": "Stealth (L2)",
          "tag": "stealth2",
          "atWhatLevelIsAvailable": 3,
          "automaticallyLearned": false,
          "allow": true
        }
      ],
      "spellsAllowed": []
    }
  ],
  "dataRacesList": [
    {
      "name": "PseudoDragon",
      "tag": "pseudoDragon",
      "UsableByPlayer": false,
      "description": "Not meant for Players. Used for NPCs",
      "MoveDistanceLightArmor": 3,
      "MoveDistanceMediumHeavyArmor": 2,
      "strMod": 2,
      "dexMod": -2,
      "intMod": 0,
      "chaMod": 0,
      "conMod": 0,
      "wisMod": 0,
      "damageTypeResistanceValuePoison": 10,
      "damageTypeResistanceValueMagic": 10,
      "damageTypeResistanceValueNormal": 0,
      "damageTypeResistanceValueAcid": 0,
      "damageTypeResistanceValueCold": 10,
      "damageTypeResistanceValueElectricity": 0,
      "damageTypeResistanceValueFire": 0,
      "classesAllowed": [
        "clawFighter"
      ],
      "traitsAllowed": []
    },
    {
      "name": "Forest Faery",
      "tag": "forestFaery",
      "UsableByPlayer": false,
      "description": "Not meant for Players. Used for NPCs",
      "MoveDistanceLightArmor": 3,
      "MoveDistanceMediumHeavyArmor": 2,
      "strMod": -2,
      "dexMod": 4,
      "intMod": -2,
      "chaMod": 2,
      "conMod": 0,
      "wisMod": 0,
      "damageTypeResistanceValuePoison": 0,
      "damageTypeResistanceValueMagic": 40,
      "damageTypeResistanceValueNormal": 0,
      "damageTypeResistanceValueAcid": 0,
      "damageTypeResistanceValueCold": 0,
      "damageTypeResistanceValueElectricity": 0,
      "damageTypeResistanceValueFire": 0,
      "classesAllowed": [
        "faeryThrower"
      ],
      "traitsAllowed": []
    },
    {
      "name": "Homunklus",
      "tag": "homunklus",
      "UsableByPlayer": false,
      "description": "Not meant for Players. Used for NPCs",
      "MoveDistanceLightArmor": 3,
      "MoveDistanceMediumHeavyArmor": 2,
      "strMod": 2,
      "dexMod": 0,
      "intMod": -2,
      "chaMod": -2,
      "conMod": 0,
      "wisMod": 0,
      "damageTypeResistanceValuePoison": 0,
      "damageTypeResistanceValueMagic": 0,
      "damageTypeResistanceValueNormal": 0,
      "damageTypeResistanceValueAcid": 0,
      "damageTypeResistanceValueCold": 0,
      "damageTypeResistanceValueElectricity": 0,
      "damageTypeResistanceValueFire": 0,
      "classesAllowed": [
        "fighter"
      ],
      "traitsAllowed": []
    }
  ],
  "dataSpellsList": [
    {
      "name": "Breathe Fire",
      "tag": "breatheFire",
      "spellImage": "sp_blastoflight",
      "description": "The Pseudragon spits a ball of flame that automatically hits all targets in the area of effect for 2d6 points of damage.",
      "useableInSituation": "InCombat",
      "spriteFilename": "fx_fireball",
      "spriteEndingFilename": "fx_fireball3x3end",
      "spellStartSound": "fireballstart",
      "spellEndSound": "fireballend",
      "costSP": 15,
      "spellTargetType": "PointLocation",
      "isUsedForCombatSquareEffect": false,
      "spellEffectType": "Damage",
      "aoeShape": "Circle",
      "aoeRadius": 1,
      "range": 1,
      "spellScript": "none",
      "spellEffectTag": "blastoflight",
      "spellEffectTagList": [],
      "removeEffectTagList": []
    },
    {
      "name": "Explosive Fireball",
      "tag": "explosiveFireball",
      "spellImage": "sp_fireball",
      "description": "The Pseudodragon spits an explosive fireball that automatically hits all targets in the area of effect for 1d6 points of damage per level of the dragon.",
      "useableInSituation": "InCombat",
      "spriteFilename": "fx_fireball",
      "spriteEndingFilename": "fx_fireball3x3end",
      "spellStartSound": "fireballstart",
      "spellEndSound": "fireballend",
      "costSP": 20,
      "spellTargetType": "PointLocation",
      "isUsedForCombatSquareEffect": false,
      "spellEffectType": "Damage",
      "aoeShape": "Circle",
      "aoeRadius": 1,
      "range": 1,
      "spellScript": "none",
      "spellEffectTag": "fireball",
      "spellEffectTagList": [],
      "removeEffectTagList": []
    }
  ],
  "dataTraitsList": [],
  "dataEffectsList": []
}
User avatar
slowdive
Site Admin
Site Admin
 
Posts: 3106
Joined: Wed Nov 21, 2012 11:58 pm

PreviousNext

Return to General IceBlink Project Discussions

Who is online

Users browsing this forum: No registered users and 1 guest

cron