At the moment, the difference between the a mod and a scenario is that a mod can edit..anything in the game. It can create / edit interface files, create/edit units and sounds, etc.
At the moment a scenario cannot have a new unit file or sound file or anything attached to it. However, we really want to add this and our current scenario structure makes adding this not too hard, but other gameplay features are higher priority right now.
So in the future, you will most likely see the ability to easily attach new units or models or sounds or anything to a .dofscn. This will make a scenario nearly the same as a mod.
2. I don't know about file size limits. Definitely won't be very low.
3. Mods? The Dawn of Fantasy is engine is basically just a lua interpreter. Almost everything you see in the game is scripted. This makes modding in dawn of fantasy immensely
powerful. You could turn DoF into almost anything you want if you know lua.
4. Persistent data: Well, it is a possibility. But not very likely.
5. Map protection: we share similar thoughts. I was a designer for Starcraft & Age of Empires II for many years before I joined Reverie, and I still fool around with AoE2 a bit. Many of my coworkers are in similar boats.
So put down protection as another 'possibility'. This would be one of the easier features to add.
Since every .dofscn is simply a modified zip archive - try opening any dofscn in WinRAR and look
. This archive layout of scns is why adding attachable unit files or sounds or anything would be not too hard an addition for us. This archive format also lends itself to easy map protection - we would just need to add something very similar to the way WinRAR puts a password on an archive, then add that to the editor.
6. GUI scripting is something we have wanted to add for awhile. But it probably will not happen anytime soon, it is a big project.
However, a modder could easily create a GUI scripting utility for us. Gogo guys ..
7. Custom interfaces: A completely custom interface is not possible in a scenario. But it is possible in a mod (since all interface is just a lua script in /Resource/Interface/).
A possibility at a later date, though, is to add some communication functions so that the scenario script could tell the interface what kind of interface to create. A modder could also write this communication and submit it to reverie.
8. Unit events: you will be happy.
Each unit has an 'event' function each time almost anything happens. Including OnAttackReady, OnAttack, and OnAttackEnd events. There is already functionality for the scenario to use these events. OnAttack and OnAttackEnd tell you the attacker and the target, like you wish, as well. Custom projectiles aren't hard either.