Those who read the dev team meeting reports know that I've been busy working on a desktop version of the content editor.
It is called Andor's Trail Content Studio (short: ATCS).
It is now able to create and edit all types of game content (except for map graphics layers, for which Tiled is still recommended) meaning that you can create, edit and generate JSON for Actor Conditions, Dialogues, Droplists, Items, Item categories, NPCs & Quests; create and modify all the map objects (Spawn areas, Signs...), as well as the worldmaps.
I now consider it the preferred way to create/edit content for AT, over the online content editor, which is both outdated and deprecated.
I'm counting on you all content creators for the following:
- Downloading/installing/using the tool.
- Report any encountered bugs (I'm sure there are plenty).
- Give feedback on the features, on the ergonomics, anything.
Just one tip though, I tried to more or less mimic the "eclipse" vision: a workspace, some projects.... for those who don't know, your "workspace" is a folder dedicated to the tool, where your work will be stored. You can have several.
The ATCS workspace must be a dedicated folder, not one of your eclipse workspaces. Create a new folder on first start.
- You will need a working Java SE Runtime Environment (JRE) version 7 or above installed on your computer (get it here: http://www.oracle.com/technetwork/java/ ... index.html).
- You need at least 1GB of RAM (2GB or more recommended, depending on your OS), as the tool is allowed to grow up to 512MB, and future versions may require more than that.
- Moreover, you will need a folder containing a copy of Andor's Trail sources (like the one available here: https://github.com/Zukero/andors-trail/ ... master.zip for latest dev version or here: https://github.com/Zukero/andors-trail/ ... uction.zip for latest Google Play version).
Windows user, get the installer here: static/ATCS_v0.6.10_Setup.exe
Install it, then run it from the start menu.
If you experience issues, or lack administrator privileges, use the zip version below.
Mac OS X / Linux / Others, get the zip file here: static/ATCS_v0.6.10.zip
If you upgrade an existing ATCS install with the zip installer, make sure to delete the previous "lib" folder. If you have several ATCS_vX.Y.Z.jar files in it, you'll have problems.
Unzip it, then run "ATCS/ATCS.sh".
This "zip" version is meant to work on any system with a working JRE, with "unzip", able to run shell scripts (#!/bin/bash), and with a windowing system. So that should cover BSDs, Solaris, and all types of UNIXes.
Windows users having trouble with the installer can also use this version but should run the .cmd file.
Get the sources on GitHub !
Clone/fork/download the sources there: https://github.com/Zukero/ATCS
If you import it directly from eclipse, it should yield a usable Java project. Tell me if it isn't the case.
Beanshell console scripts examples:
For advanced users only, you can find examples of scripts that can be used in the Beanshell console of ATCS here: https://slack-files.com/T3QURTYGJ-F7XGDAPMW-c452b9319a
To write your own scripts, your best bet is to have a copy of the ATCS sources, and rely on the source code for information about the classes, fields and methods names.
Beware, as using this, you have full control over ATCS and can wreck havoc. If you are unsure of what you are doing, I strongly suggest making a backup of your ATCS workspace before running scripts, just in case you break everything and need to restore.
That's it. I hope you'll enjoy it.
- Generation of loadresources.xml upon project export.
- Project can be exported as a zip file or directly into a source code folder.
- Fixed worrying bug that lead to deletion of all spritesheets in the game source folder referenced by a deleted project.
- Allows negative values for giveItem rewards.
- Bug fixes...
- Bug fixes, mainly related to correct handling of data deletion by objects pointing to the now-deleted objects.
- Support for the revenge strike feature in NPC and Item editors.
- Better UI for actor conditions immunity and clearing.
- Font and icon scaling. To address high or low DPI screens, you can set a scaling factor that will be applied to most fonts and icons. You'll have to edit the startup script (or actually, the generated environment variable script) to use it. See the release post for instructions.
- Many minor bug fixes and UI improvements (replaced free text fields by combo boxes when the game engine limit the set of usable values).
- To match with the latest developments in the AT source code, replace areas can now use all types of requirements, and not only the questProgress. Use with commit 7086684 on master (or 7c23133 on stoutford_tests) or later.
- Many bug fixes in TMX Map editors.
- Fixed bug preventing ATCS to start when a project has a quest that has no quest stages.
- Many small but annoying bug fixes.
- Some UI improvements (better scrolling in TMX Map's replacement viewer, edit the name of a key area...)
- Pressing F1 while editing a node in Dialogue Sketch editor will bring up a rudimentary help window reminding the most important shortcuts.
- Checks for available updates at startup. You can disable it in the workspace settings, or even disallow all internet usage by ATCS.
- Fixed a nasty bug in the Dialogue Sketch tool, that could lead to data loss or corruption.
- Added the "removeQuestProgress" reward type in dialogues.
- When you delete a created or altered TMX Map, it is also removed from any created or altered Worldmap. Impacted Worldmaps are marked as modified.
- Created the GDEVisitor class that will serve as a framework for dependency management (pick a quest or other, and identify all elements linked to it). Currently useable only from the beanshell console. See example in the release post.
- Fixed oh so many bugs in the "modified" marking of TMX Maps and Worldmaps.
- Fixed a stupid bug in the NPC editor, where inflicted actor conditions weren't managed properly.
- New Worldmap Editor: much better management of map labels (Town names). Displays map id of selected maps. Displays hovered map id in a tooltip. Displays mapchanges that lead to maps that aren't part of the worldmap. Displays the target map id in the tooltip for these mapchanges.
- Weblate integration for worldmap town names translation (not yet included in weblate, but supported by the dev game code, so it's ready for the future).
- Fixed stupid copy-paste bug that broke the items & NPCs icon selector.
- New Quest editor: allows translating quest logs, looks better, and can display other game elements pointing to each individual quest stage.
- Quest progress requirements or rewards UI now display a combo box to choose among existing quest stages instead of a raw number number input field.
- Dialogue replies can also be translated (shame on me, I forgot them in v0.6.0)
- Multiple minor improvements to the UI (less horizontal scrolling, taller multiline text editor).
- Weblate integration. On each translatable string, you can have a link to weblate that will open the page for this specific string. If you're connected to internet, ATCS will also show the status and the translation for this string in your language.
- Weblate integration settings. You have to activate the translator mode and select your target language in the workspace settings for this integration to be effective. You can also prevent ATCS from trying to connect to internet to retrieve information from weblate.
- Replaced the ugly icons in the notifications area by the ones used for weblate translation status.
- Data-loss avoidance. The asterisk ( * ) marking unsaved elements is now propagated all the way up the project tree, so that it's easier for you to see whether you have unsaved data, and where to find it.
- Data-loss avoidance 2. Upon exiting ATCS properly (by closing the window or using the File->Exit menu), if there's unsaved data, you'll be presented a "Are you sure" kind of pop-up.
- Object refactoring management. When you start editing an object's ID, you'll be presented an impact management wizard, that'll show you which elements from created and altered will be marked as modified (those already marked as modified won't show up), and which elements from the game source will have an "altered" version created. See the release post for more important information.
- A bunch of bug fixes.
- Fixed a bug in the map editor that prevented the "Active in a new game" box for spawn areas from working.
- Better UI for Items involving Actor Conditions. You can now "Clear" an actor condition without having to know the underlying technical way to do it (magnitude -99).
- Fixed Windows installer, to make it delete the old libs before installing the new ones.
- Better integration with Tiled, or any external map editor.
- Map creation in ATCS, either from the template or by copying one that exists in your project (game data, altered or created)
- More robust startup scripts on both Windows and Linux
- Persistent customization of app startup (memory, java binary, JVM options).
- Sometimes requests admin rights on Windows only.
- Bugfixes to avoid ConcurrentModificationExceptions, by using thread-safe collections.
- See details and instructions in the release post
- v0.5.2b released to correct issue with windows startup script, especially with the windows installer
- A bugfix for actor condition's JSON I/O. Data loss was possible as stacking and positive flags were not saved correctly.
- Maps color filters can be changed with a dialogue's reward.
- A first draft of Tiled integration, severely limited and untested. I wanted the bugfix out quickly. This is the reason of requiring Java 7 now.
- Dialogue sketch ! New feature allows fast creation and editing of dialogues. Certainly full of bugs at this point. Data loss possible. More on this in the release post.
- Ordered JSON output. JSON files should preserve a consistent order, giving easier comparison between two versions (cleaner diff).
- Some bug fixes
- Added the "Display Type" (a.k.a. rarity) column in the items comparator tool
- Fixed colorfilters not showing on worldmap editors and map replacements simulator.
- Removed a stupid and useless feature that prevented an existing project from using new tilesheets in the game source.
- Fixed a bug preventing the "outside" flag on maps from being correctly handled.
- Added support for the new "colorfilter" property on maps, with live, almost accurate, preview.
- So many bug fixes I had to do a release.
- Matches new data format and features added in latest dev version of AT. Best used with AT sources that come from latest github master (commit d126d1e and later). More information on these changes will be in a dedicated thread about AT, not ATCS.
- Some bug fixes
- Resource set selection ! At project creation, you can choose to use only the game data actually used, instead of all .json and .tmx files found in the source folder. Two sets are available, the real game data (that's what you most likely want to use) and the debug game data (a minimal set of dummy data, for easy debugging). The last option, All Files, works as before by using all the files it can find. Existing projects defaults to that last option. You need to create new projects to use one of the new options.
- Update to the NPC and Items comparator tools. They now include all elements, including both the original and altered version of a same element.
- A small UI bugfix in the spritesheet viewer, that should prevent the sprites from being cropped in this viewer.
- Bug fix in the JSON import feature
- Tooltips for the Replace areas simulator, showing all visible sprites for each layer of the hovered tile; and for the Dialogue tree view, showing dialogue ID and, where applicable, rewards or requirements.
- Spawn areas now support the " active" property, meaning it's not spawning its NPCs by default, and must be activated by a script/dialogue.
- Bug fixes.
- Replace area support ! You can now create/edit replace areas on maps.
- Replace areas simulator ! On a map editor, check out the new "Replacements" tab at the bottom, next to "XML".
- Various bug fixes here and there...
- Beanshell console ! If you can write Java code, you can use this nice shell to perform some queries and calculations on the project's data. It's very rough for now (no specific integration with ATCS, just a beanshell graphical widget). Check out http://beanshell.org for more info. I'll try to post some example scripts in this thread.
- Worldmap labels edition/creation.
- Worldmaps creation.
- Bug fixes contributed by Quentin Delvallet merged in (mainly, some min-max inversions).
- Worldmap editor ! You can now view and edit the existing world maps. Exporting these with the "export package generation" also works. You can add,move and delete maps in existing worldmap segments. No creation of new segments yet though (you have to hack the XML if you dare). No creation/edition of map labels (town names) either. These will come later.
- Export package generation ! It creates a zip file with all created/altered files, all bundled conveniently for copying over an AT source folder. Content makers, that is what I'd love you to send me for inclusion in the game.
- A menu bar. You don't have to depend on that "right-click menu" anymore, though it still exists.
- Various bug fixes.
- Comparator tables ! Through the right-click menu on the project tree, you can open a table summarizing all data about Items or NPCs for a given project. The contents of these tables are copy-pastable in a spreadsheet software. You can reorder the columns around, and sort by clicking on column headers. Note that these tables are never updated. If you make changes to an item, or create a new one, you need to close/reopen the comparator tables to have an up to date version.
- Fixed a bug that kept outdated references when deleting a created element, or reverting an altered one to the original.
- Dialogue Tree View ! Accessible from NPC and Dialogue editors. Best viewed from the NPC editor, as it allows to see the NPC's accurate sprite on the dialogues. Use left mouse drag to move the view, right mouse drag or mouse wheel to zoom in/out, double click on an item to open to corresponding dialogue editor. Dashed lines means that there are requirement to fulfill to follow this transition. Yellow boxes mean that there are rewards associated with reaching this point. Look for the "Dialogue Tree" tab at the bottom of the editors.
- Game element selection combos now allow to create a new element. For example: from a droplist editor, in the item selection combo, if none is selected, you have a shortcut to create a new item. After creation, this combo will automatically select the created item.
- Fixed issue with combo box upon creation/import of new game element. You previously had to close/reopen the editor for them to work correctly.
- Backlinks are now updated upon all changes. For example, when you change the item dropped by a given droplist, the old item does not show that droplist in its backlinks anymore, while the newly selected item does.
- Completed enhanced save mechanism
- Multi delete option
- Item price & Npc xp reward now displayed
- Bug fixes in save/create/import mechanism. Not yet perfect.
- Bug fixes in dialogue editor
- Fixed a stupid bug preventing Mac/Linux version from working
- Fixed many bugs in the JSON content editors (items and dialogues mainly)
- TMX Maps edition. You can now create and edit the various map objects, except the replace areas. No edition of tile layers.
- Some improvements in ergonomics.
- Memory optimizations. Now uses ~200MB instead of ~400MB for a fully loaded AT source.
- Bug fixes in Item editor
- Bug fixes in Spritesheet editor
- Faster scrolling with mousewheel
- Smarter folder selection
- First public beta
- Git integration level 1. Instead of referencing a AT source folder for your project, reference a branch or commit from any repo (github or local), and have ATCS handle the dirty work behind the scenes.
- Git integration level 2. Let ATCS export your project by creating a new branch, apply your content there, and commit. Optionally, assist the pull-request process on github if the user has a github account.
- Enhance export package generation: regenerate the loadresources.xml file with the new content, preserving formatting and comments.
- Enhance export package generation: attempt to insert new spritesheets in the relevant source code file.
- Enhance export package generation: compute and update the preloaded tiles collection size in the source code. Irrelevant now that preloaded tiles collection size is dynamically computed.
- Dialogue simulator: based on a game's save, see how a given NPC's dialogue would unroll. Not sure it's very important.
- Map view simulator: based on a game's save, see how a map would look like (apply replace areas, and show relevant NPCs) Not sure it's very important.
- your idea here... post your suggestions
- After upgrading to a new version, you can experience issues with your workspace/projects. Don't hesitate to create a new workspace, re-create your projects with the same names, close ATCS, and afterwards copy the "created" and "altered" folders from each of your old workspace's projects into your new workspace's projects. Finally, relaunch ATCS.
- If you used the windows installer, deleted/reinstalled/upgraded Java afterwards, and cannot launch ATCS afterwards, either reinstall it, or edit <ATCS install dir>\ATCS.cmd to make it use the correct location for "java.exe".
- your issue and the solution here... post about your troubles