Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 7 8 [9] 10 11 ... 24

Author Topic: Roses' Script, System, and Utilities Collection (07/06/2021)  (Read 91441 times)

Max™

  • Bay Watcher
  • [CULL:SQUARE]
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #120 on: May 16, 2016, 05:42:54 pm »

So I really didn't feel this deserved another post anywhere, and I didn't want to clutter up anyone elses threads. Does anyone know of a utility that allows for easily taking sprites from multiple different sheets and creating a new sheet out of them? I have found tools that let combine entire sheets together, but I was hoping to be able to pick and choose individual sprites from a given sheet.
Not sure if Quiet-Sun's Tool does what you are looking for, but it's the only thing I know of that's close (other than straight-up image tools).
It's easy enough with GIMP by just opening them as layers and removing the pieces you don't want.
Logged

expwnent

  • Bay Watcher
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #121 on: May 16, 2016, 10:12:14 pm »

I rewrote it to use json instead of persist-table. It's loads faster now. Main problem I can find is that I can't get it to save on quicksaves.

I hate to break it to you but I'm 99% done with replacing all histfig persistent data with json in a way that's even backwards-compatible with persist-table. It automatically converts to json and uses the same persist-table interface and works for (almost all) plugins too.
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #122 on: May 16, 2016, 11:14:33 pm »

That's very fine, because I couldn't figure out quicksaves lol. It was about 5 hours work anyway.

Roses

  • Bay Watcher
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #123 on: May 17, 2016, 08:30:01 am »

I rewrote it to use json instead of persist-table. It's loads faster now. Main problem I can find is that I can't get it to save on quicksaves.

I hate to break it to you but I'm 99% done with replacing all histfig persistent data with json in a way that's even backwards-compatible with persist-table. It automatically converts to json and uses the same persist-table interface and works for (almost all) plugins too.

@Putnam, the new version of my class system should load faster for you as well as I have changed my philosophy from "load absolutely everything into persist-table and then pick what you need" to "only load what you need". This basically means that unless you use it in a script somewhere, there's no reason to be storing every skill and attribute for every unit.

@expwnent, Should I plan on changing anything in my scripts for the persist-table changes?
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #124 on: May 17, 2016, 05:18:37 pm »

Skill and attribute and class? I noticed that issue. Each unit was 34 kb and i'm willing to bet that nothing I would do could've increased or decrease that number (except maybe add/remove classes, obv). Thought it was real weird that it stored all 144 classes in every single unit regardless of whether the unit was going to switch. My json conversion is complete except for the quick/autosave issue, but that's big enough that I won't bother releasing.

Example:

Code: (119.json) [Select]
{
"Attributes": {
"AGILITY": {
"Base": "817",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"ANALYTICAL_ABILITY": {
"Base": "1472",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CREATIVITY": {
"Base": "2126",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DISEASE_RESISTANCE": {
"Base": "1945",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"EMPATHY": {
"Base": "1192",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"ENDURANCE": {
"Base": "1060",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"FOCUS": {
"Base": "4649",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"INTUITION": {
"Base": "757",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"KINESTHETIC_SENSE": {
"Base": "1314",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"LINGUISTIC_ABILITY": {
"Base": "804",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MEMORY": {
"Base": "796",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MUSICALITY": {
"Base": "817",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PATIENCE": {
"Base": "1240",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"RECUPERATION": {
"Base": "1111",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SOCIAL_AWARENESS": {
"Base": "1663",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SPATIAL_SENSE": {
"Base": "1373",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"STRENGTH": {
"Base": "1161",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"TOUGHNESS": {
"Base": "472",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"WILLPOWER": {
"Base": "1523",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
}
},
"Classes": {
"BARD_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"BARD_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"Current": {
"Name": "PRINCE_OF_DOOM",
"SkillExp": "0",
"TotalExp": "0"
},
"HEIR_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"HEIR_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"KNIGHT_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"MAGE_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"MAID_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"PAGE_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"PRINCE_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"ROGUE_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"SEER_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"SYLPH_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"THIEF_OF_VOID": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_BLOOD": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_BREATH": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_DOOM": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_HEART": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_HOPE": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_LIFE": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_LIGHT": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_MIND": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_RAGE": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_SPACE": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_TIME": {
"Experience": "0",
"Level": "0"
},
"WITCH_OF_VOID": {
"Experience": "0",
"Level": "0"
}
},
"Skills": {
"ALCHEMY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"ANIMALCARE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"ANIMALTRAIN": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"APPRAISAL": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"ARMOR": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"ASTRONOMY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"AXE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"BALANCE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"BEEKEEPING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"BITE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"BLOWGUN": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"BONECARVE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"BOOKBINDING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"BOW": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"BOWYER": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"BREWING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"BUTCHER": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CARPENTRY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CHEESEMAKING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CHEMISTRY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CLIMBING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CLOTHESMAKING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"COMEDY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CONCENTRATION": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CONSOLE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CONVERSATION": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"COOK": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"COORDINATION": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CRITICAL_THINKING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CROSSBOW": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CRUTCH_WALK": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"CUTGEM": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DAGGER": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DANCE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DESIGNBUILDING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DETAILSTONE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DIAGNOSE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DISCIPLINE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DISSECT_FISH": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DISSECT_VERMIN": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DODGING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DRESS_WOUNDS": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"DYER": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"ENCRUSTGEM": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"EXTRACT_STRAND": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"FISH": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"FLATTERY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"FLUID_ENGINEER": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"FORGE_ARMOR": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"FORGE_FURNITURE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"FORGE_WEAPON": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"GELD": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"GEOGRAPHY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"GLASSMAKER": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"GLAZING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"GRASP_STRIKE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"HAMMER": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"HERBALISM": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"INTIMIDATION": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"JUDGING_INTENT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"KNAPPING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"KNOWLEDGE_ACQUISITION": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"LEADERSHIP": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"LEATHERWORK": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"LOGIC": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"LYE_MAKING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"LYING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MACE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MAGIC_NATURE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MAKE_MUSIC": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MASONRY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MATHEMATICS": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MECHANICS": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MELEE_COMBAT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"METALCRAFT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MILITARY_TACTICS": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MILK": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MILLING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"MINING": {
"Base": "2",
"Change": "0",
"Class": "0",
"Current": "2",
"Item": "0",
"StatusEffects": []
},
"MISC_WEAPON": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"NEGOTIATION": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"OPERATE_PUMP": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"OPTICS_ENGINEER": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"ORGANIZATION": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PACIFY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PAPERMAKING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PERSUASION": {
"Base": "0",
"Change": "0",
"Class": "0",
"Current": "0",
"Item": "0",
"StatusEffects": []
},
"PIKE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PLANT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PLAY_KEYBOARD_INSTRUMENT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PLAY_PERCUSSION_INSTRUMENT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PLAY_STRINGED_INSTRUMENT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PLAY_WIND_INSTRUMENT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"POETRY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"POTASH_MAKING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"POTTERY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PRESSING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PROCESSFISH": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PROCESSPLANTS": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"PROSE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"RANGED_COMBAT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"READING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"RECORD_KEEPING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SET_BONE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SHEARING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SHIELD": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SIEGECRAFT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SIEGEOPERATE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SING_MUSIC": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SITUATIONAL_AWARENESS": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SMELT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SNEAK": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SOAP_MAKING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SPEAKING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SPEAR": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SPINNING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"STANCE_STRIKE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"STONECRAFT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SURGERY": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SUTURE": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SWIMMING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"SWORD": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"TANNER": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"TEACHING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"THROW": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"TRACKING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"TRAPPING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"WAX_WORKING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"WEAVING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"WHIP": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"WOODCRAFT": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"WOODCUTTING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"WOOD_BURNING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"WRESTLING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
},
"WRITING": {
"Base": "0",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []
}
},
"Spells": {
"Active": []
},
"Stats": {
"Deaths": "0",
"Kills": "0"
},
"Traits": {
"ABSTRACT_INCLINED": {
"Base": "57",
"Change": "0",
"Class": "0",
"Item": "0",
"StatusEffects": []

And then it goes on to describe every other trait much the same way. It didn't even fit into the post.
« Last Edit: May 17, 2016, 05:23:40 pm by Putnam »
Logged

Roses

  • Bay Watcher
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #125 on: May 17, 2016, 07:41:37 pm »

Skill and attribute and class? I noticed that issue. Each unit was 34 kb and i'm willing to bet that nothing I would do could've increased or decrease that number (except maybe add/remove classes, obv). Thought it was real weird that it stored all 144 classes in every single unit regardless of whether the unit was going to switch. My json conversion is complete except for the quick/autosave issue, but that's big enough that I won't bother releasing.

Example:
<snipped>
And then it goes on to describe every other trait much the same way. It didn't even fit into the post.

Yep, now it only stores it if the unit uses it. Shrinks that overhead way down. Although that is cool to see all of the persist-table "trees".
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #126 on: May 17, 2016, 08:52:44 pm »

Yeah, I found it fascinating. Then it turned out I had to actually cut the persist-table into multiple files to get it to work correctly lol

ClassTable.json is 399 KB alone, each unit is 34 KB

Roses

  • Bay Watcher
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #127 on: May 17, 2016, 10:13:57 pm »

Yeah, I found it fascinating. Then it turned out I had to actually cut the persist-table into multiple files to get it to work correctly lol

ClassTable.json is 399 KB alone, each unit is 34 KB

Hahaha, yeah. I kept adding and adding without really thinking about it.
Logged

expwnent

  • Bay Watcher
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #128 on: May 18, 2016, 01:29:50 am »

You shouldn't need to change anything once the new system is in place. It'll just be faster.
Logged

Roses

  • Bay Watcher
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #129 on: May 25, 2016, 05:32:07 pm »

So I am starting to go through all my scripts for bug checking and the like and am looking at some of my older scripts (particularly the attribute-change, skill-change, trait-change scripts) and was wondering if anyone would hate me if I changed the syntax slightly. Right now they require a -fixed, -percent, or -set input with a given number. I would like to change that to a simple -mode and -amount input. So that, for instance

Code: [Select]
   unit/attribute-change -unit \\UNIT_ID -fixed 100 -attribute STRENGTH
   unit/attribute-change -unit \\UNIT_ID -percent [ 10 10 10 ] -attribute [ ENDURANCE TOUGHNESS WILLPOWER ] -dur 3600
   unit/attribute-change -unit \\UNIT_ID -set 5000 -attribute WILLPOWER -dur 1000
would become
Code: [Select]
   unit/attribute-change -unit \\UNIT_ID -mode fixed -amount 100 -attribute STRENGTH
   unit/attribute-change -unit \\UNIT_ID -mode percent -amount [ 10 10 10 ] -attribute [ ENDURANCE TOUGHNESS WILLPOWER ] -dur 3600
   unit/attribute-change -unit \\UNIT_ID -mode set -amount 5000 -attribute WILLPOWER -dur 1000

Thoughts?
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #130 on: May 25, 2016, 08:20:37 pm »

I use script-environment and call the functions directly, usually, so I have no opinion.

Roses

  • Bay Watcher
    • View Profile
Re: Roses' Script, System, and Utilities Collection v0.2 (2/16/2016)
« Reply #131 on: May 26, 2016, 05:57:59 pm »

Progress Update:

Today I finished going trough all 18 unit based scripts. They are all working with no errors (for the combinations I tested), although all combinations have not been tested.

By this weekend I plan on finishing testing and updating all the other scripts and pushing out a release.

EDIT: All scripts and their corresponding functions have been updated to DFHack 42.06. I have temporarily pulled down the Class, Civilization, and Event systems and will re-upload them as I finish updating them.
« Last Edit: May 31, 2016, 02:48:47 pm by Roses »
Logged

Roses

  • Bay Watcher
    • View Profile
Re: Roses' Script, System, and Utilities Collection (05/31/2016)
« Reply #132 on: June 02, 2016, 03:41:20 pm »

Working on the Class System I have stripped out most of the complexity of the system and separated it into two systems (Class and Spell). There is no change for the modder or end user, but it loads much faster and has a much smaller memory footprint. The biggest change is that the system only uses something if it needs to (before it was loading everything and the kitchen sink into memory). Current list of changes:

1. The spell upgrade wasn't working like it was supposed to, it now works correctly.
2. Skill experience is now tracked by class instead of total, this means if a spell costs something to learn you will need skill experience from the class itself.
3. Many small changes that should improve performance.

Additions that are being implemented;

1. A feat system similar to D&D that will provide further upgrade options. You will gain feat points at defined total experience levels that you can spend on custom defined feats. For example you might have a complex feat like Improved Casting which lowers the cool down of all interactions, or simple feats that give straight attribute bonuses. The purpose of adding these in is to make units with the same class more distinct from each other and to add more progress levels.

2. The spell system is getting an upgrade. While it will be entirely optional from the Class System you will be able to tie your class spells into this system which will provide you with a couple neat options;
2a. Casting time: Make certain spells take longer to cast than others. This works by adding an action to the unit with a defined time delay which will prevent the unit from doing any other actions. This also means you will be vulnerable to attack during this time since you will be unable to dodge, block, or parry, and you won't be able to attack or use other interactions either.
2b. Casting fatigue: Make spell casting fatigue the unit. This simply adds to the exhaustion counter a certain amount.
2c. Casting experience: Make spell casting give the unit experience. This will help your healers to level up.

3. You will be able to add custom skills with custom profession names and custom attributes. This is more of a feature that will get heavily used in the Enhanced and Expedition Systems, but I figured I would start it off by including it here. Unfortunately these skills/attributes won't show up in the in-game unit viewer, but they will be visible in my enhanced unit viewer gui (when that gets released). And will tie into the spell system and be usable in the wrapper script. As an example you might have a skill Spell Casting and attributes like Faith, Wisdom, and Intelligence.

Now you might think these additions would add a lot of time to my expected release dates, but actually most of the code is already written and just needs to be linked together (of course testing is another thing). I am currently testing the basic class system using Putnam's Fortbent classes

Depending on how my testing goes this weekend I am hoping to have the next release up by Monday with sample classes, spells, and feats and a rough ReadMe.

@Putnam, do you mind if I include your Fortbent classes as another example file (with appropriate reference of course)? I like how simple and yet detailed they are.
Logged

Teneb

  • Bay Watcher
  • (they/them) Penguin rebellion
    • View Profile
Re: Roses' Script, System, and Utilities Collection (05/31/2016)
« Reply #133 on: June 02, 2016, 04:21:11 pm »

Nice to see the work going on the classes.I am pretty sure I'll be making use of them.
Logged
Monstrous Manual: D&D in DF
Quote from: Tack
What if “slammed in the ass by dead philosophers” is actually the thing which will progress our culture to the next step?

expwnent

  • Bay Watcher
    • View Profile
Re: Roses' Script, System, and Utilities Collection (05/31/2016)
« Reply #134 on: June 04, 2016, 09:09:11 am »

Awesome stuff!
Logged
Pages: 1 ... 7 8 [9] 10 11 ... 24