PDA

View Full Version : 4E Tables v1.1



Zeus
May 2nd, 2010, 02:42
Hey all. The other thread in the Armory was getting a bit unwieldy given it was covering three extensions. As I update the other extensions I'll create separate posts making it clearer where to report problems and leave feedback.

4E Tables


Allows for creation of simple range / value tables that can be rolled against with results output sent to the chatwindow.
Provides a convenient framework tool for managing random/tabled elements to any D&D 4E game including item random effects, random encounters and table lookups.
No row or column count limit with single/all column value lookup.
Automated table creation support for between 2 - 100 rows with a choice of single, 2, 4, 5, 10 20 or 100 step increments.
Supports a simple table reference scheme for chaining table rolls results to other tables.
Supports slash handler chatwindow support for creating quick access to random table rolls.
Tables can be hidden/revealed.


https://farm5.static.flickr.com/4052/4424721784_cfd0429d08_t.jpg (https://farm5.static.flickr.com/4052/4424721784_e59245e559_o.jpg)

Note: Please ensure you backup your campaign files before you use. Please also read the readme.txt file before using.

Download here (https://zgp.eugenez.net/index.html)

Summary Change Log 2nd May 2010 v1.1


Increased the maximum height of table windows to 1200px and width to 2400px.
Increased the maximum number of columns a table can support to 20.
Fixed a bug that allowed columns to be added/deleted when right-clicking on rows. New columns can now only be added/and the last column removed by right-clicking on a column title.
Added new slash handler to allow rolls on tables to be executed from the chatwindow. Table windows are not required to be open for slash rolls to execute. /rollon commands can be assigned to the hotkey bar for quick access by dragging them from the chatwindow entry box. Optional parameters are available to specify column, dice and whether to hide results from other players.



/rollon tablename -c [column name] [-d dice] [-hide]



tablename - name of table (string) -- can include spaces
-c [column name] - specifies all columns or name of column (string), if included - can include spaces.
[-d dice] - overrides table default dice where dice can be of the form




d<dienum> e.g. d20 or d100
d<dienum>+<modifier> e.g. d20+5 or d12-6
<numofdie>d<dienum> e.g. 1d10 or 3d6
<numofdie>d<dienum>+<modifier> e.g. 3d4+3 or 5d6-2



[-hide] - if included, hides results of roll



Examples


/rollon Random Names -c - rolls the default dice on table "Random Names".
/rollon Random Names -c First Name -d 3d10+6 - rolls 3d10+6 on table "Random Names" and returns the result from Column "First Name".
/rollon Random Names -c Last Name -hide - rolls the default dice on table "Random Names" returning the result from Column "Last Name" but hides the results output.



Exposed new function through TablesManager to allow script based lookup access to tables.
lookupTableResult returns a table result string given a table name, column name and row reference.



TablesManager.lookupTableResult(tablename, colname, rownum)



tablename - name of table (string) -- can include spaces
colname - name of table column (string) -- can include spaces
rownum - row number (number)

returns a result string or nil


Z.

dm-crazy
May 2nd, 2010, 11:32
Ty for excelents supports in community :D

templarghost
May 2nd, 2010, 18:49
Thank you for these wonderful extensions, exceptionally great work, as always.

I dont know if I should ask this, but is there a release date for the Personalities and Items extensions?! Not putting any pressure on you, God forbid, you did so much already, but I honestly cant wait to use them in-game, so to speak!

All the best.

Hye Jedi
May 2nd, 2010, 20:40
Great work... very useful for DMing I can imagine! As I was running through the permutations, I noticed that a 6 by 2 step came up with an error.

Zeus
May 2nd, 2010, 21:24
Thank you for these wonderful extensions, exceptionally great work, as always.

I dont know if I should ask this, but is there a release date for the Personalities and Items extensions?! Not putting any pressure on you, God forbid, you did so much already, but I honestly cant wait to use them in-game, so to speak!

All the best.

Thanks for the kind words, always nice to get positive feedback. :D

Its always fine to ask questions. No need to be shy ;)

In all honesty its really tough to be accurate with an exact date however I will say 4E Personalities has been in testing for just over a week now and I have yet to receive any critical issues from the handful of playtesters it was made available to. I had a marathon 5 hour game the other night and I didn't hit any issues personally so with any luck it shouldn't be much longer and hopefully this week.

As a heads up, to fully exploit the new style I had to work with Tenian to adapt the standard 4E Trap class, as a consequence of this, users of the extension will need to reparse any Modules they may have that contain Trap data before the data can be displayed and used in the new styled windows. A new Parser release will also be forthcoming shortly, which will support the adapted Trap class. More on this will follow from Tenian, since the Parser is his domain.

A test build of 4E Items was made available only this past week and so I expect it to be a week or two behind Personalities.

In both instances I will likely release the extensions as an extended beta of some sort for a period of time. The sheer number of power format combinations WotC has employed in NPC stat blocks makes it very difficult to test exhaustively against. I'll therefore be looking to the community to help report these so that I can fix over time if necessary.

Zeus
May 2nd, 2010, 21:32
Great work... very useful for DMing I can imagine! As I was running through the permutations, I noticed that a 6 by 2 step came up with an error.


Many thanks for reporting this, I had a small typo in tables_tableitems.lua.

The end of an if statement block had merged with a call to a routine, createEmptyTable() to create a unique call to:

endcreateEmptyTable()

Lol. Its always the silly ones that slip through, sigh. Oh well its been fixed and re-uploaded. As its such a minor change, I haven't updated the release version. Thanks again.

Zeus
August 17th, 2010, 09:46
Hey All,

A new test version of the 4E Tables extension is available for download from the Private area of my resource site. Full update notes are available in the accompanying readme.txt and summarised below:

v1.2
17/08/2010
- Updated window class to enable client-side category selection controls to work.
- Updated extension to support client-side modules containing tables. Clients can now access read-only tables. Note: GM has no control of visibility of Tables from Modules. Controls are ignored for module based tables.

Beta testers - please let me know if you encounter any issues. Feedback to the usual email account please. Thanks.

DrZ.

Blue Haven
August 17th, 2010, 17:38
Hey Zeuss will you make some more maps...? they are amazing!! you could make some for random encounters or stuff like that ;)

Zeus
August 17th, 2010, 18:42
Yes, I really want to get back to some mapping but coding and the release of 2.7.1 is keeping me busy at the moment. :)

As soon as I have some time I plan to finish up a Levels 1 and 2 of Pyramid of Shadows. These are large scale maps (entire levels) incorporating some of the smaller ones I have already made. I'm then planning to complete Level 3 and some wilderness encounter maps for use with the same module.

Stay tuned.

Nephilim667
August 18th, 2010, 00:00
Yeah these maps are really nice.
Which tool do you use for creating those maps?

Zeus
August 18th, 2010, 01:58
Photoshop. :)

Blue Haven
August 18th, 2010, 17:23
Thank you so much :)

vodokar
August 22nd, 2010, 07:26
I have a quick question for you DrZeuss.

First of all, I really, really love this extension and am making extensive use of it. I used it to make random magic treasure tables and entered every item from PHB, AV1 and AV2 (well, only up to level 6 thus far). I don't like to have to decide what treasure to give my group or worry about favoring one player or another etc, so I'm just going to let them roll for it randomly whenever they open a chest.

So, ideally, the way it is supposed to work is that the players roll on a master table which has entries for the appropriate levels (i.e. level 1 - 5 level item tables for a 1st level group, level 2 - 6 for a 2nd level group etc.) then once the level of the item is determined, it drills down thru the various subtables until it outputs an item name. This is done from the client, because it's no fun having the DM have to roll the dice for you.

So, the problem I noticed is this: Under 2.65, seems to work perfectly from both DM and client.

Under 2.7.1, works perfectly for DM, but client unable to resolve the final roll -- i.e. anything that doesn't have [ ] around it does not resolve the roll, so in other words, the client makes the initial roll and the rolls are correctly made when each subtable in [ ] is called, but when get to the final table where it needs to resolve the dice roll and output the item name, it stops without resolving.

I presume this has something to do with the changes they made in the sharing of stuff between host and client in 2.7.1.

I'm currently running my group under 2.65 anyway, but thought you might be interested to check out this behavior. I had all tables and subtables set to "visible" in both instances, but behavior under 2.7.1 was different than 2.65.

Vodokar

Thanks for all your incredible work. It's super.

Zeus
August 22nd, 2010, 09:14
Vodokar - Many thanks for the feedback. I had already been made aware of this bug by Tenian, but good to know a little more detail for reproducing the problem.

v1.2 of the extension is in development/testing, I'll ensure I get this fixed for the next release.

Stay tuned.

vodokar
August 22nd, 2010, 14:05
Thank you so much. One other quick question, regarding the items and personalities extensions. Do the latest versions not work with 2.65? They work great with 2.7.1, but don't even show up in the extension list under 2.65.

This is not a big deal, since I presume the rollback to 2.65 is temporary and presumably short. Tough as it is, I can live without these wonderful extensions for a while. :) I just wondered, because I had been using the previous versions of these extensions under 2.65.

Zeus
August 22nd, 2010, 14:15
Technically they will work. The reason they don't list under anything prior to 2.7.0 is because they are set to work with 4E release 20 as a minimum (see the extension.xml file in each extensions archive.

The version of 4E bundled with 2.6.5 is release 18 I believe.

If you want to use them with 2.6.5 just change the <minrelease> value in extension.xml to 18. That should do the trick.

jaqknife
August 31st, 2010, 06:14
Hello I really like the idea of the tables and put them into my extension folder but I get this error.

I build the table, save the campaign and close it out when I reload the campaign this error pops up and my table is empty.

Script error: [string"scripts/tables_manager.lua"]:377 bad argument #1 to 'pairs'(table expected, got nil)

it is like it's not saving the table I create.

I am using 2.6.5

Also I might add that I am very new to FG2 and still learning it. Also I have pretty limited knowledge about scripting and XML. So if there is a way to fix this I would appreciate any information / instructions. Thanks.

Zeus
August 31st, 2010, 09:43
jaqknife - I am in the middle of updating the extension to v1.2 which mainly updates support for FGII 2.7.x.

I haven't seen the error your reporting before and from looking at the code its occurring during an update of the table structures during initialisation.

To aid in the debugging, could you post a screenshot which shows the final table before you save the campaign and exit. I'd like to try an reproduce the error on my development system so that I can figure out whats going wrong. Thanks.

jaqknife
August 31st, 2010, 14:59
ok here is the first screen

https://img838.imageshack.us/img838/2451/fg2screen1.jpg (https://img838.imageshack.us/i/fg2screen1.jpg/)



and here is after I save exit and reload

https://img821.imageshack.us/img821/4353/fg2screen2.jpg (https://img821.imageshack.us/i/fg2screen2.jpg/)

Also is there a certain compression method for the .ext files because when I uncompress and look around and recompress using winrar but the .zip format on normal compression FG2 doesn't read the file anymore. Thus I have to redownload it.


EDIT: umm the /save on the table title is a typo it does it even when I don't put that on there.

Zeus
August 31st, 2010, 18:02
Hmmm, I can't reproduce the error using Tables v1.1 and FGII 2.6.5. I recreated your table as per the 1st screenshot, save the campaign and reload, no error and the table is still accessible.

I might need to take a look at your campaign db.xml file. I'll send you a PM with my email address.

Regarding extensions. Using WinRAR with ZIP compression should work fine. Make sure the root of the ZIP file contains the files e.g. extension.xml etc. and not a folder. This is the most common reason why extensions fail to register/load.

Also I am unsure as to the loading priority between identical extensions (one compressed and one uncompressed) in the extensions folder, try to only have one in there at a time.

Zeus
September 3rd, 2010, 09:52
jaqknife - I took a look at the campaign file and there is something odd occurring. One of the required property nodes for the Tables is missing key entries. I am uncertain as to how this has occurred and I am unable to re-produce it. Can I ask you to start a new FGII 2.6.5 4E campaign and retest with the extension version you have. If you could repeat the steps it would help determine if this is campaign related or truly a bug with the extension.

I also have a new test version of Tables v1.2 under development, I'll send you a link to the current dev/test release just as soon as its ready.

Nilaihah
September 3rd, 2010, 15:29
Another amazing tool, thank you again. This will definitely see a fair bit of use in my games as well.

One quick question, and it might be very silly, but how did you change your GM portrait?

Zeus
September 3rd, 2010, 16:22
Another amazing tool, thank you again. This will definitely see a fair bit of use in my games as well.

One quick question, and it might be very silly, but how did you change your GM portrait?

Do you mean the GM's chat portrait as in the screenshot in this thread's first post? If so I just created an extension to override the default ruleset chat portrait with my own version.

Just define:

<icon name="portrait_gm_token" file=<path to your png file> />

in an extension, include the new graphic and load the extension as part of your campaign.

Nilaihah
September 3rd, 2010, 16:44
Yes, that was it. Sorry, I should have specified.

Thank you very much. Will look into doing this as would very much like to have my own portrait!

DNH
September 7th, 2010, 16:10
Been looking at the new rules for treasure in the forthcoming Rules Compendium and it got me to thinking how this extension could then be used for auto-generating treasure awards. Has anyone else given this any thought and/or done any work on it?

Zeus
September 7th, 2010, 16:17
I thought the Essentials line (which I thought the Compendium Rules is a part of) was just a condensed version of the existing rules designed to be easier and quicker to pick up for those new to D&D 4E. I didn't realise new rules were being introduced above and beyond whats detailed in the Core rulebooks?

If you could briefly explain the new rules I might be able to understand how the extension could be used, if it can be at all.

DNH
September 7th, 2010, 17:00
As far as I can make out (not had sight of the book myself yet), the Rules Compendium/Essentials does away with Treasure Parcels and instead introduces a random element to treasure awards. So, following an encounter, you would roll on a level-appropriate table to see what loot is available. Here is the table for a Level 1 party:

(11-14) 2d6 x 100 sp
(15+) 2d6 x 10 gp
(18+) 1d2 gems worth 100 gp
(20+) one art object worth 250 gp
(13+) one magic item of level 1d4 +1

So you would roll 1d20 for each line of the table and award anything you hit the target numbers for.

It is easy to see how I think your tables extension could make all this treasure business a damn sight easier, especially if the DM prepares tables of magic items by level.

Zeus
September 7th, 2010, 17:44
Oh OK. Lets wait for the rulebook to come out, we can then take a look to see how best to support the new rules.

I am planning to add greater support to table fields moving forward anyhow, at present they are simple string controls which can be output to the chatwindow but I would like to add support for reference links if I can, this way it would be possible to build a table of linked content e.g. items, NPCs, even Encounters. I'm thinking about how these could be used as useful tables for random encounters and treasure or even encounter creation.

vodokar
September 7th, 2010, 23:51
I currently use this extension for random treasure generation already. Inclusion of the new rarities of treasure introduced with Essentials going forward can easily be incorporated without any changes in the extension.

They are basically introducing 3 levels of rarity - 1) common, which would typically be all of your + items without other properties or powers. These occur 50% of the time 2) Uncommon - these would typically be all of the stuff that has both a plus as well as some property or daily power (such as most of the stuff from PH, AV1, AV2). These would occur, let's say, 49% of the time. 3) That last 1% would be used for Rare items of greater power. The idea is a character finds one no more often than one per tier. Given that, It should be put in between 0% to 1% on the random table, allowing the DM greatest control on when or if they get handed out.

However, some of the ideas about linked content certainly sounds cool.

Obviously there has been lots of debate about what Essentials is and is not and what its all about. This is clearly not the place to get into any of that. However, from what I can see, Essentials represents a slight turning in direction of 4E back to some more old-school type philosophy, such as random treasure tables, random encounter tables, as well as presenting some more streamlined build options regarding the mechanics of how powers work for some of the iconic classes (fighter, cleric, wizard, rogue) to give a more beginner entry level for those new to the game or that just don't want to have so many at-will power attacks to choose from every turn, opting to use basic attacks instead.

DNH
September 8th, 2010, 09:13
this way it would be possible to build a table of linked content e.g. items, NPCs, even Encounters.

Nice. Like it. :)

vodokar
September 8th, 2010, 17:48
As far as I can make out (not had sight of the book myself yet), the Rules Compendium/Essentials does away with Treasure Parcels and instead introduces a random element to treasure awards. So, following an encounter, you would roll on a level-appropriate table to see what loot is available. Here is the table for a Level 1 party:

(11-14) 2d6 x 100 sp
(15+) 2d6 x 10 gp
(18+) 1d2 gems worth 100 gp
(20+) one art object worth 250 gp
(13+) one magic item of level 1d4 +1

So you would roll 1d20 for each line of the table and award anything you hit the target numbers for.

It is easy to see how I think your tables extension could make all this treasure business a damn sight easier, especially if the DM prepares tables of magic items by level.

The table you have here, as written, would not work in this extension. You need to have every number from 1 to 20 resolve to either a category or a subtable link, with no overlap.

I personally think it is easier to work with percentile tables, because they are more flexible and have more possible entries. The random item table that I designed was based off of the original 1e AD&D random item tables where they had percentile tables with a master table leading to many subtables and ultimately coughing up an answer of the name of a specific item. This was a good design because it allows you to finely adjust the percentages to each category to yield the sort of rarity results you desire for your campaign.

Design a master table that has the major categories, such as, rings, wands, armor, potions, money etc. Have those lead to subtables, such as common armor, uncommon armor, rare armor. Then link each of those to a subtable that rolls for the specific item in the category, such as the types of uncommon armor they could get.

It takes a lot of work, as there are lots of items, but for me, it was worth it, because I hate to have to micromanage what all the characters are getting. Using this method, you can control the level of power of the items they are getting at what rate without having to micromanage each item.

AndyPan
October 21st, 2010, 17:28
I am getting the same error that jaqknife was reporting. I am running v2.7.2, using the v1.1 tables extension. Have tried several times to make a table, which works fine while in FGII, but if you exit, then reenter, the table is blank and I get the error. Even creating an unpopulated table results in the same error.

I tried this with two work-in-progress campaigns, and it was repeatable. It was repeatable also in a completely new "test" campaign. Same error every time. I haven't tried the beta of the extension, which I will hunt down now. Just thought I would add my experience to the mix. :-)

AndyPan
October 21st, 2010, 17:32
Never mind the 1.2. I see that's private. Will wait for the release. Unless there's a fix for this version?

Zeus
October 21st, 2010, 18:27
Before Exiting FGII and restarting your campaign, can I assume you are saving the campaign?

If so. Could you detail the steps you are taking along with the table you are creating. I can't seem to reproduce the problem.

v1.2 has been uploaded to the private area of my resource site. I have as of yet not received any feedback so I may just push out v1.2 to the public area later this evening.

AndyPan
October 21st, 2010, 19:12
Thanks, Doc. that seems to be exactly what the issue was. I wasn't saving the campaign after making the table. Granted, I have never actually manually saved any campaign I have worked on, as I always seemed to be in there long enough that the program auto-saves several times. It never occurred to me that not saving manually could be the issue. At any rate, seems to be working now. Thanks for the help, and look forward to working with the 1.2 version.