PDA

View Full Version : CombatTracker Tools



rh4300
September 17th, 2007, 13:58
Hi folks,

attached you'll find the new CombatTracker Tools (CTT) for FG2 which will add the following new slash commands for the chat window:

/cts <name>
Combattracker save; saves the current CombatTracker under as <name> inside the campaign registry.

/ctl <name>
Combattracker load; loads a saved CombatTracker called <name> from the campaign registry.

/ctd <name>
Combattracker delete; deletes a saved CombatTracker called <name> from the campaign registry

/ctt or /ctl
Combattracker list; shows a list of all saved CombatTrackers

/ctc
CombatTracker clear; clears the CombatTracker

/cth
CombatTracker help; displays a short help

Credits go to Smiteworks; I just made some code-recycling


Installation instructions:
Either replace the complete combattracker.lua with the attached one or make a copy and paste of CTLoad, CTSave, onInit and onClose.

Beware - this is a beta release. Use at your own risk!

Any feedback is welcome!


Update 2007-09-17:

new version: 0.2
new commands: /ctd /ctl /cth


Update 2007-09-12:

to do: show a list of saved combattrackers ... DONE (v0.2)
to do: command to add saved combattrackers (merge; for adding groups like the players)

Sorontar
September 17th, 2007, 14:56
Excellent, can't wait to get home and try this.

zifnab69_fr
September 17th, 2007, 18:48
Well, i test it,
it work very fine....

thank you for your job.....

hop it'll be in the official release,

(as the Combat tracker script - auto-number names and roll init witch work very well to )
https://dev.fantasygrounds.com/forums/showthread.php?t=6527&highlight=combat+tracker

it'll be great that FG users can vote for the script they want to immediately see in "FG2 Updates"...
It's very easy for the dev team to check the script is ok and push it in the update.

Nalfien
October 3rd, 2007, 03:28
I have loved the idea of this script since the first version, however I can never get it to work. All I get is a message that it loaded my saved tracker, but it just shows up blank. I use /save before I exit too. Any ideas?

zifnab69_fr
October 3rd, 2007, 09:40
The Combat traker must be open before you load a saved CT

Nalfien
October 3rd, 2007, 20:25
Tried that. No luck.

DNH
October 24th, 2007, 11:55
i have not actually "installed" this in my ruleset or played with it at all but i would like to know something more about it. as far as i can make out, this would allow the dm to load up the combat tracker, save it, and then do again for another location, another encounter. this is all in prep time, so that game time runs more quickly, with the dm only having to type /ct load room012 or whatever. do i have this right? can we really have multiple saved "encounters" ready to roll?

thanks.

Sorontar
October 24th, 2007, 12:35
I think that's the top and bottom of it yup, before I got too involved with it my main PC went *POP* so beyond that I can't say much :(

zifnab69_fr
October 24th, 2007, 13:05
Well,
@ DNH you are all right.

as a gamemaster you can prepare before the game session, some combat trakers (just npc, not with players) and save them with "good names" (sorry for my bad english)
like for exemple " the tavern " "night wood 1" "night wood2", " the castel"...
and then, during game play, you can load them if necessary and add the players on it if needed....
when you close the server and reopen it, the saved combat tracker remain...
what is very usefull to is that it automaticly roll dices for monster HP and init...

i did not try if it remain when you save it in modules, but i'm sure it do it.

it's very usefull.

DNH
October 24th, 2007, 13:09
excellent! that's great news and just what i was looking for. this was a sticking-point with FG2 for me and almost had me returning to kLoOge!

thanks.

zifnab69_fr
October 24th, 2007, 13:18
an other mod very usefull to is the Easy D20 skill/ability rolls
Now, when you double click on an ability or a skill the d20 is automaticly rolled with the bonus and it is write in the chat box ...


https://dev.fantasygrounds.com/forums/showthread.php?t=6015

Astinus
October 24th, 2007, 16:29
Will this script work with other rulesets? I'm going to use the Castles & Crusades ruleset from DA. I love the idea of being able to pre-prepare different combat trackers for different encounters.

DNH
October 24th, 2007, 16:55
it does indeed work with other rulesets. i use my own ad&d 2e ruleset and it works with that. it doesn't affect the rules at all actually, insofar as it saves and loads snapshots of what is placed on the combat tracker at any given time.

genius ... i will take this opportunity to snipe at the FG2 developers actually. this kind of functionality should be built-in, not a hack by someone in the community. i appreciate that FG2 promotes DMing "on-the-fly" and "recreating pnp role-playing" but to leave out such basic functionality as being able to prepare encounters beforehand is, well, inexcusable.

/rant

Astinus
October 24th, 2007, 17:25
it does indeed work with other rulesets. i use my own ad&d 2e ruleset and it works with that. it doesn't affect the rules at all actually, insofar as it saves and loads snapshots of what is placed on the combat tracker at any given time.
Great news. I'll try it as soon as the C&C ruleset is released and probably bug you if I have problems :o

Astinus
October 24th, 2007, 17:34
Another question: If this is used to replace the combattracker.lua, what happens when FGII is updated? Does the script need to be re-added? Obviously I've never used scripts before.

Also, if the Devs actually make this part of the official update, will it conflict with what's already been added? I guess I'm just nervous about messing things up, which is made worse by the fact I don't really understand how they work. Thanks.

Sorontar
October 24th, 2007, 17:37
genius ... i will take this opportunity to snipe at the FG2 developers actually. this kind of functionality should be built-in, not a hack by someone in the community. i appreciate that FG2 promotes DMing "on-the-fly" and "recreating pnp role-playing" but to leave out such basic functionality as being able to prepare encounters beforehand is, well, inexcusable.

/rant

Well in all honesty Smiteworks developed FG2 with a new language and improved greatly on FG1. They then gave those with the skills the ability to change FG2 and improve on it whilst Smiteworks developed things on their own.

I'd like to see all the excellent work by the community somehow make it into the official product in some way, but in Smiteworks timeframe.

Q: Was it suggested whilst FG2 was being beta tested?


Another question: If this is used to replace the combattracker.lua, what happens when FGII is updated? Does the script need to be re-added? Obviously I've never used scripts before.

Also, if the Devs actually make this part of the official update, will it conflict with what's already been added? I guess I'm just nervous about messing things up, which is made worse by the fact I don't really understand how they work. Thanks.

I believe that because of all the community work, patches come with detailed notes on what has been updated so that any things can be re-applied by the user in their custom rulesets if needs be.

zifnab69_fr
October 24th, 2007, 17:51
to use these "patches" you must make your hown custom ruleset. It can be only a copy of the "official ruleset" But it's impossible to customise the builtin ruleset. So
in case of an official update, your hown ruleset (modified) will not be impacted.
Of cource, if you want the new functions of the new official ruleset and the "old community patch" you must make an other copy of the new official ruleset and then patch it.
(sorry for my bad english... horrible)

Astinus
October 24th, 2007, 17:55
to use these "patches" you must make your hown custom ruleset. It can be only a copy of the "official ruleset" But it's impossible to customise the builtin ruleset. So
in case of an official update, your hown ruleset (modified) will not be impacted.
Of cource, if you want the new functions of the new official ruleset and the "old community patch" you must make an other copy of the new official ruleset and then patch it.
(sorry for my bad english... horrible)
No need to apologize. You and Sorontar explained it perfectly. Thanks.

Astinus
December 5th, 2007, 02:55
Another noob scripting question: when I copy the official d20 ruleset and add this script, how does this affect my players when they connect to me?

- Do they have to download the whole ruleset because it is different to the default they have on their system? Unpacked, the ruleset is about 11 meg. So does each player have to download an 11 meg ruleset?
- Or do they just download the difference? Which is just one or two small scripts.

Reason I ask, bandwidth is an issue for our group.

Thanks for any help.

Griogre
December 5th, 2007, 05:34
You should, of course, rename your modified ruleset to something different but either way a they will redownload the entire ruleset though it should be only a one time thing.

zifnab69_fr
December 5th, 2007, 05:55
But when they have download your new ruleset, eatch time you change something on it, they have to download only the modified file and not all the ruleset.

nezzir
December 9th, 2007, 23:04
I tried it with the Warhammer Ruleset but it wouldn't work. I pasted the listed text into my combattracker.lua, but it wouldn't even display the help text. That mod has been pretty heavily changed from the original D20 ruleset though...

Too bad. This looked really handy.

IamGrays
May 5th, 2008, 16:54
This is a great mod well done & extremely useful.

I added a '/cta' funtion to add a list to the existing combat tracker. This allows me to create encounters ahead of time and save them in the list. Then add them to party (who are already in the combat tracker). No messing about adding monsters and adding tokens to them during play.

Fantastic this is the best mod I have seen and think should definately be in FG3 when it comes.

Carlos
May 6th, 2008, 14:53
Would you care to share the code for /cta? It's something that I would find very useful for grouping encounters.

Archmage
May 17th, 2008, 07:23
I don't know if this has been reported yet, but it seems as though if you save a combattracker setup with personalities that have more than one line of attacks, the program thinks its an incomplete string and basically throws out all the saved data.

Anybody else had that problem?

Oberoten
May 17th, 2008, 07:58
Ah, that is due to how the interpreter reads the personalities and attack data. Don't press enter between the attacks, just keep typing with a space in between them and it'll work.

Archmage
May 17th, 2008, 19:05
Ah, that is due to how the interpreter reads the personalities and attack data. Don't press enter between the attacks, just keep typing with a space in between them and it'll work.
I know, but that that doesn't really suit my needs.

IamGrays
June 2nd, 2008, 09:34
Would you care to share the code for /cta? It's something that I would find very useful for grouping encounters.

Ok here goes, it's not to tricky it just requires you to add the new command and then copy the /ctl function and change it a little. All changes are made in the combattracker.lua file.

Step 1: Add the /cta to the CTHelp function

Simply add the additional line for /cta see example below of updated CTHelp function.


-- CTHelp: prints some help
function CTHelp()
Message("CombatTracker Tools 0.2");
Message("Usage:");
Message("/cts <name> save current CombatTracker as <name>");
Message("/ctt or /ctl show saved CombatTrackers");
Message("/ctl <name> load CombatTracker <name>");
Message("/cta <name> add to existing CombatTracker <name>");
Message("/ctd <name> delete CombatTracker <name>");
Message("/ctc clear CombatTracker");
Message("/cth shows this help");
end

Step 2: Copy the CTLoad function

Either copy the CTLoad function, rename the function and remove the Closeall() statement or simply copy the function below into your combattracker.lua file.


-- CTAdd: loads a stored CombatTracker from the CampaignRegistry and adds it to existing Combat Tracker
function CTAdd(param)
local trackertable = {};

if param == "" then
CTList();
return;
end

if CampaignRegistry and CampaignRegistry.CTStore then
trackertable = CampaignRegistry.CTStore[param];
end

if trackertable then

local idmap = {}; -- Mapping id -> window

-- First pass, create entries
for k, v in ipairs(trackertable) do
local win = createWindow();
win.restore(v);
idmap[k] = win;
end

-- Second pass, create effects with ids
for k, v in ipairs(trackertable) do
idmap[k].restoreEffects(v, idmap);
end
Message("CombatTracker <" .. param .. "> added.");
else
Message("CombatTracker <" .. param .. "> not found!");
end
end

Step 3: Modify onInit and onClose functions to include Cta command.

Modify the functions to look like below or replace both functions with code below.


function onInit()
Interface.onHotkeyActivated = onHotkey;

getWindows()[1].close();

restoreFromRegistry();

if #getWindows() == 0 then
createWindow();
end
ChatManager.registerSlashHandler("/ctl", CTLoad);
ChatManager.registerSlashHandler("/cta", CTAdd);
ChatManager.registerSlashHandler("/cts", CTSave);
ChatManager.registerSlashHandler("/ctc", CTClear);
ChatManager.registerSlashHandler("/ctt", CTList);
ChatManager.registerSlashHandler("/ctd", CTDelete);
ChatManager.registerSlashHandler("/cth", CTHelp);
end

function onClose()
storeToRegistry();
ChatManager.unregisterSlashHandler("/ctl", CTLoad);
ChatManager.unregisterSlashHandler("/cta", CTAdd);
ChatManager.unregisterSlashHandler("/cts", CTSave);
ChatManager.unregisterSlashHandler("/ctc", CTClear);
ChatManager.unregisterSlashHandler("/ctt", CTList);
ChatManager.unregisterSlashHandler("/ctd", CTDelete);
ChatManager.unregisterSlashHandler("/cth", CTHelp);
end


That should do it (I think). You can then build encounters ahead of time, save (/cts) them and then when required have your party in the combat tracker and simply add (/cta) the encounter to the party. When you do a /cts to save the encounter the tokens are saved as well so make sure when you prepare the encounter you assign these as well, makes for really easy and fuild encounters.

Let me know if you have any problems.

balth
June 7th, 2008, 06:45
using your combattracker lua file, I get the following error:

ScriptError: [string "scripts/combattracker.lua"]:144:atempt to call field 'store'(a nil value)'

I am currently running the box and the 4e char sheet. I don't THINK either of these would cause that problem;

I replaced the 4e charsheet combattracker.lua with yours and that was my result. I've popped the combattracker.lua that comes with the 4e set here so you can take a look at it and see if you can figure out why yours won't load the /cts module when I replace it with yours.

Cheers!

Moon Wizard
June 7th, 2008, 07:32
Which 4E character sheet are you using?

JPG

balth
June 7th, 2008, 15:33
The excellent one Joshuha has been working on over at fouruglymonsters; if you search here, there is a thread on it.

Jingo
July 17th, 2008, 18:10
I've been using the tracker tools in my DnD 3.5 game. Excellent mod by the way! It works great except when I close down my FG session and restart it and then load in a stored combat tracker, several of the items in the tracker no longer have their associated character token. Yet I saved the tracker and the campaign prior to exiting FG. Anyone know why? And how I would fix it?

Jingo
July 20th, 2008, 03:04
Actually I think I found a worse problem than before... or maybe something is just funky with my custom True20 ruleset. If I put entries in a combat tracker and save it and close down FG and reload I can use /ctl to load and switch between them. However, if I drag tokens from tracker onto a map and then close and reload FG, the tokens remain on the map, but ALL combat trackers are erased! I sort of think this is something wrong with my ruleset. Anyone else getting this? Any ideas where I can look to get this fixed?

IamGrays
July 21st, 2008, 11:11
Jingo - I've had the problem with the tokens disappearing from the combat tracker but haven't looked into why this is happening yet. I've never seen the other situation you describe but I think we might be using this slightly different or, as you say, it could be your ruleset.

To work around the first problem. I have my party saved (/cts Party) and if I open the combat tracker and some icons are mising I just load the Party up again (/ctl Party). This has always worked ok so far.

Jingo
July 23rd, 2008, 05:21
I hopefully solved the second more serious problem. The console kept barking whenever I had one of my personalities in the tracker. I still don't know what the problem was, but apparently it didn't like one of the strings in the Full Attack field and that was somehow causing it to clear out all the saved trackers. Really bizarre. I rewrote what was in the field and things *seem* to be working now. *crossing fingers*. Thanks.

kcheu
July 24th, 2008, 05:48
dumb question, but new to FG2 and jpg 4e ruleset, how does the combat tracker work with PCs? I can drag and drop NPCs in no problem and they auto fill and auto roll init, but not sure how to get PCs info into the combat tracker!? (btw, I accidentally got it to work the first time, both PCs and NPCs, but now i forgot how I did it)

Foen
July 24th, 2008, 06:58
I've not used the 4e ruleset, but generally you need to drag a PC's portrait from the top left of the screen onto the tracker while they are logged on. You can't normally drag them from the characters list from the top right.

Some rulesets have portrait icons on the character sheet (the default d20 doesn't but it is a standard addition to many rulesets) and they can sometimes be dragged to the tracker too. That way a GM can open up a character sheet and drag the PC to the tracker while no-one is online, without having to start a second instance of FG.

Hope that helps

Foen

Wargamer777
July 25th, 2008, 14:31
Does anyone have the Tools working with the lastest 4th Ed Ruleset? I had them working in version .96 and .98. It doesn't work on 1.0.

If anyone has it working with 1.0, can you send me your combatracker.lua file?

I'm hesistant to just replace the combattracker.lua file with the one in this thread because I think the 4th ruleset has made some modifications to the lua file.

Moon Wizard
July 30th, 2008, 19:16
The combat tracker load/save or similar functionality will return to the 4E JPG ruleset.

The .96/.98 implementation was never working without potential crashing issues when connected to clients. And in v1.0, some of the data structures changed, which meant that the code would no longer work at all.

Cheers,
JPG

Leonal
July 31st, 2008, 12:46
Hi, I just got this program and while it looks great, I'm having some minor problems with implementing this module.

I'm getting an error when having more than one attack available on an NPC like this:
Dagger +1 melee (1d4)
Longsword +1 melee (1d8)


Script Error: Error parsing CampaignRegistry
Script Error: [string "return" {..."]:13 unfinished string near "Dagger +1 (1d4)'

The error appears on the next time I start the client after saving the combattracker, and what I had saved is gone.

Anyone else who had this problem and know of a solution to this?

Oberoten
July 31st, 2008, 21:18
Don't press enter between entries, just a space.

Leonal
August 1st, 2008, 00:29
Ah, excellent! Thanks!

Bidmaron
September 2nd, 2008, 02:03
Has anyone successfully used these mods with the 3.5 JPG ruleset from Moon_Wizard (https://www.fantasygrounds.com/forums/showthread.php?t=8640)?
--Dale--

nezzir
September 6th, 2008, 06:06
I was wondering if I could get some help getting this working in my mod. When I use the save function, I get error message:


Script Error: [string "scripts/combattracker.lua"]: 145: wrong number of arguments to 'insert'

Here is the relevant code from the 'CTSave' function:

-- First pass, store entries
for k,v in ipairs(getWindows()) do
table.insert(trackertable, v.store()); [*This is line 145*]
idmap[v] = #trackertable;
end

The script is attached. As you can see, I changed what stats are ported over for the WFRP2 system. Did I miss a variable somewhere or something?


I think this is an essential mod and I'd really like to put it in the ruleset. It's a much needed function. If I can get it working in WFRP2 I can get it working in Dark Heresy. There would be much rejoicing from Warhammer GMs :)

Foen
September 6th, 2008, 06:54
Hi Nezzir

It looks like your v.store() function is returning too many or too few arguments. Unfortunately the code for v.store() isn't in the zip file, do you think you could post it here?

Cheers

Foen

nezzir
September 6th, 2008, 09:08
Foen to the rescue yet again! Imma have to get a 'damsel in distress' hat or something.

In the 'combattracker_entry.lua' there is a 'function store' entry (line 205). Is that it? I don't recollect modifying that entry when I made the ruleset. Perhaps something needs to change in it to reflect my changes in the combattracker.lua

Oberoten
September 6th, 2008, 09:26
Foen to the rescue yet again! Imma have to get a 'damsel in distress' hat or something.



You and me both... Should I start wearing a padded bra you think?

Foen
September 6th, 2008, 09:49
*grins*

The store() code needs to be modified (it has already been changed from the default d20 code, so someone's been here already):



-- New Code

function store()
local entry = {};

-- Name, type and link target
entry.name = name.getValue();
entry.type = charactertype;

if link.getTargetDatabaseNode() then
entry.dbnode = link.getTargetDatabaseNode().getNodeName();
end

-- Token and token instance
entry.token = token.getPrototype();

if token.ref and token.ref.getContainerNode() then
entry.tokenrefnode = token.ref.getContainerNode().getNodeName();
entry.tokenrefid = token.ref.getId();
end


-- Token
if entry.tokenrefnode and entry.tokenrefid then
token.acquireReference(token.populateFromImageNode (entry.tokenrefnode, entry.tokenrefid));
elseif entry.token then
token.setPrototype(entry.token);
end
return entry;
end


Hope that helps

Foen

nezzir
September 8th, 2008, 14:08
Ok, so that got me past the first error, and down to (what I hope will be) the last one. It refers to the next section that deals with the effects.

Error:

Script Error: [string "scripts/combattracker.lua"]: 151: attempt to call field 'storeEffects' (a nil value)

Combattracker section:

-- Second pass, store effects
for k,v in pairs(idmap) do
k.storeEffects(trackertable[v], idmap); <-- [This is line 151]
end
if not CampaignRegistry.CTStore then
CampaignRegistry.CTStore = {};
end


Reference from Combattracker_entry (What I think is the relevant code)

function restoreEffects(entry, idmap)
effects.clearAndDisableCheck();
if entry.effects then
for k,v in ipairs(entry.effects) do
local win = effects.createWindow();
win.label.setValue(v.label);
win.duration.setValue(v.duration);
win.adjustment.setValue(v.adjustment);
win.caster.setSource(idmap[v.sourceid]);
end
end
effects.enableCheck();
end

(lol, I tried putting a 'return entry;'in there, I'm such a code nub...)

Again, thanks for taking the time to look at the code for us :)

Foen
September 8th, 2008, 18:56
The combat tracker function 'restoreEffects' isn't the one being looked for, it is its twin, 'storeEffects' that is needed. You might have deleted it as not being relevant to your ruleset?

Stuart

nezzir
September 9th, 2008, 06:39
Yup, you're right. I took it out. I started putting it back in and found out why. The 'storeEffects' code block was pretty simple. I inserted it and the 'save' function became available. When I tested the 'load' function, I found that I had also cut out the 'restore' function. When I looked at it I saw why I had cut it out.



function restore(entry)
-- Name, type and linking
name.setValue(entry.name);
local targetnode = nil;
if entry.dbnode then
targetnode = DB.findNode(entry.dbnode);
end

if entry.type == "pc" and targetnode then
charactertype = "pc";
link.setValue("charsheet", entry.dbnode);
link.setVisible(true);
name.setReadOnly(true);
name.setFrame(nil);

-- Links to data
name.setLink(targetnode.getChild("name"));
hp.setLink(targetnode.getChild("hp.total"));
wounds.setLink(targetnode.getChild("hp.wounds"));

ac.setLink(targetnode.getChild("ac.totals.general"), targetnode.getChild("ac.totals.touch"), targetnode.getChild("ac.totals.flatfooted"));
fortitudesave.setLink(targetnode.getChild("saves.fortitude.total"));
reflexsave.setLink(targetnode.getChild("saves.reflex.total"));
willsave.setLink(targetnode.getChild("saves.will.total"));
else
if entry.type == "npc" and targetnode then
charactertype = "npc";
link.setValue("npc", entry.dbnode);
link.setVisible(true);
end

-- HP, wounds
hp.setValue(entry.hp);
wounds.setValue(entry.wounds);
end

-- Token
if entry.tokenrefnode and entry.tokenrefid then
token.acquireReference(token.populateFromImageNode (entry.tokenrefnode, entry.tokenrefid));
elseif entry.token then
token.setPrototype(entry.token);
end

-- FoF
friendfoe.setState(entry.fof);

-- Value fields
initresult.setValue(entry.initresult);
space.setValue(entry.space);
reach.setValue(entry.reach);
ac.setValue(entry.ac);
fortitudesave.setValue(entry.fortitudesave);
reflexsave.setValue(entry.reflexsave);
willsave.setValue(entry.willsave);
speed.setValue(entry.speed);
init.setValue(entry.init);
atk.setValue(entry.atk);
fullatk.setValue(entry.fullatk);

token.updateUnderlay();
end


All of the things in my combat tracker were substantially chanced (non-d20 RPG). Those entries were, if I remember correctly, causing problems (or I may have had other issues and cut them out to be sure).

Putting in back in (properly and functional with my ruleset) may take some doing. That fixes my problem though if I can sort through the code. I suck at coding but I can reverse engineer with the bigdogs!

Thanks for the help.

Edit: Now that I look, the 'store' function has the same problem. If it worked, it might leave out stats. I'll mess with it tomorrow - thanks again.

nezzir
September 11th, 2008, 14:52
My appologies to the Warhammer ruleset users, but the code surrounding the areas that need to be fixed in order to get this mod working in our ruleset is a bit beyond my skill level.

nezzir
September 12th, 2008, 19:02
Foen has graciously offered to assist me with getting this mod working in my ruleset.

Foen:
Here are the files that (I think) are relavant to this issue. If other files are needed, let me know or DL the ruleset from the links in my sig.

I think my problem lies in the combattracker_enty/function restore(entry), though there may also be an issue with the function store(). In the combattracker.lua you'll see where I changed the information presented in the combat tracker to reflect the WFRP2 system.

The relavent sections in the Dark Herasey ruleset are virtually identical, so if I can get it working here I can port it over to that ruleset with a little work.

Thanks and PM me if I can help or answer questions.

Karma++ Foen

Foen
September 13th, 2008, 06:43
The problems you were having before centred around the loading and saving of effects - are they used in the WFRP2 system? If not, it will be easy to remove the functions, otherwise we'll need to fix them instead.

Foen

nezzir
September 13th, 2008, 14:13
Maybe I'm not clear on what 'effects' are. My combat tracker functions as closely as possible to the d20 one:
Tokens: Scalable and droppable
Name
Stats (Init, wounds, ws, bs, s, t, ag)
FoF indicator (locked on drop to Friend for PCs or Foe for NPCs, but changable)
AC drop down (that pulls and 'armor description' line off the character sheet)
Grid and reach (set to 5x5 on all monsters currently)
Movement
Attack
Weapons (line pulled from the character sheet)
Talents (line pulled from the character sheet)
and finally, the condition tracker

The problem, or so I thought, was that all of the variable names changed. Some of the code for the stats got changed a bit (I was having some issues and someone suggested the current code that's in there).

Far as I can tell, it's pretty close to the original d20 code, just different variable names and a slightly different way of pulling the stat numbers off the sheet.

Foen
September 13th, 2008, 14:30
OK, the condition tracker is what I was referring to. I'll take a look at the code with that in mind.

Foen

nezzir
September 13th, 2008, 16:32
That I know of, I didn't change anything in the condition tracker. It's pretty generic so there was no reason to. The code is probably a mess. Everytime I look at it I ask myself how I managed to pull off three functional rulesets...

Caraldur
November 17th, 2008, 14:18
I am running FGII v2.3.3 and 4E_JPG rulset v1.3.

I have rename my combattracker.lua file and replaced it with the CTTv02 verison but everything I try to save a combattracker setup I get the following error:


144: Attempt to call field 'store' (a nil value)

I also get the same error when I close the combat tracker.

Next error happens when I try to add a monster or character to the Combat Tracker I get this error:


294: Attempt tocall a field 'setType'(a nil value)



I'm a noob when it comes to Lua but I do have some programming experience but I'm not sure how to fix this problem. Hopefully someone can give me a hand gettting this to work properly.

Thanks in advance for the help.

-Car

Tenian
November 17th, 2008, 14:38
4E_JPG uses a heavily modified combat tracker, by replacing those files, I'm surprised those are the only errors you got.

4E_JPG supports "battles" (crossed swords on the right hand pane). These are shortcuts to add a number of monsters at once to the combat tracker. They can also be exported with modules. They are designed to mimic the encounter format of published 4E adventure modules/manuals.

You should take a look at them, I think they cover the bulk of players needs to save/load the CT.

Bidmaron
November 18th, 2008, 00:59
Does d20_jpg support the same feature?

Griogre
November 18th, 2008, 05:46
The d20_jpg does not have encounters or "battles" they are not as important in d20 because the number of monsters per encounter are normally a lot lower than 4E.

Bidmaron
November 18th, 2008, 11:55
Sorry, I was not specific. What I meant was does the d20_jpg support saving combat tracker combatants as part of a module? The documentation is not clear on which part of the combat tracker tools are supported.

Phystus
November 19th, 2008, 00:40
Sorry, I was not specific. What I meant was does the d20_jpg support saving combat tracker combatants as part of a module? The documentation is not clear on which part of the combat tracker tools are supported.

He mentions some issues with it here: https://www.fantasygrounds.com/forums/showthread.php?t=8640&highlight=%2Fcts

That was for version 1.3.1. I've got version 2 (though I'm not using it yet), but didn't see anything in the notes about it. I suspect if he'd gotten it working better he'd have said so.

~P

IamGrays
February 8th, 2009, 17:44
I would like to add this functionality as an extension but frankly extensions confuse me. Can this be done, is it a good idea and what would I need to do?

Moon Wizard
February 10th, 2009, 00:51
No, the d20_JPG ruleset does not support exporting of combat tracker combatants.

With the d20_JPG ruleset, I converted the storage of combat tracker data from the campaign registry into the campaign database, which allowed me to create a client view of the combat tracker for players.

In the 4E_JPG ruleset, I added a new king of campaign element for putting together encounters, which are essentially groups of monsters that you can quickly add to the combat tracker. Since these are campaign elements, it was easy to allow those to be exported to modules.

Development of the d20_JPG ruleset is much slower than the development of the 4E_JPG for the obvious reason that it is an older version of D&D with many less people using it. I have already made one large update of the d20_JPG ruleset to add many of the new features that were developed for the 4E_JPG ruleset, and I expect that I will again. However, there is no specific timeline for d20_JPG updates.

Cheers,
JPG

DMdomination
February 13th, 2009, 22:40
i hate to post on an old thread but I'm curious, i copied and pasted the CTT into the my application data and it didn't do anything. None of the commands get any action. It said replace your combat tracker but i can't find my original. Forgive my novice experience in this area but if anyone could provide clearer installation instruction i would appreciate it i would love to save CT's. Thanks