April 13th, 2022, 20:52 #1
Carrier Extension (Fantasy Grounds Unity 5E Ruleset)
Carrier Extension (Fantasy Grounds Unity 5E Ruleset)
Jump aboard a vehicle and move as a single group!
This stand-alone extension for Fantasy Grounds Unity allows a host to create a "carrier" link between different "carried" combat tracker PC or NPC entries. When the CT "carrier" map token is rotated or moved (host or client) all of their "carried" map tokens move or rotate with it. This includes any "carried" items that are also "carriers" themselves.
You can also give a "carried" PC or NPC combat tracker entry the action links if their "carrier" is an NPC (host). A default position will be assigned to a "carried" token around the "carrier" though holding shift will allow the "carried" token to be repositioned (host).
This extension unlocks the following functions:
- Drop combat tracker (CT) entry name you want to be "carried" onto another CT entry or its map token that you want to be its "carrier" (host).
- Any "carried" map token will move or rotate when its "carrier" map token is moved or rotated (host or client).
- A "carrier" CT entry will have a list of "carried" CT entries with button options (host):
- Make PC or NPC carried item invisible or visible independent of CT visibility.
- Make carried token immobile (default), a driver (anytime it moves or rotates it does same to its "carrier" and any "carried" it has), or free (does not require holding shift key) repositioning.
- Lock a "carried" item (default) so the "carried" CT entry cannot dismount or remove itself from the "carrier" (lock applies to host or client).
- Remove a "carried" CT entry from the "carrier" CT entry.
- A "carried" CT entry will have one button option (host or client):
- Remove a "carried" CT entry from the "carrier" CT entry if the "carrier" has this "carried" CT entry unlocked.
- If the "carrier" is an NPC then it can drop its action links (expand actions in CT entry) onto its "carried" CT entries (host). This allows the "carried" CT entry to execute that action with its targets while still having it applied by the "carrier" CT entry. Only a "carried" CT entry can remove an assigned action (host).
- Client will only show owned or same faction as current logged in PC (identity) "carried" (actions and remove button shown only if owned) or "carrier" (no buttons) CT entries.
[See .txt file for full list of updates and features]
V1.12 - Update - setting a carried or carrier which is not visible on CT will not show its buttons when made visible on CT. Usually only using combat groups and dragging a name onto a token not currently displayed in CT can cause this. This can now be displayed correctly by closing and opening the CT window.
V1.14 - Bug - need to update carrier data when groupvis of combat tracker changes. This will fix the workaround of having to open and close host window to fix the missing carrier buttons.
V1.15 - Update - changed all default options to what I want as I got tired of updating them all. Users can turn them off now if they don't want them.
V1.16 - Update - implemented node and childList changes to code that SW wanted.
V1.17 - Update - supported vehicle class as much as possible in the same manner as npc class.
V1.18 - Update - A Vehicle carrier CT entry link for a component can be used by dragging the link and dropping it onto a CT entry carrier tokenfield (in CT entry for carried or carrier) or dropped onto a valid map token (will then appear in carried CT entry under its carrier entry). It will add all the actions for that component. Same as could previously be done with an NPC or Vehicle CT entry link for traits, actions, Lgd Actns, LairActns, Spells, etc.
V1.19 - Bug - running a local client would have ownership detection issues - changed check to be with Session.UserName instead of User.getUserName() so the correct login user would be returned for comparison with owner when the client is running on same machine as host.
V1.20 - Update - when using "Set Common Initiative for carried entries (menu rolls only)" set to "on" it will always guarantee that the initial roll never has duplicates before it forces these common init settings. This prevents scrambled CT entries when they shared a common init roll.
V1.21 - Update - new driver option called "follow" has been added. If set you can hold shift to position carried token in some reasonable follow distance position then when the carrier moves any carried entries with the follow setting will follow in its path. This is only for single file following. Though you can have carried token defined as carrier token (with non following carried entries itself) set to follow. If you set toggle the driver option off of "Carrier follow" then the next time you move the carrier it will have all tokens snap back to their original positions based on normal carrier behavior. Best to just drop the double click the drop all carried entries token (see tooltip) if your going to do that. Per my usual standards - its good enough. Use or don't use it as you see fit. See details in .txt file.
V1.22 - Update - option "Orient token along direction of movement" defaulted to "off" will allow token orientation to be set from direction of movement as the token moves.
V1.23- Update - changed icon for "Carried follow" to be one from the CoreRPG so it would be more generic. Carrier is supported only in 5E no other ruleset. Specifically I do not support it in rulesets I don't use, for example - like 3.5E, 4E, CoreRPG, PFRPG, PFRPG2, and SFRPG. Just like my Map Parcel extension only supports 5E. Nothing else will be mentioned on this subject.
V1.24 - Bug - fixed an error due to unguarded nil. Made sure the CT visible eye icon is in synch with the CT Carrier Carried entry eye icon so both would set token visibility and carrier carried entry visibility properly.
V1.25 - Bug - At some point PCs entries in the CT stopped being able to have generic CT buttons on the clients effect them. As Carrier has such buttons I've had to force the addHolder/removeHolder of the CT's ownership when a PC is activated or deactivated myself.
V1.26 - Bug - V1.24 introduced a bug that caused a recursive call to corrupt a window on player side. Fixed.
V1.27 - Update - "Carrier; SKIPTURN" will only be applied when Carrier carried eye icon is toggled to invisible not when CT entry eye icon is toggled to invisible. That way carried entry can be made invisible without applying SKIPTURN to it.
V1.28 - Bug - stupid cut/paste error resulted in error at line 1422. Fixed.
V1.29 - Bug - with common init option the order was never really changing even though numbers generated were unique. This was because the number sample was generated based on random 20 and on large CT counts this was not a large enough random number sample to change the order. Now when common init option is set that init random number generator is based on current CT count so that sample is large enough to get unique numbers and change the order randomly. As usual with common init option you will see init much higher (if lots of CT entries visible or not). The CombatManager2.rollRandomInit code override is shared between carrier and combat groups extensions.
V1.30 - Bug - needs to be aware if common init from combat groups is in effect so it does not mess up that order. Fixed.
V1.31 - Deprecated Code - Deprecated legacy functionality I still use has been moved directly into the extensions which removes the deprecated errors. The new CT (client/host) does not easily support what I need to do and don't have time to figure it out, so for now just sticking with old way of doing things until something makes me do it differently.
V1.32 - Update - using local client confuses User.getIdentityOwner(sIdentity) calls so have to check for nil and then use sIdentity.sUser in order for it to get the local machine name (user). Only relevant if your using a local client like I do for testing. Will be part of next delivery version as this is just for me.
Watch video, read everything, understand what it is your getting BEFORE you hit the buy button. ALWAYS!
For support, please join the Grim Press Discord server: https://discord.gg/grimpress.
Extensions = RISK: This note is added to all the extensions I maintain. I want users to understand that extensions are code that is added to or overrides portions of code in the Fantasy Grounds Unity (FGU) application. When the underlying code in FGU changes it can break an extension. When you run with other extensions they can conflict by trying to overwrite the same parts of the FGU code. I will keep my extensions working with FGU changes, and the extensions I use (listed in my FGU signature) as I have direct control over those things. I cannot make the same promise with other extensions. If I am notified of an incompatibility I will attempt to resolve it - but if I cannot I will list what the known extension incompatibilities are. Understand before you get any extensions that it comes with RISK. Not just my extensions - any extension. These extensions are also maintained by me for me. I provide them outside of my own games purely to those who wish to take advantages of things I use for myself.
Details and full version changes (when page 1 runs out of space and is truncated) are in the .txt file linked to this page.
Note: Carrier logic will not work on the client without the host map up and running.
April 13th, 2022, 21:36 #2
- Join Date
- Nov 2018
I'm already going to use this. As soon as it's available. I have a "pet" that will attach to a player but not take any commands from them. What an excellent idea and implementation. Of course it'll have the normal SR quality.
April 13th, 2022, 21:49 #3
April 14th, 2022, 00:08 #4
April 14th, 2022, 03:02 #5
Thanks for this. I have been looking for a way to handle mounted combat.
I was testing this ext and found that when this ext is loaded with JFreitas' Stealth Tracker ext, the two do not work together. It took some time for me to narrow it down since it did not throw an error nor warning. It just fails silently. I did post to his thread about this as well.
April 14th, 2022, 03:30 #6
April 14th, 2022, 03:47 #7
I've just been told by MrDDT in discord with his 50+ things that it works fine with it. So I'm removing it as a conflict for now. No idea what your seeing as you both can't have it working and not working if your using the same versions.
April 14th, 2022, 03:50 #8-MrDDT
Really click this link and vote for your FGU wishes, more votes is more likely to get done and get what you want done.
Vote For Idea to Default Modules to GM Only
Vote For Idea to Give GM More Hotkey Options
Vote For Idea to Disable Dice Animations
April 14th, 2022, 04:24 #9
I shall share the current session I'm running in SW5E that when I was working on it was "this is a pain in the..." and poof - extension time. I had 5 players on a ship that needed 3 of the players to control weapons on the ship (one of them would control the ship also) while 2 fought off a stowaway in a separate map. Solution was Carrier Extension. This let me have the ship to ship combat map have the ship carry all 5 players - allowing them to target the other ships with the weapons (actions) shared to them and also have the other two fighting on an internal map of the ship where the 3 players at station were represented as a screenshot bitmap overlayed of them sitting at their control seats (represented as combat group token on the map). That way as the turn progressed through each player they would be in the map they were operating in during their turn - then next turn - the action would move to whatever map that player resided in and I could have a seamless flow of the game through two perspectives (large ship combat and micro personal combat on ship). May not make much sense to those who don't use my extensions but this was reasoning to do this extension. When done with internal ship combat they just go back onto the map as carried entries (likely I'll make them all invisible)
April 14th, 2022, 10:11 #10
Users Browsing this Thread
There are currently 1 users browsing this thread. (0 members and 1 guests)