MapTool 1.3 Final, patch01 (build 84)

New build announcements plus site news and changes.

Moderators: dorpond, trevor, Azhrei, Craig

User avatar
jfrazierjr
Deity
Posts: 5176
Joined: Tue Sep 11, 2007 7:31 pm

Re: MapTool 1.3 Final, patch01 (build 84)

Post by jfrazierjr »

Azinctus wrote:I unpacked the campaign and looked at the xml, I don't think I'll be editing that anytime soon, too complicated for me I think. So this bug is a serious problem, how long will individual views last? One game session per map? Two? I like to test FOW with a PC token before the game is that a bad idea now?
Well, the way it works is a bit tricky. As your tokens with vision reveal areas(via move or CNTL+I), the newly revealed area is added to the "global" exposed area which only the GM would see AS WELL as being added to that token's personal exposed area. When you reveal FOW using the FOW tools as the GM, the "mode" depends on if you have tokens selected or not. If no tokens are selected, the area you revealed is added to all tokens with sight. If tokens are selected, then the area is added only to those selected tokens(those with sight).

In my testing, I moved from map to map but with "teleporters" as well as well as copy/paste and did not have the issues you are running into. The way this works is that each token is given an id which stays with them from map to map. When they move from one map to another, the id stays and any changes to that tokens individual FOW is put into a lookup with the id being the key and the total combined exposed area for the token as the value. The only way that two tokens would have the same FOW exposed area is if they had the same id(which should be very rare) or when the GM explicitly adds via the right click and selects the copy from token X option under FOW views. Another way is if you as the GM are revealing FOW by using the FOW tools instead of letting the player reveal AND you are sloppy in your use of selection vs non selection.

So, I guess the question here is: Exactly what have you been doing? What are you server options? What is your workflow for revealing FOW areas? I know both myself and Dorpond(him mostly) have spent quite a bit of time testing various combinations and we have not run into anything like this(well, at least not in a "release version"... we did see some stuff during development but I found and fixed those places.... assuming I found them all...)
I save all my Campaign Files to DropBox. Not only can I access a campaign file from pretty much any OS that will run Maptool(Win,OSX, linux), but each file is versioned, so if something goes crazy wild, I can always roll back to a previous version of the same file.

Get your Dropbox 2GB via my referral link, and as a bonus, I get an extra 250 MB of space. Even if you don't don't use my link, I still enthusiastically recommend Dropbox..

User avatar
Natha
Dragon
Posts: 733
Joined: Sat Oct 11, 2008 3:37 am
Location: Limoges/Guéret, France
Contact:

Re: MapTool 1.3 Final, patch01 (build 84)

Post by Natha »

Does exporting/re-importing a map (with a new name) will reset the FOW ?
ImageImageImageImage

User avatar
Azhrei
Site Admin
Posts: 12086
Joined: Mon Jun 12, 2006 1:20 pm
Location: Tampa, FL

Re: MapTool 1.3 Final, patch01 (build 84)

Post by Azhrei »

Azinctus wrote:MAC OS X 10.6.6, Java 1.6.0_22, Memory 1024MB Stack 2MB.
Thanks.
The campaigns listed in my Recent Campaigns menu date from December, I have renamed the large campaign (70MB or so), using save as, at least 5 times since then and opened from the Open choice dozens of times. Need anymore details?
Hm. This works fine for me on my similarly spec'd machine. I believe the RecentCampaigns menu is populated from a Java "Preference" which is stored under ~/Library/Java (could have the directory wrong though).

Edit: Okay, I found it. It's under ~/Library/Preferences and the filename is com.apple.java.util.prefs.plist. That file is binary and you won't be able to directly view it, but double-clicking should bring up the PList editor. The key mruCampaigns has the list of recently accessed campaigns. Without looking at the MT code, I can't think of any reason why yours wouldn't be saved... :?
I ran a session last night and ran into a few problems. The Individual Views broke down a few times. Players could suddenly see areas that had been exposed by other players. As in B.81 http://forums.rptools.net/viewtopic.php ... ow#p184880 I think using the teleport gates on the map may have played a role in that.
I'll look at the functions that the teleport gates use; that's probably the Wiki: moveTokenToMap() function since I don't think there are any others that can move tokens between maps.
Another odd issue was that a player with a small light source (radius one) that revealed a single ring of partial hexes around their token, could move up the map, exposing darkness but not down. Map Tool wouldn't let the player drag the token one hex towards the bottom of the screen but would allow them to move one hex up. Weird, no? We first saw this issue when the Player was revealing only slightly more than half a hex in each direction but I increased the size of the light and that let the player move in any direction.
This might be related to the new algorithm for determining whether a token can be moved into a square based on the amount and position of the fog that covers that square. The algorithm for the square grid isn't overridden by the hex grid. That may be causing a false negative to be returned that says the token can't move there. I believe I have described the new/current algorithm on the forums already (maybe in reference to the problem depicted by lmarkus?) but I don't have a link handy. It's likely that the fact that hexes treat the center as the origin and squares treat the upper left corner as the origin could be causing the problem. I'll see if a simple shift of the origin might correct the problem well enough for the hex grid to make it work properly.
The final problem was with zoom. I'm not sure what I or, at one stage, one of my players did but we found ourselves 'lost' on the map. The zoom box showed a seven figure plus zoom percentage that randomyl shifted back and forth, while remaining too long to fit the box, and no amount of zooming in or out would bring the map back to a rational level of zoom.
So you didn't try just typing a new zoom level directly into the box?

I can't think of any reason why the zoom level would get so funky -- that's a very isolated variable that isn't written to except in specific circumstances.
When the player had this problem I used Force Players View to bring them back, but when I got it on my GM map I couldn't find a workaround. Opening a new map and returning didn't help, clicking on tokens in the Map Explorer or Initiative list didn't help. It was the end of a great session (these bugs didn't stop us having another great night with Map Tool) so I wasn't too bothered at the time, but I guess it was a serious flaw.
If/when it happens again, please use the Map menu and export the current map and post it here. There's enough information in the .rpmap file to debug a zoom factor problem, I believe.

Then try starting another MapTool and connecting as a GM. You should be able to force everyone again using that second instance. :)

On the Mac you won't be able to (easily) run a second instance. There's probably a way from the GUI, but I know from the command line you can enter open -n MapTool-1.3.b84.app and it'll run it a second time. (Obviously you should substitute what version you're using.)
This is a large well used campaign with a mess of macros and this particular map has been the focus of our gaming for months. The FOW has been drawn and cleared a million times and the light settings changed many times too. The link above takes you to a cut down version of the campaign with just the relevant map, I've added more stuff to it since though. If an up to date version would be useful I can organise one and upload it.
How many different versions of MT have you used with this campaign file? For example, if the campaign started with b56 and you've loaded and saved it with 4 other versions (such as b59, b63, b66, and then b77) that might be useful to know.

I've added your list of stuff to my bug list. I'll let you know whether these will be fixed or whether there is simply a work-around to use until 1.4 is stable.

User avatar
jfrazierjr
Deity
Posts: 5176
Joined: Tue Sep 11, 2007 7:31 pm

Re: MapTool 1.3 Final, patch01 (build 84)

Post by jfrazierjr »

Natha wrote:Does exporting/re-importing a map (with a new name) will reset the FOW ?
Honestly, I don't know since I have no idea how the import/export stuff works. I expect it will NOT as my guess is it just calls new Zone(zone) which would take the imported zone and make a new one with the same data structures intact.
I save all my Campaign Files to DropBox. Not only can I access a campaign file from pretty much any OS that will run Maptool(Win,OSX, linux), but each file is versioned, so if something goes crazy wild, I can always roll back to a previous version of the same file.

Get your Dropbox 2GB via my referral link, and as a bonus, I get an extra 250 MB of space. Even if you don't don't use my link, I still enthusiastically recommend Dropbox..

User avatar
Azhrei
Site Admin
Posts: 12086
Joined: Mon Jun 12, 2006 1:20 pm
Location: Tampa, FL

Re: MapTool 1.3 Final, patch01 (build 84)

Post by Azhrei »

jfrazierjr wrote:
Natha wrote:Does exporting/re-importing a map (with a new name) will reset the FOW ?
Honestly, I don't know since I have no idea how the import/export stuff works. I expect it will NOT as my guess is it just calls new Zone(zone) which would take the imported zone and make a new one with the same data structures intact.
This is correct.

Although I've been thinking about this and having it reset all exposed areas for the map would be quite useful. I'm not so sure about clearing it for the tokens, but I suppose if I'm doing one I should do both...

User avatar
JML
Dragon
Posts: 515
Joined: Mon May 31, 2010 7:03 am
Location: Blagnac, France

Re: MapTool 1.3 Final, patch01 (build 84)

Post by JML »

Azhrei wrote:Then try starting another MapTool and connecting as a GM. You should be able to force everyone again using that second instance. :)

On the Mac you won't be able to (easily) run a second instance. There's probably a way from the GUI, but I know from the command line you can enter open -n MapTool-1.3.b84.app and it'll run it a second time. (Obviously you should substitute what version you're using.)
Well, I found another way to run a second instance on my Mac. I just copied MapTool with a slightly different name (MapTool-Client for example). This way I can launch both and tell which is which by their names. Do you think of any problem this could trigger ? (shared resources or anything else...)

User avatar
jfrazierjr
Deity
Posts: 5176
Joined: Tue Sep 11, 2007 7:31 pm

Re: MapTool 1.3 Final, patch01 (build 84)

Post by jfrazierjr »

Azhrei wrote:
jfrazierjr wrote:
Natha wrote:Does exporting/re-importing a map (with a new name) will reset the FOW ?
Honestly, I don't know since I have no idea how the import/export stuff works. I expect it will NOT as my guess is it just calls new Zone(zone) which would take the imported zone and make a new one with the same data structures intact.
This is correct.

Although I've been thinking about this and having it reset all exposed areas for the map would be quite useful. I'm not so sure about clearing it for the tokens, but I suppose if I'm doing one I should do both...
To keep things clean, I would suggest another override of new Zone... perhaps new Zone(Zone zone, boolean resetFOW) so you can just change it in the one location needed(though just adding to the existing method may be ok since I don't think it's called THAT many places).

Does the export include tokens(I would have assumed not)? If not, then just clear the exposedAreaMeta field(think that's it) on import and the only leaves the global area information(see my recent email if you have not already) either during the import OR during the export(easier).
I save all my Campaign Files to DropBox. Not only can I access a campaign file from pretty much any OS that will run Maptool(Win,OSX, linux), but each file is versioned, so if something goes crazy wild, I can always roll back to a previous version of the same file.

Get your Dropbox 2GB via my referral link, and as a bonus, I get an extra 250 MB of space. Even if you don't don't use my link, I still enthusiastically recommend Dropbox..

User avatar
Sir Flak
Dragon
Posts: 344
Joined: Thu Sep 28, 2006 4:20 pm
Location: Oklahoma, US

Re: MapTool 1.3 Final, patch01 (build 84)

Post by Sir Flak »

Noticed something.

I have creatures in the init tracker. I save the campaign. I open again it using the recent campaigns/or open button they all disappear. If I open it again they are all back.

After playing around with loding files, it appears that if you already have stuff in the init tracker and you load a cmapaign with something in the init tracker, the tracker is cleared.

It seems like I see some flickering in the init panel. I believe the load processes is clearing the old stuff off in the init track in the wrong order(ie It loads the panel with the new stuff then clears it, or is clearing it twice once in the right spot and an extra one).

User avatar
Azhrei
Site Admin
Posts: 12086
Joined: Mon Jun 12, 2006 1:20 pm
Location: Tampa, FL

Re: MapTool 1.3 Final, patch01 (build 84)

Post by Azhrei »

jfrazierjr wrote:To keep things clean, I would suggest another override of new Zone... perhaps new Zone(Zone zone, boolean resetFOW) so you can just change it in the one location needed(though just adding to the existing method may be ok since I don't think it's called THAT many places).
The XML import process uses the default constructor to create the object, then uses what's called "injection" to insert the data directly into the member fields using Reflection. So the map importing can't specify which constructor to call.

The tokens have an import() method that I use to allow the Token class to choose which fields should be cleared when a map is imported. A similar import() method can be added to the Zone and it will be called only when a map is imported. That way it can reset the fog appropriately.
Does the export include tokens(I would have assumed not)?
For maps? Yes, it does. It should be everything that is needed to recreate the map: textures, drawables, etc. But initiative is cleared when the map is imported. (It might make sense to clear the init before saving the map, but that means copying the Zone and that's a heavyweight operation. So I save the Zone as-is and just clear the init when it's read back in.)
If not, then just clear the exposedAreaMeta field(think that's it) on import and the only leaves the global area information(see my recent email if you have not already) either during the import OR during the export(easier).
Yeah, some of this would be much easier on export if...

I suppose I could create an Object to hold the exposed info, null out the fields in the Zone, then export it. When the export is done, put the saved reference back into the Zone. That just makes for messy exception handling in the case of an error during IO, but the Zone wouldn't need to be copied to perform the export.

Hm. Something to think about for 1.4. A 1.3 bug fix can probably be much simpler.
Sir Flak wrote:I have creatures in the init tracker. I save the campaign. I open again it using the recent campaigns/or open button they all disappear. If I open it again they are all back.
Can you reproduce this on a minimal campaign? I can't seem to make it happen with any campaigns I have here. Maybe delete non-essential maps from the campaign file and then attach the new one?
It seems like I see some flickering in the init panel. I believe the load processes is clearing the old stuff off in the init track in the wrong order(ie It loads the panel with the new stuff then clears it, or is clearing it twice once in the right spot and an extra one).
The init panel should be emptied prior to the campaign being loaded. After the campaign is loaded, the data structure for the init panel is restored as it's part of the saved data (each map gets its own init panel).

I think the most recent changes to the init panel had to do with token init data being preserved when a token moved from one map to another during a game. Maybe something happened there?

But since I can't reproduce it with a quick test... (And I'm too busy this week to spend gobs of time on reproducing it.)

User avatar
Sir Flak
Dragon
Posts: 344
Joined: Thu Sep 28, 2006 4:20 pm
Location: Oklahoma, US

Re: MapTool 1.3 Final, patch01 (build 84)

Post by Sir Flak »

Azhrei wrote: Can you reproduce this on a minimal campaign? I can't seem to make it happen with any campaigns I have here. Maybe delete non-essential maps from the campaign file and then attach the new one?
Win7-64

1) Make New Campaign
2) Drag Token on Map
3) Right Click Add Token to init
4) Open Init Window (if it isn't already)
5) Save Campaign
6) File->Open Campaign you just saved

The Init Panel Does Not have the token.

7) File->Open Campaign you saved again

The Init Panel Has the token in it.

If you keep opening it, maptools will keep alternating having tokens or not having tokens in the init panel. Also note it doesn't have to be the same campaign. If anything is in the Init tracker when you load, it will not load the new one.

It also appears that only the map that you loaded into gets its init wiped out. I can make a campaign with two maps, the dragon token on one, eagle token on the other. Add each one to init on its map. When I load the campaign with something in the init window, only the one that it loaded up will loose its init, so for instance the dragon is not in init anymore. Switching to the other map I see the eagle in there fine. Switching back to the first map does not bring the dragon token up. Its as if its data was not loaded at all.

User avatar
LeopoldVonRanke
Giant
Posts: 123
Joined: Thu Jun 17, 2010 2:50 pm
Location: Maine
Contact:

Re: MapTool 1.3 Final, patch01 (build 84)

Post by LeopoldVonRanke »

Had a session with my players again today.

Two observations: After copying and pasting the characters from one map to the other, the views got all screwed up in the campaign. The "Player view" for the GM was suddenly giving me no lights anymore at all after that. This happened on b83 as well. I haven't tried to reproduce this, but my gut feeling is this might be related to the reintroduction of the zoom-in/out bug (it was fixed in b76, if I recall correctly).

Second, closer to the end of the session one of my players had this exception:
java.lang.NullPointerException
at net.rptools.maptool.client.tool.PointerTool.mouseMoved(PointerTool.java:577)
at java.awt.AWTEventMulticaster.mouseMoved(Unknown Source)
at java.awt.Component.processMouseMotionEvent(Unknown Source)
at javax.swing.JComponent.processMouseMotionEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at net.rptools.maptool.client.swing.MapToolEventQueue.dispatchEvent(MapToolEventQueue.java:25)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)


I hope this isn't serious. As for the screwed up views, I will try to make it reproducable.
TIA,

Leo

User avatar
Azhrei
Site Admin
Posts: 12086
Joined: Mon Jun 12, 2006 1:20 pm
Location: Tampa, FL

Re: MapTool 1.3 Final, patch01 (build 84)

Post by Azhrei »

Sir Flak wrote:If you keep opening it, maptools will keep alternating having tokens or not having tokens in the init panel. Also note it doesn't have to be the same campaign. If anything is in the Init tracker when you load, it will not load the new one.
Thanks. I see the problem. I'll check it out this weekend.
LeopoldVonRanke wrote:Two observations: After copying and pasting the characters from one map to the other, the views got all screwed up in the campaign. The "Player view" for the GM was suddenly giving me no lights anymore at all after that. This happened on b83 as well. I haven't tried to reproduce this, but my gut feeling is this might be related to the reintroduction of the zoom-in/out bug (it was fixed in b76, if I recall correctly).
Hm. I'm not looking at the code atm, but I can't imagine the copy/paste having anything to do with the map settings such as lights being visible?! :? But I'll take a look.
Second, closer to the end of the session one of my players had this exception:
java.lang.NullPointerException
at net.rptools.maptool.client.tool.PointerTool.mouseMoved(PointerTool.java:577)
Yeah, this was already reported upstream. It has to do with the grid style being used (non-square grid) and how token movement is stored/retrieved. It's on my list to look at this weekend.

Azinctus
Giant
Posts: 133
Joined: Tue Nov 18, 2008 10:16 am

Re: MapTool 1.3 Final, patch01 (build 84)

Post by Azinctus »

Lots of quesitons for me from jfrazierjr and Azhrei. I shouldn't answer them, I'm at work, oops. I've just written a long answer for jfrazierjr here it is:
jfrazierjr wrote:Exactly what have you been doing? What are you server options? What is your workflow for revealing FOW areas?
Exactly... hmm. That's not easy to say, especially as I am a disorganized person. But I'll try.

All options ticked (except tooltips - what is that anyway?), ancient campaign continuously in use since the B.30s or something, runs on a new Imac with Map Tool set for 1024MB memory and Stack 2.

The last time the flaw came up I had a dungeon and a house on one map and a garden on another. I had tested the dungeon with a test "PC" token offline intensively, clearing and redrawing the light blocking layer many times and trying out different vision options on that test token.

I cut and pasted one PC token form the house to near the dungeon in the light blocking layer, then I went to a third map and copied a PC token to the same spot next to the dungeon I, set light, vision and states form those two tokens and cut and pasted both of those tokens into the dungeon.

Then I realised that PC token two was now duplicated on this map, I deleted the first copy so only the one in the dungeon was on this map (I get in this kind of confusion all the time, there are, at times, many copies of the PCs strewn about my complex city maps).

So now the two PCs explore. All good the individual views work a treat. The rest of the group (3 PCs) leave the house, I cut and paste them to the garden map. They use a teleport gate to go from the garden map to an upper level of the dungeon. Their individual views are working for the antechamber of the dungeon they can see but suddenly they can see all of the area the first two PCs had cleared.

Azinctus
Giant
Posts: 133
Joined: Tue Nov 18, 2008 10:16 am

Re: MapTool 1.3 Final, patch01 (build 84)

Post by Azinctus »

Azhrei wrote:Edit: Okay, I found it. It's under ~/Library/Preferences and the filename is com.apple.java.util.prefs.plist.
I don't have that file in that location. Might that be relevant?
Azhrei wrote:So you didn't try just typing a new zoom level directly into the box?
Tried that (should have mentioned that up thread), I could type in the box, but when I hit return it jumped back to the bizarre huge number.
Azhrei wrote:If/when it happens again, please use the Map menu and export the current map and post it here. There's enough information in the .rpmap file to debug a zoom factor problem, I believe.
Will do. And thanks for the second map tool fix, that'll be quicker than booting everyone and restarting Map Tool.
Azhrei wrote:How many different versions of MT have you used with this campaign file? For example, if the campaign started with b56 and you've loaded and saved it with 4 other versions (such as b59, b63, b66, and then b77) that might be useful to know.
I started this campaign in B.50 and I guess I have used more than 20 versions of Map Tool along the way.
Azhrei wrote:I've added your list of stuff to my bug list. I'll let you know whether these will be fixed or whether there is simply a work-around to use until 1.4 is stable.
Thanks mate, the work is appreciated.

User avatar
jfrazierjr
Deity
Posts: 5176
Joined: Tue Sep 11, 2007 7:31 pm

Re: MapTool 1.3 Final, patch01 (build 84)

Post by jfrazierjr »

Azinctus wrote: Then I realised that PC token two was now duplicated on this map, I deleted the first copy so only the one in the dungeon was on this map (I get in this kind of confusion all the time, there are, at times, many copies of the PCs strewn about my complex city maps).
AHHA!!! Thats going to cause "a" problem. See, since each token should have a unique value for this id AND that id has to stay from map to map(which is why we CAN'T use the normal tokenid since it changes!!!).... so.... when you do a paste I check to see if the token with that id already exists on that map and if so I create a NEW id for that one(which means that tokens(the second/third/etc copy) exposed area is emptied out as the new id has nothing in it for exposed area). Now, that will not explain the issue of the other tokens getting somewhat shared vision, but at least we have identities one possible issue.

Note that this is a limitation with 1.3 since the same "token" gets a new identity when moved from map to map(or even within the same map!!!) so I had to do some weird funky workaround to make it "mostly" work.. ie there are situations which I know will break things in some way, but none that I know of that will break it in the way you have described.

If you really want to fix the issue, save the tokens out from one map to rptok files. Delete the tokens from the map. Add them back.... said tokens will not have any exposed area available since the new token will have a different id for it's exposed area... or at least I expect it should. Note however that your campaign file size will not go down without manually editing the XML since there is no UI way to "flush" all exposed areas already saved in a map. One possibility is to export the map AFTER you remove the tokens and reimport as that should clear everything(since I just found out that exporting a map also exports the tokens on it. )
I save all my Campaign Files to DropBox. Not only can I access a campaign file from pretty much any OS that will run Maptool(Win,OSX, linux), but each file is versioned, so if something goes crazy wild, I can always roll back to a previous version of the same file.

Get your Dropbox 2GB via my referral link, and as a bonus, I get an extra 250 MB of space. Even if you don't don't use my link, I still enthusiastically recommend Dropbox..

Post Reply

Return to “Announcements”