Cross-Platform Civ3 Editor

Cross-Platform Editor for Conquests now available! 1.51

I was able to reproduce the blank dropdown issue. It's sort of funky - if I mouse down over the dropdown, it will populate the data, and if move the mouse back up, they disappear. And sometimes it's vice versa - up will populate, down will make them disappear. At any rate, I was able to reproduce it that way.
What a relief. Started to think maybe I was crazy or had a unique problem. Your description is precisely the same as what has been happening.


I'd recommend updating to the Oracle one if have the older Apple one, not just because it fixes that bug, but both because the next version will need the new Oracle version for all its features, and because the new version will have a number of security updates, which will be beneficial if the Java web browser plugins are enabled (although you can disable the browser plugins completely and not lose any functionality with the editor, since it's a desktop Java application and not a browser-based one).
Checked the log & it's the Sun version of Java alright. I'm hesitant to "update" Java just for the sake of the editor - the risk (however slight) that something else will cease functioning properly.

EDIT:
Read the article at Apple & info at Java site. Took the plunge. After using Java/Oracle's installer downloaded from their website to update Java and restarting the computer ....

SJamaM.jpg


A2gTeh.jpg


and the log after the new version of Java (from the Java site, not Apple) is installed:

4280 [AWT-EventQueue-0] INFO Main - Running Mac OS X 10.9.5 on x86_64
4281 [AWT-EventQueue-0] INFO Main - Java vendor: Sun Microsystems Inc.
4281 [AWT-EventQueue-0] INFO Main - Java runtime version: 1.6.0_65-b14-462-11M4609
4281 [AWT-EventQueue-0] INFO Main - Java runtime name: Java(TM) SE Runtime Environment

no change to effect :( Blanks as mousepointer runs up & down list.
 
Upon starting some practical work ....

The disappearing drop-down is not just in the open/save dialogue. In the map menu the whole box disappears as the pointer is moved up & down.

4plC95.jpg


The terrain shows pcx's I have swapped for the standard terrain in the Conquests base folder. The biq used in the image is the "Three Sisters" Firaxis scenario - unmodified. In other words, it shouldn't have any cause other than the one we've been discussing.
 
It looks like the newer Oracle Java installed successfully, but it left the old Apple Java installed (which in itself it okay), and also left the old Apple Java as the default (which is surprising). The log information shows that it's still running on the old Apple 1.6 version. I'll look up information on how to switch the default and/or uninstall the Apple version - I'll be needing to do that myself in my test environment anyway.

I've started work on changing to the FileDialog that doesn't have issues on OS X Mavericks. I'll also take a look at the map issue - I'm aware that occasionally menus are open long enough that the every-5-seconds redraw on the map kicks in, and it should really check if a menu is open first, but mousing over the menu itself shouldn't cause the map to automatically draw. I think the check-for-menu option should be enough to fix that, but will test that.

I don't think the PCX swap should be related, either. As I understand it, you've replaced the Firaxis ones in the Civ3 install folder with these, so they affect all scenarios - this should work just fine.
 
It looks like the newer Oracle Java installed successfully, but it left the old Apple Java installed (which in itself it okay), and also left the old Apple Java as the default (which is surprising).
Surprising indeed! Since the whole process, from checking the version online thru the actual installation, was just following their lead, doesn't make sense that an update/upgrade would leave the old version in place.

I'll also take a look at the map issue - I'm aware that occasionally menus are open long enough that the every-5-seconds redraw on the map kicks in, and it should really check if a menu is open first, but mousing over the menu itself shouldn't cause the map to automatically draw.
From my persepctive it looks like the identical thing is happening as in the openfile dialogue, except that what is behind the menu is the map rather than a white (blank) window.

As I understand it, you've replaced the Firaxis ones in the Civ3 install folder with these, so they affect all scenarios - this should work just fine.
Agreed, I just brought it up to make clear that it was a completely standard scenario/biq - nothing peculiar for the editor to deal with.

If you can think of any other tests to run, I've got plenty of free time for the next couple of weeks. iirc I've got the identical version of OSX on my macbook pro. Maybe the hardware is different enough (2009 vs. 2012, different gpu, etc.) it would be worth installing the editor & seeing if there's a difference in behavior?
 
If you can think of any other tests to run, I've got plenty of free time for the next couple of weeks. iirc I've got the identical version of OSX on my macbook pro. Maybe the hardware is different enough (2009 vs. 2012, different gpu, etc.) it would be worth installing the editor & seeing if there's a difference in behavior?

I'll let you know... 0.99 will probably be coming out soon, and will have some new features (and some fixes) to test.

Unfortunately it may be delayed by a few days, as I've been running into increasingly frequent crashes on my desktop that I believe are due to a hardware issue. So, I wound up eliminating a couple potential causes of that tonight rather than working on the editor. The good news is my hard drives appear to be working well, and even if one of them did stop working, I have adequate backups, particularly for the editor. But it's somewhat more difficult to work on the editor when my preferred machine to do so with is rebooting at random :(.

I do have a mobile workstation that I've been using to work on the editor at times as well, so I can continue to make progress even if the crashes increase in frequency, but fixing the desktop's issues are a fairly high priority. I just hope to avoid this scenario:

success.png


I suppose cross-testing with Oracle Java 8 on the other machine may be beneficial. I'll do some testing with setting the default version in my OS X install (probably via the first answer in this thread; alas I'm not sure if there's a graphics-based way to do that in OS X as there is for the equivalent on Windows). Hopefully it won't crash while I'm testing...

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

Edit

Did some testing (with no crashes!), and:

Surprising indeed! Since the whole process, from checking the version online thru the actual installation, was just following their lead, doesn't make sense that an update/upgrade would leave the old version in place.

What I observed this time, paying close attention to this, was that when I booted with Apple Java, installed Oracle Java, and then launched the editor, it still used Apple Java (although if I checked the version of Java at the command line, it would be using Oracle Java). However, after I rebooted OS X, and then launched the editor, it was using Oracle Java. So it looks like for programs started from the Finder, the version of Java used does not change until a reboot. This would be a very useful thing to test; if the editor picks up the new version (and ideally no longer has the blank menu issue) after a reboot, then we know that a reboot should be done after installing the newer version of Java on OS X.

It's still a bit surprising, since the installer didn't mention needing to reboot that I recall, but if it works it's a relatively easy fix.
 
Title of the classic tome on software engineering says it all: Nailing Jelly to a Tree

I'd say you've at least managed to avoid these:

The classic list

Phase 1: Uncritical acceptance.
Phase 2: Wild enthusiasm.
Phase 3: Dejected disillusionment.
Phase 4: Total confusion.
Phase 5: Search for the guilty.
Phase 6: Punishment of the innocent.
Phase 7: Promotion of nonparticipants.

Then there's this project phases cartoon
 
Title of the classic tome on software engineering says it all: Nailing Jelly to a Tree

I'd say you've at least managed to avoid these:

The classic list

Phase 1: Uncritical acceptance.
Phase 2: Wild enthusiasm.
Phase 3: Dejected disillusionment.
Phase 4: Total confusion.
Phase 5: Search for the guilty.
Phase 6: Punishment of the innocent.
Phase 7: Promotion of nonparticipants.

Then there's this project phases cartoon

That cartoon is hilarious. But alas, I have not actually heard of that book. Perhaps the most well-known software engineering book in my studies was The Mythical Man Month. But, no matter. I'll need a new book to read soon anyways, and used copies are available inexpensively... so in a month or two I'll probably be more acquainted with it.
 
Version 0.99 is now available! This change brings a number of changes, both new features and fixes. These are as follows:

  • You are now able to download units directly from the CFC Downloads Database into your scenario (beta, "the CFC Workshop").
  • The System theme will now use the system-default font color for all UI font elements, rather than black. In particular, this allows high-contrast themes with a black background to work as expected.
  • The scroll bars on the Map tab will now reliably be set properly after changing the zoom.
  • The import from BIQ color-to-terrain-matching screen now displays a scroll bar so.
  • You can now import unit statistics from a CSV file.
  • On Intel Macs, use a system-native file open/save dialog instead of the previous Java file dialog.
  • You can now use shortcuts such as Ctrl+S to save in the menu, and Alt+F to open the File menu, etc.
  • Fixed a bug that prevented adding units when a BIQ did not have custom player data.
  • More intelligent default values when adding units, particularly in the Standard Orders, Special Orders, and Available To categories.
  • The editor now remembers what its size was when you closed it most recently, and opens at that size.
  • When exporting to CSV files, tech prerequisites are now correct if there is more than one prerequisite (the first one is not repeated).
  • The CSV export dialog now will only show CSV files, and also appends .csv if it is not specified.
  • The Attack value on the CSV export pane now has the correct label by default.

As you can see, there are quite a few changes since the last update. Several of these are covered in more detail below.

The CFC Workshop, as it's tentatively called, is the key new feature of this update. It should be noted that it is still in beta, and in particular, it has not been extensively tested, particularly on platforms other than Windows, and still has some known limitations, which will be described in a near-future post. In concept, however, the idea is integrating the editor with the CFC Downloads Database, so you can navigate to the Downloads Database from within the editor, download a unit, and have it automatically added to your scenario (including being placed in an appropriate scenario search folder and having a new unit added on the Unit tab). In the long-term, I'd like to expand this to other parts of the Downloads Database as well, but units seemed like a good place to start.

The System theme fix should enable high-contrast themes to work well. It should be noted that I'm still exploring options for high-contrast themes in the new Unit Downloads area (which uses newer Java technology), but all parts of the editor that existed as of 0.98 should work with dark-background high contrast themes well. Meanwhile, the new Unit Downloads area is the first part of the editor to truly scale with UI scaling (both for high-contrast themes and high DPI displays), although it does not yet have a dark theme option.

The CSV export functionality has been rounded out with allowing importing back in from a CSV file as well. When you are importing back from a CSV file, the names of the columns of your importing CSV worksheet should match the names shown in the Import from CSV dialog in the editor. For example, the editor will import attack values from the column entitled "Attack"; a column named "Old Attack Value" will be ignored (and can be used so you can have both old and new CSV values in your spreadsheet). The editor will match up units based on their name.

The file dialog is also switched on Intel Macs, to alleviate the issue with the Apple Java runtime where drop-downs in the save/open dialog were occasionally blank. A native OS X file dialog is now used instead. All other systems (including PowerPC Macs) still use the previous file dialog; in the case of Windows and Solaris in particular, there would have been functionality-related downsides to switching to a native file dialog.

The menus now support keyboard navigation via Alt+(shortcut), and several commands now support shortcuts, such that there are now more shortcuts with menus enabled than when disbled.

And I think that covers the main changes that aren't fairly-straightforward fixes!

It is also worth noting that the minimum system requirements have changed. Java 8 is now required for the latest version. You can find links to download Java 8 in the first post. Systems that are supported on Java 8 are:

  • Windows XP or later (both 32 and 64 bit)
  • OS X 10.8 and later
  • Recent versions of Linux (exact version undetermined)

Even if you have one of these operating systems, you may have an older version of Java that needs to be updated (Java 8 was released in the spring of 2014). If you receive an error when starting the editor, try updating to the most recent version of Java available for your operating system.

Version 0.98 will remain available for earlier operating systems, particularly:

  • Windows 98, ME, and 2000
  • OS X 10.4 through 10.7 (PowerPC and Intel)

In addition, I plan to release "legacy" versions of 0.99 and possibly later versions that will include updates that don't depend on newer versions of Java. For this version, the main version that will not be in the "legacy" version is the CFC Workshop, as it requires a recent version of Java in order to display the CivFanatics website. This version can be expected within the next few weeks, and thereafter, legacy versions will be released depending on demand and the ease of creating legacy versions in addition to the new standard versions.
 
This post explains the CFC Workshop, what it is, and how to set it up.

Conceptually, the CFC Workshop is inspired by the ease of use of the Steam Workshop, in allowing users to integrate the creations of others into their scenarios or games quickly and easily. For those who are unfamiliar, the key feature of the Steam Workshop is that, for example, you can browse user-created content such as maps, view ratings and author-created descriptions, and by clicking a single button, add them to your game so you can play that map. As I understand it, similar options are available for certain games for modding scenarios as well - you can browse various user-created assets and easily add them to your mod. The CFC Workshop aims to bring the same to Civ3, by leveraging the strength of the existing Downloads Database, which is actually a fairly good precursor to the Steam Workshop, albeit less integrated with the Civ games.

So, the idea is that you can browse the CFC Downloads Database from within the editor, and simply by clicking the Download link for a unit (and eventually more types of content), and specifying a name, add that unit to your scenario. This saves a few steps of downloading it to a folder in your browser, unzipping it, and placing it in the correct folder within your scenario search path. The editor now handles that, and adds it to the art\Units\[name you specify] folder within the first folder on the scenario search path, as well as adding a unit to your BIQ file.

You can launch the CFC Workshop from the Units tab, clicking on the new Unit Downloads button on the Unit tab:

UnitDownloadsButton.png~original


This displays a new window with a description, and a decompression command. It is highly recommended that you do not change this at the current time. The next step is to click the Browse for Units button, which brings up a browser window which defaults to the Civ3 section of the Downloads Database. From here, navigate as you usually would to a unit you'd like to add to the scenario. There are a couple caveats to keep in mind with this initial release:

  • Only single units, not unit packs, are currently supported. While I do plan to add support for unit packs in the future, I decided to release version 0.99 as it is now in order to let the current features be used and not delay them further.
  • Some units that were uploaded a very long time ago may not work, as some of them do not specify a default file name.
  • Only units that are hosted on CivFanatics will work. For units, this is happily the vast majority of them; this is also part of the reason units were the first section added.

Once you've found a unit, click one of the Download links for it (they all work):

Download%20Buttons.png~original


You'll now get a download window with a progress indicator for the download, which has been tested with as low as 28 Kbps download speeds. You can enter a new name (if the download finishes before you start typing, the default name will be entered), and click Add to Scenario when you've entered the name. At this point, the unit will be added to the BIQ (on the Units tab), and the unit will be copied to the appropriate folder in your art/Units directory, including renaming the .ini file as appropriate. You can then close the Add Unit to Scenario window, and continue to either add more units, or modify the stats for your newly-downloaded unit.

Additional Requirements

For decompression, the editor currently relies on 7zip (http://www.7-zip.org/). 7zip was chosen as the first decompression utility to be supported due to its support for a wide range of formats including the three most common in the Downloads database (.zip, .rar, and .7z), as well as being available cross-platform. Directions for configuring it so the editor can see it follow, depending on your operating system.

Linux

On many common Linux systems (particularly Ubuntu and Mint), 7zip will be available by default. You can test this by typing the following in a console window:

Code:
7z

If 7z is not recognized as a command, you'll need to install it manually, which may vary by distribution; however for many common Linux distributions, it is included by default.

Windows

For Windows, download and install either the 32-bit or 64-bit version, as appropriate for your version of Windows, from the 7zip website. You'll then need to make it accessible from the command line. You can do this with the following method:

1. Right-click on My Computer or Computer (teminology depends on your version of Windows) and click Properties.

7zipCommandLine1.png~original


2. Now, click on Advanced, and then Environment Variables.

7zipCommandLine2.png~original


3. Finally, under either User Variables or System Variables (the latter is pictured), find the Variable named Path, and double-click on it. In the window that comes up, click in Variable value, press the End key to go to the end (or hold down the right arrow key until you reach the end), add a semicolon (;), and then add the folder where you installed 7zip to. In the above screenshot, I've installed it to the default C:\Program Files\7-Zip folder.

7Zip%20Command%20Line%203.png~original


OK out of these dialogs, start the editor, and it should be able to find 7zip.

I realize this is not the most straightforward procedure at this point; the editor may include the ability to automatically download 7zip in the future, but that would have delayed the release even further at this point.

OS X

The most straightforward way I've found to add 7zip in OS X is via Homebrew (http://brew.sh/). You can install Homebrew by entering this command in a Terminal window:

Code:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Then, you can enter the following commands in the Terminal window:

Code:
brew update
brew install p7zip

At this point you can start the editor and it should be able to use 7zip.

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

It should also be noted that the Downloads Database has not been thoroughly tested on Linux or OS X, and may not work on those systems quite yet. This was in part due to time constraints, but also related to not having a recent enough Mac to test this functionality on. In particular, mysterious errors where the file does not show up in the art/Units folder as expected on Linux have been observed; this may or may not also happen on OS X.

Future updates related to decompression will likely include the option to test the decompression within the editor, and possibly also downloading it from within the editor and using other decompression programs. Due to a desire to release this version before my availability to work on it decreased later this month, these have not been added yet.

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

Finally, the CFC Workshop is the vanguard of what I hope to be the next stage in the editor's development. Stage 1 consisted of bringing functionality up to par for Conquests between operating systems (which is nearly, though not quite, complete), as well as making it possible to explore what happens when you add values that the Firaxis editor forbids, but are not inherently nonsensical (such as giving a building negative maintenance costs - or in other words, making it produce a fixed amount of gold per turn). This is increasingly reaching the point of being wrapped up.

With the next stage, I hope to focus on making it easier to mod Civ3 in general, as well as better integrating the existing community resources, particularly on CivFanatics. While a few features have already made modding a bit easier, such as adding maps via BMPs making it quicker to get a map set up, that hadn't been a focus in the past, and the editor's functionality had largely mirrored what was available in Firaxis's editor, with a few changes here and there. To a certain extent, this similarity is necessary due to the underlaying game being the same, but going forward I want to focus more on thinking about what might be done better in a Civ3 editor than it traditionally has been in the past, as well as better leveraging the fantastic resources on CivFanatics.

I decided to start with this functionality because it is a very common addition to scenarios, because it may not be obvious to a newcomer how to add a unit outside of the BIQ, and it still takes additional time even if you know how to do it, and because it's an area where CFC can clearly make the editor more valuable.
 
And lastly, a couple potential questions-and-answers, and thoughts:

Will the next version of the editor be 1.00?

Maybe, but probably not. I'd like 1.00 to be essentially feature-equal to the Firaxis editor, and there is at least one notable feature (custom names per-unit) that is not currently available. I don't know if I'll add that next, since there are other things I'd like to add as well. There may be a 0.991, 0.99 Second Edition, or something similar in the interim. Eventually, however, there will be a 1.00, and then 1.01, etc. I don't plan for 1.00 to be the final update, but rather signifying that the editor is comparable to the Firaxis editor in functionality.

I use OS X 10.7/Windows 2000 and really want feature x, but can't upgrade!

Make a note of it! Multiple features of this update were in response to user feedback in the past couple months. While I can't guarantee that any particular feature can be included for older operating systems (or indeed, at all), it's more likely to if I know someone wants it and will use it there.

I thought you mentioned something about an updated help system in post #598

Indeed I did, but alas, that did not wind up being done in time for this version, and I knew there were already some people waiting for specific features. Nevertheless, I do want to update the Help system so it can be more useful, and this is one of the reasons there may be a 0.99 Second Edition or similar. For now, you can still press F1 to view the old in-editor help.

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

I'm also happy to report that my computer lasted long enough to get this update out today! Only five blue screens of death due to hardware issues! :eek: So I went out and bought a new processor and motherboard this evening, and plan to rebuild the computer later this week. Hopefully with that upgrade, it will be stable for another four years.
 
my English is very bad

Differnt AI starts with various difficultive levels
For example : Rome starts warlord, Egypt starts Emperor, America starts Demigod

Is this possible?
I imagine this is in hard-coded territory, but if anyone knows you're likely to be the one, Quintillus.
 
POSSIBLE BUG REPORT - V0.99 - IMPORT from CSV

Delighted to see the new version of the editor (0.99, December 13, 2015) is available with the ability to import from CSV.

Downloaded a copy to use it, but when I attempt to use that "Import from CSV" tab (on the Options drop-down) the editor just jumps to the "Export to CSV" screen, allowing one to just export another copy of the Scenario data to a CSV rather than an "import from screen" with the ability to import from a CSV. Upper case "I" has the same effect.

Not sure if I am doing it wrong or if there is a coding error somewhere.
I am using the latest version of Java.

However I can confirm that the tech export to CSV now works fine.
 
Quintillus, is it possible to import straight black and white maps into your editor, or do I first have to do some basic terrain coloring?
 
Quintillus, is it possible to import straight black and white maps into your editor, or do I first have to do some basic terrain coloring?
Color = Terrain. As long as it's an indexed image in bmp file format the editor will accept then ask you what terrains to assign to specific colors. Shades of gray count as colors. But ... if it's a strictly black & white image (2 colors) you'll only have 2 terrains.
 
This looks to be quite an amazing step forward! We are all very grateful for your hard work!


Thank you!

I imagine this is in hard-coded territory, but if anyone knows you're likely to be the one, Quintillus.

I've never personally tested this, so I can't say with any particular certainty.

POSSIBLE BUG REPORT - V0.99 - IMPORT from CSV

Delighted to see the new version of the editor (0.99, December 13, 2015) is available with the ability to import from CSV.

Downloaded a copy to use it, but when I attempt to use that "Import from CSV" tab (on the Options drop-down) the editor just jumps to the "Export to CSV" screen, allowing one to just export another copy of the Scenario data to a CSV rather than an "import from screen" with the ability to import from a CSV. Upper case "I" has the same effect.

Not sure if I am doing it wrong or if there is a coding error somewhere.
I am using the latest version of Java.

However I can confirm that the tech export to CSV now works fine.

See also your PM - you are correct that this didn't work as expected in 0.99. I'll be releasing an update shortly that addresses this.

Quintillus, is it possible to import straight black and white maps into your editor, or do I first have to do some basic terrain coloring?

Color = Terrain. As long as it's an indexed image in bmp file format the editor will accept then ask you what terrains to assign to specific colors. Shades of gray count as colors. But ... if it's a strictly black & white image (2 colors) you'll only have 2 terrains.

Blue Monkey is correct - you would only have two terrains if it's strictly black and white. If what you are aiming for is a land outline (white is water, black is land, or vice versa), then this would work to get the water outline in place and one terrain on the land.

It really depends on whether you'd prefer to do some terrain coloring in the image editor and have it be imported with more variety, or if you'd prefer to have a basic land outline and edit the terrain in more detail in the editor, as to which course of action is advisable. At this point I don't have any general recommendation, if your source image is black-and-white.
 
Version 0.991 includes one fix, and one change to the Help feature. You can download it from the usual place.

Changes:

  • The Import from CSV feature will now work as expected.
  • The Help system will now load the online help when an Internet connection is available. If you are offline, the existing offline help will be loaded instead.

The first change fixes an issue caused by changes not being merged in properly. The Import from CSV option in the menu should now open the Import from CSV menu instead of Export to CSV.

The second change is the change I mentioned in post #598. When you have an Internet connection, the online Help will be used instead. Currently, this is the same as the offline Help, but I plan to enhance it, including having images, as well as links to high-quality CFC posts (and occasionally non-CFC posts) that explain particular topics. This change allows both the Help to updated independently from editor updates, as well as adding in the ability to display images and other more advanced (post-1996-ish) HTML features in Help in the first place.
 
Thank you, I was thinking of a map with black outlines, so I would need first to give in a basic color scheme before importing it. So Blue for the water, and various colors for the land.
 
The maths is slightly more complicated, but a workable rule of thumb is to keep in mind that a "tile's-worth" of image is about 64x32 pixels minimum. I use the pencil tool set at 20 pixels. In my experience a single dot of that size may still disappear during the conversion. Paint with a broad brush.
 
Back
Top Bottom