[Script] [Update] Page Navigator v2.X

1492052656

Edited 1499705677
Scott C.
Pro
API Scripter
This is a major overhaul of Page Navigator that I have been working on for the last couple months. This version changes much of the script's function and commands. Because of this, when you start up a game that has previously had Page Navigator v1.X installed, you will be prompted to approve the upgrade or downgrade yourself back to the previous version (by going to your api scripts page). Code can be found in my  repository  and will be pushed for one-click install after a couple weeks of beta. Summary of Major Changes: Command syntax changes: The command syntax has changed dramatically to allow more streamlined command parsing and to make it easier for users to control all aspects of the script via macro Teleportation improvements: Token teleportation is now much faster. In addition, if you have token removal enabled, the script will copy the current state of a character's pre-existing token on the VTT (it will copy the first one it finds), rather than only creating a token based on a character's default token. Destination Token Setup Wizard: There is now a setup wizard for destination tokens. Access it by entering !nav --setup  while having a token(s) selected that you want to make into a destination token or update its parameters. Page Tags: You can now tag your pages to more easily find them in the script menus by putting your tag on the end of the page's name and surrounding each tag in single square brackets. This also changes how pages are tagged as player accessible. The players tag is created by default and tagging a page with [Players] will add it to that folder and make it player accessible. In addition, you can change player access to any folder from the script's config menu. See below for the full help text Thanks to Aaron and Stephen S. for their insight into several issues during the overhaul. Thank you to Keith Curtis for the banner artwork. Page Navigator allows you to more easily move your players from page to page. Movement can be triggered by chat command or token movement. The script will also handle creation of tokens on the new page for moved players. Movement Commands & Token Setup Chat Triggered page change: All players, only those currently in the player ribbon, or specific players can be moved to any page in the game, or returned to the player ribbon. The basic syntax for a move command is: !nav --move,page=PAGENAME,landing=LANDINGTEXT|whole/current/characterid|characterid|characterid|... Token movement triggered page change: Using this function requires that destination tokens be set up. Whenever a token controlled by a player ends its movement on a destination token, a chat prompt is sent to ask if the character should be moved to the page linked to that destination token or not. The prompt is sent to players only if the destination page is contained in a page folder that players have been given unrestricted access to. See the "Other Options" section below for more information about folders. In order to setup a destination token, the token must be named the same as the page to which it links with the exception of any folder names the page has been tagged with. Token Teleportation: When moving players to a page, the script can create tokens for each player at a destination token. The default characters to create tokens for for each player can be set in the config menu. In order for teleportation to function, destination tokens (from above) must contain a JSON in their GM notes field of the following format: { "landingLocation":"Location text of linked token", <=- Optional "location":"Location text", <=- Optional "chat":"Chat message/API command to send when moving to this destination token", <=- Optional "polygon":["Array of polygons limiting token generation"] <=- Only needed if location text is entered } You can setup destination tokens by using the Destination Token Setup Wizard via the command !nav --setup. You must have a token selected when you enter the command. Miscellaeneous Commands and Other Functions !nav --config Brings up the config menu. Folders are designated by tagging pages with whatever folder name you would like enclosed in square brackets (e.g. [FolderName]). Each folder name should be in its own set of square brackets. Any time you reference a page by name for the script, do not incude the folder tags in the name. The script automatically creates two folders, an "All" folder (which pages do not need to be tagged with) and a "Players" folder which can be used to tag pages as with any other folder name. Access restrictions for folders can be set in the config menu. If a page is contained in any folder that has player access, players will be able to send themselves to that page and any destinations therein without GM approval. When teleportation is enabled an additional option will be created in the config menu to automatically remove other tokens for teleporting players before creating new tokens for them. Example Use Cases Assuming pages named Scrapwall [Numeria][Scrapwall] with locations of "Clockwork Chapel"(LinkLocation:entrance) and "Raider Hideout"(LinkLocation:entrance), Clockwork Chapel[Numeria][Scrapwall] with a location of "entrance"(linkLocation:"Clockwork Chapel"), and Raider Hideout with a location of "entrance"(linkLocation:"Raider Hideout"). And characters named Jonos,Kindle, and Violet. Move player(s) controlling Jonos to Raider Hideout: !nav --move,page=Raider Hideout|@{Jonos|character_id} Move as before and create default token(s) for the player(s): !nav --move,page=Raider Hideout,landing=entrance|@{Jonos|character_id} Return Jonos to the player ribbon: !nav --move,page=return|@{Jonos|character_id} Return as before, but query where to generate a token: !nav --move,page=return,landing=?|@{Jonos|character_id} Full Command Syntax Guide This is the full guide of the chat commands available. Syntax is given with optional arguments enclosed in square brackets (e.g. Required Argument vs. [Optional Argument]). Mutually exclusive arguments are separated by a forward slash (/). Move Command: !nav --move,[page=PAGENAME/pageID=pageid],[landing=LOCATIONTEXT/?]|[PLAYERNAME/PLAYERID/CHARACTERID]|[PLAYERNAME/PLAYERID/CHARACTERID]|... page=PAGENAME: The page name, without the folder tags, of the page to move to. If the command is sent by a player, itwill be ignored if the page is not contained within a player accessible folder. pageID=PAGEID: The page id of the page to move to. This will probably only be used by the script itself or other APIs as there is no way for users to access the page id. landing=LOCATIONTEXT: This is the location text of the token where tokens should be created. If a "?" is entered as the location text, a menu prompt will be sent to the messaging player to ask what destination to use. PLAYERNAME/PLAYERID/CHARACTERID: The player name, player ID, or character ID to be moved. If no page is specified a prompt will be sent to the messaging player to ask what page to send players to. If no player or character is specified the command will not be processed. Configuration Option Controls: !nav --config,[remove=on/off],[teleport=on/off],[folder=FOLDERNAME,access=gm/players],[control=whole/current/self],[dmarker=statusmarker name/name only] If no additional options are entered, then the config menu will be displayed. Will only use the first of these the script encounters. remove: This sets token removal on or off. Token removal causes all other instances of tokens representing teleporting characters to be removed before creating new tokens at a designated destination token. folder: Designates what folder that you would like to change the access state of. Folder access information is stored in the Page Navigator character in an ability called Page Folders . access: This sets player access for the indicated folder. control: Sets player's ability to move others to new pages (whole=all players, current party=only those currently on the player toolbar, self=only themselves). dmarker: Sets what status marker is used to define destination tokens. Can be the name of a statusmarker or "name". If "name" will only look for tokens that are named the same as a page. teleport: Sets token teleportation on/off. Destination Token Setup Wizard: !nav --setup Wizard Buttons: Token Name: Clicking this button will bring up a query with options for the names of all current pages. You can also enter the name of yet to be created name by selecting the "PAGE NOT CREATED YET" option Boundary: Select polygonal paths that you want to use to bound the token creation area for the destination token and then click this button. All polygons selected should create a closed shape as the script determines whether tokens can be created from a destination via a flood-fill algorithm. Location Text: Clicking this button will bring up a query similar to that of the Token Name for selecting or entering custom text to describe the location of this destination. linkLocation Text: As the button for Location text, but describes the location of the destination token this token links to. Chat Command: Allows you to enter a line of text to be sent to chat when players are moved to this destination. Can be used to have the script send API commands based on party movement. Menu Image Examples Config Menu Movement Approval Dialog Unspecified Page Movement Dialog Destination Token Wizard Changelog: V2.1 Fixed several bugs that made the script unusable V2.0 Improvements to teleportation logic and storing of character tokens improved command syntax Destination Token Wizard Folders (tags) v1.x See the  previous thread
Awesome stuff, I am going to plug this into my campaign today and give it a whirl.
Cool! If I wasn't playing tonight, I'd install and play with it. (I try never to mess with the API too close to play time.)
1492886138
Scott C.
Pro
API Scripter
Benevolent Tyrant said: Awesome stuff, I am going to plug this into my campaign today and give it a whirl. Let me know if you run into any problems. I'm waiting to push it to one-click till I've had a chance to test it more and get feedback from you all. keithcurtis said: Cool! If I wasn't playing tonight, I'd install and play with it. (I try never to mess with the API too close to play time.) That is an excellent rule to live by with API :)
1494647412

Edited 1494723170
I do understand that page navigator is still in beta, but I can't seem to run it at all after importing the script and copy/pasting the 2.0 version from the repository, is there something specific that I am missing that could be causing: TypeError: Cannot read property 'id' of undefined at outputSetup (apiscript.js:10474:176) at setupHandler (apiscript.js:10537:17) at _.each (apiscript.js:10591:29) at Function._.each._.forEach (/home/node/d20-api-server/node_modules/underscore/underscore.js:153:9) at handleInput (apiscript.js:10566:15) at eval (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:65:16) at Object.publish (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:70:8) at /home/node/d20-api-server/api.js:1510:12 at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147) So far this happens when I select a token and type !nav --setup in chat. I know I must be missing something but I am new to API but I am trying to learn. I have now been able to get the script sort of working but I still cannot properly setup token and page switching as instead of the previous error message I am getting this one: TypeError: Cannot read property 'get' of undefined at moveHandler (apiscript.js:10395:46) at _.each (apiscript.js:10577:25) at Function._.each._.forEach (/home/node/d20-api-server/node_modules/underscore/underscore.js:153:9) at handleInput (apiscript.js:10566:15)  at eval (eval at (/home/node/d20-api-server/api.js:146:1), :65:16)  at Object.publish (eval at (/home/node/d20-api-server/api.js:146:1), :70:8)  at /home/node/d20-api-server/api.js:1510:12 at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147)  at Kd (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:546) I'm not sure what I'm doing wrong that's causing this. I am able to setup a boundary that when entered it provides me with a prompt to move players to another page, I'll try to approve it but I probably do not have the correct location boundary setup or something like that as it says  "Player would like to move to undefined on Road 1 Bandit Lair.players. If this move is correct, please approve the move." After I select approve the error message above pops up and nothing happens. Is there anywhere I could go, aside from this thread, to troubleshoot this? I'm not entirely sure what happened after trying to fiddle around with it more, but I cannot access !nav --setup anymore, it completely crashes my script and I'm unsure as to why.
1494773163
Scott C.
Pro
API Scripter
Hey Aria, Sorry for the delay getting back to you.  Could you PM me an invite to your game and GM me? I think I'm going to have to do some digging in the environment that this is happening in. Scott
1494808898

Edited 1494809931
Scott C. said: Hey Aria, Sorry for the delay getting back to you.  Could you PM me an invite to your game and GM me? I think I'm going to have to do some digging in the environment that this is happening in. Scott Hey Scott, No problem about the delay. So last night I set stuff up and it wasn't teleporting the tokens, today I went to test it before sending an invite and now it seems to be working okay, I'm not sure if you would want me to send an invite still even though at this moment it's working just to see or not. Let me know if you'd still want the invite. I should also note that the PC token was associated with another player (test account) and I removed them and it seemed to work after that. What I'm going to do is re-add them to see if I can recreate the issue again. My main issue was when I had to approve the move it was as if the PC token was not being linked to the account, I could move the entire party but I could not move the token alone. It actually did not show any name or anything related to the token all it said was "only". Re-added a test player again. I cannot teleport the token to the page but it does move the player. - Aria
1494809352
Scott C.
Pro
API Scripter
Hmm, ok, see if it rebreaks. If it does, PM me that invite.
Invite sent, apparently it is not working with a test player for some reason. 
1494810647

Edited 1494810663
Scott C.
Pro
API Scripter
hmm, ok, I'll be in in a minute or so
1496501411

Edited 1496501713
So installing this script in to my game and when spinning up a new sandbox I get back this. For reference, the error message generated was: TypeError: Cannot read property 'version' of undefined TypeError: Cannot read property 'version' of undefined at Object.checkInstall [as CheckInstall] (apiscript.js:9563:35) at apiscript.js:11073:23 at eval (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:65:16) at Object.publish (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:70:8) at checkForReady (/home/node/d20-api-server/api.js:1314:12) at /home/node/d20-api-server/api.js:1394:9 at c (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:14:64) at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147) at Kd (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:546) I have tested this with all other scripts disabled and I still get the error message, Currently using the most up to date (14.2.3) version of the shaped sheet if that is any help. Edit: Ordered the error message a little better
1498246437
Ziechael
Pro
Sheet Author
API Scripter
Same problem as above :(
1498247272
Scott C.
Pro
API Scripter
Gah, how did I forget to fix this. I'll get right on it.
1498305909
Ziechael
Pro
Sheet Author
API Scripter
Because you are really busy on some other projects... (that'd be my guess anyway lol) :)
1499527943

Edited 1499527996
myself and my players have been trying to get your api to work for an upcoming campaign, however we are getting the following error TypeError: Cannot read property 'get' of undefined TypeError: Cannot read property 'get' of undefined at moveHandler (apiscript.js:4586:46) at _.each (apiscript.js:4768:25) at Function._.each._.forEach (/home/node/d20-api-server/node_modules/underscore/underscore.js:153:9) at handleInput (apiscript.js:4757:15) at eval (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:65:16) at Object.publish (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:70:8) at /home/node/d20-api-server/api.js:1510:12 at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147) at Kd (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:546) as far as we can tell we have followed the instructions because we get the prompts to approve the movements of players.this does not transition the player(s) however. any assistance would be appreciated Chris.c
1499539543
Scott C.
Pro
API Scripter
Thanks for the error report Chris, I'll be releasing an update tomorrow to fix several issues
1499705615
Scott C.
Pro
API Scripter
V2.1 pushed to the repository. Fixes the following bugs: Cannot read property 'version' of undefined (reported by Ziechael, Aria, and Ziaphas) Cannot read property 'get' of undefined (reported by Aria and Chris) Thank you everyone for the error reports. As always, the code is available in  my fork of the repository if you want it before it goes live on one-click install.
1499887213
Scott having trouble installing this script. I have not previously used it. When I tried to install the one click Page Navigator (latest- 2.1) a notification shows in chat saying the script is updated and needs to be approved. Then script crashes before I can hit approve. Have gone back and tried installing an earlier version thinking it possibly needs that to perform this upgrade... but that didn't change outcome. Matter of fact doesn't this notification seems to show regardless of what version I try and install. Any thoughts on why this is happening? Your scripts are currently disabled due to an error that was detected. Please make appropriate changes to your scripts and click the "Save Script" button and we'll attempt to start running them again. More info... For reference, the error message generated was: ReferenceError: pIDS is not defined ReferenceError: pIDS is not defined at destroyHandler (apiscript.js:32495:26) at eval (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:65:16) at Object.publish (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:70:8) at TrackedObj.destroy (/home/node/d20-api-server/api.js:1126:10) at deleteFromLocalCache (/home/node/d20-api-server/api.js:1250:18) at /home/node/d20-api-server/api.js:1416:7 at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147) at Kd (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:546) at Id.Mb (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:489) at Rd.Ld.Mb (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:94:425) 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 "-=> ChatSetAttr v1.3 <=-" "-=> GroupInitiative v0.9.27 <=- [Fri Jun 23 2017 17:33:41 GMT+0000 (UTC)]" "/===-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-===/" " Starting LightCrumb Script " " current time is: 1499887166568 " " " " To use, enter !LightCrumb in chat. " "/===-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-===/" "--- Initialized Areas Of Effect v1.5 ---" "-=> TokenNameNumber v0.5.11 <=- [Thu Apr 20 2017 12:14:05 GMT+0000 (UTC)]" "-=> TokenMod v0.8.34 <=- [Thu Apr 13 2017 21:05:10 GMT+0000 (UTC)]" "> TokenSwapper v0.5 <" "-=> TableExport v0.2.3 <=- [Tue Jan 19 2016 13:10:12 GMT+0000 (UTC)]" "-=> RecursiveTable v0.2.0 <=- [Sun Apr 23 2017 21:26:04 GMT+0000 (UTC)]" "-=> TurnMarker v1.3.8 <=- [Thu Mar 30 2017 10:58:55 GMT+0000 (UTC)]" "-=> ApplyDamage v1.0 <=-" "-=>HealthColors v1.5.1 [Updated: April 6 2017]<=-" "5eShapedScript 1499887167994 INFO : -=> ShapedScript v11.0.1 <=-"
1499888795

Edited 1499888814
Scott C.
Pro
API Scripter
Hrmmm,ok, that's funky. I'll do some digging today and see what I come up with. Thanks for the rror report.
1499973743
Tony R.
Pro
Sheet Author
Hey Scott, when I try to change the Destination Token Marker with !nav --config, it gives me this error: ReferenceError: statusQuery is not defined ReferenceError: statusQuery is not defined at configHandler (apiscript.js:4532:35) at _.each (apiscript.js:4776:29) at Function._.each._.forEach (/home/node/d20-api-server/node_modules/underscore/underscore.js:153:9) at handleInput (apiscript.js:4761:15) at eval (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:65:16) at Object.publish (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:70:8) at /home/node/d20-api-server/api.js:1510:12 at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147) at Kd (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:546) I tested this with both an active campaign with lots of scripts, and a brand new one without any scripts and get the same crash. Both have Page Navigator 2.1 installed through the script library, and both have all of the required scripts loaded.
1500123378
hi me again, this week me and my players have been looking into the new script you posted but we are getting the following error messages: when moving a player via the !nav --move command ReferenceError: who is not defined ReferenceError: who is not defined at moveHandler (apiscript.js:4580:65) at _.each (apiscript.js:4772:25) at Function._.each._.forEach (/home/node/d20-api-server/node_modules/underscore/underscore.js:153:9) at handleInput (apiscript.js:4761:15) at eval (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:65:16) at Object.publish (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:70:8) at /home/node/d20-api-server/api.js:1510:12 at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147) at Kd (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:546) also when using the !nav --setup command i get TypeError: Cannot read property 'id' of undefined TypeError: Cannot read property 'id' of undefined at outputSetup (apiscript.js:4669:176) at setupHandler (apiscript.js:4732:17) at _.each (apiscript.js:4783:29) at Function._.each._.forEach (/home/node/d20-api-server/node_modules/underscore/underscore.js:153:9) at handleInput (apiscript.js:4761:15) at eval (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:65:16) at Object.publish (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:70:8) at /home/node/d20-api-server/api.js:1510:12 at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147) any assistance would be appreciated Chris.c
1500127910
Scott C.
Pro
API Scripter
Hmm, ok, I could of sworn I fixed these. Thanks for the report chris
1500329487
Ziechael
Roll20 Mod Team
Sheet Author
API Scripter
Mark (GM) said: Not sure I posted this in the right place but giving it a shot Trying to setup the script, have it installed, it mostly works until trying to use !nav --setup. When using the setup the token wizard does not come up and it appears the scripts breaks and the api sandbox shuts down. Error Given: TypeError: Cannot read property 'id' of undefined TypeError: Cannot read property 'id' of undefined at outputSetup (apiscript.js:13323:176) at setupHandler (apiscript.js:13386:17) at _.each (apiscript.js:13437:29) at Function._.each._.forEach (/home/node/d20-api-server/node_modules/underscore/underscore.js:153:9) at handleInput (apiscript.js:13415:15) at eval (eval at (/home/node/d20-api-server/api.js:146:1), :65:16) at Object.publish (eval at (/home/node/d20-api-server/api.js:146:1), :70:8) at /home/node/d20-api-server/api.js:1510:12 at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147) Not sure if I am missing something in my setup or if its something else.
1500329790
Scott C.
Pro
API Scripter
Yep, working on actually getting them fixed, thanks for the X-post Ziechael
1500643380
Looking forward to trying this script. How goes the debugging?
Is there a "getting started" guide?  I load up the script and type !nav --config, and most everything I click on crashes the API.  This is in a blank campaign with 3 pages, Start, TestPage2, and TestPage3 (which is Archived), and one character (TestMan1).  I assume I've missed some critical setup step.
1502830731
I am attempting to set this up and get the following crash when entering the !nav --setup command: TypeError: Cannot read property 'id' of undefined TypeError: Cannot read property 'id' of undefined at outputSetup (apiscript.js:11070:176) at setupHandler (apiscript.js:11133:17) at _.each (apiscript.js:11184:29) at Function._.each._.forEach (/home/node/d20-api-server/node_modules/underscore/underscore.js:153:9) at handleInput (apiscript.js:11162:15) at eval (eval at (/home/node/d20-api-server/api.js:146:1), :65:16) at Object.publish (eval at (/home/node/d20-api-server/api.js:146:1), :70:8) at /home/node/d20-api-server/api.js:1510:12 at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147)
1502895563

Edited 1502897913
The Aaron
Pro
API Scripter
Everyone that's having these crashes, can you install this little script, save it, and wait for the output "State Test: undefined" then save it again and see if you get "State Test: state is writeable" the second and subsequent times? on('ready',()=>{ log(`State Test: ${state.test}`); state.test='state is writeable'; }); A working case should look like this in the API Console Log: "State Test: undefined" Restarting sandbox due to script changes... Previous shutdown complete, starting up... Spinning up new sandbox... "State Test: state is writeable" A failing case will look like this: "State Test: undefined" Restarting sandbox due to script changes... Previous shutdown complete, starting up... Spinning up new sandbox... "State Test: undefined"
1502896167
Scott C.
Pro
API Scripter
Thanks Aaron, Sorry I've been a little busy lately.
1502897826
The Aaron
Pro
API Scripter
No worries, I'm thinking this might be related to the immutable state bug that's been cropping up.
1502898987
Think there is more involved. My state is showing as writeable per your script, bu the script wont even install from the library- getting the following error. Your scripts are currently disabled due to an error that was detected. Please make appropriate changes to your scripts and click the "Save Script" button and we'll attempt to start running them again. More info... For reference, the error message generated was: ReferenceError: pIDS is not defined ReferenceError: pIDS is not defined at destroyHandler (apiscript.js:25283:26) at eval (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:65:16) at Object.publish (eval at <anonymous> (/home/node/d20-api-server/api.js:146:1), <anonymous>:70:8) at TrackedObj.destroy (/home/node/d20-api-server/api.js:1126:10) at deleteFromLocalCache (/home/node/d20-api-server/api.js:1250:18) at /home/node/d20-api-server/api.js:1416:7 at /home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:560 at hc (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:39:147) at Kd (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:546) at Id.Mb (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:93:489) at Rd.Ld.Mb (/home/node/d20-api-server/node_modules/firebase/lib/firebase-node.js:94:425)
1502899026
Scott C.
Pro
API Scripter
Ok, looks like I've got a mis-declared variable in there.
1502905428
Here ya go: "State Test: undefined" Restarting sandbox due to script changes... Previous shutdown complete, starting up... Spinning up new sandbox... "-=> TableExport v0.2.3 <=- [Tue Jan 19 2016 13:10:12 GMT+0000 (UTC)]" "-=> GroupInitiative v0.9.26 <=- [Tue Apr 25 2017 12:43:38 GMT+0000 (UTC)]" "-=> TurnMarker v1.3.8 <=- [Thu Mar 30 2017 10:58:55 GMT+0000 (UTC)]" "Wild Magic Table v0.2 Ready" "AdvancedFumbleTable v0.1 Ready" "Concentration v0.1 Ready" "-=> Observer v0.1.6 <=- [Mon Jun 26 2017 22:56:20 GMT+0000 (UTC)]" "-=> GroupCheck v1.5 <=-" "StatusFX: dead -> splatter-blood" "-=> Customizable Roll Listener v1.0 <=- [Thu Nov 17 2016 20:27:54 GMT+0000 (UTC)]" " > Help Character Verified<" "-=> Page Navigator v2.1 <=- [Mon Jul 10 2017 16:13:03 GMT+0000 (UTC)]" " =>Page Navigator Memory: loading Roll20 Objects" " >Page Navigator Memory: Player objects loaded" "-=> Roll20AM v1.05 <=- [Wed Apr 05 2017 00:26:44 GMT+0000 (UTC)]" " > Updating Schema to v1.05 <" " >Stored settings loaded<" " >Tracks updated<" " >Help handout updated<" "State Test: state is writeable"
1502905741
The Aaron
Pro
API Scripter
Thx. 
I'm experiencing the same setup related crashes as above. Also, when a player tries to call !nav --move to move themselves, they get the menu but once clicking through it nothing happens. I have access set to self.