Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account

randomNPC API Script

I have a random NPC Script that creates a Random NPC for use when I am winging it in a game.  For the most part, everything is working as expected; however, the portion where I create the character with Stats & Skills & Armor is not working as expected.  I see the data in the Attributes and Abilities tab, but not in the NPC Character Sheet. Create NPC Code: function createNPC ( name , bio , gmnotes , path ) { //Modified from Base jf.StatBlockImport var jsonPath = pathJSON (); try { if ( name == undefined ) throw "Name require to get or create character" ; var obj = findObjs ({ _type: "character" , name: name }); if ( obj . length == 0 ) { obj = createObj ( "character" , { name: name }); log ( "Character " + name + " created" ); } else { obj = getObj ( "character" , obj [ 0 ]. id ); log ( "Character " + name + " updated" ); } if ( obj == undefined ) throw "Something prevent script to create or find character " + name ; if ( gmnotes != undefined ) obj . set ({ gmnotes: gmnotes }); if ( bio != undefined ) obj . set ({ bio: bio }); characterId = obj . id ; for ( key in jsonPath [ path ]) { setAttribute ( key , jsonPath [ path ][ key ]); } return obj ; } catch ( ex ) { log ( "Could Not Create Character:" + ex ); } } function pathJSON () { var j = { Alchemist: { Level: 1 , HD: "d6" , npc: 1 , mancer_npc: "on" , mancer_cancel: "on" , l1mancer_status: "complete" , strength_base: 9 , dexterity_base: 13 , constitution_base: 10 , intelligence_base: 16 , wisdom_base: 14 , charisma_base: 12 , npcspellcastingflag: 1 , spellcasting_ability: "@{intelligence_mod}+" , npc_acrobatics_base: "" , npc_animal_handling_base: "" , npc_arcana_base: 4 , npc_athletics_base: "" , npc_deception_base: "" , npc_history_base: 2 , npc_insight_base: 2 , npc_intimidation_base: "" , npc_investigation_base: "" , npc_medicine_base: 2 , npc_nature_base: "" , npc_perception_base: "" , npc_performance_base: "" , npc_persuasion_base: "" , npc_religion_base: "" , npc_sleight_of_hand_base: "" , npc_stealth_base: "" , npc_survival_base: "" , hp: "calculate" , npc_hpformula: "calculate" }.....
1562612023

Edited 1562612055
GiGs
Pro
Sheet Author
API Scripter
It's hard to say from that code, especially without log information. My guess would be the attribute names in your pathjson function dont match the attribute names on the character sheet. Also, I'd comment out the try/catch related lines especially while testing. They will obfuscate errors, and you need to see errors. Use copious log statements to find the error. Alternatively, make a more robust catch block, which gives information about what failed and how.
/*====MOB Scale Procedure====*/ /*''(Contributed by John Brown)''*/ var version = "1.0.20190706.0900"; //Log Current Version log("-=> GenRandomNPC v" + version + " <=-"); on("chat:message", function(msg) { //This allows players to enter !sr <number> to roll a number of d6 dice with a target of 4. if (msg.type == "api" && msg.content.indexOf("!genNPC ") !== -1) { var arg = msg.content.replace("!genNPC ", "").split(","); //if (arg[0] == undefined) {arg[0] = 'Random';} //if (arg[1] == undefined) {arg[1] = 'Random';} var sNPC = ""; var sHeader = "<h3>"; var sGenders = "m,f".split(","); var argGender = arg[0]; var argRace = arg[1]; var sRace = "randRace"; var sName = "randName"; var sPath = "randPath"; var sMotive = "randMotive"; var sVoice = "randVoice"; var sFooter = "</h3>"; var sAppearance = "randAppearance"; var sPosAdj = "PosAdj"; var sNegAdj = "NegAdj"; var sTalents = "randTalent"; var crlf = "<p>"; if (argGender == "Random") { argGender = sGenders[Math.floor(Math.random() * sGenders.length)]; } sRace = randRace(argRace); sName = randName(argGender, sRace); sPath = randPath(); sMotive = randMotive(); sVoice = randVoice(argGender); sAppearance = randAppearance(); sPosAdj = randAdj("pos"); sNegAdj = randAdj("neg"); sTalents = randTalent(); sNPC = sHeader + sName + "(" + argGender + "); " + sRace + "; " + sPath + "; " + sVoice + sFooter; var sBio = sHeader + sRace + "(" + argGender +"): "+sPath+crlf+ "Motivation: "+sMotive+crlf+ "Voice Characteristics: "+sVoice+crlf+ sAppearance+crlf+ "Descriptors: "+sPosAdj+", but "+sNegAdj+crlf+ sTalents; var sHTMLNPC = "<div style='background-color:lightblue; font-weight: bold'>" + sName + "</div>"; sHTMLNPC += "<div style='font-weight: normal'>" + sRace + "(" + argGender + "): " + sPath + "</div>"; sHTMLNPC += "<div style='font-weight: normal'>" + sMotive + "</div>"; sHTMLNPC += "<div style='font-weight: normal'>" + sVoice + "</div>"; sHTMLNPC += "<div style='font-weight: normal'>" + sAppearance + "</div>"; sHTMLNPC += "<div style='font-weight: normal'>Descriptors: " + sPosAdj + ", but " + sNegAdj + "; " + sTalents + "</div>"; sendChat(msg.who, "/w " + msg.who + " " + sHTMLNPC); var npc = createNPC(sName, sBio, sNPC, sPath); } }); function createNPC(name, bio, gmnotes, path) { var jsonPath = pathJSON(); try { if (name == undefined) throw "Name require to get or create character"; var obj = findObjs({ _type: "character", name: name }); if (obj.length == 0) { obj = createObj("character", { name: name }); log("Character " + name + " created"); } else { obj = getObj("character", obj[0].id); log("Character " + name + " updated"); } if (obj == undefined) throw "Something prevent script to create or find character " + name; if (gmnotes != undefined) obj.set({ gmnotes: gmnotes }); if (bio != undefined) obj.set({ bio: bio }); characterId = obj.id; for (key in jsonPath[path]) { setAttribute(key, jsonPath[path][key]); } //setAttribute("is_npc", 1); //setAttribute("mancer_npc", "on"); return obj; } catch (ex) { log("Could Not Create Character:"+ex); } } function setAttribute(name, currentVal, max) { if(name == undefined) throw("Name required to set attribut"); max = max || ''; if(currentVal == undefined) { log("Error setting empty value: " + name); return; } var attr = findObjs({ _type: 'attribute', _characterid: characterId, name: name })[0]; if(attr == undefined) { log("Creating attribut " + name); createObj('attribute', { name: name, current: currentVal, max: max, characterid: characterId }); } else if(attr.get('current') == undefined || attr.get('current').toString() != currentVal) { log("Updating attribut " + name); attr.set({ current: currentVal, max: max }); } } function randTalent() { var talent = "Musical Instrument;Speaks several languages;Lucky;Amazing memory;Great with animals;Great with children;Great at solving puzzles;Great at a game;Great at impersonations;Artistic;Sings beautifully;Drinks everyone under the table;Expert carpenter;Expert cook;Expert dart thrower and rock skipper;Expert juggler;Skilled actor/master of disguise;Skilled dancer;Knows thieves cant".split( ";" ); return talent[Math.floor(Math.random() * talent.length)]; } function randAdj(type) { var posadj = "Aggressive;Agile;Alacritous;Alluring;Amiable;Assertive;Astute;Beautiful;Bold;Bookish;Brawny;Brilliant;Canny;Charismatic;Charming;Clever;Colossal;Confident;Crafty;Crushing;Cunning;Cute;Decisive;Deft;Determined;Discerning;Dogged;Dutiful;Empathic;Empathy;Exceptionally Tough;Faithful;Fanatic;Fierce;Flirt;Flirtatious;Genius;Good Balance;Hearty;Hyper-Quick;Idealist;Imposing;Insightful;Instinctive;Intuitive;Inventive;Iron Constitution;Keen;Knowledgeable;Lightning Quick;Manipulative;Meek;Mighty;Mountainous;Muscular;Nimble;Obedient;Obscure Knowledge;Observation;Patient;Perceptive;Philomathic;Photographic Memory;Powerful;Proud;Quick;Robust;Savagery;Sensitive;Sensuality;Sharp;Shrewd;Smart;Solemn;Spry;Stamina;Stout;Strong;Stubborn;Studious;Sympathetic;Tall;Tenacious;Theatrical;Thick Skull;Tough;Towering;Two Track Mind;Unwavering;Very Tough;Wily;Wise"; var negadj = "Abrasive;Abusive;Agnostic;Aimless;Aloof;Anxios;Argumenative;Arrogant;Audacious;Belligerent;Big-Headed;Bitchy;Blunt;Boastful;Bone-Idle;Boring;Bossy;Callous;Cantankerous;Careless;Changeable;Childish;Clingy;Clumsy;Cowardice;Cowardly;Cruel;Cynical;Deceitful;Delicate;Dense;Detached;Dim;Disability, Parapalegic;Dishonest;Dogmatic;Domineering;Doubtful;Dour;Drab;Dubious;Dull;Egotistical;Envious;Fatiguable;Fickle;Finicky;Firm;Flexible;Foolhardy;Foolish;Frail;Fraudulent;Fussy;Gawkish;Gruff;Grumpy;Gullible;Hard;Harsh;Hoity;Homely;Humiliated;Humorless;Hypocritical;Idiotic;Ignorant;Immature;Impatient;Impious;Impish;Impolite;Imprudent;Impulsive;Inconsiderate;Inconsistent;Indecisive;Indefinite;Indifferent;Indiscreet;Inelegant;Interfering;Intolerant;Irresponsible;Jealous;Judgmental;Klutz;Laid-Back;Lazy;Liar;Lithe;Little;Machiavellian;Materialistic;Mean;Meddlesome;Naïve;Narrow-Minded;Nasty;Naughty;Nervous;Obstinate;Obtuse;Overconfident;Overcritical;Passive;Patronizing;Peevish;Perverse;Pessimistic;Pest;Pompous;Possessive;Pusillanimous;Rash;Reckless;Remorseless;Rude;Ruthless;Sarcastic;Self-Centered;Self-Indulgent;Selfish;Severe;Shallow;Short;Short-Winded;Silly;Simple;Skeptical;Slight;Slow;Sluggish;Small;Smart Ass;Sneaky;Soft;Spineless;Spoiled;Squeamish;Stiff;Stupid;Superficial;Superstitious;Suspicious;Tactless;Temptable;Thick;Thoughtless;Timid;Ugly;Uncoordinated;Undiscerning;Unimaginative;Unkind;Unpredictable;Unreliable;Unsavvy;Untidy;Untrustworthy;Unwise;Vain;Vulgar;Weak;Weak-Willed;Withdrawn;Yielding"; if (type == "pos") { var adj = posadj.split(";"); } else { var adj = negadj.split(";"); } return adj[Math.floor(Math.random() * adj.length)]; } function randAppearance() { var appearance = "Nothing distinctive;Nothing distinctive;Nothing distinctive;Nothing distinctive;Nothing distinctive;Nothing distinctive;Nothing distinctive;Nothing distinctive;Nothing distinctive;Nothing distinctive;Distinctive Jewelry;Piercings;Flamboyant cloths;Outlandish cloths;Formal, clean cloths;Ragged, dirty cloths;Pronounced scar;Missing teeth;Missing fingers;Unusual eye color;Tattoos;Birthmark;Unusual skin color;Bald;Braided beard or hair;Unusual hair color;Nervous twitch;Distinctive nose;Distinctive posture;Exceptionally beautiful;Exceptionally ugly;Exceptionally tall;Exceptionally short".split( ";" ); return ( "Appearance:" + appearance[Math.floor(Math.random() * appearance.length)] ); } function randPath() { var paths = "Alchemist,Aristocrat,Brute,Clergy,Commoner,Craftsman,Enchanter,Geomancer,Wizard,Hero,Hunter,Bard,Merchant,Necromancer,Shaman,Summoner,Thief,Tinkerer,Warrior,Villain".split( "," ); return paths[Math.floor(Math.random() * paths.length)]; } function randMotive() { var motives = "Because It Is Ordained,Boyscout,Desperately Seeking Something,Family Honor,Find The Perfect Mate,For The Love Of The Master,Guardian Spirt,Heroic Compulsion,I Owe You One,Rule The Kingdom,Seeking Redemption,To Be The Best,To Save Our Way Of Life,To Spite My Enemies,Trying To Keep Up".split( "," ); return motives[Math.floor(Math.random() * motives.length)]; } function randVoice(argGender) { var mRegister = "low,low,mid,mid,mid,mid,high".split(","); var fRegister = "low,mid,mid,mid,mid,high,high".split(","); var voicesList = "Prone to singing,Prone to whistling,Prone to Humming,Speaks in rhyme,Slurs words,Lisps,Stutters,Overenunciates,Speaks loudly,Speaks softly,Uses flowery speech,Frequently uses wrong word,Swears a lot,Constantly joking or making puns,Prone to predictions of doom,Normal,Normal,Normal,Normal,Normal,Normal,Normal,Normal,Normal,Normal,Nasal,Appealing,Loud,Breathy,Brittle,Croaky,Flat,Grating,Gruff,Hoarse,Honeyed,Husky,Factual,Formal,Penetrating,Quiet,Rough,Shrill,Silvery,Throaty,Wheezy".split( "," ); var register = ""; var voice = ""; // var adjCount = Math.floor(Math.random() * 3)+1; // var i = 0; if (argGender == "f") { register = fRegister[Math.floor(Math.random() * fRegister.length)]; } else { register = mRegister[Math.floor(Math.random() * mRegister.length)]; } voice += voicesList[Math.floor(Math.random() * voicesList.length)] + ", "; return "Register:" + register + "; Voice:" + voice; //return 'voice'; } function randRace(argRace) { var racelist = "Dragonborn,Dwarf,Dwarf,Dwarf,Dwarf,Elf,Elf,Elf,Elf,Gnome,Gnome,Gnome,Half-elf,Half-elf,Half-elf,Half-elf,Half-elf,Half-orc,Halfling,Halfling,Halfling,Human,Human,Human,Human,Human,Human,Human,Human,Human,Human,Tiefling"; var arrRaces = racelist.split(","); var sRace = argRace; if (sRace == "Random") { sRace = arrRaces[Math.floor(Math.random() * arrRaces.length)]; } return sRace; } function randName(argGender, argRace) { log("randName.argGender:" + argGender); log("randName.argRace:" + argRace); var mHumanFirst = "James,John,Robert,Michael,William,David,Richard,Joseph,Thomas,Charles,Christopher,Daniel,Matthew,Anthony,Donald,Mark,Paul,Steven,Andrew,Kenneth,George,Joshua,Kevin,Brian,Edward,Ronald,Timothy,Jason,Jeffrey,Ryan,Jacob,Gary,Nicholas,Eric,Stephen,Jonathan,Larry,Justin,Scott,Brandon,Frank,Benjamin,Gregory,Raymond,Samuel,Patrick,Alexander,Jack,Dennis,Jerry,Tyler,Aaron,Henry,Jose,Douglas,Peter,Adam,Nathan,Zachary,Walter,Kyle,Harold,Carl,Jeremy,Gerald,Keith,Roger,Arthur,Terry,Lawrence,Sean,Christian,Ethan,Austin,Joe,Albert,Jesse,Willie,Billy,Bryan,Bruce,Noah,Jordan,Dylan,Ralph,Roy,Alan,Wayne,Eugene,Juan,Gabriel,Louis,Russell,Randy,Vincent,Philip,Logan,Bobby,Harry,Johnny"; var fHumanFirst = "Mary,Patricia,Jennifer,Linda,Elizabeth,Barbara,Susan,Jessica,Sarah,Margaret,Karen,Nancy,Lisa,Betty,Dorothy,Sandra,Ashley,Kimberly,Donna,Emily,Carol,Michelle,Amanda,Melissa,Deborah,Stephanie,Rebecca,Laura,Helen,Sharon,Cynthia,Kathleen,Amy,Shirley,Angela,Anna,Ruth,Brenda,Pamela,Nicole,Katherine,Samantha,Christine,Catherine,Virginia,Debra,Rachel,Janet,Emma,Carolyn,Maria,Heather,Diane,Julie,Joyce,Evelyn,Joan,Victoria,Kelly,Christina,Lauren,Frances,Martha,Judith,Cheryl,Megan,Andrea,Olivia,Ann,Jean,Alice,Jacqueline,Hannah,Doris,Kathryn,Gloria,Teresa,Sara,Janice,Marie,Julia,Grace,Judy,Theresa,Madison,Beverly,Denise,Marilyn,Amber,Danielle,Rose,Brittany,Diana,Abigail,Natalie,Jane,Lori,Alexis,Tiffany,Kayla"; var HumanLast = "Smith,Johnson,Williams,Jones,Brown,Davis,Miller,Wilson,Moore,Taylor,Anderson,Thomas,Jackson,White,Harris,Martin,Thompson,Garcia,Martinez,Robinson,Clark,Rodriguez,Lewis,Lee,Walker,Hall,Allen,Young,Hernandez,King,Wright,Lopez,Hill,Scott,Green,Adams,Baker,Gonzalez,Nelson,Carter,Mitchell,Perez,Roberts,Turner,Phillips,Campbell,Parker,Evans,Edwards,Collins,Stewart,Sanchez,Morris,Rogers,Reed,Cook,Morgan,Bell,Murphy,Bailey,Rivera,Cooper,Richardson,Cox,Howard,Ward,Torres,Peterson,Gray,Ramirez,James,Watson,Brooks,Kelly,Sanders,Price,Bennett,Wood,Barnes,Ross,Henderson,Coleman,Jenkins,Perry,Powell,Long,Patterson,Hughes,Flores,Washington,Butler,Simmons,Foster,Gonzales,Bryant,Alexander,Russell,Griffin,Diaz,Hayes"; var TabaxiFirst = "Keeper of,Teller of,Seer of,Known to,Seeker of,Found in,Called from,Left to,Keeper of,Begins to,Seems to,Helper of,Heard in,Brought from,Sat in,Lost in,Met by,Watching,Speaking,Bird,Mark of,Three,Two,One,Four,Five,Rhythum of,Ice on,Bush in,Shady,Subtle,Fragile,Silent,Hushed,Guest at,Sound of,Ink on,Luck of,Bubble of,Little,Big,Very Big,Tranquil,Golden,Ruby"; var TabaxiLast = "Abundance,Autumn,Awareness,Beauty,Bees,Boulder,Bounty,Butterfly,Cliff,Clouds,Color,Conifer,Cordillera,Current,Desert,Earthquake,Earth,Evergreen,Fall,Flood,Fog,Forest,Gust,Hurricane,Land,Moon,Mountains,Mushroom,Nature,Peaks,Peace,Predator,Quiet,Ridge,River,Rock,Season,Serene,Shelter,Shore,Sun,Spring,Stream,Tree,Vista,Winter,Yielding,Fresh Air,Chance,Wood,Chains,Riddle,Tree,Feather,Branch,Lace,Canvas,Mirror,Gift,Home,Drum,Skin,Draw,Cauldron,Stone,Night,Thrill,Spell,Berry"; var mDragonbornFirst = "Baciar,Bajhan,Balythas,Banaar,Baqull,Bhabor,Brenprax,Caerbor,Calumorn,Caluziros,Dokul,Dradhall,Dragrax,Durxiros,Erabroth,Faerqull,Faerwarum,Frojhan,Gorawarum,Goraziros,Greqiroth,Hequll,Higrax,Hirinn,Hiythas,Iorrinn,Jarciar,Jarvull,Jinythas,Kilkax,Krivzire,Krivziros,Lumigar,Lumilasar,Lumiqiroth,Marythas,Medgar,Medxan,Morfarn,Morzire,Nakax,Nakris,Narkax,Nesdhall,Nesfras,Nesghull,Orlaturim,Paciar,Privull,Prizavur,Rasfarn,Rasxiros,Ravohadur,Ravokul,Saghull,Shavroth,Tazlin,Tazqiroth,Todorim,Togar,Toroth,Trouqiroth,Urobor,Urodhall,Uroqull,Vorvull,Vrakcrath,Vraktrin,Worwunax,Wrarash,Wufarn,Wulkris,Wuprax,Wuqiroth,Xarvroth,Yorbarum,Yormash,Zorfarn,Zrasashi"; var fDragonbornFirst = "Aribith,Aricoria,Ariqorel,Asira,Belcys,Bibirith,Bizys,Dafyire,Daqorel,Erligwen,Eshnorae,Eshvayla,Faegissa,Gridrish,Grifaeth,Gurliann,Gurxora,Hanys,Hinbith,Hingissa,Hinxiris,Iriefaeth,Irielarys,Iriethibra,Iriewophyl,Irlyfaeth,Irlyrish,Jesrann,Jesyries,Kolarys,Koqorel,Lilopora,Lilorish,Malsira,Malxiris,Mihymm,Milarys,Misaadi,Nahymm,Nathibra,Nesnys,Nesshann,Nyscoria,Nysfyire,Ophidrith,Ophigissa,Origwen,Orinorae,Phirann,Phizys,Quilgissa,Quilwyn,Rashilarys,Rashiriel,Sunorae,Surann,Thakaryn,Thalyassa,Therhime,Therrinn,Ushicoria,Valdrish,Vyrapatys,Welsiliann,Welsimyse,Welsipatys,Welsiyassa,Wrapora,Xisrith,Yahymm,Yarith,Yrfaeth,Yrhymm,Yrmyse,Yrrann,Zenrith,Zenyassa,Zofrina,Zofwyn"; var DragonbornLast = "Aacmas,Aambakm,Aarthar,Ades,Ajuled,Akmidek,Akmun,Alaath,Ald,Alerrer,Alic,Alm,Alminsh,Ampaaj,Amtash,Andrirgod,Anes,Arinuth,Arjesht,Arulaad,Ashkmen,Ashkmimek,Atarrir,Buash,Calthu,Ccic,Cendish,Cethte,Chash,Ciar,Cimr,Cla,Claampot,Cleldar,Clolrash,Clonkoluu,Cmerrak,Corrhej,Coth,Cralri,Crancin,Crar,Creammocm,Crearthi,Creldaj,Cril,Crirthu,Crothtand,Crulton,Cur,Cuumpe,Dan,Dax,Din,Dirjaa,Dramteshk,Dremuath,Dric,Drimma,Drinko,Dron,Druamb,Drupe,Druuncash,Dunc,Duumpe,Duuthal,Eashteath,Ejullol,Eldi,Elx,Erdua,Ern,Erth,Esemen,Ested,Eth,Fachuansh,Femmens,Fernit,Fix,Fol,Gamp,Gelt,Gembuku,Gilko,Girthu,Haajuth,Hash,Heresh,Hergod,Hes,Hesh,Hitharol,Hkmosh,Hon,Hostuk,Htad,Htandad,Hteajod,Hteak,Huad,Hucnos,Hushtas,Iacmis,Iakush,Ial,Iap,Icca,Iceden,Ich,Icmajer,Icnaad,Idureth,Iken,Ildant,Ilxeth,Imbest,Imtaki,Indith,Inthil,Irnil,Irruur,Ish,Ista,Istidun,Istu,Ithash,Ixonik,Jon,Jordean,Kanuth,Kape,Kea,Keamph,Kemman,Kep,Kir,Klamp,Klankic,Klapash,Klel,Kleldi,Klimb,Klith,Kmaamur,Kmes,Kmudeal,Krarth,Krelko,Krernu,Krexesh,Krilxi,Kronxi,Kuak,Kual,Kuanish,Kuart,Kuast,Kultuu,Laal,Laalke,Lamak,Larthin,Ldek,Lejeath,Lelthid,Lijaar,Limmal,Limphuk,Lmak,Lmeal,Lmuc,Ltal,Ltar,Lted,Ltoc,Luampua,Luulluath,Makmid,Mar,Math,Mbaled,Mbisul,Micon,Milthua,Min,Mren,Myacint,Myel,Myerjat,Myimp,Myuardu,Nac,Nankak,Naraal,Ndaanor,Ndamul,Ndenath,Ndomosh,Nduulluuc,Nec,Nildrol,Nincin,Nkadesh,Nkath,Nkiloc,Nkuush,Norrer,Nshtuadal,Nshtuud,Ntheth,Nthilik,Numronk,Nup,Nyeal,Nyelt,Nyiamb,Nyil,Nyimpa,Ocmurdaac,Oshtid,Otajal,Othek,Othuunel,Paral,Pedath,Per,Pestid,Phul,Praalruu,Prankec,Prankud,Prerrha,Prildreas,Pruarensh,Pun,Punek,Raar,Rak,Reas,Rhal,Rul,Shalrondu,Shalt,Shel,Shkmush,Shkmuunas,Shtaallad,Shtidos,Shtinder,Shtolar,Shuac,Stijic,Taarrhu,Tac,Tadak,Targud,Teadan,Techece,Tepind,Territh,Thaccak,Thalir,Tham,Thash,Thath,Thelru,Thelth,Thid,Thil,Thith,Thul,Thuur,Tir,Tod,Tuandir,Tult,Tuuk,Tuur,Uandur,Uastac,Udurgok,Ulrino,Unkalud,Upia,Uthtandr,Uucuulek,Uuldash,Uuldia,Uulk,Uultin,Uun,Uunkuc,Uusial,Vammest,Veart,Vian,Vimphi,Virjesh,Virt,Vulm,Vuul,Xel,Xen,Xicnuk,Xid,Xis,Yal,Yap,Yas,Yath,Yip,Yithtis,Yultit,Yuuldi"; var mDwarfFirst = "Amnom,Baerdrum,Baldus,Balmund,Bandor,Barimmumli,Barimrerlun,Bekhouth,Berdrak,Berhumin,Bersock,Bhamnog,Bhargram,Bhargran,Bharrak,Bhelmus,Bhelnum,Brakherlug,Brannum,Brombek,Broulgraic,Brumdren,Brumgran,Bunmyr,Bunnus,Daerrum,Dalgarn,Dalrak,Daremmuki,Deddut,Dedug,Detgrug,Dhomroir,Doldrom,Dolnum,Doltharn,Dorammoki,Dorazmut,Dulgrim,Duriggir,Dwokir,Dwomrath,Ebrus,Emdal,Farbrek,Gafumlin,Galmond,Gerkohm,Gimdal,Glatherlun,Glorindoug,Glorithour,Gramiggs,Gramren,Graznumlir,Gremdus,Gremmus,Griltharm,Grokhomli,Groostorlum,Groundronlir,Groutas,Grouznatin,Grygus,Grykahm,Grykohm,Gulgrun,Hakdreat,Hakrim,Harduki,Hesdrik,Hetdraer,Hethumin,Hjalmand,Hoursomi,Hulkom,Hulnom,Hurnur,Husdran,Hutgrolim,Kaborlim,Karmek,Karthrum,Kavir,Khardain,Khargrum,Khemnaeth,Khudrol,Khungrok,Kisgrin,Kivrolim,Kramkohm,Kraznonlim,Krumdrak,Logror,Lotulir,Malkyl,Mamdut,Melrak,Mofus,Mortharm,Motdraet,Muirnur,Muirron,Murdrus,Murduli,Murdus,Nognith,Noralmumin,Nossig,Nurarrout,Okkot,Omdon,Orgreath,Orikgrid,Orizmak,Ragman,Regdir,Regrigg,Reistrorlug,Rottharm,Ruzoli,Skoznac,Thaldrak,Thalgron,Thalgrun,Thalren,Tharmuck,Tharrak,Thegrumli,Thelmor,Thergrom,Thermin,Thirmil,Thirmug,Thodek,Thonir,Thorbek,Thoroick,Thrarruki,Thratmel,Thulren,Thurdek,Thurdohr,Thurdron,Umbek,Urmdram,Urmduhr,Utdrud,Vangrol,Vanmuli,Vonrak,Vonrig,Vonthran,Wekdrous,Whubumli,Whuznorlum,Yargum,Yozurum"; var fDwarfFirst = "Akdrada,Arakrutain,Arassebera,Arwin,Babere,Baerra,Baerwyn,Barilmaeserd,Barvan,Bellin,Belva,Bersida,Betribelyn,Braenleil,Bralgubera,Bralleglia,Bralleros,Bransael,Brastubena,Brenlin,Bretsyl,Brillenis,Brondille,Brondyl,Brubaetelin,Bruldryn,Brulnar,Bryndish,Byllewin,Dalommeatryd,Daloratain,Dareldrerika,Darernubera,Dhuggutelyn,Dimlyl,Dimwyn,Dokgrogit,Doustroutelin,Douthetryd,Dwormarika,Einleen,Einthiel,Fimwaegret,Garmeadrid,Gatmealine,Gemleil,Gemwynn,Gerdish,Gerleen,Gitgreahulda,Glorideagith,Gloridourra,Glorignaetaine,Gloritgrolda,Granmugit,Grokroren,Groutgruilynn,Grouthutrud,Gwinnera,Gymmyl,Hanweaserd,Hargrisli,Hasteatryd,Helgraegrett,Henmaekara,Henwona,Housseabo,Ingwin,Jenra,Jinras,Jomawynn,Jynlinn,Jynnera,Jynva,Kaittin,Karrin,Katdielle,Kathvian,Katra,Ketlynn,Khekhaegrett,Khukdroudeth,Kiwobella,Kokgroubella,Kovrealda,Kuldrealine,Lasswaen,Lesnan,Lesslyl,Lessmyl,Lorrigar,Lyesbelle,Lysla,Lysnera,Lyssdielle,Maevmura,Malmeawynn,Mistlyn,Mistvan,Murbutrude,Murmoudrid,Mysryn,Mystselle,Myswin,Nalmera,Nalniss,Nasnar,Nesnip,Niswyn,Novrerra,Nysleen,Nyslin,Nysria,Nyswin,Ordraginn,Orgraserd,Orifeamora,Orifrabelynn,Raenras,Raenvia,Ranbera,Reinmatryd,Reynglian,Runryn,Rynrielle,Sardeagith,Sarnura,Sazmaewynn,Sirraebella,Siteserd,Skaludrid,Skammugith,Skassitalin,Skokatelin,Skormabena,Snasouwynn,Solryl,Strodmoline,Strokwaetelin,Strozzunelyn,Tasdora,Tazva,Thabregrett,Throgrutalyn,Thrommotain,Tisbelle,Tishsael,Tizris,Tordille,Toregnigit,Torwaen,Tuddobelynn,Tysvian,Ukkaetrud,Umirrikara,Votruilynn,Weratdrilda,Whughubyrn,Yakgraengrid,Yugheatalyn"; var DwarfLast = "Alegrog,Alestone,Aletank,Amberhead,Amberminer,Amberrock,Anvilforged,Barbedgrip,Barbedgut,Barrelbringer,Barrelgut,Barrelshaper,Beastbelt,Beastchin,Beastforge,Beastgrip,Berylaxe,Berylbrewer,Bitterdigger,Blackgrip,Blazingborn,Blessedfoot,Bloodgrog,Bloodhand,Bluntbender,Bluntblade,Bluntfall,Bluntfeet,Bluntmaker,Boneblade,Boneborn,Bonebrand,Boulderbreaker,Boulderforged,Bouldermail,Brewaxe,Brewbender,Brewfall,Brickcloak,Brightbasher,Brightgut,Bronzefall,Caskfeet,Chaosbraid,Chaosrock,Coindelver,Coingrip,Copperbrand,Coppermail,Copperspine,Darkbasher,Darkbranch,Darkbrand,Deeparmour,Deepbane,Dimarm,Dragonbranch,Duskbrow,Duskhorn,Earthbrand,Earthsunder,Emberaxe,Embergrog,Fieryarmour,Flaskfeet,Flaskmace,Flinthide,Forgebrow,Forgefinger,Forgemaker,Giantshield,Goldenborn,Goldenfoot,Gravelguard,Graybringer,Grayhide,Greatbreaker,Greathood,Greybelly,Greytank,Grimchest,Grimmace,Hammerforged,Hardbreaker,Hardforged,Heavyarm,Heavybrewer,Heavydigger,Heavyjaw,Hillheart,Honorfeet,Honorgranite,Honorview,Hornfinger,Kegmaster,Koboldhead,Koboldstone,Largemaul,Leatherbranch,Longback,Longspine,Magmaheart,Magmamail,Marbleaxe,Marblebuster,Marblemaster,Merryblade,Mithrilbow,Mithrilbrand,Mithrilbrew,Mithrilhide,Mountainbreaker,Mountainhide,Mountainrock,Mudminer,Nightbasher,Nobleborn,Oakenflayer,Onyxthane,Opalhide,Orebreaker,Pebblechin,Redaxe,Redbraid,Redgrog,Rubythane,Runedigger,Runefury,Sapphiregut,Shattergrip,Shatterhand,Silverbeard,Silverbreaker,Silverthane,Smeltarmour,Smeltfeet,Snowbraids,Steelback,Stormbringer,Strongaxe,Strongforge,Strongmane,Strongshaper,Thunderback,Thunderbraid,Thundershaper,Trollbasher,Twilightborn,Underback,Underbane,Warmantle,Warmaster,Warmrock,Windbuckle,Wraithbender,Wraithbrew,Wyvernminer,Wyvernrock,Wyvernview"; var mElfFirst = "Aerendyl,Aeson,Afamrail,Ailduin,Ailmon,Aithlin,Albondiel,Alinar,Aumrauth,Avourel,Cluhurach,Conall,Corym,Dalyor,Darthoridan,Deldrach,Devdan,Durlan,Durothil,Dyffros,Edyrm,Elas,Elashor,Elmar,Elnaril,Elred,Erglareo,Eroan,Feno,Folen,Gaeleath,Gantar,Hagred,Hatharal,Ievos,Illianaro,Intevar,Jaonos,Jharym,Kharis,Khiiral,Khuumal,Kieran,Kiyuigh,Lamruil,Lashul,Mirthal,Molostroi,Morgan,Nlossae,Oenel,Orist,Othorion,Quynn,Ralikanthae,Respen,Rhangyl,Rilitar,Rolim,Ruehar,Ruvyn,Sharian,Silvyr,Sythaeryn,Tarron,Tasar,Theodemar,Travaran,Ualair,Vaalyun,Vulluin,Vulwin,Wylchyr,Wyrran"; var fElfFirst = "Aenwyn,Alea,Alerathla,Allynna,Amedee,Amnestria,Anhaern,Aravae,Ashryn,Ayla,Burolia,Chaenath,Chalsarda,Chandrelle,Chasianna,Chomylla,Claire,Delimbiyra,Delshandra,Ecaeris,Elasha,Elincia,Elmyra,Fi,Fieryat,Ghilanna,Haera,Hamalitia,Hycis,Imizael,Kavrala,Kenia,Lura,Lyeecia,Lyeyeru,Lyithion,Maeralya,Mariona,Meira,Merethyl,Merlara,Myantha,Myriani,Naumys,Nexxis,Nimronyn,Nueleth,Penelo,Phaerl,Raejiisa,Rania,Ratha,Renestrae,Rina,Ryllae,Sataleeti,Selussa,Shadowmoon,Shalendra,Sheedra,Sumia,Taenya,Tarasynora,Thasitalia,Umrielyth,Urmicca,Uschymna,Zoastria"; var ElfLast = "Aenwyn,Alea,Alerathla,Allynna,Amedee,Amnestria,Anhaern,Aravae,Ashryn,Ayla,Burolia,Chaenath,Chalsarda,Chandrelle,Chasianna,Chomylla,Claire,Delimbiyra,Delshandra,Ecaeris,Elasha,Elincia,Elmyra,Fi,Fieryat,Ghilanna,Haera,Hamalitia,Hycis,Imizael,Kavrala,Kenia,Lura,Lyeecia,Lyeyeru,Lyithion,Maeralya,Mariona,Meira,Merethyl,Merlara,Myantha,Myriani,Naumys,Nexxis,Nimronyn,Nueleth,Penelo,Phaerl,Raejiisa,Rania,Ratha,Renestrae,Rina,Ryllae,Sataleeti,Selussa,Shadowmoon,Shalendra,Sheedra,Sumia,Taenya,Tarasynora,Thasitalia,Umrielyth,Urmicca,Uschymna,Zoastria"; var mGnomeFirst = "Athkirn,Beeckee,Beelak,Beemovish,Bithik,Caldin,Ceenleenk,Ceethkeec,Citizz,Colkizz,Cubee,Cuncek,Damina,Dicli,Eeckuronk,Eekos,Eelden,Eeldenklac,Eeleezz,Eemkotik,Eenklinlak,Eeti,Eetkarn,Eetlunk,Eflildi,Eklithack,Etlis,Fickek,Firlunkluzz,Fithkin,Glamattli,Gleklimkac,Glirkeethish,Glituneenk,Glutlees,Gneecatu,Gnitleenk,Gullank,Heekeen,Heetlick,Henkuso,Hetkuk,Horeedozz,Hovindenk,Ikeefush,Inciwizz,Inkern,Karabron,Keeklickirn,Kimlime,Kitigok,Klalish,Klerkaflern,Klituduck,Klonbibi,Kriralee,Lorlash,Lubec,Lucu,Meetkemok,Okizz,Olka,Onbis,Orgetlack,Owibos,Potlush,Tacleen,Teece,Tekozz,Thelluck,Thenboresh,Thenirn,Thesinkuck,Thithkin,Thoreenbun,Totko,Ugamkan,Ulek,Unki,Urgeenlik"; var fGnomeFirst = "Apu,Bimka,Bimkake,Bixa,Bublytkli,Buttlizz,Dissa,Dituck,Dosledull,Duldis,Elki,Ethin,Ethun,Felattlank,Fettleyzz,Fitlas,Fokock,Gettlosh,Getu,Gito,Glamelbuzz,Glanosseell,Glideynk,Glinenkock,Glotloz,Gnitho,Gnonkik,Gnotedi,Gnubi,Gnumka,Gnykundey,Gotlakin,Guslyluck,Habibli,Hetheyck,Hitkyno,Inkul,Ipaz,Jalosh,Jime,Jorazz,Jufende,Ketkloll,Kleda,Klepugu,Klidifli,Klinkazz,Klithu,Kloldinezz,Klonklunik,Kloxall,Konnin,Kyfindez,Littlall,Mitha,Naslybal,Nelbi,Netlack,Nidika,Nunni,Nynki,Ondago,Pattlen,Penkli,Pethi,Sedoz,Sifessa,Sittlez,Solbonk,Symkili,Synkeck,Tallelas,Thepu,Thetkleluzz,Thinkol,Tibedok,Tilotklun,Tutke,Yna,Yssink"; var GnomeLast = "Acerbrake,Acerchart,Acermix,Angleballoon,Battlecub,Battlefizz,Bellowguard,Berryblast,Berrypatch,Billowspan,Billowwrench,Bizzspring,Blackcollar,Briskmix,Buzzdisk,Buzzinclock,Buzzinfizzle,Buzzinpatch,Clockcookie,Clockcub,Clocklocket,Clockspring,Cogclue,Cogfizz,Cogheart,Coilcraft,Coilfield,Coilheart,Coilkettle,Copperbrain,Copperguard,Dazzlebrass,Draxleclick,Draxlesignal,Dualbonk,Duallocket,Dualneedle,Dualpocket,Fastfluke,Fastwire,Finebrain,Finespan,Fixshape,Flukestrip,Fuzzbranch,Fuzzycub,Fuzzyfizzle,Fuzzyfluke,Fuzzyshape,Gearbox,Gearcookie,Gearshape,Grinddish,Grindguard,Grindriddle,Gripbranch,Heavydish,Lightbadge,Lockspell,Lucktwist,Mintbells,Mintriddle,Niftyclue,Niftydrop,Niftysignal,Niftystitch,Oilcount,Oilcub,Oilhouse,Oilsignal,Oiltrick,Overclick,Pipefield,Pipepocket,Pipespinner,Pitchdisk,Pitchwire,Porterdata,Porternozzle,Pumphammer,Quietcable,Quietfizzle,Quietkettle,Quirkbadge,Quirkpickle,Railbrass,Railspark,Rustdata,Rustheart,Sadgauge,Sharptwist,Sharpwizzle,Shiftdish,Shinemix,Shinepipe,Shinyfuzz,Shinystitch,Shortspark,Silverpickle,Singleclock,Slipspindle,Sliptwist,Spannerpipe,Spannertwist,Sparkbit,Sparkcrown,Sparklemaster,Sparkletrick,Sparkwire,Springcase,Springdock,Springkettle,Sprycollar,Sprydata,Sprypocket,Spryspell,Sprysprocket,Sprywizzle,Squigglestitch,Steamhouse,Steamstrip,Stitchchin,Stormchalk,Strikecup,Strikehammer,Strikeriddle,Swiftfuzz,Switchboss,Switchwhistle,Switchwrench,Teenyheart,Teenyspindle,Temperchalk,Temperspanner,Thistlemaster,Thistlespanner,Thunderfluke,Thunderstrip,Tidycookie,Tidygear,Tidyphase,Tidywrench,Tinkfuzz,Togglepatch,Togglespan,Tosslemix,Tosslescheme,Tossletorque,Trickfuzz,Trickycheek,Trickyclue,Whistleblock,Whistlespanner,Wiggleshape,Wirelaugh,Wobbleclue,Wrenchpocket,Wrenchsprocket"; var mOrcFirst = "Adzon,Ahzull,Akrak,Amur,Artakk,Arzod,Bhab,Bhatab,Bhodduk,Bhog,Bhotak,Bhub,Bokk,Brandokk,Brar,Bromuk,Brun,Bumvug,Dagrok,Dhamod,Dhozuk,Dhuddar,Dhull,Drokrol,Drugrod,Drull,Gagzog,Gakk,Gan,Gavrud,Ghad,Ghadgub,Ghamzal,Ghokk,Ghuhzug,Ghul,Ghull,Gokroll,Gon,Grag,Grall,Grogvul,Grovall,Gruk,Grun,Gutakk,Jak,Jal,Jarzug,Jogvun,Jogzak,Ladzan,Log,Lukrar,Marzob,Mog,Mubuk,Nok,Notud,Nutrok,Oggab,Rhudzukk,Rhug,Rhurlall,Rodzob,Runuk,Shagrakk,Shak,Shan,Shaval,Shog,Shok,Shokk,Shortukk,Shurdoll,Uhzod,Zhudruk,Zogzub,Zon"; var fOrcFirst = "Ange,Anzeh,Bef,Bem,Bhaansif,Bualle,Daak,Dah,Dalzen,Danga,Daovnih,Dav,Dhodde,Dhovdaaz,Dhun,Diwga,Doddi,Don,Emev,Evda,Evna,Ewnku,Gedgan,Ghagnu,Ghedgye,Gigan,Gigvie,Gomdaf,Hang,Hangah,Haulvon,Hen,Hev,Himdeek,Hum,Iedveek,Kolvuh,Kumvaz,Kung,Mal,Mong,Muv,Naggo,Nang,Oddeen,Ouggum,Ran,Rauk,Reedih,Rhaong,Rhaonka,Rhauv,Rhev,Rhivda,Rhoh,Roh,Ronzuav,Ruansaz,Samdak,Saonkol,Sel,Sevan,Shaaz,Sheethren,Shef,Shez,Shiek,Udkof,Uwnov,Viethroh,Vol,Volvav,Voz,Vudvo,Vumzaom,Yetak,Zaf,Zilla,Zom,Zutye"; var OrcLast = "Angry,Ankle-Axe,Arrogant,Ash-Axe,Barbarian,Barbaric,Battle-Axe,Beast-Axe,Berserk,Bitter-Axe,Black-Axe,Bloody,Bone-Axe,Brain-Axe,Brass-Axe,Breath-Axe,Brutal,Brute,Butcher,Chaos-Axe,Chest-Axe,Chin-Axe,Coarse,Cold,Cold-Axe,Crookor,Dark,Death-Axe,Defiant,Dirt-Axe,Disfiguror,Doom-Axe,Dream-Axe,Elf-Axe,Enormous,Eye-Axe,Fearless,Feet-Axe,Feisty,Fierce,Filthy,Finger-Axe,Flame-Axe,Foot-Axe,Forsaken,Frantic,Gargantuan,Ghost-Axe,Giant,Glorious,Gnoll-Axe,Gore-Axe,Grave,Grim,Gross,Hate-Axe,Head-Axe,Heart-Axe,Hell-Axe,Hollow,Horror-Axe,Iron-Axe,Joint-Axe,Kidney-Axe,Kill-Axe,Lethal,Loyal,Macabre,Mad,Maniac,Miscreant,Muscle-Axe,Nose-Axe,Noxious,Pest-Axe,Poison-Axe,Powerful,Pride-Axe,Proud,Putrid,Radical,Reckless,Repulsive,Rib-Axe,Rotten,Shady,Simple,Skin-Axe,Skull-Axe,Slave-Axe,Smug,Sorrow-Axe,Spine-Axe,Spite-Axe,Spiteful,Storm-Axe,Talon-Axe,Teeth-Axe,Throat-Axe,Thunder-Axe,Toe-Axe,Tooth-Axe,Turbulent,Unsightly,Vengeful,Venom-Axe,Vermin-Axe,Vivid,Warpor,Wild,Worthless"; var mHalflingFirst = "Are,Bral,Brarrum,Brefand,Bregok,Brelduk,Brodolom,Broldos,Davand,Dedilapp,Demaal,Dixurbond,Dolaard,Eba,Egiskos,Esguxum,Faarn,Fasgaar,Fedaargin,Feldam,Felde,Firapp,Helbim,Hinenas,Hufurd,Hurciner,Hurd,Ilo,Jaamu,Jifentir,Jis,Jond,Laantimro,Las,Lide,Lixafum,Lupp,Lurces,Meth,Murn,Namefi,Nefil,Nek,Nerd,Nur,Obidil,Ogek,Orcan,Paam,Paath,Pak,Perru,Podakord,Rankaandith,Redoku,Rend,Sestelern,Son,Sul,Sur,Surcim,Tistuskopp,Toldord,Tramaras,Trel,Trer,Trimrundupp,Trumomrur,Tumromrerd,Untesko,Vak,Ves,Vofak,Volirgand,Vrone,Vropp,Xaldern,Xexi,Xindund,Xofos"; var fHalflingFirst = "Aseven,Astroza,Azi,Azith,Basolko,Boti,Bulkus,Danrathe,Derlen,Destruh,Devae,Dihnalu,Dilke,Diostionu,Donthi,Errefo,Fiazu,Fohranu,Funthuhrus,Futha,Fuzelkiuth,Hittiambiuth,Homi,Ifeti,Itoth,Iulcai,Iustat,Iustrastruh,Jetto,Jiraes,Jozusio,Kailkedgu,Kassoth,Kazoti,Kiri,Korristi,Kuthulma,Kuve,Laelnun,Lalko,Malnurra,Mihnillath,Mohsohju,Motat,Mottolne,Mussa,Naizoe,Ofassit,Ohsirun,Olehsa,Ovoen,Prulimu,Prulnafe,Raefita,Revo,Riahsu,Roeyehsa,Rozoese,Ruttilku,Saldefah,Serore,Sissehjoth,Taruh,Tilnessio,Tinreth,Turan,Umio,Vaitanoe,Vasas,Viuritu,Vonut,Vumaes,Warrasi,Welni,Wihsa,Yeli,Yessenthu,Yilmes,Yilo,Yuzihre"; var HalflingLast = "Adlolvalk,Amberflow,Armsgaze,Armsspark,Arwur,Ashbend,Autumnsong,Badlir,Bardroot,Bardsoar,Blackblaze,Blagnelk,Blazetide,Bligddidlalk,Blossomblaze,Blossomsword,Bozzombonch,Brightbranch,Bubblizzurg,Bulvuth,Burdoselk,Buzzende,Candol,Celmalk,Celys,Cloudblossom,Cloudgrip,Cloudlight,Coldbrace,Coldcreek,Covengrip,Coventide,Cragvalor,Dagddal,Dagddes,Darkdew,Darkflaw,Dawndream,Dayflower,Defflugddorg,Demurig,Devrug,Dewwater,Downflower,Dreamforce,Duskcrest,Dustbloom,Easlo,Elbulnon,Enchalk,Enchelvu,Erir,Evendown,Ezzax,Farbreath,Fargazer,Felvi,Ferdibrog,Fidlailk,Filard,Flameroot,Forestglow,Freeridge,Frosttide,Fulldraft,Gagno,Glavlia,Glelug,Glelzognog,Glifflox,Glogddond,Glundibblonch,Gnalru,Gnerdanch,Gnimbe,Gnognancho,Gnudnusbu,Goldhelm,Goldroot,Grassbend,Gulvund,Havenhair,Havensurge,Helzore,Herwi,Hesdoblael,Highcoin,Holath,Hombin,Hondos,Humblegem,Humbletide,Iaggler,Irarulk,Kivrag,Klaesbol,Klorwaes,Kumord,Kydlord,Leafbrook,Lonewater,Lowkeep,Lowtide,Lowwing,Mosscrest,Negddug,Neversong,Neverspark,Nightfall,Noblewing,Nynangaend,Oblaig,Offlasdarg,Ogglulnaind,Palmearwex,Penchaird,Polbench,Pundevlanch,Redgem,Redlizrir,Redwater,Relno,Riasdo,Richcloud,Riverless,Shadowbrow,Simpleless,Sinbonch,Singleless,Singlespark,Softthorn,Stillleaf,Summerwith,Sunsurge,Swiftglow,Swiftsurge,Tabbledres,Talner,Togddinchind,Treepeak,Treestream,Truebough,Truesong,Turnorb,Undeazzon,Undufflon,Usrath,Vevlar,Viwherdean,Viwhibblend,Vlongog,Vloslingo,Vlosranorg,Vulvar,Waterhand,Watervale,Windblaze,Windhand,Windwhirl,Winterbeam"; var mTieflingFirst = "Abstinenco,Abundanco,Admiro,Adoro,Affinito,Allianco,Amiablo,Amito,Amnesto,Amouo,Benevolenco,Benevoleno,Blessino,Bliso,Blitho,Blytho,Bonno,Bravero,Brillianco,Brilliano,Charismo,Chanco,Charito,Chastito,Cheriso,Chivalro,Clarito,Cleao,Clemenco,Comforo,Concoro,Consolatioo,Consolo,Courago,Confidenco,Constanco,Contemplato,Dedicato,Deligho,Destino,Divinito,Declaro,Defianco,Desiro,Diversito,Divinito,Dreao,Eccentricito,Eloqueno,Enthusiaso,Evangelino,Eveo,Excellenco,Enduranco,Eloquenco,Eloqueno,Ephino,Epiphano,Essenco,Essentiao,Eternao,Ethereao,Ethicao,Euphono,Excellenco,Faito,Felicito,Fidelito,Freo,Freedoo,Frieno,Friendshio,Foreveo,Fascinatioo,Feao,Fearleso,Fidelito,Finesso,Fortuno,Forwaro,Futuro,Fearnoo,Gallano,Gao,Generouo,Gentlo,Graco,Glimmeo,Gloro,Happo,Happineso,Harmono,Honoo,Honouo,Hopo,Hopestilo,Humblo,Humbleneso,Halcyoo,Harmono,Honoo,Hosanno,Honesto,Hate-Evio,Hardo,Integrito,Illuminatioo,Imaginatioo,Imagino,Infinito,Innoceno,Innocenco,Inspiratioo,Juso,Justico,Journeo,Joo,Jollo,Kindneso,Kismeo,Liberto,Lovo,Learneo,Legeno,Livelo,Loyao,Loyalto,Merco,Modesto,Memoro,Merio,Merro,Miraclo,Mirto,Muso,Mystero,Mindwelo,Makepeaco,Noblo,Obedienco,Obedieno,Omnipotenco,Patienco,Peaco,Pilgrio,Pleasano,Promiso,Prospeo,Prudenco,Purito,Pacifio,Panacho,Passioo,Peacefuo,Philosopho,Pleasanco,Pleasano,Promiso,Prospeo,Prosperito,Providenco,Pieto,Remembeo,Remembranco,Resolvo,Radianco,Rejoico,Relianco,Revelatioo,Reverenco,Rhytho,Reasoo,Ransoo,Serendipito,Serenito,Silenco,Simplicito,Sincerito,Sojourneo,Sanctito,Sanctuaro,Sereno,Societo,Solaco,Solemnito,Sindeno,Submio,Solidarito,Spirio,Stratego,Temperanco,Thankfuo,Thanksgivino,Truto,Tendeo,Toleranco,Tranquio,Trulo,Truso,Unito,Valoo,Valouo,Valiano,Virtuo,Verito,Waitstilo,Welcomo,Wisdoo,Winsomo,Wistfuo,Zeao,Zealoo,Zealouo"; var fTieflingFirst = "Abstinencya,Abundancya,Admirya,Adorya,Affinitya,Alliancya,Amiablya,Amitya,Amnestya,Amouya,Benevolencya,Benevolenya,Blessinya,Blisya,Blithya,Blythya,Bonnya,Braverya,Brilliancya,Brillianya,Charismya,Chancya,Charitya,Chastitya,Cherisya,Chivalrya,Claritya,Cleaya,Clemencya,Comforya,Concorya,Consolatioya,Consolya,Couragya,Confidencya,Constancya,Contemplatya,Dedicatya,Delighya,Destinya,Divinitya,Declarya,Defiancya,Desirya,Diversitya,Divinitya,Dreaya,Eccentricitya,Eloquenya,Enthusiasya,Evangelinya,Eveya,Excellencya,Endurancya,Eloquencya,Eloquenya,Ephinya,Epiphanya,Essencya,Essentiaya,Eternaya,Ethereaya,Ethicaya,Euphonya,Excellencya,Faitya,Felicitya,Fidelitya,Freya,Freedoya,Frienya,Friendshiya,Foreveya,Fascinatioya,Feaya,Fearlesya,Fidelitya,Finessya,Fortunya,Forwarya,Futurya,Fearnoya,Gallanya,Gaya,Generouya,Gentlya,Gracya,Glimmeya,Glorya,Happya,Happinesya,Harmonya,Honoya,Honouya,Hopya,Hopestilya,Humblya,Humblenesya,Halcyoya,Harmonya,Honoya,Hosannya,Honestya,Hate-Eviya,Hardya,Integritya,Illuminatioya,Imaginatioya,Imaginya,Infinitya,Innocenya,Innocencya,Inspiratioya,Jusya,Justicya,Journeya,Joya,Jollya,Kindnesya,Kismeya,Libertya,Lovya,Learneya,Legenya,Livelya,Loyaya,Loyaltya,Mercya,Modestya,Memorya,Meriya,Merrya,Miraclya,Mirtya,Musya,Mysterya,Mindwelya,Makepeacya,Noblya,Obediencya,Obedienya,Omnipotencya,Patiencya,Peacya,Pilgriya,Pleasanya,Promisya,Prospeya,Prudencya,Puritya,Pacifiya,Panachya,Passioya,Peacefuya,Philosophya,Pleasancya,Pleasanya,Promisya,Prospeya,Prosperitya,Providencya,Pietya,Remembeya,Remembrancya,Resolvya,Radiancya,Rejoicya,Reliancya,Revelatioya,Reverencya,Rhythya,Reasoya,Ransoya,Serendipitya,Serenitya,Silencya,Simplicitya,Sinceritya,Sojourneya,Sanctitya,Sanctuarya,Serenya,Societya,Solacya,Solemnitya,Sindenya,Submiya,Solidaritya,Spiriya,Strategya,Temperancya,Thankfuya,Thanksgivinya,Trutya,Tendeya,Tolerancya,Tranquiya,Trulya,Trusya,Unitya,Valoya,Valouya,Valianya,Virtuya,Veritya,Waitstilya,Welcomya,Wisdoya,Winsomya,Wistfuya,Zeaya,Zealoya,Zealouya"; var TieflingLast = "Ael,Aer,Af,Ah,Al,Am,Ama,An,Ang,Ansr,Ar,Arì,Arn,Aza,Bael,Bes,Cael,Cal,Cas,Cla,Cor,Cy,Dae,Dho,Dre,Du,Eil,Eir,El,Er,Ev,Fera,Fi,Fir,Fis,Gael,Gar,Gil,Ha,Hu,Ia,Il,Ja,Jar,Ka,Kan,Ker,Keth,Koeh,Kor,Ky,La,Laf,Lam,Lue,Ly,Mai,Mal,Mara,My,Na,Nai,Nim,Nu,Ny,Py,Raer,Re,Ren,Rhy,Ru,Rua,Rum,Rid,Sae,Seh,Sel,Sha,She,Si,Sim,Sol,Sum,Syl,Ta,Tahl,Tha,Tho,Ther,Thro,Tia,Tra,Ty,Uth,Ver,Vil,Von,Ya,Za,Zy"; var sFFirstnames = ""; var sMFirstnames = ""; var sLastnames = ""; switch (argRace) { case "Human": sFFirstnames = fHumanFirst; sMFirstnames = mHumanFirst; sLastnames = HumanLast; break; case "Tabaxi": sFFirstnames = TabaxiFirst; sMFirstnames = TabaxiFirst; sLastnames = TabaxiLast; break; case "Dragonborn": sFFirstnames = fDragonbornFirst; sMFirstnames = mDragonbornFirst; sLastnames = DragonbornLast; break; case "Dwarf": sFFirstnames = fDwarfFirst; sMFirstnames = mDwarfFirst; sLastnames = DwarfLast; break; case "Elf": sFFirstnames = fElfFirst; sMFirstnames = mElfFirst; sLastnames = ElfLast; break; case "Gnome": sFFirstnames = fGnomeFirst; sMFirstnames = mGnomeFirst; sLastnames = GnomeLast; break; case "Half-elf": sFFirstnames = fElfFirst + "," + fHumanFirst; sMFirstnames = mElfFirst + "," + mHumanFirst; sLastnames = HumanLast + "," + ElfLast; break; case "Half-orc": sFFirstnames = fOrcFirst + "," + fHumanFirst; sMFirstnames = mOrcFirst + "," + mHumanFirst; sLastnames = OrcLast + "," + HumanLast; break; case "Halfling": sFFirstnames = fHalflingFirst; sMFirstnames = mHalflingFirst; sLastnames = HalflingLast; break; case "Tiefling": sFFirstnames = fTieflingFirst; sMFirstnames = mTieflingFirst; sLastnames = TieflingLast; break; } var arrMFirstnames = sMFirstnames.split(","); var arrFFirstnames = sFFirstnames.split(","); var arrLastnames = sLastnames.split(","); var name = ""; var iRand = 0; if (argGender == "f") { iRand = Math.floor(Math.random() * arrFFirstnames.length); name = arrFFirstnames[iRand]; } else { iRand = Math.floor(Math.random() * arrMFirstnames.length); name = arrMFirstnames[iRand]; } iRand = Math.floor(Math.random() * arrLastnames.length); name = fantasize(name) + " " + fantasize(arrLastnames[iRand]); return name; } function fantasize(name) { var arr = []; arr[0] = "a,ay,ai,ah,uh,eh,',-"; arr[1] = "e,ee,ei,ea,eh,',-"; arr[2] = "s,s,z"; arr[3] = "z,s,z"; arr[4] = "i,ay,ih,y,',-"; arr[5] = "o,oh,oo,',-"; arr[6] = "u,uh,eh,',-"; arr[7] = "j,g,dj,dh,zh"; arr[8] = "g,j,dj,dh,zh"; arr[9] = "an,en,in,on,un"; arr[10] = "en,an,in,on,un"; arr[11] = "in,en,an,on,un"; arr[12] = "on,en,in,an,un"; arr[13] = "un,en,in,on,an"; var arrChg = arr[Math.floor(Math.random() * arr.length)].split(","); var arrChg2 = arr[Math.floor(Math.random() * arr.length)].split(","); var xChg = arrChg[1 + Math.floor(Math.random() * (arrChg.length - 1))]; var xChg2 = arrChg2[1 + Math.floor(Math.random() * (arrChg.length - 1))]; //log(name+':'+arrChg[0]+','+xChg); name = name.replace(arrChg[0], xChg); //name = name.replace(arrChg2[0],xChg2); return name; } function pathJSON() { var j = { Alchemist: { Level: 1, HD: "d6", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 9, dexterity_base: 13, constitution_base: 10, intelligence_base: 16, wisdom_base: 14, charisma_base: 12, npcspellcastingflag: 1, spellcasting_ability: "@{intelligence_mod}+", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: 4, npc_athletics_base: "", npc_deception_base: "", npc_history_base: 2, npc_insight_base: 2, npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: 2, npc_nature_base: "", npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "calculate", npc_hpformula: "calculate" }, Aristocrat: { Level: 1, HD: "d8", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 10, dexterity_base: 10, constitution_base: 12, intelligence_base: 13, wisdom_base: 14, charisma_base: 16, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: "", npc_animal_handling_base: 1, npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: 2, npc_history_base: 1, npc_insight_base: 2, npc_intimidation_base: 1, npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: 1, npc_performance_base: "", npc_persuasion_base: 2, npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Brute: { Level: 1, HD: "d12", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 18, dexterity_base: 14, constitution_base: 16, intelligence_base: 9, wisdom_base: 10, charisma_base: 13, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: "", npc_animal_handling_base: 2, npc_arcana_base: "", npc_athletics_base: 4, npc_deception_base: "", npc_history_base: "", npc_insight_base: "", npc_intimidation_base: 2, npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: 1, npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: 1, hp: "", npc_hpformula: "calculate" }, Clergy: { Level: 1, HD: "d8", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 10, dexterity_base: 9, constitution_base: 12, intelligence_base: 13, wisdom_base: 16, charisma_base: 14, npcspellcastingflag: 1, spellcasting_ability: "@{wisdom_mod}+", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: "", npc_history_base: 2, npc_insight_base: 1, npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: 1, npc_nature_base: "", npc_perception_base: "", npc_performance_base: 1, npc_persuasion_base: 1, npc_religion_base: 4, npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Commoner: { Level: 1, HD: "d6", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 16, dexterity_base: 12, constitution_base: 14, intelligence_base: 9, wisdom_base: 13, charisma_base: 10, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: "", npc_animal_handling_base: 2, npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: "", npc_history_base: "", npc_insight_base: "", npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: 2, npc_perception_base: 2, npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: 1, npc_sleight_of_hand_base: "", npc_stealth_base: 1, npc_survival_base: 2, hp: "", npc_hpformula: "calculate" }, Craftsman: { Level: 1, HD: "d6", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 16, dexterity_base: 13, constitution_base: 14, intelligence_base: 10, wisdom_base: 10, charisma_base: 12, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: "", npc_animal_handling_base: 1, npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: 1, npc_history_base: "", npc_insight_base: 2, npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: 2, npc_performance_base: "", npc_persuasion_base: 4, npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Enchanter: { Level: 1, HD: "d6", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 9, dexterity_base: 13, constitution_base: 10, intelligence_base: 16, wisdom_base: 14, charisma_base: 12, npcspellcastingflag: 1, spellcasting_ability: "@{intelligence_mod}+", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: 4, npc_athletics_base: "", npc_deception_base: "", npc_history_base: 2, npc_insight_base: 2, npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: 2, npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Geomancer: { Level: 1, HD: "d6", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 9, dexterity_base: 13, constitution_base: 10, intelligence_base: 16, wisdom_base: 14, charisma_base: 12, npcspellcastingflag: 1, spellcasting_ability: "@{intelligence_mod}+", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: 4, npc_athletics_base: "", npc_deception_base: "", npc_history_base: 2, npc_insight_base: 2, npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: 2, npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Wizard: { Level: 1, HD: "d6", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 9, dexterity_base: 13, constitution_base: 10, intelligence_base: 18, wisdom_base: 14, charisma_base: 12, npcspellcastingflag: 1, spellcasting_ability: "@{intelligence_mod}+", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: 4, npc_athletics_base: "", npc_deception_base: "", npc_history_base: 4, npc_insight_base: 1, npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: 1, npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Hero: { Level: 1, HD: "d10", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 16, dexterity_base: 14, constitution_base: 14, intelligence_base: 10, wisdom_base: 12, charisma_base: 9, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: 1, npc_animal_handling_base: 1, npc_arcana_base: "", npc_athletics_base: 1, npc_deception_base: "", npc_history_base: 1, npc_insight_base: 1, npc_intimidation_base: 1, npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: 1, npc_perception_base: 1, npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: 1, npc_survival_base: 1, hp: "", npc_hpformula: "calculate" }, Hunter: { Level: 1, HD: "d10", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 14, dexterity_base: 16, constitution_base: 14, intelligence_base: 10, wisdom_base: 12, charisma_base: 9, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: "", npc_animal_handling_base: 2, npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: 1, npc_history_base: "", npc_insight_base: "", npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: 1, npc_nature_base: 2, npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: 2, npc_survival_base: 2, hp: "", npc_hpformula: "calculate" }, Bard: { Level: 1, HD: "d8", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 14, dexterity_base: 14, constitution_base: 12, intelligence_base: 10, wisdom_base: 9, charisma_base: 16, npcspellcastingflag: 1, spellcasting_ability: "@{charisma_mod}+", npc_acrobatics_base: 1, npc_animal_handling_base: 1, npc_arcana_base: 1, npc_athletics_base: "", npc_deception_base: 1, npc_history_base: "", npc_insight_base: 1, npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: 1, npc_performance_base: 2, npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: 1, npc_stealth_base: 1, npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Merchant: { Level: 1, HD: "d6", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 9, dexterity_base: 12, constitution_base: 10, intelligence_base: 13, wisdom_base: 14, charisma_base: 16, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: "", npc_animal_handling_base: 1, npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: 4, npc_history_base: "", npc_insight_base: 1, npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: 4, npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Necromancer: { Level: 1, HD: "d6", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 10, dexterity_base: 12, constitution_base: 9, intelligence_base: 13, wisdom_base: 14, charisma_base: 16, npcspellcastingflag: 1, spellcasting_ability: "@{intelligence_mod}+", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: "", npc_history_base: "", npc_insight_base: "", npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Shaman: { Level: 1, HD: "d8", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 10, dexterity_base: 9, constitution_base: 12, intelligence_base: 13, wisdom_base: 16, charisma_base: 14, npcspellcastingflag: 1, spellcasting_ability: "@{wisdom_mod}+", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: "", npc_history_base: "", npc_insight_base: "", npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Summoner: { Level: 1, HD: "d6", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 10, dexterity_base: 12, constitution_base: 9, intelligence_base: 13, wisdom_base: 14, charisma_base: 16, npcspellcastingflag: 1, spellcasting_ability: "@{intelligence_mod}+", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: "", npc_history_base: "", npc_insight_base: "", npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Thief: { Level: 1, HD: "d8", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 12, dexterity_base: 16, constitution_base: 10, intelligence_base: 9, wisdom_base: 13, charisma_base: 14, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: "", npc_history_base: "", npc_insight_base: "", npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Tinkerer: { Level: 1, HD: "d8", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 13, dexterity_base: 16, constitution_base: 10, intelligence_base: 14, wisdom_base: 9, charisma_base: 12, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: "", npc_history_base: "", npc_insight_base: "", npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Warrior: { Level: 1, HD: "d10", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 16, dexterity_base: 14, constitution_base: 14, intelligence_base: 10, wisdom_base: 12, charisma_base: 9, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: "", npc_history_base: "", npc_insight_base: "", npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "", npc_hpformula: "calculate" }, Villain: { Level: 1, HD: "d10", npc: 1, mancer_npc: "on", mancer_cancel: "on", l1mancer_status: "complete", strength_base: 14, dexterity_base: 14, constitution_base: 14, intelligence_base: 10, wisdom_base: 12, charisma_base: 16, npcspellcastingflag: "", spellcasting_ability: "", npc_acrobatics_base: "", npc_animal_handling_base: "", npc_arcana_base: "", npc_athletics_base: "", npc_deception_base: "", npc_history_base: "", npc_insight_base: "", npc_intimidation_base: "", npc_investigation_base: "", npc_medicine_base: "", npc_nature_base: "", npc_perception_base: "", npc_performance_base: "", npc_persuasion_base: "", npc_religion_base: "", npc_sleight_of_hand_base: "", npc_stealth_base: "", npc_survival_base: "", hp: "calculate", npc_hpformula: "calculate" } } ; return j; }
"randName.argGender:m" "randName.argRace:Tiefling" "Character Passioo Gar created" "Creating attribut Level" "Creating attribut HD" "Creating attribut npc" "Creating attribut mancer_npc" "Creating attribut mancer_cancel" "Creating attribut l1mancer_status" "Creating attribut strength_base" "Creating attribut dexterity_base" "Creating attribut constitution_base" "Creating attribut intelligence_base" "Creating attribut wisdom_base" "Creating attribut charisma_base" "Creating attribut npcspellcastingflag" "Creating attribut spellcasting_ability" "Creating attribut npc_acrobatics_base" "Creating attribut npc_animal_handling_base" "Creating attribut npc_arcana_base" "Creating attribut npc_athletics_base" "Creating attribut npc_deception_base" "Creating attribut npc_history_base" "Creating attribut npc_insight_base" "Creating attribut npc_intimidation_base" "Creating attribut npc_investigation_base" "Creating attribut npc_medicine_base" "Creating attribut npc_nature_base" "Creating attribut npc_perception_base" "Creating attribut npc_performance_base" "Creating attribut npc_persuasion_base" "Creating attribut npc_religion_base" "Creating attribut npc_sleight_of_hand_base" "Creating attribut npc_stealth_base" "Creating attribut npc_survival_base" "Creating attribut hp" "Creating attribut npc_hpformula"
Like I said, the Character Creates properly, with the tags I scraped from a manually created character, but the values don't show up in the sheet.
RandomNPCMacro !genNPC ?{Gender|Random|f|m},?{Race|Random|Dragonborn|Dwarf|Elf|Gnome|Half-elf|Half-orc|Halfling|Human|Tabaxi|Tiefling}
1562614090

Edited 1562614186
GiGs
Pro
Sheet Author
API Scripter
I dont know what sheet you are using, but have you confirmed that the attributes listed in the script actually exist on the character sheet? Check out the html and look at the attribute names. Any attribute you create will appear on the attributes & abilities, but only the ones already defined will appear on the character sheet tab, and they have to be named exactly.
Using the Roll 20 5E sheet.  I got them directly from a manually created Roll20 5E Sheet.
Is there anywhere that has a list of the roll20 5E sheet attributes (preferably in JSON Format)?
1562616284
The Aaron
Roll20 Production Team
API Scripter
Unlikely. You can grab them from the html with a regular expression and some time.  None of the fields on the character sheet you're trying to fill out are Repeating Sections, are they?  Also, you might need to use .setWithWorker() on those, but I'm not sure as I'm on my phone and don't like reading code on that small a screen. =D