v1.04 - Fixed iOnceOnly section of PageEvents function. Fixed some typos that could mislead.
v1.03 - Made compatible with fontfamily.xml change with SoZ.
v1.02 - Made code compatible with companion use of books.
v1.01 - Made code more compatible for those who wish to mix books with a Table of Contents and pictures.
This module is based upon work previously done by clubok, which can also be found at the Vault: Link
MODULE DETAILS:
My version does not use or rely upon TLK or 2da edits. All text and page events are input and controlled through one script that must be updated as required by the builder. A full ten page PDF manual supplied with the module goes into more details.
Many of the features remain the same as clubok's original:
- Two pages viewable at any time
- Can turn pages forward and backward
- Create books with or without Table of Contents
I have introduced a few additions of my own:
- Table of Contents stays open and works with the same book now.
- Picture Books: View pictures within the books.
- Read Language Scroll magic item.
- Wizard/sorcerer spell book. (Personal requirement.)
- Multiple events per page and not just book.
- The demo module "Readable Books".
- The UIs required. (Two XML Files.)
- The Hak required. (Also a second "text change" test hak.)
- Ten page PDF document telling you how to do your own books.
If you mean: Can it change all books in the SoZ campaign to "Readable" style books?, then this utility does *not* do that, although somebody with the patience and know-how could use it to do that.
If you mean: Does it work with the SoZ expansion for people to build their own books, then the answer is yes it does work.
I hope that clarifies the use of this NWN2 UI facility. While it does not change the existing books written for SoZ, it can be used to create new books for people using the SoZ expansion to build their own books.
Lance. _________________________ World of Althéa Blog: Link
That is what I thought you would say. :) And from that, I understand that my version is aimed at a different builder audience ... SP and MP games, but not PW's. For, a builder *can* change the contents of a book (even during a saved game using the "empty hak" patching system), but only between reloads of the game (which is not what you want for PW's if it can be helped).
I can completely understand why you would prefer 2da files in your case. In my case, however, they are a*bleep*bersome thing to have to use and are something I like to avoid if possible. :)
Lance. _________________________ World of Althéa Blog: Link
Posted by Arvirago at 2009-02-26 18:19:46 Voted 8.50
Sorry I forgot to answer.
Yes, using a database is more flexible. Example: I can leave some empty books ("a big red book", "an ancient black tome", etc) and when the DM is guiding a game, he can go to the web, write a hint in the book, and put it in an area so players will find it (in our server you need the "reading and writing" feat to read books).
Or he can make a magical book that will contain a different hint depending on what stage of the quest they are in.
Or if a PC does a criminal action, the DM can write his name as a "Wanted sign", and make the book available all over the town.
And all that without restarting the server. _________________________ Reino de Aldor
It was the fontfamily.xml. They altered the last two lines. So, thanks again for the heads up. Let me know if this osrts it OK, or if there is any more issues.
Thanks.
Lance. _________________________ World of Althéa Blog: Link
Not all of my post came out .... weird. I also said ... I will take a closer look at this and see if I can see where there are any changes and upload a compatible version.
Lance. _________________________ World of Althéa Blog: Link
I checked out the image you linked to, but did not notice what was supposed to be wrong. :( I have not got that far yet. ;) I guess its to do with the font sizes, as that is the only UI that has been "offically" amended in any way.
Thanks for the heads up.
Lance. _________________________ World of Althéa Blog: Link
void PageEvents(object oPC, string sJournalID = "", int iState = 0, int iGold = 0, int iXP = 0, string sMonRef = "", int iOnceOnly = 1)
{}
And the manual says this on page 5:
"JOURNAL ENTRIES:��string sJournalID will accept the Tag of a journal entry. This requires the next parameter (int iState) to also be added, so that the entry knows what state to place the journal in. Obviously, you will also need to add a journal entry with the appropriate state for this function to work. The journal Tag will be the same ID as the book that requires the journal entry. (That would be �althea2� in the above example.)"
And a working example is found in the script on page four that says:
PageEvents(oPC, sBookID, 2);
The sBookID refers to the tag of the book AND the journal tag entry - and then the figure 2 refers to the Entry ID.
Therefore, for your book that has an ID of "MyBook", then the Tag for the journal entry should also be "MyBook". Therefore, note, that if you have a journal entry around other code, you either need to change the book ID to match the journal entry you have used, or vice versa, match the journal entry tag to match the book ID.
I hope that helps.
Get back to me again if you still need more help. :)
Lance. _________________________ World of Althéa Blog: Link
Posted by MokahTGS at 2008-09-23 22:37:24 Voted 10.00
Let me know if anything does not work as expected, and I will address it if I can. :)
Lance. _________________________ World of Althéa Blog: Link
Posted by Eguintir Eligard at 2008-08-04 15:37:38 Voted 10.00 on 08/04/08
Friggin awesome, and should be mandatory for ANY games modules with books. Now with companion support I can give it a true 10 because it lacks nothing.
10 - A Masterpiece, Genuinely Groundbreaking 9 - Outstanding, a Must Have 8 - Excellent, Recommended to Anyone 7 - Very Good, Deserves a Look 6 - Good, Qualified Recommendation 5 - Fair, Solid yet Unremarkable 4 - Some Merit, Requires Improvements 3 - Poor Execution, Potential Unrealized 2 - Very Little Appeal 1 - Not Recommended to Anyone