Author
Topic: Simupak Explorer (Read 10663 times)

Notice:The name of the project was changed 2013-06-10 to Simupak Explorer to avoid confusion/conflict with other products, primarily within the Simutrans community, but also outside it. This name seems unused inside the googlable universe, and hopefully also outside it.

In case anyone is interested, here's the source code for what I call PakViewer, version 1.1. Java 7 SDK and Gradle 1.0 is required to build it, and Java 7 is also required to run it. Other dependencies will be downloaded automatically by Gradle (Internet connectivity also required during build). The command "gradle run" will build and run the program, while "gradle installApp" will create a directory (that can be moved to a more suitable location) containing everything needed to run the program and some batch scripts to launch the program.

As stated elsewhere earlier, I won't be providing a binary release as it is too much work for me to fullfill the license requirements for that.

To inspect a pak set, open the pak set directory (with the pak files, not the source dats). If the pak sets lie in the simutrans directory, the main simuconf.tab will be loaded automatically. This can also be done manually, but there isn't much that needs simuconf.tab anyway.

Inspired by a report tool made by someone else, I've begun adding HTML report generation to PakViewer. It doesn't have the same good looks or interactive sorting for the time being. Another difference is that this report is generated from the pak files, not the dat files, so it works on closed sourced pak sets as well. I also try to keep PakViewer synchronized with the pak loading in Simutrans, so it should understand all format versions Simutrans can load (very old building formats are currently not implemented).

I've added a list of factories, factory pages showing suppliers and consumers, and details page for goods showing vehicles, producers and consumers. This reveals the two "hidden" factories in pak64 (I'm not thinking of those from the food or waste add-ons also included in this report). The factory details page contains some cryptic information, and probably lacks some other stuff.

SaschaP

I really would like to have a binary version for Windows 7 32 bit, because the "getting started" of this program is really nothing! They are not saying, where to install, how and so on... especially not how on a Windows pc and i must say, that I boycott programs, that stick on Mac OS Usern.

I mean, for what do we have all java on the computer, if not for sharing the binaries?

but a question, does this programm also view the new versions of pak128german correctly? on the old 0.4 version you get always funny properties, like "1000km/h" speed

Unfortunately, I consider it too much work to fulfil the demands of the licenses of some 3rd party libraries for a binary release. I could do a binary release of PakViewer itself and let the end-users hunt down the libraries themselves, but that's hardly any easier than just compiling themselves. I also need to review the license for PakViewer itself before a new source release, but reading legaleese not something I look forward to.

I've made some hacks to PakViewer that allows it to run without the libraries with the most complicated licenses, albeit without a few features. The features should automatically spring back to life once the required libraries are put in the lib directory (file name including version number must match, or the batch file must be edited assuming no API changes).

That leaves only various variants of BSD and MIT licenses, plus Apache License 2.0. I think and hope this binary release complies with these licenses now. It's surprisingly hard to find good examples on how to comply with these.

I've uploaded such a light binary release of PakViewer 1.2 at http://simutrans-germany.com/files/upload/pakviewer-gui-1.2.zip (It is also light because at 1.2 MB, it is 1/8 of a theoretical full binary distribution.) The "gui" in the file name means that this does not include the html report generator, which I've not managed to decouple from LGPL libraries, and because Gradle doesn't have a built in way of generating a zip with more than one program in it.

I figured that I might as well release PakViewer 1.3. There hasn't been much development lately, but there is one new features since 1.2, plus one important improvement and a lesser one.

The new feature is the validation tool. Intended for pak authors, it reports constraints and dates that don't seem to add up. Some of the things it reports are not necessarily errors, but the program can't know.

The important improvement is that the building composer now allows you to view all layouts in all seasons. The lesser improvement is displaying the new clustering property for normal buildings in Simutrans 112.3. I hope I understood how the data is represented.

There is also another hidden feature of sorts for a basic listing of a single pak file, but there is no way to get at it without launching it manually, which is a lot of hassle.

The links for the Simupak Explorer are offline. Could someone post an attached copy or a fresher link?

simutrans-germany.com/files is for temporary storage only (setting a long, or infinite, expiration time is possible, but feels like abuse). Due to licensing issues, I have to do some manual amputation of the full application before doing a release (unless you're familiar with Java development and only want the source). I haven't been actively maintainling Simupak Explorer this year, so it may not be compatible with the latest pak file format. If you're really interested in analyzing a pak set, I might upload something this weekend. Although it has a feature for predicting vehicle profitability, it is as a whole rather technical in how it presents the data.