Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Discussions of the development process of the game.
tactical371
Posts: 182
Joined: Sat Jun 17, 2023 4:04 am
android_version: 2.0

Re: Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Post by tactical371 »

So yeah, in the WINDOWS virtual machine, if I use either jdk 21 or jdk 17 (from https://www.oracle.com/java/technologie ... 17-windows), I am unable to reach the GUI, and I get the same error in the previous post. But I AM able to reach the GUI in the virtual machine by using java version 8 update 391 (build 1.8.0_391-b13), which I think is bundled with the operating system itself. However, I get the memory and java heap errors if I try to click on spritesheets at least.

Code: Select all

Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space
        at java.awt.image.DataBufferByte.<init>(Unknown Source)
        at java.awt.image.ComponentSampleModel.createDataBuffer(Unknown Source)
        at java.awt.image.Raster.createWritableRaster(Unknown Source)
        at javax.imageio.ImageTypeSpecifier.createBufferedImage(Unknown Source)
        at javax.imageio.ImageReader.getDestination(Unknown Source)
        at com.sun.imageio.plugins.png.PNGImageReader.readImage(Unknown Source)
        at com.sun.imageio.plugins.png.PNGImageReader.read(Unknown Source)
        at javax.imageio.ImageIO.read(Unknown Source)
        at javax.imageio.ImageIO.read(Unknown Source)
        at com.gpl.rpg.atcontentstudio.model.sprites.Spritesheet.getImage(Spritesheet.java:146)
        at com.gpl.rpg.atcontentstudio.model.sprites.Spritesheet.getIcon(Spritesheet.java:176)
        at com.gpl.rpg.atcontentstudio.model.sprites.Spritesheet.getIcon(Spritesheet.java:191)
        at com.gpl.rpg.atcontentstudio.model.sprites.Spritesheet.getLeafIcon(Spritesheet.java:195)
        at com.gpl.rpg.atcontentstudio.ui.ProjectsTree$ProjectsTreeCellRenderer.getTreeCellRendererComponent(ProjectsTree.java:689)
        at javax.swing.plaf.basic.BasicTreeUI$NodeDimensionsHandler.getNodeDimensions(Unknown Source)
        at javax.swing.tree.AbstractLayoutCache.getNodeDimensions(Unknown Source)
        at javax.swing.tree.VariableHeightLayoutCache$TreeStateNode.updatePreferredSize(Unknown Source)
        at javax.swing.tree.VariableHeightLayoutCache$TreeStateNode.expand(Unknown Source)
        at javax.swing.tree.VariableHeightLayoutCache$TreeStateNode.expand(Unknown Source)
        at javax.swing.tree.VariableHeightLayoutCache.ensurePathIsExpanded(Unknown Source)
        at javax.swing.tree.VariableHeightLayoutCache.setExpandedState(Unknown Source)
        at javax.swing.plaf.basic.BasicTreeUI.updateExpandedDescendants(Unknown Source)
        at javax.swing.plaf.basic.BasicTreeUI$Handler.treeExpanded(Unknown Source)
        at javax.swing.JTree.fireTreeExpanded(Unknown Source)
        at javax.swing.JTree.setExpandedState(Unknown Source)
        at javax.swing.JTree.expandPath(Unknown Source)
        at javax.swing.plaf.basic.BasicTreeUI.toggleExpandState(Unknown Source)
        at javax.swing.plaf.basic.BasicTreeUI.selectPathForEvent(Unknown Source)
        at javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection(Unknown Source)
        at javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressed(Unknown Source)
        at java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
        at java.awt.Component.processMouseEvent(Unknown Source)
This is the .env.bat file.

Code: Select all

C:\Program Files (x86)\ATCS\ATCS.env.bat
REM set "MAX_MEM=2000M"
REM set "JAVA=java.exe"
REM set "JAVA_OPTS="
These are the memory settings that windows claims to have in the "System Information" GUI.

Code: Select all

Installed Physical Memory (RAM)	5.86 GB
Total Physical Memory	5.86 GB
Available Physical Memory	3.24 GB
Total Virtual Memory	6.80 GB
Available Virtual Memory	4.52 GB
Page File Space	960 MB
Page File	C:\pagefile.sys
Last edited by tactical371 on Wed Jan 10, 2024 6:09 pm, edited 1 time in total.
OMGeeky
Posts: 14
Joined: Tue Aug 08, 2017 7:19 am
android_version: 13 - Android 13

Re: Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Post by OMGeeky »

I just checked what java version I'm using on my manjaro installation to run it and this ist the output:

Code: Select all

$ java --version 
openjdk 21 2023-09-19
OpenJDK Runtime Environment (build 21+35)
OpenJDK 64-Bit Server VM (build 21+35, mixed mode, sharing)
So it seems like openjdk 21 is fine (though other versions should work as well, which might be something I gotta fix).

Did you ever try to build it completely yourself with the script on my repo?
tactical371
Posts: 182
Joined: Sat Jun 17, 2023 4:04 am
android_version: 2.0

Re: Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Post by tactical371 »

OMGeeky wrote: Wed Jan 10, 2024 6:04 pm I just checked what java version I'm using on my manjaro installation to run it and this ist the output:

Code: Select all

$ java --version 
openjdk 21 2023-09-19
OpenJDK Runtime Environment (build 21+35)
OpenJDK 64-Bit Server VM (build 21+35, mixed mode, sharing)
So it seems like openjdk 21 is fine (though other versions should work as well, which might be something I gotta fix).

Did you ever try to build it completely yourself with the script on my repo?
Not yet. I need to check your repo. Also I am new to linux and have never coded in my life, so I figure it will take me a lot of studying to figure out how to do it. I am using Linux Mint, btw. And I am using windows 10 in the virtual machine.

This one is yours, right? https://github.com/OMGeeky/ATCS/releases/tag/v0.6.20

Thank you for your help.
OMGeeky
Posts: 14
Joined: Tue Aug 08, 2017 7:19 am
android_version: 13 - Android 13

Re: Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Post by OMGeeky »

Maybe try cloning my repo (branch sample-build https://github.com/OMGeeky/ATCS/tree/sample-build) and run the script 'build-and-run.sh' from inside that dir (on your linux machine). That should just build it from source and start it, so there should be minimal version dependencies.
tactical371
Posts: 182
Joined: Sat Jun 17, 2023 4:04 am
android_version: 2.0

Re: Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Post by tactical371 »

I will continue tinkering with it and try to teach myself how to fix it. If I run the build-and-run.sh, I get the following output. I do not know if this is expected or unexpected.

Code: Select all

$ java --version
java 21.0.1 2023-10-17 LTS
Java(TM) SE Runtime Environment (build 21.0.1+12-LTS-29)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.1+12-LTS-29, mixed mode, sharing)

~$ git clone --branch sample-build https://github.com/OMGeeky/ATCS
Cloning into 'ATCS'...
remote: Enumerating objects: 3216, done.
remote: Counting objects: 100% (285/285), done.
remote: Compressing objects: 100% (135/135), done.
remote: Total 3216 (delta 126), reused 223 (delta 98), pack-reused 2931
Receiving objects: 100% (3216/3216), 17.66 MiB | 4.30 MiB/s, done.
Resolving deltas: 100% (1653/1653), done.

~$ cd /home/user/ATCS

~/ATCS$ ./build-and-run.sh
src/com/gpl/rpg/atcontentstudio/model/sprites/Spritesheet.java:162: warning: [removal] finalize() in Graphics has been deprecated and marked for removal
			g.finalize();
			 ^
src/com/gpl/rpg/atcontentstudio/model/sprites/Spritesheet.java:167: warning: [removal] finalize() in Graphics has been deprecated and marked for removal
		g.finalize();
		 ^
src/com/gpl/rpg/atcontentstudio/model/maps/TMXMap.java:83: warning: [removal] Integer(String) in Integer has been deprecated and marked for removal
					outside = new Integer(((String) tmxMap.getProperties().get("outdoors")));
					          ^
src/com/gpl/rpg/atcontentstudio/model/maps/TMXMap.java:121: warning: [removal] Integer(String) in Integer has been deprecated and marked for removal
				clone.outside = new Integer(((String) clone.tmxMap.getProperties().get("outdoors")));
				                ^
src/com/gpl/rpg/atcontentstudio/ui/Editor.java:492: warning: [removal] Float(float) in Float has been deprecated and marked for removal
		final JSpinner spinner = new JSpinner(new SpinnerNumberModel(initialValue != null ? initialValue.doubleValue() : 0.0d, 0.0d, new Float(Float.MAX_VALUE).doubleValue(), 1.0d));
		                                                                                                                             ^
src/com/gpl/rpg/atcontentstudio/model/gamedata/NPC.java:783: warning: [removal] Double(double) in Double has been deprecated and marked for removal
		return new Double(Math.ceil(experience)).intValue();
		       ^
src/com/gpl/rpg/atcontentstudio/model/gamedata/QuestStage.java:25: warning: [removal] Integer(int) in Integer has been deprecated and marked for removal
		clone.progress = progress != null ? new Integer(progress) : null;
		                                    ^
src/com/gpl/rpg/atcontentstudio/model/gamedata/QuestStage.java:27: warning: [removal] Integer(int) in Integer has been deprecated and marked for removal
		clone.exp_reward = exp_reward != null ? new Integer(exp_reward) : null;
		                                        ^
src/com/gpl/rpg/atcontentstudio/model/gamedata/QuestStage.java:28: warning: [removal] Integer(int) in Integer has been deprecated and marked for removal
		clone.finishes_quest = finishes_quest != null ? new Integer(finishes_quest) : null;
		                                                ^
src/com/gpl/rpg/atcontentstudio/model/maps/MapObjectGroup.java:24: warning: [removal] Boolean(String) in Boolean has been deprecated and marked for removal
			active = new Boolean(((String) layer.getProperties().get("active")));
			         ^
hacked-libtiled/tiled/core/ObjectGroup.java:142: warning: [dep-ann] deprecated item is not annotated with @Deprecated
    public MapLayer createDiff(MapLayer ml) {
                    ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/DialogueEditor.java:439: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
						listener.valueChanged(rewardConditionTimed, new Boolean(rewardConditionTimed.isSelected()));
						                                            ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/DialogueEditor.java:445: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
						listener.valueChanged(rewardConditionForever, new Boolean(rewardConditionForever.isSelected()));
						                                              ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/DialogueEditor.java:452: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
							listener.valueChanged(rewardConditionClear, new Boolean(rewardConditionClear.isSelected()));
							                                            ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:703: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitSourceConditionClear, new Boolean(hitSourceConditionClear.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:709: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitSourceConditionApply, new Boolean(hitSourceConditionApply.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:715: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitSourceConditionImmunity, new Boolean(hitSourceConditionImmunity.isSelected()));
				                                                  ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:722: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitSourceConditionTimed, new Boolean(hitSourceConditionTimed.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:728: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitSourceConditionForever, new Boolean(hitSourceConditionForever.isSelected()));
				                                                 ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:799: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitTargetConditionClear, new Boolean(hitTargetConditionClear.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:805: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitTargetConditionApply, new Boolean(hitTargetConditionApply.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:811: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitTargetConditionImmunity, new Boolean(hitTargetConditionImmunity.isSelected()));
				                                                  ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:818: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitTargetConditionTimed, new Boolean(hitTargetConditionTimed.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:824: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitTargetConditionForever, new Boolean(hitTargetConditionForever.isSelected()));
				                                                 ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:895: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(killSourceConditionClear, new Boolean(killSourceConditionClear.isSelected()));
				                                                ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:901: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(killSourceConditionApply, new Boolean(killSourceConditionApply.isSelected()));
				                                                ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:907: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(killSourceConditionImmunity, new Boolean(killSourceConditionImmunity.isSelected()));
				                                                   ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:914: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(killSourceConditionTimed, new Boolean(killSourceConditionTimed.isSelected()));
				                                                ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:920: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(killSourceConditionForever, new Boolean(killSourceConditionForever.isSelected()));
				                                                  ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:979: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(equipConditionWithMagnitude, new Boolean(equipConditionWithMagnitude.isSelected()));
				                                                   ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:985: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(equipConditionImmunity, new Boolean(equipConditionImmunity.isSelected()));
				                                              ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:1039: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedSourceConditionClear, new Boolean(hitReceivedSourceConditionClear.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:1045: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedSourceConditionApply, new Boolean(hitReceivedSourceConditionApply.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:1051: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedSourceConditionImmunity, new Boolean(hitReceivedSourceConditionImmunity.isSelected()));
				                                                          ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:1058: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedSourceConditionTimed, new Boolean(hitReceivedSourceConditionTimed.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:1064: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedSourceConditionForever, new Boolean(hitReceivedSourceConditionForever.isSelected()));
				                                                         ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:1135: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedTargetConditionClear, new Boolean(hitReceivedTargetConditionClear.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:1141: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedTargetConditionApply, new Boolean(hitReceivedTargetConditionApply.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:1147: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedTargetConditionImmunity, new Boolean(hitReceivedTargetConditionImmunity.isSelected()));
				                                                          ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:1154: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedTargetConditionTimed, new Boolean(hitReceivedTargetConditionTimed.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java:1160: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedTargetConditionForever, new Boolean(hitReceivedTargetConditionForever.isSelected()));
				                                                         ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:620: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitSourceConditionClear, new Boolean(hitSourceConditionClear.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:626: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitSourceConditionApply, new Boolean(hitSourceConditionApply.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:632: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitSourceConditionImmunity, new Boolean(hitSourceConditionImmunity.isSelected()));
				                                                  ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:639: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitSourceConditionTimed, new Boolean(hitSourceConditionTimed.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:645: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitSourceConditionForever, new Boolean(hitSourceConditionForever.isSelected()));
				                                                 ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:710: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitTargetConditionClear, new Boolean(hitTargetConditionClear.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:716: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitTargetConditionApply, new Boolean(hitTargetConditionApply.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:722: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitTargetConditionImmunity, new Boolean(hitTargetConditionImmunity.isSelected()));
				                                                  ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:729: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitTargetConditionTimed, new Boolean(hitTargetConditionTimed.isSelected()));
				                                               ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:735: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitTargetConditionForever, new Boolean(hitTargetConditionForever.isSelected()));
				                                                 ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:801: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedSourceConditionClear, new Boolean(hitReceivedSourceConditionClear.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:807: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedSourceConditionApply, new Boolean(hitReceivedSourceConditionApply.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:813: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedSourceConditionImmunity, new Boolean(hitReceivedSourceConditionImmunity.isSelected()));
				                                                          ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:820: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedSourceConditionTimed, new Boolean(hitReceivedSourceConditionTimed.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:826: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedSourceConditionForever, new Boolean(hitReceivedSourceConditionForever.isSelected()));
				                                                         ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:891: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedTargetConditionClear, new Boolean(hitReceivedTargetConditionClear.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:897: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedTargetConditionApply, new Boolean(hitReceivedTargetConditionApply.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:903: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedTargetConditionImmunity, new Boolean(hitReceivedTargetConditionImmunity.isSelected()));
				                                                          ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:910: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedTargetConditionTimed, new Boolean(hitReceivedTargetConditionTimed.isSelected()));
				                                                       ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:916: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(hitReceivedTargetConditionForever, new Boolean(hitReceivedTargetConditionForever.isSelected()));
				                                                         ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:981: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(deathSourceConditionClear, new Boolean(deathSourceConditionClear.isSelected()));
				                                                 ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:987: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(deathSourceConditionApply, new Boolean(deathSourceConditionApply.isSelected()));
				                                                 ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:993: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(deathSourceConditionImmunity, new Boolean(deathSourceConditionImmunity.isSelected()));
				                                                    ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:1000: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(deathSourceConditionTimed, new Boolean(deathSourceConditionTimed.isSelected()));
				                                                 ^
src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/NPCEditor.java:1006: warning: [removal] Boolean(boolean) in Boolean has been deprecated and marked for removal
				listener.valueChanged(deathSourceConditionForever, new Boolean(deathSourceConditionForever.isSelected()));
				                                                   ^
src/prefuse/data/FilteredSpanningTree.java:18: warning: [removal] Integer(int) in Integer has been deprecated and marked for removal
        EDGE_SCHEMA.addColumn(DEFAULT_SOURCE_KEY, int.class, new Integer(-1));
                                                             ^
src/prefuse/data/FilteredSpanningTree.java:19: warning: [removal] Integer(int) in Integer has been deprecated and marked for removal
        EDGE_SCHEMA.addColumn(DEFAULT_TARGET_KEY, int.class, new Integer(-1));
                                                             ^
hacked-libtiled/tiled/io/TMXMapReader.java:134: warning: [removal] Integer(String) in Integer has been deprecated and marked for removal
                conformingArguments[i] = new Integer(args[i]);
                                         ^
hacked-libtiled/tiled/io/TMXMapReader.java:136: warning: [removal] Float(String) in Float has been deprecated and marked for removal
                conformingArguments[i] = new Float(args[i]);
                                         ^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
70 warnings
The program will then pop up. Once I select a workspace, however, it gives me the same error,

Code: Select all

Exception in thread "Thread-0" java.lang.NoClassDefFoundError: com/sun/java/swing/plaf/windows/WindowsLookAndFeel
	at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(LookAndFeelFactory.java:848)
	at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(LookAndFeelFactory.java:633)
	at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(LookAndFeelFactory.java:598)
	at com.jidesoft.swing.JideTabbedPane.updateUI(JideTabbedPane.java:329)
	at java.desktop/javax.swing.JTabbedPane.<init>(JTabbedPane.java:229)
	at com.jidesoft.swing.JideTabbedPane.<init>(JideTabbedPane.java:292)
	at com.jidesoft.swing.JideTabbedPane.<init>(JideTabbedPane.java:264)
	at com.gpl.rpg.atcontentstudio.ui.EditorsArea.<init>(EditorsArea.java:50)
	at com.gpl.rpg.atcontentstudio.ui.StudioFrame.<init>(StudioFrame.java:59)
	at com.gpl.rpg.atcontentstudio.ATContentStudio$1$1.run(ATContentStudio.java:125)
	at com.gpl.rpg.atcontentstudio.ui.WorkerDialog$1.run(WorkerDialog.java:48)
Caused by: java.lang.ClassNotFoundException: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
	... 11 more
I will continue tinkering when I have time.
OMGeeky
Posts: 14
Joined: Tue Aug 08, 2017 7:19 am
android_version: 13 - Android 13

Re: Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Post by OMGeeky »

tactical371 wrote: Wed Jan 10, 2024 6:41 pm I do not know if this is expected or unexpected.
This is normal.
tactical371 wrote: Wed Jan 10, 2024 6:41 pm The program will then pop up. Once I select a workspace, however, it gives me the same error,
this is of course not normal and doesn't happen to me.
Good look with finding that error since I know how painful it can be to find errors in the java build process.
One hint that might or might not help you:
The error you got comes from trying to create an instance of the class imported here:

Code: Select all

import com.jidesoft.swing.JideTabbedPane;
OMGeeky
Posts: 14
Joined: Tue Aug 08, 2017 7:19 am
android_version: 13 - Android 13

Re: Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Post by OMGeeky »

Also Always make sure you got the JDK and not just the runtime. That happened to me too many times in the past.
Last edited by OMGeeky on Wed Jan 10, 2024 9:37 pm, edited 1 time in total.
Reason: F*ing autocorrect...
tactical371
Posts: 182
Joined: Sat Jun 17, 2023 4:04 am
android_version: 2.0

Re: Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Post by tactical371 »

OMGeeky wrote: Wed Jan 10, 2024 6:04 pm So it seems like openjdk 21 is fine (though other versions should work as well, which might be something I gotta fix).
Yeah, so the default java on Mint in openjdk 11. This is what happens if I try to run build-and-run.sh with that default.

Code: Select all

~/ATCS$ java --version
openjdk 11.0.21 2023-10-17
OpenJDK Runtime Environment (build 11.0.21+9-post-Ubuntu-0ubuntu122.04)
OpenJDK 64-Bit Server VM (build 11.0.21+9-post-Ubuntu-0ubuntu122.04, mixed mode, sharing)

~/ATCS$ ./build-and-run.sh
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:37: error: cannot access Workspace
import com.gpl.rpg.atcontentstudio.model.Workspace;
                                        ^
  bad class file: src/com/gpl/rpg/atcontentstudio/model/Workspace.class
    class file has wrong version 65.0, should be 55.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:38: error: cannot access StudioFrame
import com.gpl.rpg.atcontentstudio.ui.StudioFrame;
                                     ^
  bad class file: src/com/gpl/rpg/atcontentstudio/ui/StudioFrame.class
    class file has wrong version 65.0, should be 55.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:39: error: cannot access WorkerDialog
import com.gpl.rpg.atcontentstudio.ui.WorkerDialog;
                                     ^
  bad class file: src/com/gpl/rpg/atcontentstudio/ui/WorkerDialog.class
    class file has wrong version 65.0, should be 55.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:40: error: cannot access WorkspaceSelector
import com.gpl.rpg.atcontentstudio.ui.WorkspaceSelector;
                                     ^
  bad class file: src/com/gpl/rpg/atcontentstudio/ui/WorkspaceSelector.class
    class file has wrong version 65.0, should be 55.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:54: error: cannot find symbol
	public static StudioFrame frame = null;
	              ^
  symbol:   class StudioFrame
  location: class ATContentStudio
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:76: error: cannot access ConfigCache
		ConfigCache.init();
		^
  bad class file: src/com/gpl/rpg/atcontentstudio/ConfigCache.class
    class file has wrong version 65.0, should be 55.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:101: error: cannot find symbol
		final WorkspaceSelector wsSelect = new WorkspaceSelector();
		      ^
  symbol:   class WorkspaceSelector
  location: class ATContentStudio
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:101: error: cannot find symbol
		final WorkspaceSelector wsSelect = new WorkspaceSelector();
		                                       ^
  symbol:   class WorkspaceSelector
  location: class ATContentStudio
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:116: error: cannot find symbol
							Workspace.setActive(workspaceRoot);
							^
  symbol: variable Workspace
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:117: error: package Workspace.activeWorkspace.settings does not exist
							if (Workspace.activeWorkspace.settings.useInternet.getCurrentValue()
							                                      ^
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:118: error: package Workspace.activeWorkspace.settings does not exist
									&& Workspace.activeWorkspace.settings.checkUpdates.getCurrentValue()) {
									                                     ^
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:125: error: cannot find symbol
							frame = new StudioFrame(APP_NAME + " " + APP_VERSION);
							            ^
  symbol: class StudioFrame
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:127: error: cannot find symbol
							frame.setDefaultCloseOperation(StudioFrame.DO_NOTHING_ON_CLOSE);
							                               ^
  symbol: variable StudioFrame
./src/com/gpl/rpg/atcontentstudio/ATContentStudio.java:114: error: cannot find symbol
					WorkerDialog.showTaskMessage("Loading your workspace...", null, new Runnable() {
					^
  symbol: variable WorkerDialog
14 errors
Error: LinkageError occurred while loading main class com.gpl.rpg.atcontentstudio.ATContentStudio
	java.lang.UnsupportedClassVersionError: com/gpl/rpg/atcontentstudio/ATContentStudio has been compiled by a more recent version of the Java Runtime (class file version 65.0), this version of the Java Runtime only recognizes class file versions up to 55.0
As someone who has never coded anything, is there a way I can compile this stuff to work on older versions of the Java Runtime?
Last edited by tactical371 on Thu Jan 11, 2024 2:49 am, edited 1 time in total.
tactical371
Posts: 182
Joined: Sat Jun 17, 2023 4:04 am
android_version: 2.0

Re: Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Post by tactical371 »

OMGeeky wrote: Wed Jan 10, 2024 6:58 pm
tactical371 wrote: Wed Jan 10, 2024 6:41 pm I do not know if this is expected or unexpected.
This is normal.
tactical371 wrote: Wed Jan 10, 2024 6:41 pm The program will then pop up. Once I select a workspace, however, it gives me the same error,
this is of course not normal and doesn't happen to me.
Good look with finding that error since I know how painful it can be to find errors in the java build process.
One hint that might or might not help you:
The error you got comes from trying to create an instance of the class imported here:

Code: Select all

import com.jidesoft.swing.JideTabbedPane;
I do not really understand why a WindowsLookAndFeel problem is happening, when this is linux, not windows.

According to https://docs.oracle.com/javase/tutorial ... /plaf.html,

"For Linux and Solaris, the System L&Fs are "GTK+" if GTK+ 2.2 or later is installed, "Motif" otherwise. For Windows, the System L&F is "Windows," which mimics the L&F of the particular Windows OS that is running—classic Windows, XP, or Vista. The GTK+, Motif, and Windows L&Fs are provided by Sun and shipped with the Java SDK and JRE, although they are not part of the Java API."

Of course, I get the same problem in my windows virtual machine if I am not using Java 8, but at least there the error corresponds to the operating system (and I am using the ,exe file for the windows release, rather than your zip file).

"You don't see the System L&F in the API. The GTK+, Motif, and Windows packages that it requires are shipped with the Java SDK as:

com.sun.java.swing.plaf.gtk.GTKLookAndFeel
com.sun.java.swing.plaf.motif.MotifLookAndFeel
com.sun.java.swing.plaf.windows.WindowsLookAndFeel

Note that the path includes java, and not javax.
Note: The GTK+ L&F will only run on UNIX or Linux systems with GTK+ 2.2 or later installed, while the Windows L&F runs only on Windows systems. Like the Java (Metal) L&F, the Motif L&F will run on any platform. "

In /home/user/ATCS/src/com/gpl/rpg/atcontentstudio/ATContentStudio.java , there is the following code.

Code: Select all

try {
			String laf = ConfigCache.getFavoriteLaFClassName();
			if (laf == null)
				laf = UIManager.getSystemLookAndFeelClassName();
			UIManager.setLookAndFeel(laf);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (InstantiationException e) {
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		} catch (UnsupportedLookAndFeelException e) {
			e.printStackTrace();
		}
Is there a way to modify this to make it not do the windows look and feel? Or would that break the program?

I tried to get it to give me a gtk look and feel, but it did not work.

Code: Select all

~/ATCS_v0.6.20$ java -Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel -jar ATCS.jar 
Exception in thread "Thread-0" java.lang.NoClassDefFoundError: com/sun/java/swing/plaf/windows/WindowsLookAndFeel
	at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(LookAndFeelFactory.java:848)
	at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(LookAndFeelFactory.java:633)
	at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(LookAndFeelFactory.java:598)
	at com.jidesoft.swing.JideTabbedPane.updateUI(JideTabbedPane.java:329)
	at java.desktop/javax.swing.JTabbedPane.<init>(JTabbedPane.java:229)
	at com.jidesoft.swing.JideTabbedPane.<init>(JideTabbedPane.java:292)
	at com.jidesoft.swing.JideTabbedPane.<init>(JideTabbedPane.java:264)
	at com.gpl.rpg.atcontentstudio.ui.EditorsArea.<init>(EditorsArea.java:50)
	at com.gpl.rpg.atcontentstudio.ui.StudioFrame.<init>(StudioFrame.java:59)
	at com.gpl.rpg.atcontentstudio.ATContentStudio$1$1.run(ATContentStudio.java:125)
	at com.gpl.rpg.atcontentstudio.ui.WorkerDialog$1.run(WorkerDialog.java:48)
Caused by: java.lang.ClassNotFoundException: com.sun.java.swing.plaf.windows.WindowsLookAndFeel
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
	... 11 more
tactical371
Posts: 182
Joined: Sat Jun 17, 2023 4:04 am
android_version: 2.0

Re: Andor's Trail Content Studio [ATCS] - Win/Mac/Linux Content Editor

Post by tactical371 »

So I decided to try again. I nuked my virtual machine and decided to add a windows 10 partition to my computer, so I could run the ATCS in Windows 10.

If I try running it with openjdk-21.0.2, I get the following error, and the program does not start.

Code: Select all

Exception in thread "Thread-0" java.lang.IllegalAccessError: class com.jidesoft.plaf.LookAndFeelFactory (in unnamed module @0x6144ff03) cannot access class com.sun.java.swing.plaf.windows.WindowsLookAndFeel (in module java.desktop) because module java.desktop does not export com.sun.java.swing.plaf.windows to unnamed module @0x6144ff03
        at com.jidesoft.plaf.LookAndFeelFactory.getDefaultStyle(LookAndFeelFactory.java:539)
        at com.jidesoft.plaf.LookAndFeelFactory.installJideExtension(LookAndFeelFactory.java:598)
        at com.jidesoft.swing.JideTabbedPane.updateUI(JideTabbedPane.java:329)
        at java.desktop/javax.swing.JTabbedPane.<init>(JTabbedPane.java:229)
        at com.jidesoft.swing.JideTabbedPane.<init>(JideTabbedPane.java:292)
        at com.jidesoft.swing.JideTabbedPane.<init>(JideTabbedPane.java:264)
        at com.gpl.rpg.atcontentstudio.ui.EditorsArea.<init>(EditorsArea.java:50)
        at com.gpl.rpg.atcontentstudio.ui.StudioFrame.<init>(StudioFrame.java:59)
        at com.gpl.rpg.atcontentstudio.ATContentStudio$1$1.run(ATContentStudio.java:125)
        at com.gpl.rpg.atcontentstudio.ui.WorkerDialog$1.run(WorkerDialog.java:48)
However, if I use java 8 instead, the program starts.
64-bit Java for Windows
Version 8 Update 401 (filesize: 64.43 MB) Why is Java 8 recommended?
Release date: January 16, 2024
However, I get into trouble when I try to create a project. I select the folder with the res subfolder in it, and I select game files. But I get the following error.

Code: Select all

bless
Exception in thread "Thread-8" java.lang.NullPointerException
        at com.gpl.rpg.atcontentstudio.model.gamedata.ActorCondition.link(ActorCondition.java:241)
        at com.gpl.rpg.atcontentstudio.model.Project.linkAll(Project.java:297)
        at com.gpl.rpg.atcontentstudio.model.Project.<init>(Project.java:158)
        at com.gpl.rpg.atcontentstudio.model.Workspace$1.run(Workspace.java:188)
        at com.gpl.rpg.atcontentstudio.ui.WorkerDialog$1.run(WorkerDialog.java:48)
I also get additional errors if I do not run ATCS with admin privileges- something about linkage problems? But those go away if I run it as an administrator. However, this error remains.

How do I fix this? Idk how to contribute to the game if I cannot get the content editor to work, even on a windows 10 partition.
Post Reply