RPGObjects.com
http://www.rpgobjects.com/forum/

dev version die roller problem
http://www.rpgobjects.com/forum/viewtopic.php?f=4&t=204
Page 1 of 1

Author:  Paul [ Thu Mar 18, 2010 3:38 pm ]
Post subject:  dev version die roller problem

After adding the most recent changes to the dev version I get an error when sending a die roll from my character sheet.

Here is the die roll [1d6.extra(6)] standard die rolls still work. Evidently it is the .extra function that is causing the error.

Here is the error.

Traceback (most recent call last):
File "/Users/paul/openrpg_dev/orpg/dieroller/_base.py", line 122, in __call__
self._bnf.die_pattern.parseString(roll_string)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 1070, in parseString
loc, tokens = self._parse(instring, 0)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 945, in _parseNoCache
loc,tokens = self.parseImpl(instring, preloc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 2336, in parseImpl
loc, resultlist = self.exprs[0]._parse(instring, loc, doActions, callPreParse=False)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 945, in _parseNoCache
loc,tokens = self.parseImpl(instring, preloc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 2604, in parseImpl
return self.expr._parse(instring, loc, doActions, callPreParse=False)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 945, in _parseNoCache
loc,tokens = self.parseImpl(instring, preloc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 2336, in parseImpl
loc, resultlist = self.exprs[0]._parse(instring, loc, doActions, callPreParse=False)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 945, in _parseNoCache
loc,tokens = self.parseImpl(instring, preloc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 2604, in parseImpl
return self.expr._parse(instring, loc, doActions, callPreParse=False)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 945, in _parseNoCache
loc,tokens = self.parseImpl(instring, preloc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 2336, in parseImpl
loc, resultlist = self.exprs[0]._parse(instring, loc, doActions, callPreParse=False)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 945, in _parseNoCache
loc,tokens = self.parseImpl(instring, preloc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 2461, in parseImpl
ret = e._parse(instring, loc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 945, in _parseNoCache
loc,tokens = self.parseImpl(instring, preloc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 2751, in parseImpl
loc, tokens = self.expr._parse(instring, loc, doActions, callPreParse=False)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 945, in _parseNoCache
loc,tokens = self.parseImpl(instring, preloc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 2352, in parseImpl
loc, exprtokens = e._parse(instring, loc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 945, in _parseNoCache
loc,tokens = self.parseImpl(instring, preloc, doActions)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 2717, in parseImpl
loc, tokens = self.expr._parse(instring, loc, doActions, callPreParse=False)
File "/Users/paul/openrpg_dev/orpg/external/pyparsing.py", line 971, in _parseNoCache
tokens = fn(instring, tokensStart, retTokens)
File "/Users/paul/openrpg_dev/orpg/dieroller/_base.py", line 164, in _do_function
func(*tokens.args)
TypeError: 'str' object is not callable

Author:  Paul [ Mon Mar 22, 2010 2:01 am ]
Post subject:  Re: dev version die roller problem

Thanks to whoever made the fix, it now works perfectly. :D

Author:  Digitalxero [ Mon Mar 22, 2010 7:09 pm ]
Post subject:  Re: dev version die roller problem

Ya the new Die roller system on dev is very very experimental. I now have the std and d20 rollers working how they did before, but those are easy as I know how those systems work.

Anyone who uses or knows the gurps, hero, runequest, savage or sr4 rollers could you write up some documentation on how all the options should work that would be very helpful. As of right now I am thinking of just removing these rollers and adding them to an old_rollers plugin so if people want them they can still use them. If I get decent documentation and examples for each option of a roller I will convert it, if not it goes to the old_rollers plugin.

I took a look at the gurps roller and either it is broken or I dont understand it since I got the following results when testing the current implementation (all failures, even though it says the target is 52 or less, it results in failure even when it is less). I bolded the ones that look wrong to me.

Quote:
(0) No Name: [10d10.skill(50, 2)] => [10,10,6,6,7,3,3,4,1,3] = 53 vs (52) or less Failure! by 1
(0) No Name: [10d10.skill(50, 2)] => [3,4,10,6,6,2,8,9,8,5] = 61 vs (52) or less Failure! by 9
(0) No Name: [10d10.skill(50, 2)] => [5,9,2,6,6,3,8,9,8,9] = 65 vs (52) or less Critical Failure! by 13 [B556]
(0) No Name: [10d10.skill(50, 2)] => [9,6,7,4,2,6,10,10,4,1] = 59 vs (52) or less Failure! by 7
(0) No Name: [10d10.skill(50, 2)] => [6,6,7,4,10,1,9,10,6,8] = 67 vs (52) or less Critical Failure! by 15 [B556]
(0) No Name: [10d10.skill(50, 2)] => [8,2,4,8,3,9,7,3,4,6] = 54 vs (52) or less Failure! by 2
(0) No Name: [10d10.skill(50, 2)] => [6,9,3,4,2,10,4,5,9,9] = 61 vs (52) or less Failure! by 9
(0) No Name: [10d10.skill(50, 2)] => [6,1,6,2,10,2,6,1,2,5] = 41 vs (52) or less Critical Failure! by 11 [B556]
(0) No Name: [10d10.skill(55, 2)] => [2,1,3,5,6,4,8,6,7,10] = 52 vs (57) or less Failure! by 5
(0) No Name: [10d10.skill(55, 2)] => [2,9,10,4,8,5,9,4,4,8] = 63 vs (57) or less Failure! by 6
(0) No Name: [10d10.skill(55, 2)] => [3,2,10,8,7,1,4,4,7,1] = 47 vs (57) or less Critical Failure! by 10 [B556]
(0) No Name: [10d10.skill(55, 2)] => [8,10,9,9,3,4,7,6,4,6] = 66 vs (57) or less Failure! by 9
(0) No Name: [10d10.skill(55, 2)] => [4,6,4,6,7,2,8,1,1,6] = 45 vs (57) or less Critical Failure! by 12 [B556]
(0) No Name: [10d10.skill(55, 2)] => [6,7,10,10,5,10,5,9,3,3] = 68 vs (57) or less Critical Failure! by 11 [B556]
(0) No Name: [10d10.skill(55, 2)] => [7,7,1,6,10,8,5,4,9,8] = 65 vs (57) or less Failure! by 8
(0) No Name: [10d10.skill(55, 2)] => [9,1,6,3,1,7,5,9,10,4] = 55 vs (57) or less Failure! by 2
(0) No Name: [10d10.skill(55, 2)] => [1,5,2,1,4,1,3,1,1,2] = 21 vs (57) or less Critical Failure! by 36 [B556]

Page 1 of 1 All times are UTC
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/