1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. While the majority of active discourse on D20PRO has moved to our Discord Channels, this forum is still active and checked-in on regularly by our staff. However, for the very latest information, conversation and/or immediate support, please join us on Discord here: http://discord.gg/Ph38ckM
    Dismiss Notice

Assests images are "Locks"

Discussion in 'Bug Reports & Installation Support' started by firebringer, Nov 3, 2017.

  1. firebringer

    firebringer Member

    Joined:
    May 17, 2011
    Messages:
    88
    Likes Received:
    2
    My group is using vers 3.4.5 (until the HL Importer is released), and we occasionally will see the attached image on client machines instead of the map. It never happens on the judge's machine, only the players.

    How can we fix/avoid this?
    Map Lock.jpg
     
  2. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
  3. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
  4. Ualaa

    Ualaa Member

    Joined:
    Jul 26, 2017
    Messages:
    51
    Likes Received:
    3
    I'm running a local, face to face game.
    My laptop is connected to an HDTV and a monitor.

    The GM client is running with the display on the laptop.
    I'm using six guest licenses, to connect to my own game on the laptop.
    Each of these is displayed on the TV.

    One guest per player, so they can each be on their own team.
    And actually have the vision that they can actually see, as opposed to what their team can see.

    The hosts wifi is very poor... so if anyone closes the downstairs door (to the hallway... which leads to the stairs upwards) the wifi is poor and the clients (running on the laptop) will disconnect from the host/GM (also running on the laptop).

    Is it possible to connect multiple clients without the use of wifi?
     
  5. Ualaa

    Ualaa Member

    Joined:
    Jul 26, 2017
    Messages:
    51
    Likes Received:
    3
    I was wondering about that symbol.

    Each of the clients is set to 4 GB usable.
    I'm running six clients, plus the GM, so in theory d20Pro has access to 28 GB, of the 32.

    We also have hero lab, realm works, syrinscape and a PDF open.

    My players have said they prefer a single large map, on which they can move...
    And have multiple encounters, and be free to dimension door (Spheres of Power equivalent), 400 ft., and still be in the relative positions etc...

    Tonight's battlemap was 800 squares wide by 500 squares high.
    So 4,000 ft. by 2,500 ft.
    A decent amount of space for a massive labyrinth complete with sixty odd pillars to create lots of fun sight blocking walls.
     
  6. Mickey

    Mickey Member

    Joined:
    Jun 19, 2015
    Messages:
    70
    Likes Received:
    4
    So, the only computer being used is yours and you're running 7 instances of D20Pro on it, yes?
    In that case I'm sure you would just select the 'Host using direct TCP/IP networking' which you'll find on the 'Host a Game' startup screen. No wifi needed for that. That's how I do it when I'm testing my games. I have 2 instances of D20Pro running on my pc - one GM client and one guest client. 2 monitors with each instance going to a different one, and it all works just fine.
     
    Ualaa likes this.
  7. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    'Host using direct TCP/IP networking'
    connect the client to 127.0.0.1 rather than your assigned local lan number of 192.168.x.x should do the trick.

    ""On most computer systems, localhost resolves to the IP address 127.0.0.1, which is the most commonly used IPv4 loopback address, and to the IPv6 loopback address ::1. The name localhost is also a reserved top-level domain name, set aside to avoid confusion with the definition as a hostname.""
     
    Ualaa likes this.
  8. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    You mean 6 clients (machines) are connecting to your host (machine)?

    No, each client is relegated to the machine it's running on and that machines other hardware.
     
  9. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
  10. Ualaa

    Ualaa Member

    Joined:
    Jul 26, 2017
    Messages:
    51
    Likes Received:
    3
    I have a single laptop, I bought this summer for use with D&D.
    It was MSI's second from the top gaming laptop, and I upgraded the ram to the maximum it could take.

    I click on the d20Pro icon and name that instance GM.
    Set the session to the campaign name and date.
    Give it a simple password.

    Then I click on the d20Pro icon, to open a new instance of the program.
    Six clicks, once per player in my face to face game.
    Each instance is named after the player, and I go around the table in order.
    So the tabs at the bottom would be:
    GM, Player 1, Player 2, Player 3, Player 4, Player 5, and Player 6.

    Each of the instances is set to 4 GB maximum, which I figured would be plenty with ram to spare.
     
  11. Ualaa

    Ualaa Member

    Joined:
    Jul 26, 2017
    Messages:
    51
    Likes Received:
    3
    Thank you both, I'll try that.
     
  12. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    You only need one instance for the players' view projected out to the big screen. Trying to run so many is gonna bog down just about any machine.

    So from what you have said, you are trying to run;

    1 D20PRO (Host)
    6 D20PRO (Clients)
    1 PDF Viewer (Assumed Adobe)
    1 Hero Lab
    1 Realm Works
    1 Syrinscape

    That's a recipe for 'machine killer' for sure.
     
  13. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    with just some rough numbers (conservative side as well) here, you can see how this will not work on 32gig

    1 D20PRO (Host) .............................4g
    6 D20PRO (Clients)---------------------24g
    1 PDF Viewer (Assumed Adobe).....512m
    1 Hero Lab........................................1g
    1 Realm Works----------------------------2g
    1 Syrinscape.....................................1g
    -----------------------------------------------------------
    total...................................................32.5g

    You're gonna see degraded system performance anytime you allocate more than 3/5th's of your system ram, there just isn't enough left over for the OS to perform well without buffering things to disk, which while it works, it works slowly.
     
    #13 Wesley Gorby, Nov 6, 2017
    Last edited: Nov 6, 2017
  14. owlbear

    owlbear Administrator
    Staff Member

    Joined:
    Sep 5, 2011
    Messages:
    636
    Likes Received:
    160
    Hi! Along the lines of what @Krilion_GD is saying, running separate instances for each player might be overkill. Do you have a specific reason for doing it this way? Map Visibility, Location, etc? I would highly suggest thinking about what benefit you gain from running so many instances on one device.

    As an example, in my own game we have multiple instances: 1 local player(s), 1 GM/Host, 2 remote. The result is that local players share a view similar to if we were playing around a table with mini's. They can all see what each other are doing and revealed areas of the map on the player view are shared.

    The remote players are somewhat more limited but only slightly. The lighting model in D20PRO is based around a shared common map space -- again, modeled after a table top session where you all meet locally. Player lights are visible because they're player lights. Private lights, like vision, are not visible to the remote players, however the local players do see vision and private lights for players on the shared session.

    Other than lighting, I do not believe there's a huge bump to running so many independent sessions and instead there's the simple cost of memory consumption.

    That being said, the way that D20PRO (and many Java applications) handle memory is as follows: Memory maximum capacity is established at application launch. Application will utilize the memory allocated until it reaches a threshold of "full" at which point Java performs an automatic garbage collection process -- clears the memory. This process is not something you want to hit very often as it is very CPU intensive and causes all process to run slower while the GC is being performed. In other words, if each of your sessions is performing GC within close proximity to one another, you can see a massive decrease in performance of the core system AND sync issues will absolutely occur as a result of different processes completing GC at different times.

    I have a suspicion that the issue you're encountering with lock icons is directly related to the GC across so many active sessions.
     
  15. Ualaa

    Ualaa Member

    Joined:
    Jul 26, 2017
    Messages:
    51
    Likes Received:
    3
    We have a couple of players, who metagame shamelessly, and basically refuse to not do so.

    If one player is somewhere on a hand drawn map (we were using Tact Tiles, prior to d20Pro), and there is a mob present.

    The other two players who are far enough back to not be able to see the mob will randomly pick the square it is in, to target.
    Or if you call the player on that, he decides to move forward six squares, locate the mob and then move back six squares (or whatever, as long as he has sufficient movement to retreat after the advance) and then aim for the square where he saw the mob.
    When a player is invisible, and the group has no way of knowing where that player is, the two players in question will randomly hit whatever square their invisible friend is in, when doing a buff that targets so many creatures.

    When you cannot see an invisible creature, unless you have see invisibility...
    And when you cannot see where a monster is, in relation to your friend (because they're both out of line of sight), players cannot metagame nearly as easily.

    I'm not sure that d20Pro is using 4GB all that often.
    In five sessions, of playing 10-14 hours, the lock icon has appeared twice.
    Latency was only an issue when the host's parents closed a pair of doors and the wifi signal dropped from two bars to intermittent 0-1 bars of signal strength; in both cases of the lock symbol appearing, it was when the wifi was very low.

    I'll try the local TCP/IP option for D&D this weekend, hopefully that does the trick.
    If it comes down to needing fewer clients on my laptop, or to offloading some of the clients to another device, that's an option.
    The secondary devices aren't as nice of an option, since then the view is not on the HDTV which we built into a table...

    When I was asking about d20Pro's capabilities (while comparing various VTTs), I was given two suggestions for everyone having their own view.
    The one was a client per character, each with their own vision.
    The other was one client for players and one for the GM, and then to toggle on and off vision between turns... basically, if it's your turn, your vision is enabled and everyone else's is turned off; that's an option too...
     
  16. firebringer

    firebringer Member

    Joined:
    May 17, 2011
    Messages:
    88
    Likes Received:
    2
    Ok, I can accept running out of RAM, or using encrypted/copyright assets, but 1) we can open bigger memory-hog maps than the locked ones and b) I'm getting the following errors in my d20.log when I import the maps that lock:

    /********************************************************
    [09 Nov 2017 20:46:03,206] WARN JPGRepair | Reparing: judge\campaigns\Pathfinder\res\FLR\The Lost City of Barakus\LCoB Level 2 - Room 50-53,60-64 FINAL.jpg
    [09 Nov 2017 20:47:40,963] WARN JPGRepair | Reparing: judge\campaigns\Pathfinder\res\FLR\The Lost City of Barakus\LCOB Level 2 - Room 50-53.jpg
    [09 Nov 2017 20:47:40,999] WARN D20ImageUtil | Failed to write image
    com.sengent.common.control.exception.UserVisibleException: Failed to encode to JPEG
    at com.mindgene.d20.common.util.AlternateJPEGEncoder.encode(Unknown Source)
    at com.mindgene.d20.common.util.D20ImageUtil.writeToFile(Unknown Source)
    at com.mindgene.d20.dm.JPGRepair._$64356(Unknown Source)
    at com.mindgene.d20.dm.JPGRepair.repairImages(Unknown Source)
    at com.mindgene.d20.dm.console.mapeditor.Console_MapLibrary$ImportMapsTask.work(Unknown Source)
    at com.mindgene.d20.laf.BlockerControl.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    at com.mindgene.common.threading.SafeThread.safeRun(SafeThread.java:187)
    at com.mindgene.common.threading.SafeThread.run(SafeThread.java:195)
    Caused by: java.io.FileNotFoundException: judge\campaigns\Pathfinder\res\FLR\The Lost City of Barakus\LCOB Level 2 - Room 50-53.jpg (The requested operation cannot be performed on a file with a user-mapped section open)
    at java.io.FileOutputStream.open(Native Method)
    at java.io.FileOutputStream.<init>(Unknown Source)
    at java.io.FileOutputStream.<init>(Unknown Source)
    ... 9 more
    [09 Nov 2017 20:47:41,000] ERROR JPGRepair | Failed to repair: 692
    [09 Nov 2017 20:49:45,063] WARN JPGRepair | Reparing: judge\campaigns\Pathfinder\res\FLR\The Lost City of Barakus\LCoB LEvel 2 - Room 60-64 FINAL.jpg
    [09 Nov 2017 20:49:45,128] WARN D20ImageUtil | Failed to write image
    com.sengent.common.control.exception.UserVisibleException: Failed to encode to JPEG
    at com.mindgene.d20.common.util.AlternateJPEGEncoder.encode(Unknown Source)
    at com.mindgene.d20.common.util.D20ImageUtil.writeToFile(Unknown Source)
    at com.mindgene.d20.dm.JPGRepair._$64356(Unknown Source)
    at com.mindgene.d20.dm.JPGRepair.repairImages(Unknown Source)
    at com.mindgene.d20.dm.console.mapeditor.Console_MapLibrary$ImportMapsTask.work(Unknown Source)
    at com.mindgene.d20.laf.BlockerControl.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    at com.mindgene.common.threading.SafeThread.safeRun(SafeThread.java:187)
    at com.mindgene.common.threading.SafeThread.run(SafeThread.java:195)
    Caused by: java.io.FileNotFoundException: judge\campaigns\Pathfinder\res\FLR\The Lost City of Barakus\LCoB LEvel 2 - Room 60-64 FINAL.jpg (The requested operation cannot be performed on a file with a user-mapped section open)
    at java.io.FileOutputStream.open(Native Method)
    at java.io.FileOutputStream.<init>(Unknown Source)
    at java.io.FileOutputStream.<init>(Unknown Source)
    ... 9 more
    [09 Nov 2017 20:49:45,129] ERROR JPGRepair | Failed to repair: 693
    ****************************/

    That file ('LCoB LEvel 2 - Room 60-64 FINAL.jpg') does exist in the required location. So I'm wondering...
    What is JPGRepair trying to do and why is it failing?
    Why does d20Pro think this file has a user-mapped section open?
    How would I close a user mapped section?

    Yes, sadly, I do have d20Pro installed in the default location of C:\Program Files\MesaMundi\d20Pro...I'm running Windows 7 and importing maps from a friend who has Windows 10 and exported them using Gimp. Also, he tried exporting them as .PNGs....same problem.

    This doesn't feel like a RAM or copyright issue.....any help is appreciated!!!!
     
  17. firebringer

    firebringer Member

    Joined:
    May 17, 2011
    Messages:
    88
    Likes Received:
    2
    Also, just as a follow up...I have copied the whole d20 folder over to my E:\data drive and run the program from there...same problem when broadcasting the map to my players: lock symbol.

    It is strange how the map shows up fine on the GM's screen, but 'lock' on the players' screens...
     
  18. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    Looks like an image format issue.. Could you post the raw image here(png or jpg) as an attachment, so we can take a look at the image you are trying to import?
     
  19. firebringer

    firebringer Member

    Joined:
    May 17, 2011
    Messages:
    88
    Likes Received:
    2
    Absolutely! I've uploaded both the .jpg and the .d20_map that is choking. Thanks for looking at this!
     

    Attached Files:

  20. Wesley Gorby

    Wesley Gorby Production/Community Manager
    Staff Member

    Joined:
    Aug 1, 2011
    Messages:
    2,443
    Likes Received:
    140
    creating the map on my machine, came up fine.

    Judge/GM
    upload_2017-11-10_9-41-54.png

    Player/Client
    upload_2017-11-10_9-42-14.png
     

Share This Page