Ultimate Editor
Moderator: thunderchero
Hey, sorry for not replying sooner.
I've uploaded dev3, it has shipview added. It's based on Gowron's shipview ext 2, but slightly modified.
Each empire's ships are in their own table, sorted by tech requirements. Between different levels are empty silver lines.
Minor race ships are sorted by race first then tech requirements and alien ships are listed in the same order as in shiplist.sst
I can change it to original shipview's output, if it turns out people don't like it this way.
I've uploaded dev3, it has shipview added. It's based on Gowron's shipview ext 2, but slightly modified.
Each empire's ships are in their own table, sorted by tech requirements. Between different levels are empty silver lines.
Minor race ships are sorted by race first then tech requirements and alien ships are listed in the same order as in shiplist.sst
I can change it to original shipview's output, if it turns out people don't like it this way.
DCER: sorry to ask but,
could you add an add planet feature to UE?
in the Edit -> Galaxy -> Planets menu?
since this would only require appending 76 byte to the planet.pst file
you'd first have to check for the highest unused index number (bytes 55 & 56) and make this the name (first 40 byte) write these and a generic .ani file (eart.ani maybe) and an atmosphere (#08 lowest (methane)) the rest can be edited with UE. bytes 53, 54 seem to need to be (# 10 59 don't know why)
I wish I knew how to progam in java then i could try it for myself... but maybe this is enough to make it easy and quick for you
thanks in advance
could you add an add planet feature to UE?
in the Edit -> Galaxy -> Planets menu?
since this would only require appending 76 byte to the planet.pst file
you'd first have to check for the highest unused index number (bytes 55 & 56) and make this the name (first 40 byte) write these and a generic .ani file (eart.ani maybe) and an atmosphere (#08 lowest (methane)) the rest can be edited with UE. bytes 53, 54 seem to need to be (# 10 59 don't know why)
I wish I knew how to progam in java then i could try it for myself... but maybe this is enough to make it easy and quick for you
thanks in advance
- Tethys
- Past Administrator
- Posts: 2404
- Joined: Fri Jul 18, 2008 2:00 am
- Location: Your mom's bed ;)
- Contact:
Nice little bug when editing the Technology descriptions and tags:
error log:
Ultimate Editor 0.7.1dev3 - 20:16:56 15.04.2010
ue.exception.InvalidArgumentsException: %1: String at index %2 not found.
at ue.edit.res.stbof.StringFile.getArrayIndex(StringFile.java:344)
at ue.edit.res.stbof.StringFile.setDesc(StringFile.java:206)
at ue.gui.stbof.TechGUI.finalWarning(TechGUI.java:800)
at ue.gui.MainWindow.showPanel(MainWindow.java:89)
at ue.gui.MainMenu$RestoreBackups.actionPerformed(MainMenu.java:599)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(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 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)
PS. as a request, could u add a place in the Buildings overview for the Main buildings as well? (IAAP)
error log:
Ultimate Editor 0.7.1dev3 - 20:16:56 15.04.2010
ue.exception.InvalidArgumentsException: %1: String at index %2 not found.
at ue.edit.res.stbof.StringFile.getArrayIndex(StringFile.java:344)
at ue.edit.res.stbof.StringFile.setDesc(StringFile.java:206)
at ue.gui.stbof.TechGUI.finalWarning(TechGUI.java:800)
at ue.gui.MainWindow.showPanel(MainWindow.java:89)
at ue.gui.MainMenu$RestoreBackups.actionPerformed(MainMenu.java:599)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(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 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)
PS. as a request, could u add a place in the Buildings overview for the Main buildings as well? (IAAP)
- Tethys
- Past Administrator
- Posts: 2404
- Joined: Fri Jul 18, 2008 2:00 am
- Location: Your mom's bed ;)
- Contact:
Unrelated to the above post, but I got 2 separate errors 4 times (total) when trying to save stbof.res using 'Save' and not 'Save As'
Ultimate Editor 0.7.1dev3 - 10:01:23 16.04.2010
java.util.zip.ZipException: duplicate entry: bldset5.bin
at java.util.zip.ZipOutputStream.putNextEntry(Unknown Source)
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:2143)
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:1975)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Ultimate Editor 0.7.1dev3 - 10:04:32 16.04.2010
java.io.IOException: Failed to delete file: stbof.tmp
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:2226)
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:1975)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Ultimate Editor 0.7.1dev3 - 10:06:10 16.04.2010
java.io.IOException: Failed to delete file: stbof.tmp
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:2226)
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:1975)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Also, what does this mean? I have this one takes up half of the (now 310 KB sized) log from last error (previous post) to this new error (above)
java.lang.IllegalStateException: Buffers have not been created
at sun.awt.windows.WComponentPeer.flip(Unknown Source)
at java.awt.Component$FlipBufferStrategy.flipSubRegion(Unknown Source)
at java.awt.Component$FlipBufferStrategy.showSubRegion(Unknown Source)
at java.awt.Component$FlipSubRegionBufferStrategy.showIfNotLost(Unknown Source)
at javax.swing.BufferStrategyPaintManager.show(Unknown Source)
at javax.swing.RepaintManager.show(Unknown Source)
at javax.swing.SwingPaintEventDispatcher.createPaintEvent(Unknown Source)
at sun.awt.windows.WComponentPeer.postPaintIfNecessary(Unknown Source)
at sun.awt.windows.WComponentPeer.handleExpose(Unknown Source)
at sun.awt.windows.WToolkit.eventLoop(Native Method)
at sun.awt.windows.WToolkit.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Ultimate Editor 0.7.1dev3 - 10:01:23 16.04.2010
java.util.zip.ZipException: duplicate entry: bldset5.bin
at java.util.zip.ZipOutputStream.putNextEntry(Unknown Source)
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:2143)
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:1975)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Ultimate Editor 0.7.1dev3 - 10:04:32 16.04.2010
java.io.IOException: Failed to delete file: stbof.tmp
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:2226)
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:1975)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Ultimate Editor 0.7.1dev3 - 10:06:10 16.04.2010
java.io.IOException: Failed to delete file: stbof.tmp
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:2226)
at ue.edit.res.Stbof$SaveTask.doInBackground(Stbof.java:1975)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Also, what does this mean? I have this one takes up half of the (now 310 KB sized) log from last error (previous post) to this new error (above)
java.lang.IllegalStateException: Buffers have not been created
at sun.awt.windows.WComponentPeer.flip(Unknown Source)
at java.awt.Component$FlipBufferStrategy.flipSubRegion(Unknown Source)
at java.awt.Component$FlipBufferStrategy.showSubRegion(Unknown Source)
at java.awt.Component$FlipSubRegionBufferStrategy.showIfNotLost(Unknown Source)
at javax.swing.BufferStrategyPaintManager.show(Unknown Source)
at javax.swing.RepaintManager.show(Unknown Source)
at javax.swing.SwingPaintEventDispatcher.createPaintEvent(Unknown Source)
at sun.awt.windows.WComponentPeer.postPaintIfNecessary(Unknown Source)
at sun.awt.windows.WComponentPeer.handleExpose(Unknown Source)
at sun.awt.windows.WToolkit.eventLoop(Native Method)
at sun.awt.windows.WToolkit.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Oh, wow.
I'll check the first and second one.
The third seems like the file is open while trying to delete. Could be I forgot to close it somewhere.
The fourth seems to be a problem with java, it could be this bug: http://bugs.sun.com/bugdatabase/view_bu ... id=6933331
@Peter1981:
If you can make the modifications work by hand editing them, I'll more likely consider it. I have little time to spend on UE and also it seems I'm slowly loosing interest in botf. I'll try to fix things asap, but don't expect new features being added often
But like I said, show me it works and I'll likely add it.
I'll check the first and second one.
The third seems like the file is open while trying to delete. Could be I forgot to close it somewhere.
The fourth seems to be a problem with java, it could be this bug: http://bugs.sun.com/bugdatabase/view_bu ... id=6933331
@Peter1981:
If you can make the modifications work by hand editing them, I'll more likely consider it. I have little time to spend on UE and also it seems I'm slowly loosing interest in botf. I'll try to fix things asap, but don't expect new features being added often
But like I said, show me it works and I'll likely add it.
- Spocks-cuddly-tribble
- Code Master
- Posts: 1962
- Joined: Sun Apr 27, 2008 2:00 am
Hi DCER,
first - thanks for your and also Flocke's answers to my questions(unpublished modding info).
Regarding the scrollbar-minor-ship bug:
You did say threre is a minumum of TWO ships in BotF. I did not check this but maybe there is no bug in UE at all:
viewtopic.php?name=Forums&file=viewtopic&p=10803#10803
first - thanks for your and also Flocke's answers to my questions(unpublished modding info).
Regarding the scrollbar-minor-ship bug:
You did say threre is a minumum of TWO ships in BotF. I did not check this but maybe there is no bug in UE at all:
viewtopic.php?name=Forums&file=viewtopic&p=10803#10803
Welcome to the club! I was about to give a similar statement w.r.t. to the amount of requests here. I have not played since years aside of short code testings. But I hope maybe, from time to time, we can keep in touch with the one or other (minor) BotF team project.DCER wrote:I have little time to spend on UE and also it seems I'm slowly loosing interest in botf. (...) don't expect new features being added often
I don't know how many bugs is too many but that point is reached somewhere before however many in BotF is.
- Tethys
- Past Administrator
- Posts: 2404
- Joined: Fri Jul 18, 2008 2:00 am
- Location: Your mom's bed ;)
- Contact:
Were sorry
u guys really are the best we love uuuuuuuuuuuu
http://scienceblogs.com/retrospectacle/ ... 20cake.bmp
u guys really are the best we love uuuuuuuuuuuu
http://scienceblogs.com/retrospectacle/ ... 20cake.bmp
@DCER thank for the responce -- we all need a brake some times
I have been doing this but i'm trying to combine the planet pack by tethys with the original planet ( doubleing the number of them so that i can have terran worlds with no atmosphere etc.)
Manually doing this is a bug bear as you have to id the lowest planet id in hex then because i can't paste in my free hex editor i have to type!
All i really basicly need is UE to have an add button that does the following :-
starting from byte 0x104 in the planet.pst file the file is devided into row of 4B (76 dec) bytes
the #36 & #37 are little endian 2 byte interger values for the planet index id number (0-1100 decimal originally with a few in the 6000+ area)
most non-starting system planets are simply given this number as a decimal as their name i.e planet 1053 is a volcanic wold. The index number needs to be compared to find the next free planet index number. Make this the #36 & #37 index number and give the planet this name in the first 40 bytes (else UE doesn't display the new entry correctly.)
UE will also need #34 & #35 written as 10 59 (don't know why but all planets have this coding.), byte #49 must be written between #08 and #0c (atmosphere.), byte #28-#33 needs a name for the .ani file to be used as a planet (I suggest easiest option is to use the .ani file of the previous index entry.)
e.g.
bytes 1 to 40
bytes 41 to 52
bytes 53 to 54
bytes 55 to 56
bytes 57 to 73
byte 74
bytes 75 to 76
My hex editor won't let me copy or screen shot so can't show you it works but it does
I hope the above is what you wanted.
As always DCER full respect to you for the UE
I have been doing this but i'm trying to combine the planet pack by tethys with the original planet ( doubleing the number of them so that i can have terran worlds with no atmosphere etc.)
Manually doing this is a bug bear as you have to id the lowest planet id in hex then because i can't paste in my free hex editor i have to type!
All i really basicly need is UE to have an add button that does the following :-
starting from byte 0x104 in the planet.pst file the file is devided into row of 4B (76 dec) bytes
the #36 & #37 are little endian 2 byte interger values for the planet index id number (0-1100 decimal originally with a few in the 6000+ area)
most non-starting system planets are simply given this number as a decimal as their name i.e planet 1053 is a volcanic wold. The index number needs to be compared to find the next free planet index number. Make this the #36 & #37 index number and give the planet this name in the first 40 bytes (else UE doesn't display the new entry correctly.)
UE will also need #34 & #35 written as 10 59 (don't know why but all planets have this coding.), byte #49 must be written between #08 and #0c (atmosphere.), byte #28-#33 needs a name for the .ani file to be used as a planet (I suggest easiest option is to use the .ani file of the previous index entry.)
e.g.
bytes 1 to 40
A planet called 111131 31 31 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
bytes 41 to 52
with .ani file tellar.ani74 65 6c 6c 61 72 2e 61 6e 69 00 00
bytes 53 to 54
must have bytes10 59
bytes 55 to 56
planet id number 1111 in hex 2 byte little endian.57 04
bytes 57 to 73
just fill these bytes with zeros00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
byte 74
the byte for the atmosphere #09-#0c (in this case thin oxygen)0c
bytes 75 to 76
I've added 20 planets to my planets.pst list but is so hard to type it all in00 00
My hex editor won't let me copy or screen shot so can't show you it works but it does
I hope the above is what you wanted.
As always DCER full respect to you for the UE
I've released dev4.
It has a main buildings table added to the buildings overview and allows adding/removing planets. I also added some bug fixes.
@Peter1981:
When adding planets UE will search for the lowest index greater than 1 and use that one. I thought since the original starts counting from 1, I'll do the same, although 0 would probably also work.
It'll then copy the last planet in planet.pst. If you select to view a certain type of planets it will set the planet type to that type when the planet is added.
planet.pst isn't completely understood yet, if you have problems or find that something else needs to be set as well, let me know.
@Spocks-cuddly-tribble:
@Tethys:
I was unable to reproduce the error you get in the tech fields screen. However I've fixed the error string so %2 should now be replaced by the index that was not found. If you can tell me the exact steps that lead to the error, I might be able to find the problem. Right now it worked without problems when I tested it.
No idea why you got the "duplicate entry" error. If you get more of those let me know. But it could be related to not being able to delete the file, which should now be fixed.
It has a main buildings table added to the buildings overview and allows adding/removing planets. I also added some bug fixes.
@Peter1981:
When adding planets UE will search for the lowest index greater than 1 and use that one. I thought since the original starts counting from 1, I'll do the same, although 0 would probably also work.
It'll then copy the last planet in planet.pst. If you select to view a certain type of planets it will set the planet type to that type when the planet is added.
planet.pst isn't completely understood yet, if you have problems or find that something else needs to be set as well, let me know.
@Spocks-cuddly-tribble:
Thanks! That could explain it. I was already dreading of having to relearn the function in question and all the modifications. You might have just saved me from a big hassleYou did say threre is a minumum of TWO ships in BotF. I did not check this but maybe there is no bug in UE at all:
viewtopic.php?name=Forums&file=viewtopic&p=10803#10803
@Tethys:
I was unable to reproduce the error you get in the tech fields screen. However I've fixed the error string so %2 should now be replaced by the index that was not found. If you can tell me the exact steps that lead to the error, I might be able to find the problem. Right now it worked without problems when I tested it.
No idea why you got the "duplicate entry" error. If you get more of those let me know. But it could be related to not being able to delete the file, which should now be fixed.
- Tethys
- Past Administrator
- Posts: 2404
- Joined: Fri Jul 18, 2008 2:00 am
- Location: Your mom's bed ;)
- Contact:
Why thank you so much DCER, I will let you know if I still get the error... It happened when I attempted to change the Technology names for Computers (ie. Microtape, Isolinear, etc.) and moved some of them up, added in a few extra ones, tho I do believe i left a few of them with only a few words like *Insert text here* as a placeholder... I will let you know in any case, thanks
@DCER no message error sorry for the confusion but UE will only select the first entry in planet.pst for eavh ID (as i'm guessing trek.exe would?) not that there's any reason for wanting to duplicate planet id!
A genuine and very big thank-you from me for this -- I hope your enthusiasm for Birth of the Federation does not wain as we would loose a very much appreciated and valued contributer!
A genuine and very big thank-you from me for this -- I hope your enthusiasm for Birth of the Federation does not wain as we would loose a very much appreciated and valued contributer!