JCivED - a toolbox for Civilization

The program looks impressive from what i can see from the screenshots.
I'm gonna try it out later and have some fun :D


Edit:
Ok so i tested it and i'm still impressed :D
Very easy to handle so many options.

Quick question:
Can you move the special terrain (like gold,coal,fish and such)?

I remember when using Dack's Editor that those couldn't be moved.....

wasn't an issue tho....I'm asking just out of curiosity :D
 
Quick question:
Can you move the special terrain (like gold,coal,fish and such)?

I remember when using Dack's Editor that those couldn't be moved.....

wasn't an issue tho....I'm asking just out of curiosity :D

Sadly you can't: the location of special terrain squares is dictated by an algorihtm, coded in a function of CIV which is systemtically called when it needs to know if a square has special terrain... So the only way to tweak with special terrain position is to hack that function in CIV.EXE directly.

The good news is that this is precisely what was done as part of the experiment/proof of concept put forward in this thread with overwhelming details: Civ1 Advanced hacking: special resource and hut patterns
The outcome of that thread is a patch provided in JCivED, but note that you still can't control the positions yourself, the patch will simply make the pattern much more "natural" random.

I have some ideas to make such control possible, but I am not planning to work on it in the near future, though.

Anyhow, thanks for the enthusiasm :)
 
Looks like you put a lot of effort into this program.
Much appreciated!!:goodjob:

I started a new game and edited the map slightly.
Like changing starting positions which caused some issues at the start...but everything workd fine after editing the values in "show layer".

Now i just need to watch out that i'm not getting overrun by Ghandi....
sigh..aggressive guy that is...started an invasion on me -.-
 
Hi, new here.

Looks like a great program you have that unfortunately I cant get to work.

When I double click jcived.bat, a black window pops up for a brief second then disappears then nothing.

I have Java 7 installed.


Any help would be great :)
 
Well if you are in windows, try running the program as an administrator. If that doesn't work, go open the dos prompt first and then run the program from there and see what it says.
 
Thanks for the reply.

Sadly the exact same happens. When you say open the DOS prompt first do you mean the DOSbox program?

Forgot to say I'm running Windows 8 aswell!
 
Sorry to double post but I managed to print screen what it say before it disappears.

'java' is not recognized as an internal or external command, operable program or batch file
 
Have you tried just double clicking jcived.jar file? That's how i get the program to run.
 
Sorry to double post but I managed to print screen what it say before it disappears.

'java' is not recognized as an internal or external command, operable program or batch file


This means your system can't execute Java from the command line, maybe Java is not installed correctly, or it works in a different way in Windows 8 than in 7.

Try double-clicking the JAR directly as Hannurabi suggests, if it doesn't work we'll need heavier troubleshooting :)

(I'm back from vacation, btw)
 
Hi! I am new here, thanks for your awesome forums.

I have a question about JCivEd. I am trying to run the last version (0.0.16a) on Linux Debian. This is what I get with OpenJDK:

Loading PIC sprites WARNING: could not find resource 'settings.ini'
.WARNING: could not find resource './TER257.PIC'
Exception in thread "main" java.awt.HeadlessException
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:207)
at java.awt.Window.<init>(Window.java:535)
at java.awt.Frame.<init>(Frame.java:420)
at java.awt.Frame.<init>(Frame.java:385)
at javax.swing.SwingUtilities$SharedOwnerFrame.<init>(SwingUtilities.java:1756)
at javax.swing.SwingUtilities.getSharedOwnerFrame(SwingUtilities.java:1831)
at javax.swing.JOptionPane.getRootFrame(JOptionPane.java:1697)
at javax.swing.JOptionPane.showOptionDialog(JOptionPane.java:863)
at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:667)
at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:638)
at dd.jcived.jciveditor.Configuration.popCivDirSelectionDialog(Configuration.java:141)
at dd.jcived.jciveditor.JCivEditor.start(JCivEditor.java:117)
at dd.jcived.jciveditor.Main.main(Main.java:6)

I remember having been able to run JCivEd 0.0.8a2, and I still have it, but it fails the same with

massimo@metropolis:~/software/civ.b/JCivED-0.0.8a2$ java -jar jcived-saved.jar
Exception in thread "AWT-EventQueue-0" java.awt.HeadlessException
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:207)
at java.awt.Window.<init>(Window.java:535)
at java.awt.Frame.<init>(Frame.java:420)
at java.awt.Frame.<init>(Frame.java:385)
at javax.swing.JFrame.<init>(JFrame.java:174)
at dd.jcived.common.ui.Editor.<init>(Editor.java:10)
at dd.jcived.common.ui.MDIEditor.<init>(MDIEditor.java:35)
at dd.jcived.jciveditor.JCivEditor.<init>(JCivEditor.java:49)
at dd.jcived.jciveditor.JCivEditor$2.run(JCivEditor.java:84)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:703)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

When using Sun Java I still get errors:
massimo@metropolis:~/software/civ.b/JCivED-0.0.16a$ java -jar jcived.jar
Exception in thread "main" java.lang.UnsupportedClassVersionError: dd/jcived/jciveditor/Main : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: dd.jcived.jciveditor.Main. Program will exit.

which sounds like my version of Sun Java is unsupported.

massimo@metropolis:~/software/civ.b$ java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03, mixed mode)

What can I do to troubleshoot/fix this? Many thanks!
 
Solved, sorry for my long post. After some more googling, it came out I had to install Java 7.

Sorry! I would nonetheless leave the previous post in case someone is affected by the same error, if you so wish.
 
Very good tool. The best Civ dos ever had! I'm very happy. Thanks!

RIP TerraForm
 
Hi! First of all, thanks for the work you're putting into this!

I have a suggestion for a hopefully easy to make patch that I would love to have: Could you change the City Walls improvement so that it cannot be destroyed via industrial sabotage like the Palace? That way you could use industrial sabotage on walled cities but not as a cheap way to make it an easy to capture city (apart from the fact that its kinda hard to imagine a few diplomats destroying something like a city wall... :D). That would be awesome!
 
I was just thinking, could you make a patch to take off the requirement of an aqueduct for a city to grow beyond the size of 10? Perhaps the aqueduct could be used to double/triple the amount of food produced...
 
I have a suggestion for a hopefully easy to make patch that I would love to have: Could you change the City Walls improvement so that it cannot be destroyed via industrial sabotage like the Palace? That way you could use industrial sabotage on walled cities but not as a cheap way to make it an easy to capture city (apart from the fact that its kinda hard to imagine a few diplomats destroying something like a city wall... :D). That would be awesome!

Sadly, this is not easy... Right now, when sabotaging a city, CIV.EXE checks if the randomly selected building ID is not 0 (Palace), and then proceeds with destruction.

I can quite easily change this value to the building ID of City Walls, but then Palace would no longer be protected - in other words, diplomats would be able to destroy Palace (I know it sounds cool, but that's not the topic here :)).

In order to keep Palace protected and also City Walls, I would need more room to insert more code checking for City Walls building ID, which I can't easily find at the moment... So -> not easy.
 
I was just thinking, could you make a patch to take off the requirement of an aqueduct for a city to grow beyond the size of 10?

Here it is, but please note that it is currently UNTESTED:

Skips the aqueduct requirement for city size 10+
Code:
For versions [b]EN47404[/b], [b]EN47401[/b], [b]EN47501[/b], [b]EN47403[/b] and [b]EN47405[/b]:
        Original bytes: [color=red]7F 03[/color] 
         Patched bytes: [color=blue][b]90 90[/b][/color] 
        Offsets:
            EN47404: [b]0xD1D9[/b]
            EN47401: [b]0xD936[/b]
            EN47501: [b]0xD936[/b]
            EN47403: [b]0xD1D3[/b]
            EN47405: [b]0xD9ED[/b]

For version [b]FR47405[/b]:
        Original bytes: 77 [color=red]0A 7E[/color] 66 
         Patched bytes: 77 [color=blue][b]00 7F[/b][/color] 66 
        Offsets:
            FR47405: [b]0xEB5D[/b]
 
Top Bottom