Cross-Platform Civ3 Editor

Cross-Platform Editor for Conquests now available! 1.48

Second part:
Spoiler :
93362 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
93362 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
93362 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
93362 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
93363 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
93363 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
93364 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
93364 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
93366 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
93367 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
93369 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
93369 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
93371 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
93371 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
93373 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
93373 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
93395 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
93395 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
93395 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
93395 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
245661 [Auto-Save Timer] INFO Main - Time to export file: 40 milliseconds.
485607 [Auto-Save Timer] INFO Main - Time to export file: 19 milliseconds.
694485 [AWT-EventQueue-0] INFO Main - Input file: D:\Program Files (x86)\Infogrames\Civilization III\Conquests\Scenarios\ELDO4fix4_sanscarte.biq
694495 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Number of available processors: 4; using 4 processors
694495 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - major ver: 12, minorVer: 8
694495 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - About to go into the various input processors; has been 10 milliseconds.
694622 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - At end of custom rules; time taken = 136 ms
694622 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - File length: 359540
694622 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - data inputted: 358616
694622 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - final input: 359540
694622 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Time to input BIQ: 137 milliseconds
694622 [AWT-EventQueue-0] INFO Main - Time to input file: 137 milliseconds.
694624 [AWT-EventQueue-0] INFO Main - civInstallDir: D:\Program Files (x86)\Infogrames\Civilization III
694632 [AWT-EventQueue-0] INFO Main - colors determined
695092 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - IO links sent
695419 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - custom player data sent
695419 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - data links sent to tabs
695419 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - crosstab links sent
935448 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Maya in any alliances!
935448 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Iroquois in any alliances!
935448 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Inca in any alliances!
935486 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
935486 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
935487 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
935490 [Auto-Save Timer] INFO Main - Time to export file: 34 milliseconds.
935490 [Auto-Save Timer] ERROR Main - Failed to successfully output file
1175454 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
1175454 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
1175455 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
1175481 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
1175481 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
1175481 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
1175482 [Auto-Save Timer] INFO Main - Time to export file: 12 milliseconds.
1175482 [Auto-Save Timer] ERROR Main - Failed to successfully output file
1415455 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
1415455 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
1415456 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
1415498 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
1415498 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
1415498 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
1415498 [Auto-Save Timer] INFO Main - Time to export file: 28 milliseconds.
1415498 [Auto-Save Timer] ERROR Main - Failed to successfully output file
1573501 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573501 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573525 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573525 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573526 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573526 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573526 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573526 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573526 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573527 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573527 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573527 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573527 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573527 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573527 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573528 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573528 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573528 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573528 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573528 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573529 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573529 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1573529 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapPanel - Got new buffer width
1573529 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.2332089552238806 with 1072 pixels in width
1655456 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
1655456 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
1655456 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
1655484 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
1655484 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
1655484 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
1655484 [Auto-Save Timer] INFO Main - Time to export file: 12 milliseconds.
1655484 [Auto-Save Timer] ERROR Main - Failed to successfully output file
1895454 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
1895455 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
1895455 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
1895479 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
1895480 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
1895480 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
1895480 [Auto-Save Timer] INFO Main - Time to export file: 11 milliseconds.
1895480 [Auto-Save Timer] ERROR Main - Failed to successfully output file
2358939 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
2358939 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
2358939 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
2358958 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
2358958 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
2358958 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
2358958 [Auto-Save Timer] INFO Main - Time to export file: 10 milliseconds.
2358958 [Auto-Save Timer] ERROR Main - Failed to successfully output file
2598944 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
2598945 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
2598945 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
2598977 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
2598977 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
2598977 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
2598977 [Auto-Save Timer] INFO Main - Time to export file: 9 milliseconds.
2598978 [Auto-Save Timer] ERROR Main - Failed to successfully output file
2838959 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
2838960 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
2838960 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
2839002 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
2839002 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
2839002 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
2839003 [Auto-Save Timer] INFO Main - Time to export file: 23 milliseconds.
2839003 [Auto-Save Timer] ERROR Main - Failed to successfully output file
3078946 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
3078946 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
3078947 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
3078983 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
3078984 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
3078984 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
3078984 [Auto-Save Timer] INFO Main - Time to export file: 12 milliseconds.
3078984 [Auto-Save Timer] ERROR Main - Failed to successfully output file
3318942 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
3318942 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
3318943 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
3318981 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
3318982 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
3318982 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
 
Third part:
Spoiler :
3318982 [Auto-Save Timer] INFO Main - Time to export file: 13 milliseconds.
3318982 [Auto-Save Timer] ERROR Main - Failed to successfully output file
3558943 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
3558944 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
3558944 [Auto-Save Timer] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
3558967 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
3558967 [Auto-Save Timer] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
3558967 [Auto-Save Timer] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.autoSave(Main.java:947)
at com.civfanatics.civ3.xplatformeditor.Main.access$1300(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$25.run(Main.java:938)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)
3558967 [Auto-Save Timer] INFO Main - Time to export file: 12 milliseconds.
3558967 [Auto-Save Timer] ERROR Main - Failed to successfully output file
3600834 [AWT-EventQueue-0] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
3600835 [AWT-EventQueue-0] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
3600835 [AWT-EventQueue-0] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
3600856 [AWT-EventQueue-0] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
3600856 [AWT-EventQueue-0] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
3600857 [AWT-EventQueue-0] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.cmdSaveActionPerformed(Main.java:1279)
at com.civfanatics.civ3.xplatformeditor.Main.access$600(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$9.actionPerformed(Main.java:521)
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.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(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)
3600858 [AWT-EventQueue-0] INFO Main - Time to export file: 8 milliseconds.
3600858 [AWT-EventQueue-0] ERROR Main - Failed to successfully output file
3623003 [AWT-EventQueue-0] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
3623003 [AWT-EventQueue-0] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
3623004 [AWT-EventQueue-0] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
3623034 [AWT-EventQueue-0] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
3623034 [AWT-EventQueue-0] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
3623034 [AWT-EventQueue-0] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.cmdSaveActionPerformed(Main.java:1279)
at com.civfanatics.civ3.xplatformeditor.Main.access$600(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$9.actionPerformed(Main.java:521)
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.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(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)
3623036 [AWT-EventQueue-0] INFO Main - Time to export file: 10 milliseconds.
3623036 [AWT-EventQueue-0] ERROR Main - Failed to successfully output file
3946582 [AWT-EventQueue-0] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pays-Bas in any alliances!
3946582 [AWT-EventQueue-0] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Empire ottoman in any alliances!
3946582 [AWT-EventQueue-0] WARN com.civfanatics.civ3.xplatformeditor.GAMETab - Didn't find Pirates in any alliances!
3946613 [AWT-EventQueue-0] WARN com.civfanatics.civ3.biqFile.IO - Fewer than one civ checked as playable
3946613 [AWT-EventQueue-0] WARN com.civfanatics.civ3.biqFile.IO - civilization.size() - 1: 11
3946613 [AWT-EventQueue-0] ERROR com.civfanatics.civ3.biqFile.IO - Exception while outputting file
java.lang.IndexOutOfBoundsException: Index: 8, Size: 8
at java.util.ArrayList.rangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at com.civfanatics.civ3.biqFile.IO.outputGAME(IO.java:5039)
at com.civfanatics.civ3.biqFile.IO.outputBIQ(IO.java:3598)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1335)
at com.civfanatics.civ3.xplatformeditor.Main.cmdSaveActionPerformed(Main.java:1279)
at com.civfanatics.civ3.xplatformeditor.Main.access$600(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$9.actionPerformed(Main.java:521)
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.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(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)
3946614 [AWT-EventQueue-0] INFO Main - Time to export file: 17 milliseconds.
3946614 [AWT-EventQueue-0] ERROR Main - Failed to successfully output file
3952568 [AWT-EventQueue-0] INFO Main - Successful exit
0 [main] INFO Main - Starting program - version 0.93
19 [main] WARN Settings - Missing value for key bmpDir in config file.
47 [main] INFO Main - i18n URL: D:\Program Files (x86)\QuintillusCiv3Editor\langs
553 [AWT-EventQueue-0] INFO Main - Running Windows 7 6.1 on x86
553 [AWT-EventQueue-0] INFO Main - Java vendor: Oracle Corporation
553 [AWT-EventQueue-0] INFO Main - Java runtime version: 1.8.0_31-b13
553 [AWT-EventQueue-0] INFO Main - Java runtime name: Java(TM) SE Runtime Environment
554 [AWT-EventQueue-0] INFO Main - Starting initialize method now
591 [AWT-EventQueue-0] INFO Main - Took this many ms to get window visible
921 [Thread-3] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
930 [Thread-3] INFO com.civfanatics.civ3.xplatformeditor.MapTab - wheel enabled? false
1010 [Thread-3] INFO Main - hit the method that adds pnlTabs
1089 [Thread-3] INFO Main - load accelerator done
9057 [AWT-EventQueue-0] INFO Main - Input file: D:\Program Files (x86)\Infogrames\Civilization III\Conquests\Scenarios\ELDO4fix5_sanscarte.biq
9068 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Number of available processors: 4; using 4 processors
9069 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - major ver: 12, minorVer: 8
9069 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - About to go into the various input processors; has been 7 milliseconds.
9252 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - At end of custom rules; time taken = 190 ms
9259 [AWT-EventQueue-0] ERROR com.civfanatics.civ3.biqFile.IO - Error in GAME header:
java.io.EOFException
at com.civfanatics.civ3.biqFile.util.LittleEndianDataInputStream.readInt(LittleEndianDataInputStream.java:376)
at com.civfanatics.civ3.biqFile.IO.inputGAME(IO.java:3169)
at com.civfanatics.civ3.biqFile.IO.inputBIQ(IO.java:505)
at com.civfanatics.civ3.xplatformeditor.Main.openBIQ(Main.java:1005)
at com.civfanatics.civ3.xplatformeditor.Main.openFile(Main.java:832)
at com.civfanatics.civ3.xplatformeditor.Main.cmdOpenActionPerformed(Main.java:811)
at com.civfanatics.civ3.xplatformeditor.Main.access$500(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$8.actionPerformed(Main.java:515)
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.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(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)
9261 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - File length: 355864
9261 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - data inputted: 358866
9261 [AWT-EventQueue-0] ERROR com.civfanatics.civ3.biqFile.IO - Could not input file - failed at LEAD header. Header is GAME; bytes inputted: 358870
9261 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - final input: 358870
9261 [AWT-EventQueue-0] INFO Main - Time to input file: 199 milliseconds.
2139908 [AWT-EventQueue-0] INFO Main - Successful exit

May I consider I have to redo the modifications I done between the corrupted file and the previous file?
 
Thank you for the log. That made it clearer what was happening - it was an issue with multiple files being opened at the same time. This isn't really supported (which is why there isn't a way to go back to previously-opened files), and is only possible because it is necessary for the BIQ-compare mode (which is what the predecessor to the editor did, and the editor can still do). I've now added a warning when a second file is attempted to be opened, so that it can be if the desire is to compare files, but is not by default. I'd recommend restarting the editor to switch which file is being worked on, or opening a second instance of the editor.

At some point in the future, it would be nice to support having multiple files open at once, but that probably won't be very soon as there are a fair amount of places I'd have to verify would work properly for it to be supported, and the cost:benefit hasn't appeared to be there.

I was able to fix the file, at least mostly. I combined what was present in the abruptly-ending file with the end of the previous file I had that was valid, and it's now working again in both the Firaxis editor and my editor. However, there may be some settings in the PLYR and PROP areas in particular that may have their old values, as I didn't have any newer values to put there. Changes made to units, buildings, resources, and other areas should all be present. The updated file is be attached to this post.
 
This update includes the following changes:

  • If you save a file with a new name, the file's new name will appear on the Recent Files list.
  • The user is informed that opening multiple files at once may cause issues before they attempt to do so.

You can download the update here.
 
I have a question. I can change font size using this editor? But I have too small font when i played with full HD 1920x1080.

Unfortunately not. Back when I wrote most of the graphical part of the editor, I had a 1280x800 monitor, and was not skilled in the arts of graphical programming, so there isn't a way to make the font and such bigger.

-------

Update (February 24th): It looks like it might be possible to add this, at least somewhat, without a complete re-write. I'll need to do some more testing, but initial research indicates it's possible to get at least some improvement in font size scaling. It would require an update to the editor, however.
 
New bug report:
- I load a scenario without map: ELDO4fix9_sanscarte.biq,
- I import a map made on a previous version of same scenario: ELDO4_NDE.biq,
- I save the result on a new file, a null pointer exception is thrown:
Spoiler :
0 [main] INFO Main - Starting program - version 0.94
16 [main] WARN Settings - Missing value for key bmpDir in config file.
31 [main] INFO Main - i18n URL: D:\Program Files (x86)\QuintillusCiv3Editor\langs
484 [AWT-EventQueue-0] INFO Main - Running Windows 7 6.1 on x86
484 [AWT-EventQueue-0] INFO Main - Java vendor: Oracle Corporation
484 [AWT-EventQueue-0] INFO Main - Java runtime version: 1.8.0_31-b13
484 [AWT-EventQueue-0] INFO Main - Java runtime name: Java(TM) SE Runtime Environment
484 [AWT-EventQueue-0] INFO Main - Starting initialize method now
531 [AWT-EventQueue-0] INFO Main - Took this many ms to get window visible
843 [Thread-3] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
858 [Thread-3] INFO com.civfanatics.civ3.xplatformeditor.MapTab - wheel enabled? false
936 [Thread-3] INFO Main - hit the method that adds pnlTabs
999 [Thread-3] INFO Main - load accelerator done
10250 [AWT-EventQueue-0] INFO Main - Input file: D:\Program Files (x86)\Infogrames\Civilization III\Conquests\Scenarios\ELDO4fix9_sanscarte.biq
10250 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Number of available processors: 4; using 4 processors
10250 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - major ver: 12, minorVer: 8
10250 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - About to go into the various input processors; has been 8 milliseconds.
10452 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - At end of custom rules; time taken = 202 ms
10452 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - File length: 362907
10452 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - data inputted: 361983
10452 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - final input: 362907
10452 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Time to input BIQ: 210 milliseconds
10452 [AWT-EventQueue-0] INFO Main - Time to input file: 210 milliseconds.
10468 [AWT-EventQueue-0] INFO Main - civInstallDir: D:\Program Files (x86)\Infogrames\Civilization III
10484 [AWT-EventQueue-0] INFO Main - colors determined
10967 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - IO links sent
11061 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - custom player data sent
11061 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - data links sent to tabs
11061 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - crosstab links sent
21170 [AWT-EventQueue-0] INFO Main - Input file: D:\Program Files (x86)\Infogrames\Civilization III\Conquests\Scenarios\ELDO4_NDE.biq
21170 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Number of available processors: 4; using 4 processors
21170 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Detected compressed file
21310 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Number of available processors: 4; using 4 processors
21310 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - major ver: 12, minorVer: 8
21310 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - About to go into the various input processors; has been 1 milliseconds.
21419 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - At end of custom rules; time taken = 106 ms
21419 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - custom map
21419 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - It took 3 ms to add all the TILE objects
21435 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - It took 18 ms to run the 4 threads
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Time to process tile stuff: 22 milliseconds; total time: 132 ms
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - finished map data
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - File length: 997502
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - data inputted: 996070
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - final input: 997502
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Time to input BIQ: 141 milliseconds
21450 [AWT-EventQueue-0] INFO Main - Time to input file: 283 milliseconds.
40436 [AWT-EventQueue-0] ERROR Main - Error while saving file
java.lang.NullPointerException
at com.civfanatics.civ3.xplatformeditor.GAMETab.storeData(GAMETab.java:1872)
at com.civfanatics.civ3.xplatformeditor.GAMETab.updateTab(GAMETab.java:1477)
at com.civfanatics.civ3.xplatformeditor.EditorTabbedPane.updateAllTabs(EditorTabbedPane.java:442)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1351)
at com.civfanatics.civ3.xplatformeditor.Main.cmdSaveActionPerformed(Main.java:1296)
at com.civfanatics.civ3.xplatformeditor.Main.access$600(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$9.actionPerformed(Main.java:523)
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.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(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)
 
New bug report:
- I load a scenario without map: ELDO4fix9_sanscarte.biq,
- I import a map made on a previous version of same scenario: ELDO4_NDE.biq,
- I save the result on a new file, a null pointer exception is thrown:
Spoiler :
0 [main] INFO Main - Starting program - version 0.94
16 [main] WARN Settings - Missing value for key bmpDir in config file.
31 [main] INFO Main - i18n URL: D:\Program Files (x86)\QuintillusCiv3Editor\langs
484 [AWT-EventQueue-0] INFO Main - Running Windows 7 6.1 on x86
484 [AWT-EventQueue-0] INFO Main - Java vendor: Oracle Corporation
484 [AWT-EventQueue-0] INFO Main - Java runtime version: 1.8.0_31-b13
484 [AWT-EventQueue-0] INFO Main - Java runtime name: Java(TM) SE Runtime Environment
484 [AWT-EventQueue-0] INFO Main - Starting initialize method now
531 [AWT-EventQueue-0] INFO Main - Took this many ms to get window visible
843 [Thread-3] INFO com.civfanatics.civ3.xplatformeditor.MapTab - Weight of 0.24271844660194175 with 1030 pixels in width
858 [Thread-3] INFO com.civfanatics.civ3.xplatformeditor.MapTab - wheel enabled? false
936 [Thread-3] INFO Main - hit the method that adds pnlTabs
999 [Thread-3] INFO Main - load accelerator done
10250 [AWT-EventQueue-0] INFO Main - Input file: D:\Program Files (x86)\Infogrames\Civilization III\Conquests\Scenarios\ELDO4fix9_sanscarte.biq
10250 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Number of available processors: 4; using 4 processors
10250 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - major ver: 12, minorVer: 8
10250 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - About to go into the various input processors; has been 8 milliseconds.
10452 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - At end of custom rules; time taken = 202 ms
10452 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - File length: 362907
10452 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - data inputted: 361983
10452 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - final input: 362907
10452 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Time to input BIQ: 210 milliseconds
10452 [AWT-EventQueue-0] INFO Main - Time to input file: 210 milliseconds.
10468 [AWT-EventQueue-0] INFO Main - civInstallDir: D:\Program Files (x86)\Infogrames\Civilization III
10484 [AWT-EventQueue-0] INFO Main - colors determined
10967 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - IO links sent
11061 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - custom player data sent
11061 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - data links sent to tabs
11061 [AWT-EventQueue-0] INFO com.civfanatics.civ3.xplatformeditor.EditorTabbedPane - crosstab links sent
21170 [AWT-EventQueue-0] INFO Main - Input file: D:\Program Files (x86)\Infogrames\Civilization III\Conquests\Scenarios\ELDO4_NDE.biq
21170 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Number of available processors: 4; using 4 processors
21170 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Detected compressed file
21310 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Number of available processors: 4; using 4 processors
21310 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - major ver: 12, minorVer: 8
21310 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - About to go into the various input processors; has been 1 milliseconds.
21419 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - At end of custom rules; time taken = 106 ms
21419 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - custom map
21419 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - It took 3 ms to add all the TILE objects
21435 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - It took 18 ms to run the 4 threads
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Time to process tile stuff: 22 milliseconds; total time: 132 ms
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - finished map data
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - File length: 997502
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - data inputted: 996070
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - final input: 997502
21450 [AWT-EventQueue-0] INFO com.civfanatics.civ3.biqFile.IO - Time to input BIQ: 141 milliseconds
21450 [AWT-EventQueue-0] INFO Main - Time to input file: 283 milliseconds.
40436 [AWT-EventQueue-0] ERROR Main - Error while saving file
java.lang.NullPointerException
at com.civfanatics.civ3.xplatformeditor.GAMETab.storeData(GAMETab.java:1872)
at com.civfanatics.civ3.xplatformeditor.GAMETab.updateTab(GAMETab.java:1477)
at com.civfanatics.civ3.xplatformeditor.EditorTabbedPane.updateAllTabs(EditorTabbedPane.java:442)
at com.civfanatics.civ3.xplatformeditor.Main.saveFile(Main.java:1351)
at com.civfanatics.civ3.xplatformeditor.Main.cmdSaveActionPerformed(Main.java:1296)
at com.civfanatics.civ3.xplatformeditor.Main.access$600(Main.java:149)
at com.civfanatics.civ3.xplatformeditor.Main$9.actionPerformed(Main.java:523)
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.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(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)

I think I've identified what's going on - it's an issue with the Scenario Properties (aka GAME) tab not being updated when the new world characteristics - specifically, barbarian activity - is imported. I have a fix for it that appears to be working, and will likely upload it tomorrow (it is late here currently).
 
This is a small update that provides the following changes:

  • Fix to an issue when importing maps due to the Scenario Properties tab not being properly updated.
  • Allows you to change the Java look-and-feel, as well as font size. This in turn allows you to use DPI scaling, although it should be noted that the program was not designed to support this so it doesn't necessarily look super-pretty.

The second one can be changed under the Settings area. For changing the font size, you have options of size 14 and 16 in addition to the default of 12. This requires a restart.

You can also change the DPI settings - at least on Windows - which affects the size of things other than the font (except the map, which is still controlled by the zoom function). To do this, look for the new Look and Feel option in the Settings, and choose System (Nimbus is a third option that provides a different look, but only System allows DPI scaling on Windows). Then restart the editor. The UI should scale based on your current Windows DPI settings. A screenshot of the map tab with the font size at 14 and the scaling at 150% on Windows XP is below:



Unfortunately, most of the tabs were created without consideration for scaling settings, so on a lot of them the various UI elements overlap each other when scaling above 100% is used. They're generally usable up to 125-150%, but a lot of tabs look noticeably worse than the Map tab. Fixing this would require redoing those tabs, and while that's a long-term goal, it probably won't happen this year.

DPI scaling may work on Linux or OS/X, but that has not been tested. It should work, with the sometimes-significant display caveats, on Windows XP and later. You can disable DPI scaling in the editor by changing your Look and Feel to Metal (the default) or Nimbus.
 
Seven months ago or so, I posted the early part of the editor's history, through July 2011. Tonight, my plans to make progress on the editor were mostly unsuccessful due to distracts, so I decided to write up the second half of that instead.

The previous post went up through the last update before I started my first professional coding job. Though that part of 2011, updates were fairly frequent. What do you know, having a job doing coding during the day tends to reduce the amount of coding you do in the evening.

Spoiler Professional job -> Less Time for Freelance :
And so it was. Partially intentionally, partially by happenstance, I had my first (and so far, longest) break from CFC in fall 2011. It started in no small part due to not having Internet at home for a couple weeks. It continued on the theory that it would be beneficial to break from previous habits and adopt to the livelihoods of my new post-college environs. That theory proved ineffective; an absence from CFC did not lead to a multitude of real-life events.

Nevertheless, late 2011 had a flurry of updates. Many of these were fairly small improvements; the most noteworthy were allowing a custom number of flavors, a new capability, and explanatory tooltips in the BLDG tab, the first of several efforts that largely haven't gone beyond where they started.

2012 was a slow year. The pattern of working on the editor when not tired of programming during the day - which was rare - was clearly taking hold. Work itself was less than thrilling as well, which didn't increase incentives to program. Still, at least one feature - reverting input fields when invalid values such as "bob" were entered for numbers - was clearly influenced by the product I worked on during my job at the time. It was also at this time that the 0.80 landmark was passed. Like 0.90, this was primarily signifying built-up progress from 0.70, rather than a milestone feature.


Spoiler 2013 - More Time, More Progress :
2013 saw a bump in progress, as I was in between jobs during the first part of the year, and thus had some additional time to recover from burnout, and thereafter start work on the editor again. Two significant, challenging features were addressed then - the aforementioned zoom, and importing a map from BMP. Zoom was only solved after writing the algorithms out on paper, alongside hand-drawn isometric grids, as trying to do it without both the algorithms and maps visible at once was infeasible. Respect for software-rendered video games was significantly increased by that endeavour.

Importing a map from BMP had long been a goal, pretty much since I learned about BMP2BIC, and learned of its limitations, notably that the map had to be square (such as 160x160). I thought, wouldn't it be cool to import an earth map... but not be limited to square? The other noteworthy limitation was that the map had to be set to a BMP2BIC-defined 16-color palette to start with. I wanted more flexibility than that, so the palette could be any 16 colors, and eventually, slightly more. In the end, the algorithm essentially wound down to placing an isometric grid over the map, figuring out what the dominant terrain in each tile was based on the user-specified palette-to-Civ-tile mapping, and then resolving any conflicts caused by terrains that couldn't border each other in Civ3 (which was a noteworthy hurdle in itself). I still hope to release a new Civ3 Earth Map using the bitmap to BIQ functionality at some point; trials with the editor were promising, but it does require clean-up to become functional as a map, not to mention resource placement.

Late summer and fall 2013 also brought some interesting developments as I continued to made decent progress despite a new day gig. Deepwater Harbour support was added, as well as a civ-color-adjusting utlity to speed up that task. Again, these are features that I think could be well-used in a mod, which I haven't got around to making.

Another development that has only been somewhat pursued is support for non-English BIQs. While French, German, and so forth were always mostly supported, 2013 saw the addition of support for Russian BIQs, and 2014 for Chinese. An unfortunate aspect of Civ3 is that, since it doesn't support Unicode, it's not easy to create scenarios that support multiple languages, especially if one of them uses the western ANSI encoding and the other doesn't. Getting non-western languages to display correctly in the editor is actually pretty easy; getting them to display in-game when you have an English version is a bit more complicated, but doable (and at some point I plan to have a utility for that). The end goal was to make it so English users could at least play Russian and Chinese scenarios, and vice versa, but the feature was probably about a decade too late. In a way, that's kind of the story of this editor - if everything had been moved up 5 or 10 years, it could have proved useful to a lot more people, and probably would have resulted in more development of it.


Spoiler 2014 - Excessive Ambitions :
Progress in 2014 was stymied by an overly ambitious goal. That goal was to revamp the user interface to work better with various screen sizes. Back in 2010, when all I had was a 1280x800 monitor, the user interface looked pretty practical. But with a 1920x1200 monitor, the inability to use all the space was much more obvious. So, in essence, most of the changes throughout 2014 were an attempt to improve the core architecture of the editor, mostly in place since the student days of 2009, to match be much more in line with modern professional standards, and thus easier to change.

Alas, this had two major problems. One was that it was a major undertaking, since the editor was designed with no considerations of larger-scale software design principles. The other was that this was not exactly exciting work. The combination meant progress was slow. In retrospect, I'm split. On the one hand, it would be really nice to have a modern user interface to work with. Progress had already been slowing down due to the hassle of modifying the existing user interface. But on the other hand, more progress could have been made elsewhere had I not tried to update the architecture and user interface. Still, part of the reason I did it then was that many of the reasonably-realistic cool ideas had already been added.

In fall 2014 - shortly after the first post about the editor's history - I put those changes on hold. Since then, the editor has more or less been in maintenance mode - the primary non-bug-fix changes have been support for non-custom-rule BIQs (which would've been added years ago had I realized how straightforward it would be), a start on support non-English versions of the editors (stalled due to lack of translators), and a new menu interface. I still consider the editor an active project, but it's very much the case that progress is slow when I have a regular programming job, and the current time is no exception.


Spoiler Summary of Last 3-4 Years :
My interests have also shifted somewhat over the years. Perhaps as big of a factor in the decrease in the frequency of updates in 2011 as starting a job was my discovery of the Europa Universalis series. A cheap sale on EU2 was enough to convince me that I liked the series, and once I got EU3, it quickly shot above Civ in my most-played category. And even before that, I was spending more time on the editor than actually playing Civ3. I suspect many C&C members spend as much time modding as playing the game, but over the long term, I think it's important to play the game regularly to maintain interest as well. The past couple months, I have actually played more Civ3 than I've spent on the editor, at long last.


Spoiler Thoughts for Others Thinking of Doing This :

So, in retrospect, would I recommend someone embark on a similar endeavour? Possibly. As a student, it was a great way to get to experience a larger codebase, and after being in the industry a few years, it has become a good way to be reminded of how much I've learned over the years, as well as a first-hand reminder of the reasons that good software practices are, in fact, good. As a professional, it's a trickier question. Progress could be quicker - Steph made amazing progress in a short time considering he had a day job, and JimmyH made just as spectacular of progress on his IndieCiv before it was sidelined. But ultimately, it's harder to keep things going if you already have a job. Working on something related to your favorite game is great, but it's not something you can keep up consistently for years when you've already got a job.

On the upside of the professional angle, the editor did give me a good answer for the "what have you been doing to keep your skills up?" question a couple years ago. I don't think it ultimately was what made the deal, but it was certainly better than "nothing".

I did learn a lot more about how Civ worked in the process, but if anything it actually decreased the amount of time I played Civ. So, if your goal is to play your favorite game, you probably shouldn't make utilities for it. If your goal is to mod your favorite game, possibly - it might help you make the mod you want. It probably won't increase your personal playtime, though.

Provided your skills and your favorite game align in time a bit better than in my case, I'd also recommend creating utilities closer to release, when the fan base is larger. It really is true that positive feedback is a motivator for continued progress, and that's much easier to come by when there are 10 or 100 times as many people actively involved in the scene. You can have a notable impact with even a 20-year-old game - you'll just have to have more moderate expectations of how many people will find it interesting.


Spoiler Future Direction :

So where does that leave us now? Well, the Civ3 editor is still my main side project. I've dabbled with image-editing programs, a branch from the editor's PCX support, but that's generally less captivating.

And I still have some ideas for Civ3. But there are a few hazards. One, is the diversified interests, and not just among games. Spending several hours on outdoors activities yesterday meant several fewer hours I could have spent on the editor - but it's also more healthy, and as enjoyable. Second, most of the ideas I have are rather pie-in-the-sky at this point. And third, much as we might try to deny it, the Civ3 audience has generally been declining. Not necessarily constantly, and there are still new players, but I have no doubt that had I started this project in spring 2004 instead of spring 2009, it would have proven much more useful. This isn't to say there's no point now - darkpanda's JCivEditor project in the Civ1 forums proves that - but it's fighting for the Friday night time slot rather than Tuesday prime time at this point.

As such, I'm also thinking the time may be write to focus more on the non-editor tasks for awhile. Some of you have probably already noticed that - I've gone back to the Civ3 Stories and Tales subforums after my last major effort there was sidelined not all that long after this project started, to finish it. It's one of those things that I never consciously quit, never entirely forgot, and thus would like to finish at some point.

The other non-editor task I'd like to undertake is making a map, and perhaps expanding it into a mod. One of the editor's features that hasn't been exploited yet is the ability to exceed 362 tiles in one dimension. I think the time is good to try a 420-pixel-wide Earth map via the editor, and doing so would both produce a new map, and help me identify features of the editor that could use more work.

As for the editor itself? There's a few features, some extra-editorial, that I'd like to add:

- The ability to easily switch your Civ3 language. Does a Russian scenario about the Great Patriotic War sound interesting? There's one out there, it's just not possible to play with default if you don't have the Russian version.
- The ability to change the rules of a scenario mid-game, in an event system of sorts. While I have a very basic prototype up for that, it's sort of the Holy Grail, and one of the reasons for that is it's by no means easy. I haven't dove into it largely because it's the sort of situation where (1) it would be easy to have subtle, game-crashing bugs, and (2) the logic for adding a convincing event system could quickly become very complex, on top of the complexity of the event-applying system in the first place. It's the sort of thing where if I had two months to work on nothing but it, it would be exciting to work on and I suspect I may be able to make something fairly interesting, but with a day job, it's a lot less feasible to make enough progress on it to keep it interesting, and fresh in the mind.
- I'd still like to update it with a snazzy new UI, that scales to all resolutions, and perhaps even an updated map that would use GPUs instead of CPUs for the graphics (and possibly also have animated FLC support). It would be yet another area where the editor could teach me a new technological skill, even if I rarely get to apply most of them in my actual job.
- Perhaps the most far-out, I'm curious what it would be like to play around with building an AI system within the rules of the game. An events system would be great, but the Civ3 AI wouldn't be able to understand any objectives within it. But this is another area where the available time really doesn't permit an effort at it. If it did, though, wouldn't it be great to have a community-built AI? With all that's been accomplished around mods so far, I can't help but think that if the community had been able to modify the AI since 2003, we'd have a much stronger, more realistic one than we do currently. Alas, this would also require the architectural and UI changes discussed before to be realistic within the framework of the editor, and thus is more of a far shot than it would already be.

So, I would continue to expect intermittent updates. But the bulk of my Civ3 activity in the near future, which is itself much reduced from a decade ago, will likely be on my story, and continuing PinkTilapia's RFRE scenario. If I ever decide to hang up the modding hat for good, there will be an announcement here. The time hasn't come yet, though.

The other aspect that bears mentioning is the community project on Steph's Redmine page. In terms of organization, it's probably the community-Civ project with the most potential yet, and it could solve many of the tougher, more interesting ideas I have for the editor. The challenge is getting the ball rolling, but if it does, I could see that taking priority over the editor for me as the best long-term option for the Civ3 community.

Yet who knows? The next time I switch jobs, I plan to take a few weeks to a couple months off between jobs. In part to travel. But maybe that would also be a good time to look into one of the more ambitious Civ ideas I have at a more serious level.


For those curious about future plans, see the last spoiler. I'm afraid it became a bit longer than I planned, but that also means it contains more ideas, so it's not all lost.
 
I can't edit the map of a scenario, even though I was able to do it before. :confused:
 
When I first start up the editor it tells me that I need to select the directory where the Civ 3 game is, but doesn't give me an option to select the directory. I've attached a screenshot of the prompt. When I hit "OK" it just doesn't launch anything.

Please help.
 

Attachments

  • Screen Shot 2015-05-21 at 11.59.27 .png
    Screen Shot 2015-05-21 at 11.59.27 .png
    40.2 KB · Views: 144
I can't edit the map of a scenario, even though I was able to do it before. :confused:

Unfortunately, that doesn't provide enough detail for me to do any analysis. I have found an issue with creating new maps, which may or may not be related, but I can't really say without details such as whether this was a new map, or a particular scenario, etc.

When I first start up the editor it tells me that I need to select the directory where the Civ 3 game is, but doesn't give me an option to select the directory. I've attached a screenshot of the prompt. When I hit "OK" it just doesn't launch anything.

Please help.

It is possible to set this manually so the editor doesn't have to ask where Civ is installed. In the same folder as the editor, look for a civ3editor.ini file. If it doesn't exist, create one in your favorite text editor. Then, add these two lines, modified as described below:

openDir=D:\Civilization III\Conquests\Scenarios
civInstallDir=D:\Civilization III

civInstallDir is where you have Civ3 Complete installed. openDir is the folder that opens when you click Open, and you usually want that to be where you save most of your BIQ files.

Save the files with those modifications, and the editor should load up without asking where Civ3 is installed first.

For informational purposes, do you happen to be running Yosemite? It looks like it based on the screenshot. As far as I know it should work on Yosemite, but I don't have an Intel Mac, and I don't know how many people have tried the editor on Yosemite - no one has posted in the thread about it either way. This does mean that it would be difficult for me to debug any issues that exist, but they could at least be documented.

Has anyone else tried the editor on Yosemite?

----------------------

Also, a general update...

The next version is going to introduce painting more than one tile at a time. This will function similarly to how it does in Firaxis's editor - select a terrain, select a brush size (the default will remain 1), and paint. I'm not sure yet when it will come out, but multi-tile painting will definitely be part of it.

After that, I probably will look at using more modern versions of Java. This would let me use more modern, programming-time-efficient operations, would allow for a gradually-updated more modern interface, and as a side benefit would renew the benefit the project has on my career experience. Essentially, it would make development easier and quicker. After the update, the requirements would likely be:

  • Windows XP or newer
  • OS X 10.8 (Mountain Lion) or newer
  • Some somewhat-newer version of Linux than was previously supported or newer

Although there's a chance that at first I might go with a version that would also support OS X 10.7 (Lion) - probably not, though.

The next version would still be available indefinitely for those running Windows 98, 2000, or ME, or OS X 10.4 through 10.6/10.7. It might even still get occasional updates from shared code, but would not get most new features. If you are still running one of these versions and there's a killer feature you really want, you should mention it now so there's a better chance I'll add it to a version that you can run. I suspect that after I've been using the newer version for a month or two, I won't want to go back - there are a lot of nice new features since 2004.
 
Version 0.96 is now available. There are a few different changes in this version, but the big one is the ability to paint terrain in brush sizes of 3, 5, and 7 tile diameters, as well as 1 tile.

The full set of changes are:

  • You can now edit tiles with a diameter of 3, 5, and 7 tiles. There are buttons on the map tab for this, and the 1, 3, 5, and 7 keys also set the diameter when you are on the map tab.
  • A few improvements to the Import Map (from BIQ) functionality. In particular, you no longer have to restart the editor to start editing the new map, and it will now automatically align resources between the two BIQs based on their names (though it doesn't do so for units, civs, etc. - it's still recommended to stick to fairly plain maps when using it).
  • You can now run the editor on a computer that doesn't have Civ3 installed - the graphics no longer have to be present. You must turn "Map enabled" off in the Editor Settings to do this. Some operations, such as enabling custom rules, do still require Civ3 to be present.
  • You can now create a completely new BIQ file. This does require Civ3 to be installed.
  • Improvements to the Map menu.
  • More intelligent defaults for the custom map creation dialog.
  • A fix to updating the terrain images when painting at the edge of the map. In some previous versions (dating to about a year ago), the image chosen might not be correct at the world's end.
  • Fix an error that could prevent saving a scenario where custom maps had been enabled for the first time.
  • Pressing Enter now acts as OK on the terrain-select dialog.
  • The icon now has higher resolution, and thus looks a bit nicer.

As always, input on what changes are in demand are welcome. I know the larger brushes one in particular has been mentioned previously in the thread.

Import Map in particular might get a few more changes if it's in demand, such as optionally auto-adding resources that aren't present in the BIQ already. Considering it's been present since the 0.50 days and hadn't really been updated since 2010, though, I reckon it probably isn't super-popular. But if I'm wrong about that, let me know!

You can see a screenshot of editing a large swath of land at once below:

 
Hello Quintillus,

Great editor, very much appreciated.It helped me solve a few problems I was going through with scenario building.

However, one problem remains. Is it possible, using your editor, to reorganize the order in which city buildings appear? After adding some new buildings, I'm looking for a way to make them fit in alphabetical order with the rest, instead of them being stuck in the bottom of the BLDG list.

Thanks in advance,
Bad
 
It isn't possible to rearrange the order of buildings currently. I believe Steph's editor does support that, however.
 
IIRC Steph's editor allows the user to sort the buildings by name/type/etc only in the editor itself, to make it convenient to the user, but it doesn't modify the way they appear in game. If no one actually noticed it before it might be because people don't care that much about it, they just want to know what they can actually build in a city, whatever the order :)
 
Top Bottom