NaNoGenMo / 2019

National Novel Generation Month, 2019 edition.
97 stars 5 forks source link

The Importance of Earnestly Being #39

Open jdm opened 4 years ago

jdm commented 4 years ago

I am working on generating a novel from the ground up:

Everything is based on pre-written fragments that include randomly generated fragments or modifiers based on the target/subject, which allows expanding the corpus rapidly once the base rules are in place.

Repository: https://github.com/jdm/nanogenmo2019

jdm commented 4 years ago

https://github.com/aparrish/seaduck looks like a less hacky version of what I'm building in some ways.

LuRsT commented 4 years ago

This sounds great!

jdm commented 4 years ago

I finally bit the bullet and started introducing dialogue. Sample output:

Ar'va Fertte is a 26 year old male artist. He feels nervous. His brother is named Jo-ve. His brother is named To'ta. Jo-ve Abelon is a 18 year old male filmmaker. He feels disgruntled. His brother is named Ar'va. His brother is named To'ta. To'ta Junmen is a 20 year old male futurist. He feels bored. His brother is named Ar'va. His brother is named Jo-ve.

Jo-ve and Ar'va are in a field. There is a spider web and a bush and a bush and a spider web.

"I am 18 but I feel 38", Jo-ve says. Ar'va leaves. Jo-ve picks up the spider web. "That is quite a spider web", Jo-ve says. "What a striking spider web", Jo-ve says. Jo-ve runs his hand along the spider web disgruntledly. Jo-ve looks intently at the spider web in his hands. "That is quite a bush", Jo-ve says. Jo-ve runs his hand along the spider web disgruntledly. To'ta arrives. To'ta moves towards Jo-ve boredly. Jo-ve looks intently at the spider web in his hands. "I feel disgruntled", Jo-ve says to To'ta. "I like you", Jo-ve says to To'ta. "Take a look at this spider web I am holding", Jo-ve says to To'ta. Jo-ve walks away. To'ta sways boredly.

jdm commented 4 years ago

I added the ability to ask and respond to questions, as well as internal dialogue from the point of view character in a scene. Some sample unintentional comedy that resulted:

Jase Forra is a 22 year old non-binary filmmaker. They feel frustrated. Their sibling is named Joang. Joang Gorsa is a 18 year old non-binary reporter. They feel excited. Their sibling is named Jase.

Jase is in a kitchen. There is a table and a chair and a chair.

Joang enters. Joang walks out the door. Jase leaves the kitchen. Joang enters. Jase walks through the door. Jase walks out the door. Joang reaches towards the table, but stops excitedly before touching it. Joang picks up the table. "That is quite a chair", Joang says. Joang shuffles their feet. "What a striking chair", Joang says. "That is quite a chair", Joang says. Joang runs their hand along the chair excitedly. "That is quite a chair", Joang says. "What a horrible chair", Joang says. Joang sways excitedly.

Jaren Hanfen is a 46 year old non-binary chemist. They feel frustrated. Their spouse is named Fo'aro. Fo'aro Frafen is a 40 year old non-binary butcher. They feel tired. Their spouse is named Jaren.

Jaren is in a bedroom. There is a picture and a chair and a picture.

Fo'aro walks through the door. Fo'aro sways tiredly. "I like you", Fo'aro says to Jaren. "I do not like that chair", Fo'aro says to Jaren. 'Fo'aro is the worst,' Jaren thinks. Fo'aro leaves the bedroom. Fo'aro enters the bedroom. Fo'aro walks out the door. Fo'aro enters. "I like you", Fo'aro says to Jaren. 'Oh no, not Fo'aro again,' Jaren thinks.

Ar-an Jarsun is a 37 year old male artist. He feels happy. His son is named Vadang. Vadang Junsen is a 25 year old male farmer. He feels amorous. His father is named Ar-an.

Ar-an is in a street. There is a flower and a spider web and a bush and a bush.

Vadang arrives. 'I hope Vadang likes me,' Ar-an thinks to himself. Vadang leaves. Vadang walks up. Vadang leaves. Vadang walks up. Vadang walks away. Vadang arrives. 'Vadang is great,' Ar-an thinks. Vadang leaves. Vadang arrives. "I dislike you", Vadang says to Ar-an.

jdm commented 4 years ago

I've added some more logic to allow characters to react to other characters arriving in the scene, as well as rudimentary support for multiple scenes and transitioning between them.


Jo-on is standing in the street. "How are you?", Jo-on asks Ma'cus. "You don't actually care", Ma'cus replies. 'Oh no, not Ma-ang again,' Jo-on thinks to themself. Jo-on reaches towards the spider web, but stops upsetly before touching it. "I do not like that leaf", Ma'cus says to Ma-ang. Ma'cus hums. 'I wonder why Ma-ang is so frustrated,' Jo-on thinks. Ma'cus walks away. 'Oh no, not Ma-ang again,' Jo-on thinks to themself. "How are you?", Jo-on asks Ma-ang. "You don't actually care", Ma-ang replies. Ro-ren walks up. "Hello," Ma-ang says. Jo-on moves towards Ro-ren upsetly. 'I wonder why Ma-ang is so frustrated,' Jo-on thinks. "You look like you are bored", Ma-ang says to Ro-ren. 'Oh no, not Ro-ren again,' Jo-on thinks. Fo-tu arrives.

2 hours pass surprisingly slowly. Ma-ang finds herself in the street. 'I like Faaro,' Ma-ang thinks. "I do not like that leaf", Ma'cus says to Faaro. Tose arrives. "Oh, hi everyone," Tose says. Tose leaves. Ma'cus looks at the leaf then quickly looks away. "How are you?", Ma-ang asks Faaro. "I'm distraught; thanks for asking", Faaro replies. 'Ma'cus is the worst,' Ma-ang thinks to herself. "How are you?", Faaro asks Ma'cus. "I'm sad; thanks for asking", Ma'cus replies. 'I wonder why Ma'cus is so sad,' Ma-ang thinks. "What a horrible leaf", Ma'cus says to Faaro. 'I wonder why Ma'cus is so sad,' Ma-ang thinks. 'Oh no, not Ma'cus again,' Ma-ang thinks to herself. Ma'cus walks away. "How are you?", Ma-ang asks Faaro.

The end.

jdm commented 4 years ago

My plan at this point is to focus on generating scenes made of actions that can have the following effects:

My ideas of driving scene creation by an overarching "plot" mechanism are vague right now, and rely on more introspection of the potential impacts of randomly generated actions than is feasible in my current design. I like the idea of focusing on randomly-generated relationship-based narrative and being able to refine the resulting text into something that is more readable.

jdm commented 4 years ago

In my quest to make characters know things and act on that knowledge, I have embedded a prolog interpreter in my program. As a result, characters will now wait to comment on another character's emotional state until that character has announced it in their presence.

enkiv2 commented 4 years ago

Awesome! Glad to see logic programming being used, like, at all :)

On Sun, Nov 24, 2019 at 10:52 PM Josh Matthews notifications@github.com wrote:

In my quest to make characters know things and act on that knowledge, I have embedded a prolog interpreter in my program. As a result, characters will now wait to comment on another character's emotional state until that character has announced it in their presence.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/NaNoGenMo/2019/issues/39?email_source=notifications&email_token=AADXUGNPTZ5B5YCOLHRVMD3QVNDYJA5CNFSM4JIH4HYKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEFBAPYA#issuecomment-557975520, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADXUGMBD7AWCIM546YZWLTQVNDYJANCNFSM4JIH4HYA .

jdm commented 4 years ago

Well, here it is - a bunch of evenings in November has led to this 53k word piece, which I have titled The Importance Of Earnestly Being. This is a reflection of the earnest conversations between characters that emerged from the work, and the lack of anything resembling dramatic action. Enjoy! All code (2.5k lines of JavaScript) has been published at https://github.com/jdm/nanogenmo2019/blob/master/gen.js.

importance.txt