LarryG on 11/9/2017 at 23:23
The player has to be able to drop them too. So the qvar will have to be decremented too. It's all possible. I'll work it out.
Quote Posted by Daraan
I'm just curious what's the special thing about this conversation?
It is not just one conversation. It is
10 11 (!) interconnected conversations with a ghost. One to play at the beginning of the quest, then follow up conversations to be played as the player proceeds. One conversation gives the player a goal to get something (A+B). There's one if the player returns with nothing. Another if they return with only item A. Another if they return with only item B. Another when they finally return with both A and B. Another when they return without C. Then another when they return with C. Then another when they complete a task with C and get a final task. Another if they return without completing that task. And one when they do complete that task. I'm forgetting one ... no, that's
10 11, whew. It's complicated, trust me.
ZylonBane on 12/9/2017 at 02:41
Sounds like a job for a Squirrel script.
john9818a on 12/9/2017 at 03:18
Primary sound buffer format : 16 bits, 22050 Hz, stereo.
changing STATE to 0Start
Murus got message: ObjRoomTransit
Murus got message: PhysMadeNonPhysical
Ambient: inloop Halt didnt null handle for 200
Murus got message: TrapSprung
Changing STATE from 0Start to 1Intro
Murus got message: PhysMadePhysical
Murus is at alertness 3 and his state is 1
Murus has called SayAndGo with Speech -641 TeleportSpot 590 NewState 2
Changing STATE from 1Intro to 2Deal
Say called with speech: -641
'Speaking' is currently 0
Now we are making the call to PlaySchema...
Murus playing sound at position -43.516975 -22.568743 5.203139
Success was TRUE
Speaking has been set to -641
Murus got message: PhysMadeNonPhysical
This was in the mono.txt file. In a test I dropped miss11.osm and then none of the Murus or Eye scripts/events took place. So I believe the murus script plays a big role in Murus' actions and speech. The murus script seems to provide an uninterruptible mechanism to direct the events that took place in RTTC. The script is referencing specific schemas by using their archetype number i.ie. -641 and teleported Murus using concrete marker numbers. Probably the archetype and concrete numbers are hard coded in the script.
LarryG on 12/9/2017 at 03:44
Quote Posted by ZylonBane
Sounds like a job for a Squirrel script.
You volunteering?
Seriously, I think I can do it without a custom script, and I think that using conversations will provide me with flexibility to experiment with motions to match the words my ghost will be speaking. But if I end up needing the help of a squirrelly script writer after banging my head on this for a while, I'll advertise for one in a new thread.
John does raise a valid point about these needing to be uninterruptible events. As I understand it there are issues with saving during a conversation and then restoring from that save? If so I may need a way to prevent saving as the first step in the pseudo-script and a way to enable saving as a last step. Or maybe a warning in the readme not to do that will be enough? We all know how well folk read readme files.
LarryG on 12/9/2017 at 03:57
For those interested in what is planned from a state view, this table may explain it. The cells in green for a row are necessary states for the conversation indicated on that row to take place. The redish cells indicate state changes made by the conversation (if any). Those in yellow are just the expected states at that time, but the conversation doesn't care about them.
[ATTACH=CONFIG]2401[/ATTACH]
For example, for Conv6 to be played, Garrett must be in Room Brush C, Qvar1 = 1, and Qvar2 = 3.
For Conv9 to be played, Garrett must be in Room Brush C, Qvar1 = 2 and Qvar3 = 1, and by the end of the conversation Qvar 3 will be incremented to 2.
LarryG on 14/9/2017 at 05:47
Well, hell, AIWatchObj link on an actor for player intrusion really messes up a conversation's execution. Who would have guessed? There may be a reason that Murus just stands around like a big dummy and conversations were not used.
john9818a on 14/9/2017 at 08:12
That's why I felt that there was a need for an iron-clad script that continued regardless of what the actor was doing. I have been able to make Murus jump back because he wasn't aware of me but suddenly was, but the AIWatchObj link and the conversation I believe are both Pseudo script list of events that can't run concurrently.