Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 37 38 [39] 40 41 ... 44

Author Topic: Legends Viewer 1.13 (v40 Compatible)  (Read 309852 times)

Medusa13

  • Escaped Lunatic
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #570 on: October 20, 2014, 09:57:52 am »

oh ok, well, at least is not my fault XD. Thanks parker :)
Logged

ptb_ptb

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #571 on: October 23, 2014, 07:21:29 am »

Hey there.

Legends Viewer is awesomely useful. In fact, just awesome. :)

There is one small thing that I'd like to see, though. Dwarf fortress is rather bipolar about language, it can't make up its mind whether to use English or not. :P Would it be possible to have more dwarfish alongside English in Legends Viewer?
i.e. Instead of ...

The Blunt Paddle is a civilization of dwarves
and
Kumil Ruledhandles is a female dwarf born in 34.

Could we have something like ...

The Blunt Paddle 'unaliden' is a civilization of dwarves
and
Kumil Ruledhandles 'iliderush' is a female dwarf born in 34.
Logged
()==[:::::::::::::>

smjjames

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #572 on: November 23, 2014, 09:43:23 pm »

I'm having a crash issue with 1.13.21, the gamesave is from 40.18. The odd thing is that a legends and worldgen info export from an ingame week ago and the initial export work fine.

http://sta.sh/09bpjcudbqg is the worldgen export files which are crashing.

Code: [Select]
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at LegendsViewer.Legends.Battle..ctor(List`1 properties, World world)
   at LegendsViewer.Legends.XMLParser.AddEventCollection(String type, List`1 properties)
   at LegendsViewer.Legends.XMLParser.AddItemToWorld(List`1 properties)
   at LegendsViewer.Legends.XMLParser.ParseSection()
   at LegendsViewer.Legends.XMLParser.Parse()
   at LegendsViewer.Legends.World..ctor(String xmlFile, String historyFile, String sitesAndPopulationsFile, String mapFile)
   at LegendsViewer.FileLoader.load_DoWork(Object sender, DoWorkEventArgs e)
   at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34014 built by: FX45W81RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
LegendsViewer
    Assembly Version: 1.13.21.0
    Win32 Version: 1.13.21
    CodeBase: file:///C:/LegendsViewer-1.13.21/LegendsViewer.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34239 built by: FX452RTMGDR
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
SevenZipSharp
    Assembly Version: 0.64.3890.29348
    Win32 Version: 0.64.3890.29348
    CodeBase: file:///C:/LegendsViewer-1.13.21/SevenZipSharp.DLL
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34230 built by: FX452RTMGDR
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Microsoft.mshtml
    Assembly Version: 7.0.3300.0
    Win32 Version: 7.0.3300.0
    CodeBase: file:///C:/WINDOWS/assembly/GAC/Microsoft.mshtml/7.0.3300.0__b03f5f7f11d50a3a/Microsoft.mshtml.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Logged

rmblr

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #573 on: November 25, 2014, 04:29:57 am »

I would love to see this working on Linux. I tried a few years ago with no success, as the distro packages for Mono were quite abysmal and I wasn't about to build the entire toolchain myself.  This time around things seem more mature and I am more dedicated. If it can't be got working, I'll likely start work on my own cross platform solution.

Here's a log of my attempt to get Legends Viewer working on Fedora 20 with a 40.16 generated world.

First, I installed the latest monodevelop and libraries via packages straight from the project, rather than relying on my very old distro packages.  The two I needed to grab everything were: monodevelop libmono-2_0-devel

After installing, I checked out the the latest git master and attempted to build it in MonoDevelop. A small tweak was required: rename Controls/Chart/dlgHF.Designer.cs to dlgHF.designer (Linux filenames are case sensitive).

It builds, but crashes on startup with the backtrace:


Based on the declarations here, user32.SendMessage looks to be a windows native function:

Code: [Select]
        [DllImport("user32.dll")]
        private static extern IntPtr SendMessage(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam);
        [DllImport("user32.dll")]
        private static extern int SendMessage(IntPtr hwnd, int msg, IntPtr wParam, ref TCHITTESTINFO lParam);

To be portable, ideally, we'll need to find a managed code alternative, or at worst, special case a Linux equivalent. I'm not a windows api guru by any means, but it seems to be some sort of Window Manager action, whatever it is doing, it doesn't look mission critical. So I commented out all the lines referencing SendMessage.

Then the app builds and launches:


But it doesn't work. When I load the XML file, it crashes in FileLoader.LocateOtherFiles()  because it expects windows path format with backslashes. As a quick hack I shortcut'ed the function, so I could manually fill in the values.

After some time the app parses the data and "Setup..." appears in blue. Clicking on "World Stats" crashes the app because the browser control isn't available.


libgluezilla is the native backbone to the Mono.WebBrowser control. It replaces the IE Active X control, which of course isn't cross platform. Should be an easy fix, just install libgluezilla? Nope. The libgluezilla project is basically dead and abandoned. No major distributions still package the library, the github repo hasn't seen updates in years, and it reportedly doesn't build against the latest xulrunner.

That said, it looks like the project has been superseded by WebKit. Migrating to Mono.WebKit via the webkit-sharp native library is necessary to get the browser working. This is also good news for OS X users,  as WebKit has OS X support, and Parker has stated previously that the browser is the blocker for an OS X build.

Moving on, the World Map screen renders, huzzah.

Spoiler: World Map (click to show/hide)

Every other tab is empty though and clicking on any search fields results in a null pointer crash, probably because the data structures are empty.


Perhaps the file parsing is failing. Could it be choking on unix line endings? Perhaps it is something else.

Finally, I dabbled with getting a distributable binary of Legends Viewer built so we could do some proper distribution. cd'ing to LegendsViewer/bin/Debug and running:

mkbundle LegendsViewer.exe SevenZipSharp.dll -L . --deps -o legends-viewer

This resulted in a 13MB legends-viewer binary that didn't work unless the '7z64.dll' file was in the same directory (I forgot how windows, by default, loads shared libraries from the working directory first, crazy!). Bundling the 7z[64].dll assemblies by adding them to the mkbundle command resulted in  a IKVM.Reflection.BadImageFormatException. Presumably the mkbundle assembly parsing routines couldn't read the dll for whatever reason. Anyways creating an empty file "touch 7z64.dll" got the app started.

In the future to create a distributable binary, we'll need to fix that, either by sorting out the format error, or dropping 7z support, or using native 7z libs. Nonetheless, I have high hopes for creating distributable binaries for Linux users :D

That's all the investigation I'll do for today. Here's a tidy list of todos to serve as a foundational roadmap for Linux (and possibly OS X!) support:

  • Migrate to Mono.WebKit instead of Mozilla
  • Fix windows-specific path handling
  • Remove or conditionalize the native windows WM API calls
  • Make the GUI text more readable
  • Use a native theme to make it less ugly
  • Sort out 7z library for packaging

Parker147, shall I create these as issues in github? Would love to collaborate with you to get a working Linux build.
Logged

fricy

  • Bay Watcher
  • [DFHACK:ZEALOT]
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #574 on: November 25, 2014, 05:08:42 am »

That's all the investigation I'll do for today. Here's a tidy list of todos to serve as a foundational roadmap for Linux (and possibly OS X!) support:
Parker147, shall I create these as issues in github? Would love to collaborate with you to get a working Linux build.
I'm watching this with interested, and will try to compile on osx when the source works on linux.

Nopenope

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #575 on: November 25, 2014, 05:42:53 pm »

I'll be monitoring this too. I love Legends Viewer and it made me wince to realize it was written in C#.
Logged

justicarab

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #576 on: November 26, 2014, 12:33:07 am »

hey parker, (or any1 who can help)


i'm getting an error when trying to upload the xml

"Unhandled exception has occured in your application."
"object reference not set to an instance of an object"



The Error Detail
Spoiler (click to show/hide)

here is what is exported (it's everything, i dont know what you need to be honest)
https://mega.co.nz/#!dYYzyaxI!XuUCXlVg5NcpT9Yz83NUknf0Y5-NytHLlirT0ipxJx8


I have also tried using legends export processor. it all works until i get to legends viewer, when i choose the archive, an error message appears stating "the file /legends.xml is already in use", and when i return to the folder legend and data, i see all the content on the archive extracted to this file. if i give it a secend attempt, legend viewer tells me that this file already exists

the zip file from after using the legends processor
https://mega.co.nz/#!xAImVKTB!VJt1lgR0jwzNE4y2SHAqVm60kAfPv7dTI369G81T-NY

any help would be very helpful, thank you for reading
« Last Edit: November 26, 2014, 01:07:59 am by justicarab »
Logged
This forum is the most helpful and polite i have ever seen. always happy to help my many post and to you all i say thank you so much for making me feel welcomed!

Parker147

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #577 on: November 26, 2014, 09:16:53 am »

It will be a few days before I can look at those bugs for you guys.

Please feel free to contribute. Its on GitHub for that reason :)
Logged

smjjames

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #578 on: November 26, 2014, 09:27:33 am »

Cool, let me know if you need the legends export files from an I game week before because I still have those.
Logged

justicarab

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #579 on: November 28, 2014, 11:07:08 pm »

thank you parker!
Logged
This forum is the most helpful and polite i have ever seen. always happy to help my many post and to you all i say thank you so much for making me feel welcomed!

Parker147

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #580 on: December 01, 2014, 08:32:24 pm »

Looks like both of you were getting the same error. I've uploaded a fixed version.
Logged

Deus_Vult

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #581 on: December 02, 2014, 11:46:56 am »

Hi!

I've also been experiencing problems with XML file. I did download the 13.22 version though.



Here's the error log
Spoiler (click to show/hide)


Here's the world-legends.xml

https://mega.co.nz/#!IA10jIQQ!mHuityp1kV2AtwgL9vP_C2Vo7cSb1VOZ8ioMJX3YOsA
Logged

StupidElves

  • Bay Watcher
  • I coveted that wind, I suppose.
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #582 on: December 02, 2014, 11:48:15 am »

PTW
Logged
Accidentally made over 5000 copper maces once. I have no idea how that happened.

GENERATION 29:
The first time you see this, copy it into your signature on any forum and add 1 to the generation. Social experiment.

Parker147

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #583 on: December 02, 2014, 06:32:00 pm »

Hi!

I've also been experiencing problems with XML file. I did download the 13.22 version though.



Here's the error log
Spoiler (click to show/hide)


Here's the world-legends.xml

https://mega.co.nz/#!IA10jIQQ!mHuityp1kV2AtwgL9vP_C2Vo7cSb1VOZ8ioMJX3YOsA

You didn't include the other exported files, but I think I got the issue fixed and uploaded it
Logged

Deus_Vult

  • Bay Watcher
    • View Profile
Re: Legends Viewer 1.13 (v40 Compatible)
« Reply #584 on: December 03, 2014, 01:56:41 am »

Hi!

I've also been experiencing problems with XML file. I did download the 13.22 version though.



Here's the error log
Spoiler (click to show/hide)


Here's the world-legends.xml

https://mega.co.nz/#!IA10jIQQ!mHuityp1kV2AtwgL9vP_C2Vo7cSb1VOZ8ioMJX3YOsA

You didn't include the other exported files, but I think I got the issue fixed and uploaded it

Truly, you are Legendary Nice Fellow. It worked, thank you for such quick reply!
Logged
Pages: 1 ... 37 38 [39] 40 41 ... 44