I dug a little into the game files and wrote a simple editor in java. If there is someone here who understands the structure of the game files, I would like to get help from him. Thank you!
I extracted textures and sprites using this utility: https://www.extractor.ru/ipb/index.php?showtopic=2300&p=14525 At the moment, I can modify world.X0 .X1 .X2 .X3 files (delete, move, copy objects and textures). I have not yet figured out how to create new objects with certain properties so that the game perceives them correctly. Objects are stored not only in the objects.x0 file, but most likely in the date.000 file I write the editor in Java, I have little experience, so I don’t know how to implement a lot. Here is the video of the latest version:
I have started playing around with your editor and have spent many hours of enjoyment with it. I am currently working on making some tweaks to world 0 and plan to do the following with it:
revamp and beautify aleroth. player home in aleroth revamp aleroth cave. remove book pile in mardaneous's house that slows him down when unfreezing lanilor because mardaneous is always painfully slow. Those extra seconds matter to me. remove stormfest castle treasure room door (the teasing is over, time to give the people what they want) remove dr. elrath stupid door puzzle (too many people lost saves to this, also this makes no sense lore wise how dr. elrath would even get access to parts of his house without being locked in forever. Seeing as the only teleporter stones in existance are with the divine one). I have already solved this quest many times before, im sure many have and its time for it to go.
I had to scrap some map changes as I had accidently pressed some keys which deleted random objects and walls on the maps of world 0.
I am impressed with this editor! I wanted to personally thank you and tell you did a great job for even just a 0.2 release.
I have some feature suggestions if you are interested: zoom ability or atleast a minimap to help find locations more precisely. changing the texture "brush" size. Its too large, I cant quite make fine details without using in game objects to cover texture lines. an ability to lock certain keys like space bar from accidental press. creating backups before modifying maybe setting up a save file timer (every 15 or 30 mins)?
I understand object properties are a bit of an issue now so I didnt list that. Also I am not sure if all of the textures are being loaded. i cant find aleroth's cobblestone road texture anywhere.
also if anyone is interested, i can post my modifications on the forums if anyone is interested.
Yeah, about the cobblestone tex. I wasn't being too "bright" because I found it. Haha.
As far as the script editor, I think it's above my head right now. I was mostly looking for references to reputation, which must be stored elsewhere. I don't know anything about scripting DD to be useful. But I did take a peek at it and looked through the scripts.
I hope I can help promote your editors so others will see and download them. So maybe I could do that by sharing screenshots either on site or send them to you to help show people what your map editor is capable of. As far as promoting your script editor, you would need someone with more brains than me in scripting.
Edit: I created an account when I stumbled across this. I also thought it would suck to wait 3ish months for a reply after your 0.2 release. Fyi larian forums, I'm not talking smack, just merely expressing empathy in this instance, no malice in that statement.
By the way ranaar, there are many steam forum discussions on DD, I would also promote your editors there. I would be careful with modnexus. I heard (allegedly) they try to take over ownership of mods and works hosted on their site. I would sign your code to help secure your ownership of the source code just as a "cover your assets" plan.
Last edited by ArsTheBright; 14/07/2402:05 AM. Reason: Prevent double post
I had just saw that video before I went to bed. That should be fairly helpful, especially the comments section.
Also can you recommend a free site to upload photos and maybe videos? What about a site to host my and other people's DD mods so people can download them?
I also have the file to enable lar's bone difficulty (nightmare difficulty).
How do you remove darkness shroud/fog when you extend the walls of the caves further than the original map? Some of the areas in mardaneous's cellar that I made bigger are covered in complete darkness. What removes that darkness?
Edit: how do I add trade merchants? Want to add an alcohol vendor, food vendor and second trade vendor in aleroth.
Last edited by ArsTheBright; 15/07/2402:44 AM. Reason: Question
I have some more issues to report for the map editor:
1. You can't change property values with the properties window.
2. NPCs' (all of them) do not work. Not even the rats (I added in) work or even show up. The editor may need to be linked to more game files to get the data structure for items and NPCs'
3. Can't remove permanent shroud in parts of mardaneous's aleroth cellar I extended the size of. Torches don't work either, running through the shroud doesn't remove it.
What does work are all decorations, copying items from the map, textures and tiles. That is very impressive for a 0.2 alpha release. It's already a powerful tool as it stands currently. It's a great editor, just needs a little polish. I have spent at least 2-3 days worth of hours on it, that includes having to start over when random walls and items were deleted.
As for the script editor:
1. Nothing I add works. Even if I use your example character for character, letter for letter. I can get the skill or a rep increase but it locks up the conversation with joram no matter where the new code is injected.
2. Also, it's hard to read the compiler errors when it closes so fast. Also can't get logging to work. So could you keep the compiler open or a yes or no prompt to fave the changes? Also if it has errors it shouldn't compile anything but should leave the compiler errors on screen for the scripter to see where the problem may lie.
Can't really rate this program yet because I still am a noob at DD scripting. I tried viewing the story file through a text editor (notepad++) and a hex editor (HxD) and all I got was garbage code (like you get when you view a files contents with the wrong program) so I couldn't view the in-game examples you mentioned.
Props editor:
This program just works! I don't even know if there's anything you can do or even add. Wish you can change skeleton types you summon to different types but I'm sure that data isn't even in props.000
Either way this props editor feels complete to me.
My mod (still in alpha) is almost ready for release once I work out the rest of the graphical gremlins (in game). Some graphic issues can't be fixed like aleroth roof sides. So when I extend buildings walls not covered by the roof, they are visible and need to be covered. Problem is whatever is used to cover your new walls may poke through them, so a balance or compromise has to be made. Also you can see partly inside houses, nothing can be done about this.
I will try that file out with the script editor. I went ahead and posted what I have for the mod. It will probably still need some work but a majority of the issues have been squashed. You should get some pretty nice coverage now.
as for roofs.dat do I just gut the file and leave it 0 kilobytes or do I zero it out with a hex editor?
also I understand your life is not dedicated solely to these tools and that is understandable. I hope I speak for the community when I say we are very grateful for your contributions. Even if these end up being the final versions, you still did something incredibly amazing. So take a break, enjoy life for a while, and when you come back, perhaps there will be more feedback to help you code your tools.
I do have one request that might possibly bypass the need for hooking into data files to make npc and objects work. if its possible, maybe a "vault map" could be generated as a temperary holding cell for items and npcs (along with the ability to copy NPCs) so when you change maps, it still holds them and you can place those things on the map you just loaded. Example: I open the vault tool in the map editor, I go to world 3, copy some monsters than load world 0 and offload monsters from the fault where ever I like. Not sure if its even possible, but its a wacky idea I thought might have a remote possibility of being helpful. We would also need the ability to edit properties, maybe that could bypass needing to load data files, but im just guessing. Anyway, I will see you around sometime.
Yes, you need to completely clear the props.data or create a new empty file. I'll think about how to implement an object buffer in the future. Your enthusiasm gives me energy to continue working on the editor
Haven't touched the script editor yet, been working on finishing v1.1 of the mod which will make wastelands more like a settlement.
Have you ever figured out how to add your own notes? I'd like to do this to help fill lore gaps between the orcs' and their war between the imps, humans and black ring.
Also is there any x y coordinates listed in scripts for NPC's (like splinter in blue boar inn), or teleporter stones, if not than how are they linked to areas?
Also can their alignment toward the player be changed? I'm hoping for friendly orcs' in wastelands in the further future of the mod.
I also think I came up with an idea on how to load up cabinets and chests with custom gear. Basically I would open the cabinet or chest in game, load it with appropriate gear, save it than pull the world map out of the save, put it in main/startup and test to see if that gear ends up in the container. This will fix containers having similar items.
Edit: how did you load custom worlds in save games? I wanted to wrap to wastelands for some gameplay footage without having to play the whole game.
Also version 1.1 is close to release. I'm sure you have your own mod, but feel free to take a peek through it with a separate installation and let me know your thoughts and criticisms. I purposely did not show like 80% of the mod so people can have their own experience.
Had my friend try it, he spends like 15 mins or so in Aleroth before bee lining toward ars magica. He spent like an hour in Aleroth with my mod and still hadn't even left the front gate. I wanted people to spend more time in Aleroth before leaving.
Last edited by ArsTheBright; 22/07/2411:32 AM. Reason: Update
I'm going to completely redesign the editor in the future, because with each update it becomes more and more inconvenient for me. For now, I can suggest using this to quickly move around the world: https://github.com/Raan/DivTeleport/releases/tag/v0.0.2
Thank you very much! This will make testing much easier! I'm putting scripting for the mod on hold until I get mapping, skill balancing, and repeat items in chests cabinets sorted out first.
I'll play around with it from time to time, but I'm thinking I would be wise to eventually find someone good at scripting to take care of that.
As for rewriting the editor, sounds tough so best of luck. Don't forget to take a break now and than so you don't hit burnout. I was experiencing that editing wastelands, lucky I am halfway done. I took a break and feel better now, so don't forget to take time for yourself.
Edit: not to pile on but eventually a program that could edit dialog.000 would be ideal. I believe all the conversations and choices are in there. Between that and scripting, new NPC's and dialog can be injected into the game. My thoughts being adding some background, backstory and lore through dialog in the wastelands to fill the gaps in the story.
Getting NPCs' to work is tricky. Some areas don't allow any, some allow certain types, it's really limited. NPCs' seem to be tied to the data file just like items. Putting the following in Aleroth in the beginning caused issues:
Butterflies morph sometimes into guards Bunnies sometimes turn into skeleton warriors Frogs sometimes turned into asp snakes Dog turned into an orc warrior Waitresses are fine Vendors morph into random people or creatures
Seems the game almost insists that if you add NPCs than they must be in certain areas and be similar to each other with a few exceptions to the rule. Add an NPC in a wrong area and it can cause data corruption and crash, requiring you to copy over a clean install and try again.
None of this is your program, the game just has weird rules that must be learned.
Last edited by ArsTheBright; 26/07/2402:01 PM. Reason: Dialog.000
Do these editors work with beyond divinity by chance? Most of the tools work for divine divinity demo (except props, because it's in text form).
Got NPCS' working. They are just like items, if you aren't in the area where they normally appear, the data set won't be called for them. They can only be added in earlier areas with scripting.
Ok, no problem. It's not important at this time, was just curious.
Your editor works except for items (which you already know), but I have an in game workaround for that.
An undo button would be nice, but that's why I keep backups. This editor works so well, I'm sure just about any modder could use it.
In the future (probably after ADDM v1.2) I will write some modding notes, zip it up and post the download so others can have modding documentation to speed things up for others. When they are up, you can host them on your GitHub if you want a copy to host.
At this point I don't think I have anymore suggestions for your editor. It's not like it needs very much, it's already highly functional. Though you may want to get some friends to make some translations (french, Spanish, etc) in the future, but probably not needed yet until people take a more active interest in it first.
Mostly things like potions, food, drinks, armor or weapons. You can see them in game, when you highlight them nothing shows, and you can't pick them up or use them.
The items issue hasn't been much of a problem for me since I can copy what's on the map, create a savegame and edit the item, than inject that savegame data into the main folder so changes are permanent (like making mithril armor have Intelligence requirements, or creating starting gear that the game can't change into broken/wrecked/destroyed/cracked or worn gear).
Doing this allowed me to bypass the items problem in the editor and have finished ADDM v1.2. this will be the last update of ADDM for quite a while since there is very little more I can do or add without scripting.
Anyway if you want more spotlight on your mod tools, I can create a reddit account and announce your tools and my mod on there to drum up more interest quicker. If you need more time to work on your mod tools before I post on reddit, I can wait until you are ready to receive more attention if you still need the time.
I think it will be possible to do this after the release of the new version of the editor. Maybe there will be a person there who will help to make normal sorting of objects on the screen
Still having problems with adding any new NPCs. What version of the game are you developing the editor with? I am using steam 1.00062, not sure if digital, disk or regional versions are different but may want to look into that
As far as the NPC issue, if I add any monsters or animals to any area, they are fine for a few seconds than you walk away and come back than they are something different. For example, I added more orcs to aleroth forest (25 orc, 26 borc) and they turn into zombies, dwarves and other things
Example 2, I added more rats to an area in mardaneous's cellar, they were fine at first, when I came back, 1 was a dragon rider and the rest were orcs.
We need a way to copy monsters like we can with objects and decor.
If you need, I can share my DD data files since you and I both have paid copies, but only temporary. Once you download them, the files will be deleted. Just tell me the names of the files you need and I'll leave the extras out to keep the download smaller.