Rumble's 4E Framework, Version 5 - Discussion

Framework(s) for D&D 4e, including Veggiesama's.

Moderators: dorpond, trevor, Azhrei, giliath, Gamerdude, jay, Mr.Ice

User avatar
Rumble
Deity
Posts: 6235
Joined: Tue Jul 01, 2008 7:48 pm

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Rumble »

DarkWiz58 wrote:
Rumble wrote:No, the two macros shouldn't behave differently. The "End Turn" macro is a legacy leftover, really; it's much easier (IMO) for the DM to handle that when the player says "I'm finished." However, the two macros should work identically, so it's clear that I just forgot to apply the fix to one of the handlers.
Rumble, could you please post the corrections; even as a separate macro file is fine.

Our players use End Turn exclusively.

I haven't made any corrections; I don't have the fixes.

User avatar
Colmarr
Cave Troll
Posts: 82
Joined: Tue Dec 07, 2010 4:46 am

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Colmarr »

DarkWiz58 wrote:Rumble, could you please post the corrections; even as a separate macro file is fine.

Our players use End Turn exclusively.
I shouldn't be grumpy, because I'm not Rumble, but I linked to the fix in the post where I first raised the issue.

It's actually a really easy fix. So easy that you can do it yourself. Select the Lib:States4e token, then go to the Selection window, Right-click on the handleStates macro and select 'edit'.

Near the bottom of the macro there is a piece of code that looks like this:

Code: Select all

      [newStateObj = json.set("{}", "condition", state, "imposedBy", stateImposedBy, "expires", stateExpires, "start", start, "ogDamAmt",newDmgVal, "defsAffected", sdefsAffected, "affects", saffects, "targets", stargets)]
Change the start value to start+1 so that it looks like this:

Code: Select all

      [newStateObj = json.set("{}", "condition", state, "imposedBy", stateImposedBy, "expires", stateExpires, "start", start+1, "ogDamAmt",newDmgVal, "defsAffected", sdefsAffected, "affects", saffects, "targets", stargets)]
In my limited experience, that fixes the problem.

Rumble, feel free to comment if you think that the fix is going to break the framework elsewhere.

User avatar
Rumble
Deity
Posts: 6235
Joined: Tue Jul 01, 2008 7:48 pm

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Rumble »

Whoa, hold on then. Colmarr, are you working from a copy older than version 5.1.2? Because when I look at my template for 5.1.2, that fix to handleStates is already present (it's been there since 5.1.0).

So DarkWiz, AidyBaby, if you're using the latest versions, you don't need to make any changes. I am not sure how Colmarr's version got out of sync. :?:

DarkWiz58
Cave Troll
Posts: 82
Joined: Sun Nov 08, 2009 8:29 pm

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by DarkWiz58 »

Rumble wrote:Whoa, hold on then. Colmarr, are you working from a copy older than version 5.1.2? Because when I look at my template for 5.1.2, that fix to handleStates is already present (it's been there since 5.1.0).

So DarkWiz, AidyBaby, if you're using the latest versions, you don't need to make any changes. I am not sure how Colmarr's version got out of sync. :?:
Yep, my current codebase shows everything is fine (start+1 is present).

Sorry to have churned the waters.

User avatar
Colmarr
Cave Troll
Posts: 82
Joined: Tue Dec 07, 2010 4:46 am

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Colmarr »

Rumble wrote:Whoa, hold on then. Colmarr, are you working from a copy older than version 5.1.2? Because when I look at my template for 5.1.2, that fix to handleStates is already present (it's been there since 5.1.0).
Hmm, guess I've got some checking to do tonight...

I could have sworn I downloaded it from the 5.1.2 link in the OP. Assuming I don't have it and that I'm on 5.0.9 or older (which seems likely), is it sufficient to download the 5.1.2 update pack or do you recommend downloading 5.1.2 in its entirety?

Edit: Sorry for all the fuss, guys. Turns out I did have on old version. 'End turn' works fine in 5.1.2.

User avatar
Rumble
Deity
Posts: 6235
Joined: Tue Jul 01, 2008 7:48 pm

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Rumble »

No problem! Glad to resolve the confusion!

User avatar
Kryx
Cave Troll
Posts: 77
Joined: Wed Feb 23, 2011 1:30 am

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Kryx »

Problem: I cannot get close bursts to calculate correctly. It will target creatures that are 3 below, above, or to the right/left, but it will not get the creature if it is 1 off from there or at the diagonals. Essentially:

I I I I I I I
I I I I I I I
I I I
I I I I
I I I I I I I

I I I I I I I

Blue is the person casting the close burst. Red is being hit, black is not. Close Burst 3. Same deal with 5.


Any solutions?




Also: Lay on hands -anyone have a solution to make that work? Grant ally surge healing without spending a surge - the paladin spends the surge.
EDIT: I added it as a leader power and bam - works perfectly. I'll leave this here for others.

User avatar
Rumble
Deity
Posts: 6235
Joined: Tue Jul 01, 2008 7:48 pm

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Rumble »

Make sure your movement metric is ONE_ONE_ONE.

User avatar
Deadolus
Giant
Posts: 166
Joined: Wed May 19, 2010 12:51 pm
Location: Waterloo, Ontario, Canada

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Deadolus »

I think this has been talked about before, but after 20 minutes of looking I was unable to find anything specific to this problem/design issue.

When a monster’s power is run by the DM and the power hits, the “Hit” descriptive text is not visible to players in the chat. I think the same is true when a power misses.

Is this by design or is this a bug? Or am I missing a setting somewhere?
Last edited by Deadolus on Sat May 07, 2011 12:29 pm, edited 1 time in total.

User avatar
Kryx
Cave Troll
Posts: 77
Joined: Wed Feb 23, 2011 1:30 am

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Kryx »

Rumble wrote:Make sure your movement metric is ONE_ONE_ONE.
Fixed it. Thanks!

User avatar
Kryx
Cave Troll
Posts: 77
Joined: Wed Feb 23, 2011 1:30 am

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Kryx »

Rumble,

Could you change at-will powers to show as white font? The white is much easier to read than the black.
I've manually done it on maybe half of the import features and other random code, but if I ever replace those then it would go back to black.

A suggestion: on each character combine ability + skill into "check" as you did in the slim framework. using rfw.check. I can pm you the code if you don't want to find it. It works flawlessly when I dropped it in.

Also when parsing monsters it adds random values to the misc modifier for skills. If they could all be 0 by default and change only if it is listed that would be great (I can manually update this prob too).

User avatar
Rumble
Deity
Posts: 6235
Joined: Tue Jul 01, 2008 7:48 pm

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Rumble »

Kryx wrote:Rumble,

Could you change at-will powers to show as white font? The white is much easier to read than the black.
I've manually done it on maybe half of the import features and other random code, but if I ever replace those then it would go back to black.

A suggestion: on each character combine ability + skill into "check" as you did in the slim framework. using rfw.check. I can pm you the code if you don't want to find it. It works flawlessly when I dropped it in.

Also when parsing monsters it adds random values to the misc modifier for skills. If they could all be 0 by default and change only if it is listed that would be great (I can manually update this prob too).
Which part of the at-will display - when it comes up in chat? Or on the buttons? If I recall, the green used in MT changed, so you're right I need to go fix that for readability.

On the skill thing, that's not a bug, so I'm not going to change it. I'll take a look at the monster parsing, though, to see if I can figure out what's happening. Can you attach a monster token that is boogered up like that? I'm not a DDI subscriber, so I can't do any importing anymore.

User avatar
Kryx
Cave Troll
Posts: 77
Joined: Wed Feb 23, 2011 1:30 am

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Kryx »

Rumble wrote:Which part of the at-will display - when it comes up in chat? Or on the buttons? If I recall, the green used in MT changed, so you're right I need to go fix that for readability.
I'm talking about the buttons. It seems in old screen shots the green was much lighter, but on the current green the black is hard to read.

Rumble wrote:On the skill thing, that's not a bug, so I'm not going to change it.
Nooo. No work involved besides new macro -> copy - >paste. You previously did it in the slim framework.
I'm expanding on the monster database so this would be helpful to make them universal. Else I have to include a small library myself.
If you do this I'd also suggest the management button be 68 width and it lines up perfectly that way.
Here is the code.
Code
[h:locSkills = Skills]
[h:skillNames = json.fields(locSkills)]
[h:allNames = json.merge(json.fromList(getLibProperty("ABILITIES")), json.fromList(getLibProperty("SKILLS")))]
[h:allNames = json.toList(allNames)]


[h,if(macro.args != ""): chosenCheck = listFind(allNames, macro.args); chosenCheck = 0]

[h:abilList = json.append("[]", "Strength ("+if(Str>0, "+", "")+Str+")", "Constitution ("+if(Con>0, "+", "")+Con+")", "Dexterity ("+if(Dex>0, "+", "")+Dex+")", "Intelligence ("+if(Int>0, "+", "")+Int+")", "Wisdom ("+if(Wis>0, "+", "")+Wis+")", "Charisma ("+if(Cha>0, "+", "")+Cha+")")]

[h:skillarray="[]"]
[h,foreach(skillname, skillNames),CODE:
{
[skb = getProperty(skillname)]
[if(skb >0): sign="+"; sign=""]
[skillarray = json.append(skillarray, strformat("%{skillname} (%{sign}%{skb})"))]
}]
[h:finalCheckList = json.merge(abilList, skillarray)]

[h:status = input(
".|<html><h4>Skill and Ability Checks</h4></html>||label|span=true",
"whichCheck|"+json.toList(finalCheckList)+"|Select ability or skill|LIST|SELECT="+chosenCheck,
"modToCheck|0|Modifier to check (use negative numbers for penalties)",
".|<html><p width=400>Note: ½ Level value is included in skill bonus already, and will be automatically added if you select an ability check. You do not need to add it in yourself.</p></html>||label|span=true")]
[h:abort(status)]
[h:isAbilCheck = 1]
[h,switch(whichCheck),CODE:
case 0:
{
[h:checkBonus = Str]
[h:checkType = "Strength"]
};
case 1:
{
[h:checkBonus = Con]
[h:checkType = "Constitution"]
};
case 2:
{
[h:checkBonus = Dex]
[h:checkType = "Dexterity"]
};
case 3:
{
[h:checkBonus = Int]
[h:checkType = "Intelligence"]
};
case 4:
{
[h:checkBonus = Wis]
[h:checkType = "Wisdom"]
};
case 5:
{
[h:checkBonus = Cha]
[h:checkType = "Charisma"]
};
default:
{
[h:checkBonus = getProperty(listGet(skillNames, whichCheck - 6))]
[h:checkType = listGet(skillNames, whichCheck - 6)]
[h:isAbilCheck = 0]
};]

[h:d20roll = 1d20]
[h:finalCheckRoll = d20roll + checkBonus + if(isAbilCheck, HalfLevel, 0) + modToCheck]
[h:finalCheckBD = strformat("<html><table><tr><td>%d: 1d20</td></tr><tr><td>%d: Bonus</td></tr>%s<tr><td>%d: Misc. Modifier</td></tr></table></html>", d20roll, checkBonus, if(isAbilCheck, "<tr><td>"+HalfLevel+": Half Level</td></tr>", ""), modToCheck)]

[r,if(isGM()),CODE:
{
[r,g:strformat("<b>%{checkType}</b> check <span title='%{finalCheckBD}'><b>%{finalCheckRoll}</b></span>.")]
};
{
[r: strformat("<b>%{checkType}</b> check <span title='%{finalCheckBD}'><b>%{finalCheckRoll}</b></span>.")]
}]
Rumble wrote:I'll take a look at the monster parsing, though, to see if I can figure out what's happening. Can you attach a monster token that is boogered up like that? I'm not a DDI subscriber, so I can't do any importing anymore.
All the monsters that I'm importing are doing this. Also the class (IE: Soldier, lurker) is not being imported properly on SOME, but that's not as big of a deal

Attached is a pale reaver:
Pale Reaver
Pale Reaver
Medium shadow humanoid (undead)
Level 5 Lurker XP 200

Initiative +9 Senses Perception +7; darkvision
HP 49; Bloodied 24
AC 19; Fortitude 16, Reflex 17, Will 18
Immune disease, poison; Resist 10 necrotic; Vulnerable radiant (if the pale reaver takes radiant damage, it cannot use insubstantial transformation until the end of its next turn)
Speed 6

Deadly Mane (standard, at-will) Necrotic

Reach 2; +10 vs AC; 1d8+6 necrotic damage.

Blood Drain (standard; requires combat advantage against the target, recharges when an adjacent creature becomes bloodied) Healing

reach 2; +8 vs Fortitude; 2d12+6 damage, and the target loses a healing surge and is weakened (save ends). In addition, the pale reaver regains 12 hit points.

Image of Life (standard; encounter) Illusion

The pale reaver adopts the appearance of a living humanoid until it attacks or is hit by an attack.

Insubstantial Transformation (minor; at-will) Polymorph

The pale reaver becomes insubstantial and gains fly 6 (hover) and phasing until it attacks or becomes dazed, stunned, or unconscious.

Alignment Evil Languages Common
Skills Stealth +10
Str 6 (0) Dex 16 (+5) Wis 10 (+2)
Con 13 (+3) Int 10 (+2) Cha 17 (+5)


Also wanted to attach my praise - my group is starting soon and I've been spending a LOT of time with the framework - importing and setting everything up. I really appreciate all the work you did and this is an amazingly powerful tool.

User avatar
Colmarr
Cave Troll
Posts: 82
Joined: Tue Dec 07, 2010 4:46 am

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Colmarr »

Kryx wrote:Also when parsing monsters it adds random values to the misc modifier for skills. If they could all be 0 by default and change only if it is listed that would be great (I can manually update this prob too).
Is this the bug that I reported earlier, where it is adding the ability modifier twice (ie. a "Str 18(+6)" monster is parsing with Athletics 6 + misc. 6 = 12) or is your bug different?

User avatar
Kryx
Cave Troll
Posts: 77
Joined: Wed Feb 23, 2011 1:30 am

Re: Rumble's 4E Framework, Version 5 - Discussion

Post by Kryx »

Colmarr wrote:Is this the bug that I reported earlier, where it is adding the ability modifier twice (ie. a "Str 18(+6)" monster is parsing with Athletics 6 + misc. 6 = 12) or is your bug different?
I assume so, but ideally the code would only add skill modifiers when the skill lists +x. Everything else is calculated later based off stats, not as a misc modifier.

Also to follow up on the type not being imported: I noticed it occurring more on Brutes.
Also noticing attacks that have a keyword - such as 5 necrotic damage are showing up as untyped and necrotic, shouldn't it just be necrotic?

Post Reply

Return to “D&D 4e Frameworks”