Tabletop Simulator

Tabletop Simulator

Gloomhaven - Fantasy Setup (Scripted UI)
Suggestions/Contributions
Hej,
thanks for this awesome mod! It makes playing Gloomhaven really easy and speeds up gameplay a lot. After some plays I also thought of some things I'd like to add. And since I also wanted to get a look at how to write scripts in TTS I also tried to implement them in my save file. :-) I'd like to write share my changes as a suggestion list. Maybe you find them useful, too. I can also share any code I've written, if you like.

  1. Add a "Draw Monster Modified Card" to the battle interface. I know there's already a script button for that, but I like the consistency if it's already part of the battle interface. This way I don't have to remember the shortcut and everything used for battle is in one place. I added a new button right under "Start Round"
  2. Add an easy way to swith players in solo mode. This might be too much special interest for the general mod, but I added in my save. I recently also started playing solo mode and I wanted to quickly change between the different colors, so that I see the hand of the other colors. And using the regular TTS menu in the upper right is way to cumbersome. So I added a new button in the solo Battle Interface for each player, right above the one to draw an modifier. The button simply changes the player's color. The drawback is, that the camera resets, and I didn't find a way yet to avoid that.
  3. Don't reset the UI position at "End of Round". When clicking "End of Round" the position of the camera control UI and the battle interface resets to its default position, even if you dragged it somewhere else. The reason why that bothers me, is that the default position hides parts of the search dialog, when searching for a card in a deck. I wanted to at least see the first three rows of cards of that dialog. The culprit of this behaviour seems to be the call to setXmlTable, when resetting the initiative tracker. The new position of the UI after dragging doesn't seem to be stored in the runtime XML of the UI, so it will reset. I didn't find a way to get and store the new position of the UI. My workaround was to change the default position of both UIs. The camera control now has
    offsetXY="-500 -110"
    and the Battle interface
    offsetXY="0 -180"
    .
  4. Remember the position of components when storing them in a character box. Our group often changes between scenarios, so we often remove and add characters around. Since everyone stores their stuff differently, it's a bit bothersome that most components are drawn to hand, instead of their original position. It would be nice, if their were restored to their original position even if you change the player position (relativly speaking). I implemented that by changing the script of the "Remove Player" button, as well as the character boxes. If you want to take a look, I made a mod for that. This remembers the current position of all components and restores them, when the box is dropped on a player mat relatively to that mat. I tested it with the starting classes on all mats. I don't know yet if it works for all other classes as well, since I didn't unlock them yet and don't want to be spoiled. :-)
  5. Make it easier to "reset" the save file to the current mod version. Currently it's a bit difficult to update the save file when a new mod version is released, which is just how TTS works. I found it easiest to always start the save file from scratch, instead of updating individual objects. This is less error prone and guarantees that everything should work. Therefore I have a file which lists all the changes that happened in the campaign and I simply do everything from top to bottom to reset the save. In hindsight I wrote this file in JSON. :-) Part of it looks like this:
    { "global": { "prosperity": 3, "achievements": [ { "name": "City Rule: Militaristic" }, ], "scenarios": { "1": "Done", "2": "Done", "3": "Open", "4": "Open" } }, "party": { "name": "Cool and the gang", "characters": [ { "class": "Brute", "name": "Rambo" } ] } }
    What I'm currently trying to do is writing a script which can import that kind of file and automate the process of restoring the save file. This could also be useful for transfering a physical game to the digital one. Vice versa it would be nice to generate this file from a current TTS file. I also managed to automate the "global" part of the above file. So prosperity, achievements and scenarios can be restored by basically "clicking" and the different buttons via a script. I'll keep working and that so that characters and everything else can be restored too. I'll keep you updated :-).
< >
Showing 1-4 of 4 comments
Watafaka  [developer] Jun 3, 2020 @ 11:52pm 
1. I think we will add that since many people ask for it.
2. You are not supposed to change colors when you play solo. You need to play as the game master, black hand.
3. That is not suppose to happen.
4. This is more of a personal preference. I saw your mod and I have a concearn that people might break their saves while trying to change buttons, a lot of them dont know how to use TTS at that level.
5. Reseting a save is not something that easy to do, but we are trying to find a way to make it easier to update.
Sel Jun 4, 2020 @ 6:34am 
Solo Mode, just set your colour to Black, Game master, you can see everything
Works great
Seferan Jun 4, 2020 @ 8:20am 
Regarding #5, I too have decided to start from new version each time. This means that between game sessions, i'm going thru and making updates to my script each and every time. The code is pretty rough, but its been working and hasn't been horrible for me to program the updates each time. I'd LOVE to see something like this baked into the MOD itself where you could import a JSON and it would just do everything, but that's far more effort than the hardcoding I've currently got going. PM me if anyone wants to discuss further.
Sebästschjin Jun 5, 2020 @ 5:21am 
Seeing the other players hands is not the issue, as that can be disabled without switching to the game master. However I like having the cards on the hand at the bottom of the screen. This didn't seem to work as a game master (or I did it wrong?), that's why I added the switch buttons. As I said, probably too much of a personal preference, just wanted to share. :-)

@Seferan
I don't know how to write a PM on Steam and didn't find an option for that anywhere. Oò Anyway, I'd be very much interested in your current script. :-) You probably figured things out I've yet to discover, so it would probably be easier to generalize from there.
< >
Showing 1-4 of 4 comments
Per page: 1530 50