Mini tutorial: Editing enemy spawns Jan 28, 2016 15:08:36 GMT 10 sulli, Pvimto, and 1 more like this
Post by FluffyQuack on Jan 28, 2016 15:08:36 GMT 10
There are LOT files in stage archives which define various information about enemy spawns. All of the stage archives are in "nativePC\rom\stage" and you can see a mostly complete list of stages in this thread: residentevilmodding.boards.net/thread/5764/ddda-arc-list-spoilers
If you use the "-lot" option for arctool, most LOT files will be converted to txt and they'll become easy to modify using any text editor. Each entry corresponds to one enemy in the LOT file, and you'll see a ton of variables for each one. Many of these variables are unknowns, and if people figure out what they correspond to (I imagine there's values like health, level, and other obvious stuff I haven't discovered yet), let me know, and I'll update the LOT converter. And actually, if anyone wants the LOT conversion code, I can post that and someone could help me trying to figure out support for more LOT formats.
Most of the values are pretty straightforward to edit. For instance, if you change the scale value for saurians in the well in Cassardis (stage700.arc), you can make them roughly the size of dragons:
Or maybe the size of rats:
And more interestingly, you can simply duplicate entries in the LOT files to make the game spawn more enemies:
One downside to duplicating enemies is that there seems to be a rather low limit for how many enemies can be active at any moment. For instance, in the screenshot with the rats, I duplicated enough rats for there to be more than 30 of them. But only around 10 or so would be active at a given time, and I had to kill them and then return to the area for the other ones to appear. I have no idea where this limit is defined (it might be hardcoded).
Even so, there's a lot of potential with editing enemy spawns. It would be a big project though, especially since the main stage in the game (stage100; Gransys) is absolutely gigantic and has a ton of files. I only did tests with stage700 because it's so small and it was easy to figure out which enemy group is which. For stage100, Capcom has duplicated files into different kinds of archives to make loading more flexible. For instance, LOT files are duplicated in archives with names like st100_56m51n.arc, st100_56m51n_lot.arc, and st100_56m51n_sub.arc. So if you want to edit one specific group in the open world, you'd need to edit all 3 versions of the same LOT file.
Another important to mention is that there are XFS scripts which handle some specific spawning in the game. But I think for the most part, the game simply loads all LOT files for a stage and spawns enemies as the player gets close to them. This kind of free dynamic spawn system might be why there's such a low limit for how many enemies can be active at any given time. It certainly would be nice to increase this limit, but I have no idea where it would be defined. Another important to mention is that I don't know if messing with enemy spawns has any adverse effects on the savegame.