Berserk-Games / atom-tabletopsimulator-lua

Tabletop Simulator scripting package for Atom.
Other
36 stars 27 forks source link

Atom will not get Lua Scripts and will not Save & Play to push scripts. #126

Closed maximo1984 closed 4 years ago

maximo1984 commented 4 years ago

If I open Atom first, then open Tabletop Simulator, the global scripts will load. Aside from that though, any changes I make will not be pushed when I Save & Play. I have no idea what is going on here. It just started out of nowhere.

I've restarted everything multiple times, including my computer.

maximo1984 commented 4 years ago

Please someone. This is so aggravating. I got it semi-working, but I can only save and play once or twice and then it's back to not sending or receiving again. I've uninstalled the plug-in, reinstalled it. I've removed the project folder, added it back. Clear project history. I don't know what else to do. It has worked fine for months and then all of a sudden this stupid as garbage.

maximo1984 commented 4 years ago

I have moved the entire Global script to an #include file and the issue persists. I can save and play one time and then it stops working.

maximo1984 commented 4 years ago

When I check the integrity of local files, there is always one that fails to validate and will be reacquired, but it is never reacquired.

Nightbreez commented 4 years ago

i am also having this issue.

ikegami commented 4 years ago

The two problems I am seeing:

  1. Get Lua Scripts (Ctrl-Shift-L) no longer works The following dialog pops up, but nothing happens when you click Get Scripts. https://cdn.discordapp.com/attachments/174287376158294016/769853559784472586/unknown.png Nothing is sent to TTS at all. (There's no attempt to establish a connection to :39999 even though TTS is able to take requests.) This was confirmed using Wireshark and netstat. As such, this problem is entirely on the Atom side. Loading a module in TTS does upload the scripts to Atom.

  2. Save and Play (Ctrl-Shift-S) no longer works if objects have been created The following dialog pops up, but nothing happens when you click Overwrite. https://cdn.discordapp.com/attachments/174287376158294016/769853635517218846/unknown.png Nothing is sent to TTS at all. (There's no attempt to establish a connection to :39999 even though TTS is able to take requests.) This was confirmed using Wireshark and netstat. As such, this problem is entirely on the Atom side. Saving works fine if no objects were created in TTS. This can only be fixed by restarting Atom. (Even reloading the module in TTS isn't enough.)

All other functions I've tried (incl Execute Selected Lua and Generate GUID Code) work fine.

This is using v12.4.1 of the plugin in Atom v1.52.0 x64. Let me know if you want further information.

ikegami commented 4 years ago

Edited previous comment to include versions (v12.4.1 of the plugin in Atom v1.52.0 x64)

ikegami commented 4 years ago

I enabled debugging and tried Ctrl-Shift-L. I got absolutely nothing logged even though the very first thing it should do on clicking Get Scripts is to log a message.

  getObjects: ->
    if atom.config.get('tabletopsimulator-lua.loadSave.communicationMode') == 'disable'
      return
    # Confirm just in case they misclicked Save & Play
    atom.confirm
      message: 'Get Lua Scripts from game?'
      detailedMessage: 'This will erase any changes that you have made in Atom since the last Save & Play.'
      buttons:
        'Get Scripts': ->
          #destroyTTSEditors()
          #deleteCachedFiles()
          log_seperator(LOG_MSG)
          log LOG_MSG, "Get Lua Scripts: Sending request to TTS..."
          #if not TabletopsimulatorLua.if_connected
          TabletopsimulatorLua.startConnection()
          TabletopsimulatorLua.connection.write '{ messageID: ' + ATOM_MSG_GET_SCRIPTS + ' }'
          log LOG_MSG, "Sent."
        Cancel: -> return

saveAndPlay uses the exact same logging mechanism.

    log_seperator(LOG_MSG)
    log LOG_MSG, "Save & Play: Sending request to TTS..."

To make sure this wasn't a case of operator error, I verified that logging was enabled by using Ctrl-Shift-S. https://cdn.discordapp.com/attachments/174287376158294016/769864688132947988/unknown.png

It appears that atom.confirm is broken.

The only functions that stopped working are those using atom.confirm, and logging suggests the code that should be called on button presses is not being called. It appears that atom.confirm or the use thereof is broken.