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

[help] Setting contents of a character sheet Bio field

I'm in the process of setting up a Campaign that I can open to run simple lvl 1 one-shots for new players or for players who don't have time to devote to a full campaign and to streamline the setup process I'm going to use pre-generated characters. The script I am currently using is a modification of Brian's Character Generator and the only thing I'm having difficulty with is how to put information into the Bio and GMNotes fields. I see on the wiki that there is some information, but if I understand it correctly (which is unlikely at this point) that is how you read what is in that field. I would like to set some information into that field such as an inventory list, character traits, persona, description, and maybe a few notes for me personally. Any help would be appreciated.
You may also want to look at HoneyBadger's creators. I've used his work, and now you're able to fill in character sheets. For example: I created a plugin for Hero Lab to create Castles & Crusades PC's Then I created the Roll20 Character sheets (though the dev's have yet to merge my pull requests) Next I adapted HoneyBadgers script to populate the character sheet from my Hero Lab XML output. Hope this give you a small push to accomplish what you're trying to do.
Brian's script doesn't do anything with the Bio as it is. When you type !journal Michael, it will create a character and add 8 attributes to the attributes panel. Now you said it was modified, so really, to be of any help we will need to see the modification.
BoomerET said: You may also want to look at HoneyBadger's creators. I've used his work, and now you're able to fill in character sheets. For example: I created a plugin for Hero Lab to create Castles & Crusades PC's Then I created the Roll20 Character sheets (though the dev's have yet to merge my pull requests) Next I adapted HoneyBadgers script to populate the character sheet from my Hero Lab XML output. Hope this give you a small push to accomplish what you're trying to do. I'm not really using the newer sheets yet.. though I have been considering it. My only issue with it is that I am currently running Alex's 4e combat script to speed up combat a bit. I'm not sure how the macro creation would work to save time and have them fit with how the script reads information. Michael P. said: Brian's script doesn't do anything with the Bio as it is. When you type !journal Michael, it will create a character and add 8 attributes to the attributes panel. Now you said it was modified, so really, to be of any help we will need to see the modification. Here's the current script: /** * Permit all players to create new characters. Created characters will be * visible in all journals and controllable by the player who created it. * * Syntax: !journal Character Name * `Character Name' has no limitations, and will be used for the character's * name in the journal. The attributes LVL, STR, CON, DEX, INT, WIS, CHA, ARM * PEN will be created, and LVL will be set to 1/30. */ on('chat:message', function(msg) { if(msg.type == 'api' && msg.content.indexOf('!journal ') != -1) { var name = msg.content.substring(9); var character = createObj('character', { name: name, bio: '', gmnotes: '', archived: false, inplayerjournals: '', controlledby: msg.playerid }); createObj('attribute', { name: 'Current Level', _characterid: character.id }); createObj('attribute', { name: '1/2 Lvl', _characterid: character.id }); createObj('attribute', { name: 'HP', _characterid: character.id }); createObj('attribute', { name: 'Temp HP', _characterid: character.id }); createObj('attribute', { name: 'AC', _characterid: character.id }); createObj('attribute', { name: 'Fort', _characterid: character.id }); createObj('attribute', { name: 'Reflex', _characterid: character.id }); createObj('attribute', { name: 'Will', _characterid: character.id }); createObj('attribute', { name: 'STR_MOD', _characterid: character.id }); createObj('attribute', { name: 'CON_MOD', _characterid: character.id }); createObj('attribute', { name: 'DEX_MOD', _characterid: character.id }); createObj('attribute', { name: 'INT_MOD', _characterid: character.id }); createObj('attribute', { name: 'WIZ_MOD', _characterid: character.id }); createObj('attribute', { name: 'CHA_MOD', _characterid: character.id }); createObj('attribute', { name: 'Weapon_Enhancement', _characterid: character.id }); createObj('attribute', { name: 'surges', _characterid: character.id }); createObj('attribute', { name: 'surgevalue', _characterid: character.id }); createObj('attribute', { name: 'Init', _characterid: character.id }); createObj('attribute', { name: 'Thievery', _characterid: character.id }); createObj('attribute', { name: 'Perception', _characterid: character.id }); createObj('attribute', { name: 'fire_resist', _characterid: character.id }); createObj('attribute', { name: 'cold_resist', _characterid: character.id }); createObj('attribute', { name: 'acid_resist', _characterid: character.id }); createObj('attribute', { name: 'force_resist', _characterid: character.id }); createObj('attribute', { name: 'lightning_resist', _characterid: character.id }); createObj('attribute', { name: 'necrotic_resist', _characterid: character.id }); createObj('attribute', { name: 'poison_resist', _characterid: character.id }); createObj('attribute', { name: 'psychic_resist', _characterid: character.id }); createObj('attribute', { name: 'radiant_resist', _characterid: character.id }); createObj('attribute', { name: 'thunder_resist', _characterid: character.id }); createObj('attribute', { name: 'all_resist', _characterid: character.id }); createObj('attribute', { name: 'Fate Points', _characterid: character.id }); createObj('ability', { name: 'Roll Init', action: '/gmroll 1d20+@{Init} &{tracker}', istokenaction: true, _characterid: character.id }); createObj('ability', { name: 'Skill Check', action: '[[1d20+?{Skill bonus|0}]] ?{What skill?|save vs evil GM}', istokenaction: true, _characterid: character.id }); createObj('ability', { name: 'At Will', action: '!power @{selected|token_id} "Power Name" -t @{target|token_id} -a [[1d20+X+?{bonus to attack|0}]] -v Defense -d [[XdY+X+?{damage bonus|0}]] -T damage type -D [[crit damage]] -y crit damage type -C crit range -h "This happens on a hit" -H hit-status -m "This happens on a miss" -M miss-status -e "this happens no matter what" -E "effect status" -c [[heal amount]] -b [[Temp HPs amount]] -l (half damage on miss if present) -u "At-Will" -A "Standard Action" -r "Melee or Ranged weapon" -S "one creature" -k "Arcane, Weapon" -R "Trigger" -s "Special text"', istokenaction: true, _characterid: character.id }); createObj('ability', { name: 'At Will', action: '!power @{selected|token_id} "Power Name" -t @{target|token_id} -a [[1d20+X+?{bonus to attack|0}]] -v Defense -d [[XdY+X+?{damage bonus|0}]] -T damage type -D [[crit damage]] -y crit damage type -C crit range -h "This happens on a hit" -H hit-status -m "This happens on a miss" -M miss-status -e "this happens no matter what" -E "effect status" -c [[heal amount]] -b [[Temp HPs amount]] -l (half damage on miss if present) -u "At-Will" -A "Standard Action" -r "Melee or Ranged weapon" -S "one creature" -k "Arcane, Weapon" -R "Trigger" -s "Special text"', istokenaction: true, _characterid: character.id }); createObj('ability', { name: 'Encounter', action: '!power @{selected|token_id} "Power Name" -t @{target|token_id} -a [[1d20+X+?{bonus to attack|0}]] -v Defense -d [[XdY+X+?{damage bonus|0}]] -T damage type -D [[crit damage]] -y crit damage type -C crit range -h "This happens on a hit" -H hit-status -m "This happens on a miss" -M miss-status -e "this happens no matter what" -E "effect status" -c [[heal amount]] -b [[Temp HPs amount]] -l (half damage on miss if present) -u "Encounter" -A "Standard Action" -r "Melee or Ranged weapon" -S "one creature" -k "Arcane, Weapon" -R "Trigger" -s "Special text"', istokenaction: true, _characterid: character.id }); createObj('ability', { name: 'Daily', action: '!power @{selected|token_id} "Power Name" -t @{target|token_id} -a [[1d20+X+?{bonus to attack|0}]] -v Defense -d [[XdY+X+?{damage bonus|0}]] -T damage type -D [[crit damage]] -y crit damage type -C crit range -h "This happens on a hit" -H hit-status -m "This happens on a miss" -M miss-status -e "this happens no matter what" -E "effect status" -c [[heal amount]] -b [[Temp HPs amount]] -l (half damage on miss if present) -u "Daily" -A "Standard Action" -r "Melee or Ranged weapon" -S "one creature" -k "Arcane, Weapon" -R "Trigger" -s "Special text"', istokenaction: true, _characterid: character.id }); createObj('ability', { name: 'Magic Item', action: '!power @{selected|token_id} "Power Name" -t @{target|token_id} -a [[1d20+X+?{bonus to attack|0}]] -v Defense -d [[XdY+X+?{damage bonus|0}]] -T damage type -D [[crit damage]] -y crit damage type -C crit range -h "This happens on a hit" -H hit-status -m "This happens on a miss" -M miss-status -e "this happens no matter what" -E "effect status" -c [[heal amount]] -b [[Temp HPs amount]] -l (half damage on miss if present) -u "Item" -A "Standard Action" -r "Melee or Ranged weapon" -S "one creature" -k "Arcane, Weapon" -R "Trigger" -s "Special text"', istokenaction: true, _characterid: character.id }); }; });
1405186737
The Aaron
Roll20 Production Team
API Scripter
If you are wanting to add code that sets things in the notes/gmbotes, see this wiki section: <a href="https://wiki.roll20.net/API:Objects#Using_the_Note" rel="nofollow">https://wiki.roll20.net/API:Objects#Using_the_Note</a>... Setting works like any property, but getting is asynchronous and requires a function to receive the value.
Aaron said: If you are wanting to add code that sets things in the notes/gmbotes, see this wiki section: <a href="https://wiki.roll20.net/API:Objects#Using_the_Note" rel="nofollow">https://wiki.roll20.net/API:Objects#Using_the_Note</a>... Setting works like any property, but getting is asynchronous and requires a function to receive the value. I read that, but I am still trying to understand how to apply it.
1405208622
The Aaron
Roll20 Production Team
API Scripter
Well, what do you want to do? Are you trying to add some tailored note to the journal entry when it's created, or add it with a different command? You could change part of the script to be this: var contents= msg.content.substring(9).split(' -- ',2), name = contents[0], gmnotes = contents[1] || ''; var character = createObj('character', { name: name, bio: '', gmnotes: gmnotes, and then call it like this to add GM Notes: !journal Aaron the Awesome -- This is a bunch of GM Notes that will end up in the gmnotes variable (and field)
I'd like to be able to create a header for an Inventory, and maybe a few character traits and a little backstory.. since they are all pre-generated. Something like: !journal Rogue !journal Cleric !journal Fighter and have each sheet already set up via the script. Does that make sense?