Page 1 of 8 123 ... LastLast
Results 1 to 25 of 188

Thread: Atom Text Editor Plugin Feedback

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Join Date
    Jul 2015
    Posts
    159

    Atom Text Editor Plugin Feedback

    Hello all,

    Please post your feedback on our new plugin for the Atom text editor here. Thanks!

    Atom Plugin Knowledge Base

    GitHub Repository

  2. #2
    Just installed the editor. The first issue noticeable is, that there are no empty scripts for objects that have no scripts yet. Creating a new script by typing something in the in-game editor is tedious.

    Edit: Since you have a way now to read and write data from and to Tabletop Simulator, why not allow changing all the object data remotely?
    Last edited by Banbury; 04-05-2016 at 11:42 AM.

  3. #3
    Join Date
    Jul 2015
    Posts
    159
    Quote Originally Posted by Banbury View Post
    Just installed the editor. The first issue noticeable is, that there are no empty scripts for objects that have no scripts yet. Creating a new script by typing something in the in-game editor is tedious.
    It's on the top of our to-do list

  4. #4
    Sweet!
    Apart from that editing with Atom is a much better experience than the built-in 'editor'. It couldn't work better. Good show!

  5. #5
    It would be really nice if there were a way to run code in real-time somehow, either from the Atom side or in TTS itself, e. g. getObjectFromGUID('abadaba').setName('Fred')

  6. #6
    Hey all, so I tried to use the atom plugin on linux and it appears that it doesn't work at this time. I submitted an issue to the github repo with all the relevant information: 'https://github.com/Knils/atom-tabletopsimulator-lua/issues/3' Keep up the good work!

  7. #7
    There are two main bugs that I've experienced in the last few weeks. Both seem to occur randomly when loading saves (as Atom dumps the old code for the previous save's objects and grabs the new code).

    1) Objects that have the same name might have their code replaced with that of the previous save. i.e., moving from save A to save B would sometimes cause save B's global script to be entirely replaced by save A's global script. I am the only person that I know of who has experienced this bug.

    2) Atom sometimes creates "ghost objects". These objects don't exist in game, but Atom describes them as having GUIDs. They appear as copies of other scripted objects but have individuality after the point of creation. They do not update to the original object's script on save/load. If they are deleted they will reappear on the next load. I have peers who have confirmed the existence of this bug.

    Both of these bugs can be avoided by emptying the Lua folder every time before you load a new save, but, as that is somewhat inconvenient, I thought I'd let you know about them.

  8. #8
    Join Date
    Mar 2016
    Posts
    182
    Quote Originally Posted by Indimeco View Post
    There are two main bugs that I've experienced in the last few weeks. Both seem to occur randomly when loading saves (as Atom dumps the old code for the previous save's objects and grabs the new code).

    1) Objects that have the same name might have their code replaced with that of the previous save. i.e., moving from save A to save B would sometimes cause save B's global script to be entirely replaced by save A's global script. I am the only person that I know of who has experienced this bug.
    I just experienced this bug. When the new release came out, I loaded a number of my workshop mods and checked them, then loaded the mod I've been working on, made a change to a non-Global script, and hit save. It completely replaced the Global script in that final mod with the Global script from the last mod I had opened.

    Luckily, I back up in various ways. But that's a really dangerous bug that's eventually going to cause someone to lose a lot of work. I believe this should get a top-priority status for your next update.

    In the meantime, everyone should CLOSE ALL TABS and then get the Lua scripts fresh when you switch from mod to mod. It's very broken.

  9. #9
    Join Date
    Jul 2015
    Posts
    159
    Quote Originally Posted by dig65 View Post
    I just experienced this bug. When the new release came out, I loaded a number of my workshop mods and checked them, then loaded the mod I've been working on, made a change to a non-Global script, and hit save. It completely replaced the Global script in that final mod with the Global script from the last mod I had opened.

    Luckily, I back up in various ways. But that's a really dangerous bug that's eventually going to cause someone to lose a lot of work. I believe this should get a top-priority status for your next update.

    In the meantime, everyone should CLOSE ALL TABS and then get the Lua scripts fresh when you switch from mod to mod. It's very broken.
    I need more information about reproducing it since I cannot reproduce it. Is it a particular save file that it only happens with?

  10. #10
    Join Date
    Mar 2016
    Posts
    182
    Quote Originally Posted by Dan K View Post
    I need more information about reproducing it since I cannot reproduce it. Is it a particular save file that it only happens with?
    Not sure what else to give you. Here's a review of the conditions that cause it for me:

    Open TTS
    Open Atom
    Load some mods from subscribed workshops. Don't make any changes to those
    Be sure that the next to last mod you load has some content in the Global script
    Load another mod, do some work on something OTHER THAN the Global script
    Save the mod
    Global script of the current mod is overwritten with the Global script of the previous mod

    I basically do not trust the load/unload/save procedure at all, and I always clear all tabs before and after loading a new mod to work on. Fool me once, etc.

  11. #11
    Join Date
    Jul 2015
    Posts
    159
    Quote Originally Posted by dig65 View Post
    Not sure what else to give you. Here's a review of the conditions that cause it for me:

    Open TTS
    Open Atom
    Load some mods from subscribed workshops. Don't make any changes to those
    Be sure that the next to last mod you load has some content in the Global script
    Load another mod, do some work on something OTHER THAN the Global script
    Save the mod
    Global script of the current mod is overwritten with the Global script of the previous mod

    I basically do not trust the load/unload/save procedure at all, and I always clear all tabs before and after loading a new mod to work on. Fool me once, etc.
    Give it a try after the next patch is released, hopefully it's all good now.

  12. #12
    Quote Originally Posted by Indimeco View Post
    1) Objects that have the same name might have their code replaced with that of the previous save. i.e., moving from save A to save B would sometimes cause save B's global script to be entirely replaced by save A's global script. I am the only person that I know of who has experienced this bug.
    I have had this problem happen to me MANY times. Usually at the worst possible time. I often screw something up and load up an older state of the save, copy out some old code, then load up current state, and have accidentally overwritten data too many times due to this.

    Additionally, sometimes the get lua scripts feature in atom doesn't work at all if something has been loaded already with this same name. My only easy workaround to this has been to close atom and re-open it.

  13. #13
    Creating a Scripting Zone in situ creates one with no script definition, so Get Lua Scripts in Atom doesn't see it. Right-clicking it does not have a Script Editor option, so I can't force Atom to open a page as with other objects.

    The low-hanging-fruit fix for both of these issues is to give all scriptable objects that don't have any script defined upon creation a definition of "-- script goes here" in the constructor.

  14. #14
    Join Date
    Jul 2015
    Posts
    159
    Quote Originally Posted by DopeGhoti View Post
    Creating a Scripting Zone in situ creates one with no script definition, so Get Lua Scripts in Atom doesn't see it. Right-clicking it does not have a Script Editor option, so I can't force Atom to open a page as with other objects.

    The low-hanging-fruit fix for both of these issues is to give all scriptable objects that don't have any script defined upon creation a definition of "-- script goes here" in the constructor.
    Spawning Scripting Zones like that is not officially supported yet (not on the List of Spawnable Objects). I'll get to it when I can.

  15. #15
    Quote Originally Posted by Dan K View Post
    Spawning Scripting Zones like that is not officially supported yet (not on the List of Spawnable Objects). I'll get to it when I can.
    I was talking about creating a scripting game inside Tabletop Simulator using the GUI, and then trying to get its script open in Atom - for most things, you can right-click -> scripting and Atom will open a new file, but that option is not there for Scripting Zones in the actual application.

  16. #16
    Join Date
    Jul 2015
    Posts
    159
    Quote Originally Posted by DopeGhoti View Post
    I was talking about creating a scripting game inside Tabletop Simulator using the GUI, and then trying to get its script open in Atom - for most things, you can right-click -> scripting and Atom will open a new file, but that option is not there for Scripting Zones in the actual application.
    Adding scripts to Scripting Zones is not intended behavior at this time and hence unsupported for all Lua Scripting. It's on the todo list.

  17. #17
    Quote Originally Posted by Dan K View Post
    Adding scripts to Scripting Zones is not intended behavior at this time and hence unsupported for all Lua Scripting. It's on the todo list.
    Ah, I see; it was a fundamental misunderstanding on my part. I thought that a Scripting Zone was a Zone that ran scripts on things put inside them. Clearly I have more RTFMing to do!

  18. #18
    Updated the open issue on github to include more troubleshooting information. Myself and a couple other people commenting on the open issue (one of whom has replicated this issue as well) believe this is due to TTS not listening for connections from this plugin on the client port (39999) listed in 'atom-tabletopsimulator-lua/lib/tabletopsimulator-lua.coffee'. Any advice?

  19. #19
    Join Date
    Jul 2015
    Posts
    159
    Quote Originally Posted by bdell View Post
    Updated the open issue on github to include more troubleshooting information. Myself and a couple other people commenting on the open issue (one of whom has replicated this issue as well) believe this is due to TTS not listening for connections from this plugin on the client port (39999) listed in 'atom-tabletopsimulator-lua/lib/tabletopsimulator-lua.coffee'. Any advice?
    I'll reply on the github issue.

  20. #20
    Is that gonna be today like usual Dan?

  21. #21
    Join Date
    Jul 2015
    Posts
    159
    Quote Originally Posted by dizneyguy View Post
    Is that gonna be today like usual Dan?
    I'm not allowed to promise things.

  22. #22
    Join Date
    Mar 2016
    Posts
    182
    Dan, is it possible that Global of one mod is getting (erroneously) flagged as needing an update, and then when you load the next mod Atom fails to load that mod's Global and leaves the previous one in place? Just a thought, but it seems like it's something to do with Global's being confused between mod loads.

    Anyway, I'm playing it super safe and it's a habit now, so it won't get me again.

  23. #23
    Join Date
    Jan 2014
    Posts
    986
    This should be fixed now with the latest update to atom.

  24. #24

    Post Player class Ideas

    I feel like the Player class is a little bit lacking, so here's a couple of my ideas for new functions under the Player class:

    Player.getTurn() -- returns the player_color of whose turn it is
    Player.setTurn(string player_color)
    Player.onPlayerJoin(Player joined) -- Event, fires on a player joining the game and not picking a color, parameter is the new Player
    Player.onPlayerLeave(string player_color) --Event,fires on player leaving game, parameter is the seat that they just left from
    Player.getTurnOrder() --returns a table of strings of player_color in turn order

    and some function per Player, for example the Player.White
    Player.White.isTurn -- read-only, bool
    Player.White.setTurn()
    Player.White.endTurn() --same as player clicking End Turn
    Player.White.onJoin() -- Event, fires when anyone sits at this color
    Player.White.onLeave() --Event, fires when anybody leaves this color, either from leaving game or going spectate

    feel free to tack them onto a todo list if you like em.

  25. #25
    Join Date
    Sep 2016
    Posts
    216
    Quote Originally Posted by ukilop0617 View Post
    I feel like the Player class is a little bit lacking, so here's a couple of my ideas for new functions under the Player class:

    Player.getTurn() -- returns the player_color of whose turn it is
    Player.setTurn(string player_color)
    Player.onPlayerJoin(Player joined) -- Event, fires on a player joining the game and not picking a color, parameter is the new Player
    Player.onPlayerLeave(string player_color) --Event,fires on player leaving game, parameter is the seat that they just left from
    Player.getTurnOrder() --returns a table of strings of player_color in turn order

    and some function per Player, for example the Player.White
    Player.White.isTurn -- read-only, bool
    Player.White.setTurn()
    Player.White.endTurn() --same as player clicking End Turn
    Player.White.onJoin() -- Event, fires when anyone sits at this color
    Player.White.onLeave() --Event, fires when anybody leaves this color, either from leaving game or going spectate

    feel free to tack them onto a todo list if you like em.
    ukilop0617, these are pretty good suggestions, but this thread is only meant to be for feedback on the Atom plugin. There is a sub-forum where you can post scripting suggestions:

    http://www.berserk-games.com/forums/...ng-Suggestions

    However, do note that there are a couple other threads with similar suggestions, including one made by yours truely:

    http://www.berserk-games.com/forums/...S-turn-tracker!
    http://www.berserk-games.com/forums/...8-Turn-control
    http://www.berserk-games.com/forums/...1-Turn-control

Page 1 of 8 123 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •