PDA

View Full Version : Ironsworn Module, Character Sheet and Theme



GeorgeOrr
February 28th, 2020, 21:55
Ironsworn is an RPG built for solo, co-op and guided play. Written by Shawn Tomkin and released under creative commons (non-commercial). Well worth checking out at
https://www.ironswornrpg.com

I've been using MoreCore to play and as I added things realized others may be interested in seeing what I brought over. It's also been an opportunity for me to learn more about MoreCore. Many thanks to Damned for his pointers with this.

I've attached a character sheet, a module and a start on a theme.

The Character sheet includes all the Moves and is quite usable without the module BUT there are a couple of Moves that have tables attached you wont be able to access without the module. Also I use Story Templates in the module to generate trackers for Vows and Bonds. The Vows and Bonds need to be added to individual character sheets after being generated.

The module includes all the Moves (as rolls), all the Assets (listed under the heading "Abilities") and all the tables/Oracles.

These are all from the core game, I haven't attacked the Delve expansion yet.

The Theme is a start for me following along with Damned's videos on how to make a theme. At the moment it replaces the background with something that feels Ironsworny to me. I'll probably add to that as I take breaks from actually playing and watch more of Damned's videos.

This is my first attempt at anything like this, so I'd love to hear feedback.

BTW I asked on the Ironsworn discord if it was ok to post this. Shawn was kind enough to say yes and just sent a note to support confirming that. Can't stress enough how great it is that he's so open to having his work spread. Buy stuff from him. https://www.ironswornrpg.com and at https://www.drivethrurpg.com/browse/pub/12876/Shawn-Tomkin



GeorgeOrr

VenomousFiligree
February 28th, 2020, 22:15
Great work!

damned
February 29th, 2020, 00:21
Nice work GeorgeOrr

Am I right in thinking that IronSworn can be played solo?

GeorgeOrr
February 29th, 2020, 00:23
That is right. In fact Solo seems to be the main focus though I do see co-op mentioned a lot as well. It runs very well without a DM.

bkworm13
February 29th, 2020, 01:16
Yes, Ironsworn is Primarily Solo/cooperative using PBTA style moves and oracles that are themed to the setting and written to provide inspiration, rather than require vague interpretation like mythic for example. Its pretty amazing.

VenomousFiligree
February 29th, 2020, 13:03
I've run a few games of Co-op/GMless, works really well.

kevdog45
April 25th, 2020, 06:40
So I'm guessing this doesn't work with Unity? I get several errors every time I make a roll.

GeorgeOrr
April 25th, 2020, 17:15
Kevdog45 - you are right I get the same thing. Funny thing I hadn't setup Morecore in Unity until just now. I don't get the same problem with non-ironsworn rolls, but using /iron reliably errors.

Damned - the error that gets raised seems to be in manager_custom_iron.lua and referenced an attempt to index a field with a nil value. I've copied the error from the log below. Odd thing is I've made sure it's the same Morecore version in classic as in unity, and it works fine in classic. I can't see why unity would act differently with a lua like that.

I did the same roll in classic and grabbed the console output. Not great with reading these, but it looks like in classic it sees 3 dice being rolled and in unity it sees 4 for some reason. Then since there's not a fourth die it is nil . I think. Both outputs below.

I'm wondering if this is an issue with Unity reading the lua differently for some reason. But that may be conclusion jumping.

Any thoughts? Thanks for any insight.

Error in Unity: rolling /iron 2d10+1d6+2
[4/25/2020 11:41:27 AM] s'performAction: ' | nil | nil | s'2d10+1d6+2'
[4/25/2020 11:41:27 AM] s'performAction: ' | nil | nil | { s'sType' = s'iron', s'aDice' = { #1 = s'd10', #2 = s'd10', #3 = s'd6' }, s'nMod' = #2, s'sDesc' = s'2d10+1d6+2' }
[4/25/2020 11:41:29 AM] s'onLanded: ' | nil | nil | { s'aDice' = { #1 = { s'value' = #4, s'type' = s'd10', s'result' = #4 }, #2 = { s'value' = #2, s'type' = s'd10', s'result' = #2 }, #3 = { s'value' = #4, s'type' = s'd6', s'result' = #4 }, s'expr' = s'2d10+d6' }, s'nMod' = #2, s'sType' = s'iron', s'bSecret' = bFALSE, s'sDesc' = s'2d10+1d6+2' }
[4/25/2020 11:41:29 AM] { s'aDice' = { #1 = { s'value' = #4, s'type' = s'd10', s'result' = #4 }, #2 = { s'value' = #2, s'type' = s'd10', s'result' = #2 }, #3 = { s'value' = #4, s'type' = s'd6', s'result' = #4 }, s'expr' = s'2d10+d6' }, s'nMod' = #2, s'sType' = s'iron', s'bSecret' = bFALSE, s'sDesc' = s'2d10+1d6+2' }
[4/25/2020 11:41:29 AM] s'diceRolled: ' | #4
[4/25/2020 11:41:29 AM] s'nMod: ' | #2
[4/25/2020 11:41:29 AM] [<color="red">ERROR</color>] Script execution error: [string "scripts/manager_custom_iron.lua"]:137: attempt to index field '?' (a nil value)

Console output in Classic
Runtime Notice: s'performAction: ' | nil | nil | s'2d10+1d6+2'
Runtime Notice: s'performAction: ' | nil | nil | { s'sType' = s'iron', s'aDice' = { #1 = s'd10', #2 = s'd10', #3 = s'd6' }, s'nMod' = #2, s'sDesc' = s'2d10+1d6+2' }
Runtime Notice: s'onLanded: ' | nil | nil | { s'aDice' = { #1 = { s'result' = #8, s'type' = s'd10' }, #2 = { s'result' = #10, s'type' = s'd10' }, #3 = { s'result' = #6, s'type' = s'd6' } }, s'nMod' = #2, s'sType' = s'iron', s'bSecret' = bFALSE, s'sDesc' = s'2d10+1d6+2' }
Runtime Notice: { s'aDice' = { #1 = { s'result' = #8, s'type' = s'd10' }, #2 = { s'result' = #10, s'type' = s'd10' }, #3 = { s'result' = #6, s'type' = s'd6' } }, s'nMod' = #2, s'sType' = s'iron', s'bSecret' = bFALSE, s'sDesc' = s'2d10+1d6+2' }
Runtime Notice: s'diceRolled: ' | #3
Runtime Notice: s'nTotal1: ' | #2
Runtime Notice: s'nTotal2: ' | #8
Runtime Notice: s'x1: ' | #8
Runtime Notice: s'x2: ' | #10
Runtime Notice: s'onDiceTotal: ' | { s'type' = s'iron', s'text' = s'
2d10+1d6+2
[Weak Hit] 8', s'secret' = bTRUE, s'dicedisplay' = #1, s'font' = s'systemfont', s'mood' = s'', s'diemodifier' = #2, s'dice' = { #1 = { s'result' = #8, s'type' = s'd10' }, #2 = { s'result' = #10, s'type' = s'd10' }, #3 = { s'result' = #6, s'type' = s'd6' } }, s'mode' = s'', s'icon' = s'portrait_gm_token', s'sender' = s'GM' }

kevdog45
April 28th, 2020, 23:27
Nothing on this? Damned?

damned
April 29th, 2020, 04:00
I dont see every post in every thread....

kevdog45
April 29th, 2020, 17:00
As I said in the email response I sent. I wasn't trying to offend. With the Unity version at least I would think the error would have something to do with the code in line 137. Maybe if I look at the xml I will be able to see it. Even with no coding skills whatsoever I believe I can decipher what I am seeing in the error.

So GeorgeOrr, I looked at your character sheet (I don't know if that is where the problem is but I'm pretty sure its not in the extension). Line 137 is....

<p3 type="number">0</p3>

The id that line of code is in is below....

<id-00003>
<clichatcommand type="string">/iron 2d10+1d6+0</clichatcommand>
<description type="formattedtext">
<p>Iron: Physical strength, endurance, aggressiveness, and prowess in close combat.</p>
</description>
<locked type="number">1</locked>
<name type="string">Iron</name>
<number_trackers type="number">0</number_trackers>
<number_trackers_hidden type="number">0</number_trackers_hidden>
<number_trackers_tooltip type="string">Tracker</number_trackers_tooltip>
<p1 type="number">0</p1>
<p1_hidden type="number">0</p1_hidden>
<p1_tooltip type="string">Iron</p1_tooltip>
<p2 type="number">0</p2>
<p2_hidden type="number">1</p2_hidden>
<p2_tooltip type="string">Challenge</p2_tooltip>
<p3 type="number">0</p3>
<p3_hidden type="number">1</p3_hidden>
<p3_tooltip type="string">Parameter</p3_tooltip>
<parameter_formula type="string">/iron 2d10+1d6+(a)</parameter_formula>
<parameter_formula_enabled type="number">1</parameter_formula_enabled>
<refa type="string">.p1 : (a) available</refa>
<refa_path type="string">.p1</refa_path>
<refb type="string">Drag Field or Roll Here</refb>
<refc type="string">Drag Field or Roll Here</refc>
<rollstype type="string">iron</rollstype>
<shortcut type="windowreference">
<class>cas</class>
<recordname></recordname>
</shortcut>
<tracker_enabled type="number">0</tracker_enabled>
<trackersname type="number">0</trackersname>
<trackersname_hidden type="number">0</trackersname_hidden>
<trackersname_tooltip type="string">Tracker</trackersname_tooltip>
</id-00003>

I don't know XML but its the only thing I found that had more than 137 lines if that is even what the error is referring too. :) It looks like "number" is defined as 0 or 0 is defined as number or whatever. Since this seems to be the issue the roll is crashing on and the error references nil could it mean that this needs to be defined as something other than 0?

kevdog45
May 1st, 2020, 03:04
I used the roll in a different Morecore campaign and it didn't work there either. So I guess it isn't in the character sheet. Its in the code used to create the roll or something in that code is interfering with something in Morecore. I don't know. I am totally guessing.

kevdog45
May 8th, 2020, 15:18
Bumping this up. I can't figure out why this won't work. It looks like it should but I am no lua expert.

kevdog45
May 10th, 2020, 23:07
Bumping this up. I can't figure out why this won't work. It looks like it should but I am no lua expert.

I have added the code. I won't bump this again. The error seems to be on line 137.

damned
May 11th, 2020, 00:05
Im really sorry kevdog45 I have so many things in the air right now and I havent gotten to this one yet.

kevdog45
May 11th, 2020, 03:59
Im really sorry kevdog45 I have so many things in the air right now and I havent gotten to this one yet.

Its ok, I understand. Thanks for getting back.

damned
May 12th, 2020, 14:52
If you edit that file and replace teh two instances of pairs with ipairs it should work.
At least it does for me but I dont know the system so I could be doing something wrong...
If it checks out Ill add this to the next build.

damned
May 12th, 2020, 14:54
As I said in the email response I sent. I wasn't trying to offend. With the Unity version at least I would think the error would have something to do with the code in line 137. Maybe if I look at the xml I will be able to see it. Even with no coding skills whatsoever I believe I can decipher what I am seeing in the error.

So GeorgeOrr, I looked at your character sheet (I don't know if that is where the problem is but I'm pretty sure its not in the extension). Line 137 is....



Line 137 was referring to Ln 137 in \scripts\manager_custom_ironsworn.lua
The error is happening because it is incorrectly counting how many dice are being throw and then tries to retrieve the value of a dice that hasnt been thrown.

So the file you need to edit is this one.

kevdog45
May 12th, 2020, 16:18
Line 137 was referring to Ln 137 in \scripts\manager_custom_ironsworn.lua
The error is happening because it is incorrectly counting how many dice are being throw and then tries to retrieve the value of a dice that hasnt been thrown.

So the file you need to edit is this one.

Here is the edited text file. I don't have access to my computer here so adding it back into the .pak file will have to wait until later. I changed the pairs to ipairs but that is all I did. If more needs to be done it is beyond me. I did see in the file where it seems to indicate a fourth die but I don't know how I would fix that other than to remove the code.

So I took the below file renamed it manager_custom_iron.lua and placed it into the scripts section of the Morecore folder I unzipped from the pak file. Then I zipped up the folder and renamed the zip file MoreCore.pak and put it back into the ruleset folder in Fantasy Grounds. When I load Fantasy Grounds it comes back with an error saying it does not recognize the MoreCore ruleset. What did I do wrong? Do I have to compile the .txt file into a lua file before placing it back into MoreCore? That is my only guess.

I will say this the .txt file below has the ipairs issues Damned mentioned fixed so if someone wants to play this ruleset and set it up go for it. Thank you damned for your help. I know you are busy with other rulesets that have more users.

damned
May 13th, 2020, 00:11
MoreCore is the 7th most used ruleset - so know its not other rulesets that have more users taking me away its just everything taking me away.

The issue is you zipped up the whole MoreCore folder including the folder. You just zip up the contents.

The only changes required to that file was the insertion of two "i"s eg renaming the 2 pairs as ipairs.

kevdog45
May 13th, 2020, 00:15
Thanks damned. Yes I did what you said I did in zipping up the whole folder. I did make the changes so I'll just zip up the contents this time. At least I'm learning something and didn't just give up. :)

And it works now as you said it would! Thanks for all your help damned. I learned something about these files with this experience.

Jingo
July 29th, 2020, 06:19
I recently discovered Ironsworn and wondered if FG supported it at all. I put the .mod in the modules folder and the .ext in the extensions folder. But where should I install the xml file? I have FG Unity and classic but would mostly like it to work in FG Unity.

damned
July 29th, 2020, 10:53
Go into ccharaters and import and locate the XML file and import it. you will have a pregen Ironsworn character.

Ryuson
August 5th, 2020, 02:23
For FGC (ultimate license), what rule set would be used? I don't see an option for MoreCore but do see CoreRPG. Otherwise, I did what Jingo did (ext in the Extension subfolder, mod in the Module subfolder). What am I doing wrong?

GeorgeOrr
August 5th, 2020, 02:35
MoreCore is a ruleset you need to add, it's a community (damned specificaly) created ruleset. Here's a link to the download:

https://www.fantasygrounds.com/forums/showthread.php?34860-MoreCore-Ruleset

You'll want the file MoreCore.pak attached to that post. Put that in your Fantasy Grounds data folder, in /rulesets

Then it will show up in the list when you launch FG.

Ryuson
August 5th, 2020, 04:01
Worked like a charm. Can't wait to try this out. Thanks so much for the advice!

atapuerkasman
November 9th, 2022, 17:25
Acaban de publicar oficialmente Ironsworn en Español y revisando este hilo he descargado y probado los ficheros que se adjuntaron.

He encontrado un error en los dados básicos, ya que en el manual explica que el Dado de Acción debe ser mayor que el resultado individual de los dados de desafío, sin embargo cuando es igual lo marca como éxito.

"to determine the outcome of your move, compare the action score to each of the challenge dice. You want it to be greater than the individual value of those dice"

Esto se debe a las condiciones en el fichero "manager_custom_iron.lua" de MoreCore.pak:


if diceRolled == 3 then
Debug.console("diceRolled: ", diceRolled);
local nTotal = rRoll.nMod;
Debug.console("nTotal1: ", nTotal);
nTotal = nTotal + rRoll.aDice[3].result;
Debug.console("nTotal2: ", nTotal);
x1 = rRoll.aDice[1].result;
Debug.console("x1: ", x1);
x2 = rRoll.aDice[2].result;
Debug.console("x2: ", x2);
if ( nTotal >= x1 and nTotal >= x2 ) then
rMessage.text = "\n" .. rMessage.text .. "\n[Strong Hit] ".. nTotal;
elseif (( nTotal >= x1 and nTotal < x2 ) or (nTotal >= x2 and nTotal < x1)) then
rMessage.text = "\n" .. rMessage.text .. "\n[Weak Hit] ".. nTotal;

He realizado pruebas y he conseguido solucionarlo sin modificar MoreCore.pak, directamente en Ironsworn.mod en el fichero db.xml:

Cambiando todas las fórmulas del tipo:

/iron 2d10+1d6+(a)

por

/iron 2d10+1d6-1+(a)

Espero que os sirva de ayuda y muchas gracias por el trabajo realizado ;)

damned
November 10th, 2022, 00:04
Im very sorry atapuerkasman

I dont follow your Spanish (my fault not yours).

Please see this example.

What Im not sure about is whether it should be calculating the total or the individual dice...

https://www.fantasygrounds.com/forums/attachment.php?attachmentid=55072

55072

atapuerkasman
November 10th, 2022, 16:21
Im very sorry atapuerkasman

I dont follow your Spanish (my fault not yours).

Please see this example.

What Im not sure about is whether it should be calculating the total or the individual dice...

https://www.fantasygrounds.com/forums/attachment.php?attachmentid=55072

55072


In your example you get a 3 and a 6 on the challenge dice and a 3 on the action die. Morecore marks that as a "weak success"

According to the manual:

"to determine the outcome of your move, compare the action score to each of the challenge dice. You want it to be a greater than the individual value of those dice"

Shouldn't it be a "Miss"?


55074


In this example I use this equation:
/iron 2d10+1d6-1+(a)

(a) is equal to 0 in all cases.

55076

On the last run I get:

Challenge Dice: 7, 3

Action Dice: 3

Result "Miss", it is correct.


Now I'm going to use the original Ironsworn.mod. The equation is:
/iron 2d10+1d6+(a)

55077

Challenge Dice: 4, 2

Action Dice: 4

Result "Strong hit".
The result is incorrect, it should be a "Weak Hit"


I think the problem is with Ironsworn.mod not Morecore.
I just wanted to propose as a solution to replace the following equation in the .mod (db.xml):

/iron 2d10+1d6+(a)

by

/iron 2d10+1d6-1+(a)

According to the tests that I have carried out, it calculates the result correctly.

Excuse my English :D

damned
November 10th, 2022, 23:57
Ok thank you for the further info.

I only manage MoreCore and not this mod.
I can update the Roll in MoreCore.

So the first two dice should individually be compare to the action/third dice?
Can you confirm.

atapuerkasman
November 11th, 2022, 07:11
Ok thank you for the further info.

I only manage MoreCore and not this mod.
I can update the Roll in MoreCore.

So the first two dice should individually be compare to the action/third dice?
Can you confirm.

That is, the action die is compared individually with each challenge die.

To consider a success the action die must be greater than the result of the challenge die.


Challenge Dice (2d10)

Action die (1d6)

The order would be as follows:

- First the bonuses are added to the result of the action die

- Then compare that result with each of the challenge dice

if the action result is greater than a Challenge die -> Weak hit

if the action result is greater than 2 Challenge dice -> Strong Hit

Else -> Miss

Example with bonuses:
55083

Marmus
December 9th, 2022, 15:32
I have been hearing about Ironsworn a lot lately. It is wonderful that this module and extension exist!! Thank you for creating and supporting the fixes. I will definitely be playing around with it. Did the above mentioned roll issues get resolved?
I am adept at conversions, so if help is needed with Delve...

Or is this a dead-ish thread?

Wise Orc Tavern
December 3rd, 2023, 20:06
Hi, thank you so much for creating this.

Is this working?
I would really like to use this, but the extension wont show up for me.
I am using FGU by the way.

Would appreciate any updates on this.
Thanks.