Okay, I read the whole thread. And I see a lot of talking about module related content such as script systems, persistency but nothing about custom content in haks and how this will work to avoid issues with CEP.
Im especially interested exactly in the way to distribute the haks to the players and what will be in the haks.
Autodownloader isnt everything. If this should be same for multiple PWs and you want to allow linking PWs together, many of the custom content must be same on all PWs.
- character parts, head especially so the character's appearance wouldnt change between PWs
- item appearances, same as above though less important
- custom feats, spells - this is important, if the player get a custom feat and then join a module without the feat in its feat.2da (that would be the hakless entry module), he would lose that feat (no matter ELC is off) (not sure about custom skills and classes, these might not be removed, but certainly will not work and might cause crash)
The best would be to make the haks modular somehow. So there will be multiple haks speficially designed for this project (I doubt that it will be possible to use any CCC month hak and just go
) and builder choose which he will want so his module will not be bloated with unused stuff. However, it might not be always possible to combine it together as all the stuff must be in 2das anyway otherwise a custom top hak would be needed.
btw:
henesua wrote...
I'm just throwing these out there for discussion. The top two I figured might be controversial so I wanted to raise that now. ShaDoOoW's spell system and the DMFI chat system are things which need to be considered at the beginning because they are fundamentally integrated with the module.
Extracting the spellscripts from the CP and adding them into base PW module would be against a CP rules - unless the CP wouldnt be installed on that server. It would also be very unfiendly to the builders having a ton of scripts inside a module. I could consider to allow to use the spell system externally and redistribute it, but I think it is not neccessary really, CP should be great start for a newstart module and redistributing all the CP files is allowed as long as it stays in BIF structure. Otherwise to avoid the bloating module with script other solutions have to be used: but add scripts into hak is very bad idea so only override would work. Or the solution that uses HR Base would work althought thats a bit unfortunate solution as well. Having all spells integrated in one script has certainly lot of advantages, but also many disadvantages...
Now, some suggestion about module script systems. There is a extremelly usefull framework in PRC called event-based scripting and I think this project would need something like this. It works similarly to the tag-based scripting except of its not based on tag. But the scripts looks similarly its divided on multiple events. It works the way that scripts must be "registered" with a function "AddScriptToEvent" and unregistered.
Module, creature, area, door, placeable then use a set of basic scripts that executes all the registered scripts.
it has a disadvantage that its not very efficient, but this disadvantage can be taken care of via nwnx if the part that loop all registered scripts and executes them will be moved into low-level nwnx engine. Which I should be able to manage.
This system would allowed modularity.