• Welcome to SC4 Devotion Forum Archives.

SSPTool

Started by Stefan79, January 19, 2009, 11:23:26 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Stefan79

#20
Quote from: JoeST on February 18, 2009, 11:41:57 PM
I was using the latest one on sourceforge, I literaly downloaded and tried it out.

I have removed old versions on sourceforge to prevent version conflicts.
Then I have tested:


And thanks to dealey for his information, I will try to write a FSH Plugin next.

P.S.: Added a scanner plugin to move not SC4 files from Plugins folder, e.g. PEG unzipped lots.
P.P.S.: Added a SSPTool_Complete.zip with SSPTool105+DAMN107+DBPFEditor003 on sourceforge.
SSP = Stefan's Self-made Productions

daeley

here's my code to read/write decompressed FSH files. It's a bit incomplete since it can't create/read files with multiple images and it can only read/write using DXT1 or DXT3 compression, but it should work correctly for most textures in the game.

By the way, the function to create an FSH takes a BufferedImage as argument (and optionally one as well for the alpha channel). You probably know this, but using the ImageIO utility class you can create a BufferedImage from any standard image file (bitmap, jpg, png, ...)
1. Install SC4+RH
2. Install LEX (CD&DVD helps) and latest NAM + updates
3. Play the game
4. ? ? ? ?
5. Profit!

JoeST

Stefan: will it affect it if I dont have the game-pahts? and what about if I manually unzipped the plugin?

Joe
Copperminds and Cuddleswarms

Stefan79

The game-paths, you can change under Configuration tab, are mainly for the plugins of SSPTool.
Every time the plugin want to read or write a file, it show the preferred path based on the game-paths.
But when the paths are not exists, it will show the MyDoc folder or badly crash with an exception.
So be sure you choose a path for the game-path that exists, although it isn't the real game-path, e.g.
c:/test. DAMN take this path and add the DAMN folder to this and write there the created DAMN-Menus.

If you manually unzip the plugin you have to unzip with structure to the plugins folder of SSPTool.
btw The Install button of SSPTool do the same.

Stefan
SSP = Stefan's Self-made Productions

Stefan79

Hi together,
I have extracted the RUL and icons from NAM, and from SimCity_1.dat and build a Test-Menu for DAMN with the next version of SSPTool+DAMNPlugin. It will be out next week, so be patient.
SSP = Stefan's Self-made Productions

Stefan79

#25
Hi together!

Its done. Working harder than before, I have updated on Sourceforge:

- SSPTool-1.0.7: The MAIN program (protocol, new Plugin-Support, new DBPF4J)
- DAMN-1.0.8: Installer, Creator, Editor, Indexer, some more tools and Network option (for advanced users!)
- Editor-0.1.0: Modify some properties for a list of exemplars, Converter ASCII (LUA)/Unicode (LTEXT)
- Scanner-1.1.1: Scans plugins folder and move unneccessary files to pluginsDoc

- DBPF4J-1.1.0: Its included in SSPTool, for programmers

- SSPTool_Complete107: SSPTool-1.0.7 + DAMN-1.0.8 + Editor-0.1.0 + Scanner-1.1.1

Next step (really!)
- FiSHer-x.x.x: Import/Export of FSH

Regards Stefan
SSP = Stefan's Self-made Productions

JoeST

awesome, will try it out :)

Joe
Copperminds and Cuddleswarms

Jonathan

I have another suggestion for a tool,
A RULfile viewer, it doesn't have a character limit, so no need to keep on exporting it and using notepad.
But have an export button to a folder you can set. (so it only asks you once to choose a folder)
Full find and replace functionality.
It tells you if you've modified the file since you last save, also what time you last saved, and what time you last exported.
Also maybe it could highlight what you modifed since you downloaded the Controller dat.

Now to go try out the latest version...

Jonathan

Stefan79

Hi together,

nobody is perfect and I found an error in my DBPF4J package. If you let DAMN or the Editor modify your lots, it might be possible (when exemplar is in Text format) that the Property Conditional Building will not be set right. In worsed case, SC4 doesn't understand this property and the lot stay left visible. So please download the updated version of SSPTool (1.0.7) or the complete package and override your previous SSPTool.

Then, if you recognize that a lot is visible in normal SC4 menu although it shouldn't be, remember this lot and end SimCity.
Either use SSPTool DBPFEditor or iLive Reader to change the property Conditional Building, save, reopen and set it to the wished value. Now it should be repaired.
Or simply redownload the original lot replacing the modified lot and use SSPTool DBPF Editor to change the property Conditional building.

Sorry for the circumstances,
Stefan
SSP = Stefan's Self-made Productions

Stefan79

Quote from: Warrior on February 25, 2009, 09:40:56 AM
I have another suggestion for a tool,
A RULfile viewer, it doesn't have a character limit, so no need to keep on exporting it and using notepad.
But have an export button to a folder you can set. (so it only asks you once to choose a folder)
Full find and replace functionality.
It tells you if you've modified the file since you last save, also what time you last saved, and what time you last exported.
Also maybe it could highlight what you modifed since you downloaded the Controller dat.

Now to go try out the latest version...

Jonathan
You asked for it, I will see what I can do. But I think there are many great editors with compare options, highlighting
and more, so it will not have the first priority.
Beside I have fixed an error in my DBPF4J package, I also added support for RUL files and basics for FSH and S3D files.
SSP = Stefan's Self-made Productions

CasperVg

#30
Huge kudos to you, Stefan. Thanks to your excellent tools, I finally managed to DAMN my favourite sets of lots  :thumbsup:

Two small suggestions: Could you make it so that in the DAMN Creator/Editor, in Step 3/4, you can tick "Hide All", so you can hide all lots from the regular menus, instead of having to tick it for every lot?
Also, perhaps it would be useful to have a function so that in Step 2/4, growable lots are automatically deselected (but shown).
Follow my SimCity 4 Let's play on YouTube

Jonathan

Thanks, Stephan.
I meant one that can read the RUL Files inside the dats, without taking them out.

Jonathan

Stefan79

Quote from: caspervg on February 26, 2009, 07:21:29 AM
Huge kudos to you, Stefan. Thanks to your excellent tools, I finally managed to DAMN my favourite sets of lots  :thumbsup:

Two small suggestions: Could you make it so that in the DAMN Creator/Editor, in Step 3/4, you can tick "Hide All", so you can hide all lots from the regular menus, instead of having to tick it for every lot?
Also, perhaps it would be useful to have a function so that in Step 2/4, growable lots are automatically deselected (but shown).

Thanks!

The "Hide All" option for all lots is "hidden" in Multi-Tool in Step 3 in Creator/Editor. Tick "Set Hidden for all lots" and press okay. This will set all lots
to be hidden. Attention! Because this option will modify the lots and I found in error in previous version, be sure to have the latest version (1.0.7)
of SSPTool!
(It looks I have to write a little documentation of my program and list all functions that are possible  "$Deal"$)

For the growable lots, I think of an option to generally exclude this lots from showing, but I can add two functions: An option (DAMN Options) to exclude the lots generally and when not checked to deselect them automatically in Step 2.
SSP = Stefan's Self-made Productions

Stefan79

Quote from: Warrior on February 26, 2009, 09:21:33 AM
Thanks, Stephan.
I meant one that can read the RUL Files inside the dats, without taking them out.

Jonathan

This will make no problem. I will provide an viewer of RUL soon.
The highlighting, etc. is a little more difficult and this may take some more time.

Stefan
SSP = Stefan's Self-made Productions

CasperVg

Thanks for the quick answer to my questions, Stefan!
Follow my SimCity 4 Let's play on YouTube

JoeST

Hey stefan :)

awesome stuff you are continuing to make more awesome :)

I just downloaded and started it. It opened, but strangely enough, all the text was ??? XD

EDIT: well that was on double-clicking on the jar, but loading the jar from commandline it worked fine :) tis an awesome tool, though I am particularly fussy, and dont enjoy the sequential menu-ing hehe. It is AWESOME.

Sorry I havent been around to develop anything with it... I still cant get dbpf4j to work. it complies to a simple .class file fine, but cant run using java [class] -* DBPF4J*.jar referencing. I also have been doing other things.

Joe
Copperminds and Cuddleswarms

andy33b

Hi Stefan,

first of all  :thumbsup: for your work.
I have a few suggestions to improve the SSP tool, especially the DAMN-creator:

  • remember the path of the last selected files in step 1. It is tedious to have to navigate each time the whole path down to the files, (almost) to the same place you were last time
  • in step 2, show the exemplar name or item name or, if existing, the ltext-content instead of the TGI. I think most users are driven by the name they find in the SC-menu, not the TGI (which is normally hidden in SC)
  • make the tool accessible with the keyboard. When working mobile (on the couch, in the train, ...) or just if someone prefers to work with the keyboard the tool isn't quite handy. If you need more info, I'll make a list of what IMHO isn't right (I won't be able to dig myself into the code since I haven't programmed in java yet).

As a future tool I'd like to see a "sorter" like an explorer with tree-view, list-view and drag-n-drop to easily rearrange the elements among the tree and inside a folder. This tool should "of course" be able to scan the plugin-directory and extract the lots from there. Such a scan should probably be made in two steps:

  • 1. Step: build a cross reference list. Since Exemplars, Icons, Ltext can/would be in different files and/or overwritten (in the "zzz_"-folders)
  • 2. Step: load and combine the Elements (Exemplar, PNG, LText) according to this list
From what I already have seen and tried, such a cross list should reference:

  • Exemplares with Type:"Building", Occupant Groups (list of I32, search the ones that belong to a SC-Menu), Item Icon (TGI reference), Item Name (plain text) or Item Description (TGI reference)
  • PNG with size 44x172 pixel (think you know this, since you have it already in your tool)
  • LText files
...oh yes, almost forgot, If you include the SC-native lots and transit elements, scan simcity_?.dat, EP1.dat and the correct simcity_locale.dat (in european version of SC there are several of them).

andy

Stefan79

#37
Hi andy,

thanks for your ideas for SSPTool.

Quote from: andy33b on March 13, 2009, 04:06:44 AM
Hi Stefan,

first of allĀ  :thumbsup: for your work.
I have a few suggestions to improve the SSP tool, especially the DAMN-creator:

  • remember the path of the last selected files in step 1. It is tedious to have to navigate each time the whole path down to the files, (almost) to the same place you were last time
  • in step 2, show the exemplar name or item name or, if existing, the ltext-content instead of the TGI. I think most users are driven by the name they find in the SC-menu, not the TGI (which is normally hidden in SC)
  • make the tool accessible with the keyboard. When working mobile (on the couch, in the train, ...) or just if someone prefers to work with the keyboard the tool isn't quite handy. If you need more info, I'll make a list of what IMHO isn't right (I won't be able to dig myself into the code since I haven't programmed in java yet).

As a future tool I'd like to see a "sorter" like an explorer with tree-view, list-view and drag-n-drop to easily rearrange the elements among the tree and inside a folder. This tool should "of course" be able to scan the plugin-directory and extract the lots from there. Such a scan should probably be made in two steps:

  • 1. Step: build a cross reference list. Since Exemplars, Icons, Ltext can/would be in different files and/or overwritten (in the "zzz_"-folders)
  • 2. Step: load and combine the Elements (Exemplar, PNG, LText) according to this list
From what I already have seen and tried, such a cross list should reference:

  • Exemplares with Type:"Building", Occupant Groups (list of I32, search the ones that belong to a SC-Menu), Item Icon (TGI reference), Item Name (plain text) or Item Description (TGI reference)
  • PNG with size 44x172 pixel (think you know this, since you have it already in your tool)
  • LText files
...oh yes, almost forgot, If you include the SC-native lots and transit elements, scan simcity_?.dat, EP1.dat and the correct simcity_locale.dat (in european version of SC there are several of them).

andy

Path-remembering is very important and I will implement this asap.
The viewing of exemplar name instead of TGI and some more things of reading lots will need a redesign of my program. This will be the next big step. => see SSPTool-1.1.2
Implement the keyboard will be possible, so please tell me what keys should work.

Some of this sorting you can do with the DBPF Editor. You can read a whole folder, show the lots, manipulate the order, menue position and save them.
But reading the whole plugin order will cause an OutOfMemory Error, so I have to redesign the program for better memory using. (Next big step)

I think version 2 of SSPTool and plugins could have all the benefits you wish.

Stefan
SSP = Stefan's Self-made Productions

Stefan79

Hi together!

Before my RL is catching me and till free-time are 2 weeks, I release the newest updates of SSPTool and its plugins:

- SSPTool-1.1.2: The MAIN program (Updated DBPF4J, new DBPF4J-Ext, debugLevel, variable screensize,...)
- DAMN-1.1.0: Installer, Creator, Editor, Indexer (remember path,deselect growable,improvements,...)
- Editor-0.5.0: Modify some properties for a list of exemplars (remember path,improved multitool,...)
- Scanner-1.1.3: Scans plugins folder and move unneccessary files to pluginsDoc (minor updates)
- !!NEW!! RULer-0.0.1: View, edit and export of RUL entries

- SSPTool_Complete112: SSPTool-1.1.2 + DAMN-1.1.0 + Editor-0.5.0 + Scanner-1.1.3 + RULer-0.0.1

for programmers:
- DBPF4J-1.1.2: Basic handling of DBPF files (included in SSPTool)
- DBPF4J-Ext-1.1.2: Extensions for DBPF4J (included in SSPTool)

Next step:
- Version 2: Redesign of DBPF4J-Ext, SSPTool, Plugins
- FiSHer-x.x.x: Import/Export/Edit of FSH
- Sorter-x.x.x: As andy33b described previous

Regards Stefan
SSP = Stefan's Self-made Productions

JoeST

#39
hey Stefan, thanks for the update :)

what do the DBPF4J extensions do? is the source (the .java) going to be avaiable?

also, would you like a website making? it would be a good thing to have the javadoc avaliable on the web.

Joe
Copperminds and Cuddleswarms