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

Discussions of the development process of the game.
Post Reply
User avatar
Omicronrg9
Posts: 17
Joined: Wed May 04, 2016 5:14 pm
android_version: 6.0
Location: Nihilion
Contact:

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

Post by Omicronrg9 » Fri Aug 11, 2017 10:23 pm

Thank you for anwsering me quickly.
So just I have to make one spawn area,and deactivate it by default in ATCS.Then,I could activate it as a reward of a dialogue...
I created something like a fight beetween two NPCs,and one of them dies,and then it's player turn to fight.However,there're two obstacles in my way to do that dialogue correctly.
  • I cannot remove one NPC without ending the dialogue.

  • Another way could be killing one NPC,and deactivate both spawn areas.But,to make sense I need when you talk again with the NPC,He/She tells you something that makes sense,like "I'm severely wounded"...The fact is I don't know how to make that one NPC has two initial phrases (One without condition,another with questid:queststage requirement).


ATCS really makes doing content easy for all people who want it,thank you for making it and mantaining it.
Greetings!

Zukero
Lead Developer
Posts: 1482
Joined: Thu Jul 21, 2011 9:56 am
android_version: 7.1

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

Post by Zukero » Fri Aug 11, 2017 10:48 pm

Indeed you cannot remove the NPC using the "Remove NPC" reward type without ending the dialogue.
What you should do is switch the active NPC to the surviving character, and have him say something like "Die fool!", and give a "removeSpawnArea" reward on the dead man's spawn area. I think that would work. You can then continue the dialogue to lead to a fight with the killer... or not!

Choosing between several starting phrase is a very common pattern. We call that a selector.
Most NPCs with substantial dialogue start with a selector, look at Lodar for example, or Halvor (check the Dialogue tree tab, then double click on any interesting part).
The idea is to have an empty dialogue (no text, you can make sure this is the case by using the red cross at the right of the text field, it will nullify this field), and a bunch of "NPC keeps talking" replies with requirements.
Each replies' requirements will be evaluated from top to bottom (in the list of replies) until one that is satisfied is found. Just make sure to put the most restrictive one on top (use the arrows below the reply list to reorder), and to have a last reply that has no requirement as a default branch.

I'm glad you like ATCS. I have a lot of fun developing it.
Lvl: 78, XP: 8622632, Gold: 271542, RoLS: 1, ElyR: -, RoL: -, ChaR: 1, GoLF: 1, ShaF: 1, SRoV: 1, VSH: 1, WMC: 1, GoW: 1
HP: 71, AC: 301%, AD: 38-47, AP: 3, ECC: 50%, CM: 3.75, BC: 101%, DR: 2

User avatar
Omicronrg9
Posts: 17
Joined: Wed May 04, 2016 5:14 pm
android_version: 6.0
Location: Nihilion
Contact:

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

Post by Omicronrg9 » Fri Aug 11, 2017 11:52 pm

Yeah,I just realized of the existence of that "selectors".Truly useful for that,thank you.
Also I thought about making the fightable NPC unique,so He won't spawn anymore if I kill him,That's possible?
Greetings!

Nut
Posts: 130
Joined: Mon Oct 27, 2014 12:14 pm
android_version: 4.4

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

Post by Nut » Sat Aug 12, 2017 12:06 am

Zukero wrote:
Tue Aug 08, 2017 7:26 am
Your best bet is to use ATCS. The latest version supports all of these. If you prefer to work with text editors, you can still try ATCS, and check out the JSON or XML tab for any element's editor to see how it is done, but I'd advise against it, as the format can be tricky sometimes.

Most of what you ask exists, just look in ATCS. I don't think you can remove a worn item from the inventory, but you can ask the player to unequip it, then use InventoryRemove to take it from him. InventoryWorn will make sure that you have that access-granting necklace around your neck, and not in your bag.
Use ATCS for finding new options is a good idea, I should have thought of it myself :oops: Thus I found the require-negation and the spawn things, this has helped very much!


For developping I use Notepad++ instead of ATCS, because I need to have overview about larger parts of code, not just one ID at a time. But for code review later on, I think it will be great help.
Especially the dialogue graph is amazing!
If you need help with ATCS, I'll gladly help, but make sure to post in that tool's thread.
Thx, at the moment I still have 2 main problems with ATCS:
- I don't know how to integrate ATCS and Android studio, because the file structure is totally different. Should I write a CMD script that copies all files from one system to the other? Or is there a way to use both tools with 1 data source?
- And I don't get ATCS to work on my new PC. Installation is ok, but on creating a project, I only get "Loading... Please wait. Creating project x..."

As a workaround I now use ATCS on my company PC (where ATCS works fine) and check there. So it is ok for me at the moment.

Quest progress is directly related to a quest log: a list of key-value pairs (also known as a Map or Dictionary in programming). The keys are numbers, but you don't increase the progress on a quest numerically, you just reached a step or you didn't. The new feature allows you to remove a quest progress step, to allow for repeatable events. This should only be used for invisible quests as it would be awkward to have the character delete some entries in his quest log.
It took me some time to understand this, that quest progress is not a single value but a list. A list is perfect for normal quests. But for status variables (door open/closed, etc) you need a single (of course invisible) questProgress value.
Likewise for a counter that I needed, I combined questProgress and removeQuestProgress, A bit cumbersome but working.
Does an "increaseProgressValue" exist?
Nut
_____
Nut: Lvl 61, HP 103, AC 273%, AD 32-41, CHS 67, BC 159% WA 3, Do 5, BS MC 1, CS 2, IF 1, Reg 1, WP 1, S 1, AP L 1, RoLS
Anwyn: Lvl 52, HP 126, AC 221%, AD 28-36, CHS 27, BC 119% Do 4, CS 2, IF 3, Ev 2, Reg 1, Ta 1, RoLS

Zukero
Lead Developer
Posts: 1482
Joined: Thu Jul 21, 2011 9:56 am
android_version: 7.1

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

Post by Zukero » Sat Aug 12, 2017 7:57 am

Omicronrg9 wrote:
Fri Aug 11, 2017 11:52 pm
Also I thought about making the fightable NPC unique,so He won't spawn anymore if I kill him,That's possible?
Yeah. Just tick the "Unique" checkbox in the NPC editor.
Nut wrote:
Sat Aug 12, 2017 12:06 am
For developping I use Notepad++ instead of ATCS, because I need to have overview about larger parts of code, not just one ID at a time. But for code
Could you detail your workflow? If you feel that there is something you can do faster in Notepad++ than in ATCS besides a simple typo fix, I'd like to konw about it, as it may help drive the future development of ATCS. The point is to make content creation easy and fast.
Nut wrote:
Sat Aug 12, 2017 12:06 am
- I don't know how to integrate ATCS and Android studio, because the file structure is totally different. Should I write a CMD script that copies all files from one system to the other? Or is there a way to use both tools with 1 data source?
The file structure is necessarily different, but using the "Export project" function, you can create a zip file containing all the data created and altered by your project in a file structure that you can copy-paste over the game source. You'll still have to add the new files (those under created) to the "loadresources.xml" file for the game to find them.
What's interesting in this is that all data is merged in the desired files. For example, all worldmaps must be in worldmap.xml, so ATCS compiles the created, altered, and unmodified worldmaps in a single file during the export.

Caution though, as once you integrate your changes in the game source, reloading your project (by restarting ATCS for example) against the same source folder will essentially wreck your ATCS project. Use of git branches is IMHO the best solution. Here's an example workflow:
- Check out the master branch of the game source.
- Create an ATCS project against it called "my_quest"
- Export that project as "my_quest.zip", and quit ATCS
- Create a git branch called "my_quest" for the game source based on master.
- Extract the zip in the game source
- Commit
- Switch to master again
- Reopen ATCS, and keep editing your project.
- Return to 3rd step.
Nut wrote:
Sat Aug 12, 2017 12:06 am
- And I don't get ATCS to work on my new PC. Installation is ok, but on creating a project, I only get "Loading... Please wait. Creating project x..."
To help you, I'll need you to paste the contents of the console, but to get the console, you have to edit the ATCS.env.bet file in the installation folder (you can create it if it doesn't exist, or start ATCS as administrator, as it will create it automatically), and make sure it contains the following line:

Code: Select all

set JAVA=java.exe
Nut wrote:
Sat Aug 12, 2017 12:06 am
It took me some time to understand this, that quest progress is not a single value but a list. A list is perfect for normal quests. But for status variables (door open/closed, etc) you need a single (of course invisible) questProgress value.
Likewise for a counter that I needed, I combined questProgress and removeQuestProgress, A bit cumbersome but working.
Does an "increaseProgressValue" exist?
Yup, a single entry in a hidden quest is the way to handle state of doors.
For a counter, the faction system would work well, but I guess you'll need two new requirements type factionScoreAbove and factionScoreBelow that do not exist yet. I'll get to it soon.
Lvl: 78, XP: 8622632, Gold: 271542, RoLS: 1, ElyR: -, RoL: -, ChaR: 1, GoLF: 1, ShaF: 1, SRoV: 1, VSH: 1, WMC: 1, GoW: 1
HP: 71, AC: 301%, AD: 38-47, AP: 3, ECC: 50%, CM: 3.75, BC: 101%, DR: 2

User avatar
rijackson741
Posts: 1654
Joined: Tue Aug 20, 2013 2:04 am
android_version: 6.0
Location: Somewhere in Dhayavar

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

Post by rijackson741 » Sat Aug 12, 2017 1:39 pm

Nut wrote:
Sat Aug 12, 2017 12:06 am
For developping I use Notepad++ instead of ATCS, because I need to have overview about larger parts of code, not just one ID at a time. But for code review later on, I think it will be great help.
I am having a hard time picturing your work flow. For dialogues I always have the entire tree open in one tab of ATCS, and work from there. You can also look at the items comparator and the NPCs comparator (I also use this quite often: http://andorstrail.irkalla.cz/0.7.0/index.php). I only edit the json in Notepad++ to get around a bug or limitation in ATCS, and since every time I find a bug or limitation I report it, and Zukero fixes it, those are becoming increasingly rare.
Nut wrote:
Sat Aug 12, 2017 12:06 am
Does an "increaseProgressValue" exist?
A quest log is not an ordered list, so incrementing or decrementing progress makes no sense. Each entry in the list is independent of the other entries. I could (I think; I have not tried it) create a quest log that went 40, 20, 100, 3, 31, 4. That would be bad practice, but possible. There are no such logs in AT, but there are logs where there is no connection between the list entries. In ATCS, look for the quest "Placeholder for hidden quest stages (not displayed)". It tracks various stages in the game where you have done something, but they are unrelated to each other.
Level: 64, XP: 4734786, HP: 196, AC: 246%, AD: 49-59, AP: 3, ECC: 25%, CM: 3, BC: 127%, DR: 2
Gold: 232355 | RoLS: 1, RoL: 1, GoW: 1
HH: 1, CS: 2, IF: 4, Ev: 3, Re: 2, WP:DA: 1, WP:1S: 1, AP:L: 1, FS:DW: 2, S:DW: 1
SR

Nut
Posts: 130
Joined: Mon Oct 27, 2014 12:14 pm
android_version: 4.4

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

Post by Nut » Sun Aug 13, 2017 8:40 pm

Could you detail your workflow? If you feel that there is something you can do faster in Notepad++ than in ATCS besides a simple typo fix, I'd like to konw about it, as it may help drive the future development of ATCS. The point is to make content creation easy and fast
I have created a AndroidStudio Project based on the github Version and added my sources (JSON, TMX, 1 PNG) and set them into loadresources.xml

Then I open my files in Notepad++ and edit them.
TMX maps of Course with Tiles, but when I add new mapevents, spawns, keys, then sometimes I copy&paste it from another TMX file in Notepad++

AndroidStudio is just for compile.

I use a plain text Editor because I want to see larger part of code at the same time, and because I seldom write a passage completely new but copy&paste an existing passage and just change the different parts.

Thus I am rather quick for new things. When it comes to test/review or finishing touch, then I probably will change my strategy and use ATCS, because it helps finding references etc.


At the moment I don't think much about version control, because aside from loadresources all is completely new and independent. I just want to add 2 or 3 things and then I show it to you.
If it fits into AT, then we find a place to put into the map and do the integration work. Then I will probably need to use github, but not now.



A quest log is not an ordered list, so incrementing or decrementing progress makes no sense.
Agreed for quests.
But maybe you want to limit access to a specific bed to 10 times. This is easy to realize with a Counter, but inconvenient without.


For a counter, the faction system would work well
I do not really understand the faction system, and found commentary that it is never used.
It seems to be invented for monsters behaviour. But if there are methods just to set/get a value in a script and increase/decrease it, then it might be used for other interesting things too.
Zukero, do I understand you right: "requirements type factionScoreAbove and factionScoreBelow" are new methods you have in mind?

In ATCS, look for the quest "Placeholder for hidden quest stages (not displayed)". It tracks various stages in the game where you have done something
Hm, I already created my own hidden quests for such a progress value. Is it a problem having it in other quests? I'd like to have in my own namespace to avoid side effects with other parts of the game.


In the meanwhile I got ATCS to run. I remarked some things:
- The directorey "drawing" of the reference project was empty twice. Could it be that ATCS clears that via its link to that directory?
Maybe some of my problems were of this empty directory.
- Then I imported the JSON one by one via copy&paste. The dialogue import would not work when a "removeQuestProgress" is inside. I changed it to "questProgress", then the import would go.

Btw, is there a print or even better a copy function of the dialogue graph? I would like to print it and check on paper.
Nut
_____
Nut: Lvl 61, HP 103, AC 273%, AD 32-41, CHS 67, BC 159% WA 3, Do 5, BS MC 1, CS 2, IF 1, Reg 1, WP 1, S 1, AP L 1, RoLS
Anwyn: Lvl 52, HP 126, AC 221%, AD 28-36, CHS 27, BC 119% Do 4, CS 2, IF 3, Ev 2, Reg 1, Ta 1, RoLS

User avatar
rijackson741
Posts: 1654
Joined: Tue Aug 20, 2013 2:04 am
android_version: 6.0
Location: Somewhere in Dhayavar

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

Post by rijackson741 » Sun Aug 13, 2017 9:39 pm

Nut wrote:
Sun Aug 13, 2017 8:40 pm
Hm, I already created my own hidden quests for such a progress value. Is it a problem having it in other quests?
No, not at all. Right now it's a very good idea in fact. "Placeholder for hidden quest stages (not displayed)" has many new stages that are not yet in the source files on github.
Level: 64, XP: 4734786, HP: 196, AC: 246%, AD: 49-59, AP: 3, ECC: 25%, CM: 3, BC: 127%, DR: 2
Gold: 232355 | RoLS: 1, RoL: 1, GoW: 1
HH: 1, CS: 2, IF: 4, Ev: 3, Re: 2, WP:DA: 1, WP:1S: 1, AP:L: 1, FS:DW: 2, S:DW: 1
SR

User avatar
Omicronrg9
Posts: 17
Joined: Wed May 04, 2016 5:14 pm
android_version: 6.0
Location: Nihilion
Contact:

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

Post by Omicronrg9 » Mon Aug 14, 2017 9:52 pm

I've been suffering the same issue as Nut,and I've introduced the line.That's what shows me in the window:
https://gyazo.com/0e4195ed02e905f23241e1d5c13f65ef

Since last update I cannot access my project as the window "Loading project..." never disappears and workspace window never shows up...
Greetings!

Zukero
Lead Developer
Posts: 1482
Joined: Thu Jul 21, 2011 9:56 am
android_version: 7.1

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

Post by Zukero » Mon Aug 14, 2017 10:26 pm

Indeed there's a bug in ATCS. You must have a quest in created/questlist_<projectname>.json that has no quest steps. Add one in this file manually by copy-pasting some from another quest, and edit from ATCS afterwards. I'll fix it soon.

Nut's issue might be completely different.
Lvl: 78, XP: 8622632, Gold: 271542, RoLS: 1, ElyR: -, RoL: -, ChaR: 1, GoLF: 1, ShaF: 1, SRoV: 1, VSH: 1, WMC: 1, GoW: 1
HP: 71, AC: 301%, AD: 38-47, AP: 3, ECC: 50%, CM: 3.75, BC: 101%, DR: 2

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest