freenode/#shirakumo - IRC Chatlog
Search
17:55:38
Shinmera
I'll need some more time to get the whole system laid out in my brain, but I think I'm getting an idea for something that'll work. Basically for each event in the system you can call a function that'll compute a list of applicable dialog options. When defining a dialog sequence you write down the event filter that makes it applicable, and a state change once the dialog is complete. With some macros thrown
17:56:30
Shinmera
So when the player tries to interact with an NPC, enters an area, etc, an event is fired, and the dialog gets fired if applicable
17:57:19
Shinmera
The only thing that's wavy still is the state change bit, since I don't know how complex and indirect that state should be able to be
17:59:12
Shinmera
For the menu I guess a dialog can include an optional title string that's used in the menu for more context
18:05:09
Shinmera
Also on the side trying to solve the channel disparity problem in Harmony on un/pack. Specifically if a source or drain has less buffers attached than promised, the system currently crashes. Might be a reasonable response to some, but I don't know. There's also multiple ways of dealing with the problem and I don't know which is the best or if I should make it configurable somehow.
18:06:02
Shinmera
For instance if a stereo source only has one buffer attached you could either remix by just picking one channel, or mixind both channels together.
18:07:14
Shinmera
Though I think the most obvious solution is to remix on sources and mute on drains.
19:11:07
jasom
Shinmera: actually on reflection I think IF engines are a dead-end unless you want some complex conversation trees
19:12:21
jasom
Shinmera: and now that I think about it, triggers in classic IF would *all* trigger; so e.g. if NPC A would talk about X if you have a ring and Y if you have a sword, then they say both X and Y