Looking to start a chatbot expansion
Moderators: winston, another_commander
- PhantorGorth
- ---- E L I T E ----
- Posts: 647
- Joined: Wed May 20, 2009 6:48 pm
- Location: Somewhere off the top left of Galaxy 1 map
Just to let people know how I expect the AIs of NPC to be able to react would be along the lines of:
If you are responding to a message sent to you then an AI message is sent to that ship only. The same applies when you select narrowcast. If you broadcast then the AI message is sent to all ships, stations, etc that match the channel type.
The message itself will be a simple message such as "PlayerResponds" (if following an NPC message to you) or "PlayerMessage" (when the message is a cold call) and maybe a few special ones such as "MayDay". The options/fields the player selects are stored for later accessing by the AI. NPC AIs can then be altered to have actions on those messages and can also use new AI methods (to be written) such as "PlayerCommsOption:RESPONSE1 OPER:EQ VALUE:PAID AIMSG:PLAYERPAID" which sends to the ship's AI the message "PLAYERPAID" if the option RESPONSE1 equals PAID. JS scripts should also be able to access the select response options of the player. All of this together should give the ability for complex interactions.
If you are responding to a message sent to you then an AI message is sent to that ship only. The same applies when you select narrowcast. If you broadcast then the AI message is sent to all ships, stations, etc that match the channel type.
The message itself will be a simple message such as "PlayerResponds" (if following an NPC message to you) or "PlayerMessage" (when the message is a cold call) and maybe a few special ones such as "MayDay". The options/fields the player selects are stored for later accessing by the AI. NPC AIs can then be altered to have actions on those messages and can also use new AI methods (to be written) such as "PlayerCommsOption:RESPONSE1 OPER:EQ VALUE:PAID AIMSG:PLAYERPAID" which sends to the ship's AI the message "PLAYERPAID" if the option RESPONSE1 equals PAID. JS scripts should also be able to access the select response options of the player. All of this together should give the ability for complex interactions.
i really like this idea. I wonder if this grammar based approach could work, or I wonder if some sort of expanding menu approach works as well.
sorry I have been MIA from this baord. couple issues popped up that needed attention.
sorry I have been MIA from this baord. couple issues popped up that needed attention.
"Any sufficiently advanced technology is indistinguishable from magic." -Arthur C. Clarke's Third Law of Prediction
- PhantorGorth
- ---- E L I T E ----
- Posts: 647
- Joined: Wed May 20, 2009 6:48 pm
- Location: Somewhere off the top left of Galaxy 1 map
The grammar nature supports the branching nature of possibilities. Also it mean converting a simple internal grammar to an actual human readable sentence is much easier. There will three grammars. One very simple for internal use that is language independent so scripts can use the results. One for short on screen display in the interface and one for creating the text that goes into the already existing comms log. These last two could be altered for localisation purposes.
As I said somewhere else, you don't actually need to recode oolite to achieve something like that, it should be pretty feasible to code an oxp with a lot of the above functionality with 1.73.4 already.
<grumble> it looks like I'll have to make a bare-bone example, then</grumble>
<grumble> it looks like I'll have to make a bare-bone example, then</grumble>
Hey, free OXPs: farsun v1.05 & tty v0.5! :0)
- PhantorGorth
- ---- E L I T E ----
- Posts: 647
- Joined: Wed May 20, 2009 6:48 pm
- Location: Somewhere off the top left of Galaxy 1 map
Yes the text itself could be derived and manipulated in JS and messages could be sent to AIs but how would you do the overlaid screen and populate it with the text? How would you intercept key presses for toggling, option selection, field typing (when required) etc.? Does Oolite's JS engine support file loading?Kaks wrote:As I said somewhere else, you don't actually need to recode oolite to achieve something like that, it should be pretty feasible to code an oxp with a lot of the above functionality with 1.73.4 already.
<grumble> it looks like I'll have to make a bare-bone example, then</grumble>
I'm not sure you absolutely need all those extra bits in order to get the functionality you're after. I'll be back on this subject on Sunday, hopefully with the kernel an actual ship-to-ship comms oxp, something that works on 1.73.4
Hey, free OXPs: farsun v1.05 & tty v0.5! :0)
- PhantorGorth
- ---- E L I T E ----
- Posts: 647
- Joined: Wed May 20, 2009 6:48 pm
- Location: Somewhere off the top left of Galaxy 1 map
Ok, better late than never. I ran out of ideas for dialogues, but this demo should at least hint at the possibilities.
commsDemo 0.1
To see the demo in action, target a trader, then press F8.
The Comms Screen could have been activated by F5, F6 or F7, but I kind of liked F8.
In future, if I get the time, I'm going to expand on it, to make it practical to use as a dialogue framework - and I'll also add the ability to talk to police, stations, etc...
The only reason I've restricted the comms function to traders is that it would have taken me an exceedingly long time to come up with dialogues for the others...
Also, at the moment it offers between 1 and 3 choices per dialogue, but it could as easily offer 4.
5 or more choices per dialogue are not technically possible, and would probably be too taxing. It seems that we're all geared for 3 choices in the majority of cases!
Please have a look, dissect, offer dialogue trees, whatever!
commsDemo 0.1
To see the demo in action, target a trader, then press F8.
The Comms Screen could have been activated by F5, F6 or F7, but I kind of liked F8.
In future, if I get the time, I'm going to expand on it, to make it practical to use as a dialogue framework - and I'll also add the ability to talk to police, stations, etc...
The only reason I've restricted the comms function to traders is that it would have taken me an exceedingly long time to come up with dialogues for the others...
Also, at the moment it offers between 1 and 3 choices per dialogue, but it could as easily offer 4.
5 or more choices per dialogue are not technically possible, and would probably be too taxing. It seems that we're all geared for 3 choices in the majority of cases!
Please have a look, dissect, offer dialogue trees, whatever!
Hey, free OXPs: farsun v1.05 & tty v0.5! :0)
Hmm, almost 3 weeks later, and 0 comments, 7 downloads for this one.
I'm pretty sure one of those 7 downloads is from me too. It looks like that working 2-way comms with another ship is not that interesting, then.
Good job I didn't try anything more elaborate!
Sad but true: just before uploading it, I thought I'd try to have it automatically slow down Oolite when looking at comms, then change the game speed back.
After a little reflection, I thought it would be too much trouble for a .1 release!
I'm pretty sure one of those 7 downloads is from me too. It looks like that working 2-way comms with another ship is not that interesting, then.
Good job I didn't try anything more elaborate!
Sad but true: just before uploading it, I thought I'd try to have it automatically slow down Oolite when looking at comms, then change the game speed back.
After a little reflection, I thought it would be too much trouble for a .1 release!
Hey, free OXPs: farsun v1.05 & tty v0.5! :0)
- Cmd. Cheyd
- ---- E L I T E ----
- Posts: 934
- Joined: Tue Dec 16, 2008 2:52 pm
- Location: Deep Horizon Industries Manufacturing & Research Site somewhere in G8...
I didn't see this, Kaks... Will download it once I start playing again. Spend most of my time right now doing texturing...
Find my OXP's at:
Deep Horizon Industries - Your Planet Our Design
Deep Horizon Industries - Your Planet Our Design
- Cody
- Sharp Shooter Spam Assassin
- Posts: 16081
- Joined: Sat Jul 04, 2009 9:31 pm
- Location: The Lizard's Claw
- Contact:
I missed this as well.
Just tried it. The Captain of a Boa just refused to give me 1 credit.
I had to laugh. Very promising, Kaks. Thanks.
(And I am interested).
Just tried it. The Captain of a Boa just refused to give me 1 credit.
I had to laugh. Very promising, Kaks. Thanks.
(And I am interested).
I would advise stilts for the quagmires, and camels for the snowy hills
And any survivors, their debts I will certainly pay. There's always a way!
And any survivors, their debts I will certainly pay. There's always a way!
- Cody
- Sharp Shooter Spam Assassin
- Posts: 16081
- Joined: Sat Jul 04, 2009 9:31 pm
- Location: The Lizard's Claw
- Contact:
Last edited by Cody on Fri Dec 18, 2009 10:45 pm, edited 14 times in total.
I would advise stilts for the quagmires, and camels for the snowy hills
And any survivors, their debts I will certainly pay. There's always a way!
And any survivors, their debts I will certainly pay. There's always a way!
Suddenly a new career opportunity opens!
Only 599 moresuckers generous people, and you can get an ECM!
PS: good to know someone appreciates!
Only 599 more
PS: good to know someone appreciates!
Hey, free OXPs: farsun v1.05 & tty v0.5! :0)
- Rustybolts
- ---- E L I T E ----
- Posts: 293
- Joined: Sun Jun 07, 2009 6:22 pm
- Location: UK
Downloaded and tried out loooking forward to the possibilities this could open up if completed. I'd say don't give up on it yet. It probably has not been downloaded much as its still only at test status and people skip it waiting for a more complete release.
STE.+ Firefly/Dragonfly + BlackJacksbullion v.1.23 link below.
http://www.mediafire.com/?sharekey=ca16 ... f6e8ebb871
http://www.mediafire.com/?sharekey=ca16 ... f6e8ebb871