Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dialog rendering #6

Open
kriskowal opened this issue Mar 24, 2020 · 0 comments
Open

Dialog rendering #6

kriskowal opened this issue Mar 24, 2020 · 0 comments

Comments

@kriskowal
Copy link
Member

kriskowal commented Mar 24, 2020

We intend to render game dialog as speech bubbles, to evoke text messages. Game dialog is defined in the Emoji Quest spreadsheets:

https://docs.google.com/spreadsheets/d/1U8JJM-g7Br0ePrjH7kg7tJ3N2eb0Mab2y5GDiJo1Tx8/edit#gid=2082650385

To implement the dialog, we will need to flow text in a bubble, with interpolated emojis. Since we can’t use an emoji font, we’ll have to roll our own text flow.

The first chore is to convert the dialog spreadsheet into lobster code. The lobster code will drive the renderer. The second core is the renderer.

The driver code might look like:

func dialog_gym_0():
  first_person(gym_emoji_id)
  write("Hi, I’m ")
  bold(): write("Gym")
  write("!")

func dialog_apple_tree_hardwood_10():
    render(axe_emoji_id)
    write(" ")
    bold(): write("Axe")
    write(" me no more questions!")

var apple_tree_dialog_funcs = [dialog_apple_tree_hardwood_1, ...]

My intention is that the player will keep track of the dialog number for each entity or entity type and each time the player bumps into a tile without invoking another recipe, the dialog number will advance modulo the number of dialogs for that entity, and display the corresponding message. Some recipes will also effect dialogs, based on the corresponding column of the Morphs or Recipes sheets.

Whether the dialog number resets when the player breaks a sequence of bumps (as would feel natural with conversations with people) or never resets (as would be good to rotate through bump dialogs for all the trees in a forest) may need to become a parameter on the Tile sheet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant