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

Implement mechanics #7

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

Implement mechanics #7

kriskowal opened this issue Mar 24, 2020 · 0 comments

Comments

@kriskowal
Copy link
Member

kriskowal commented Mar 24, 2020

EmojiQuest needs a small number of core mechanics.

  1. Some tiles have a single numeric state behind them. Trees may have a fruit count. Sheep may have a shorn flag (or rather, a wool count that is as high as 1). Bumping into these tiles with an empty hand and a tool in the other obtains an item and either resets or decrements the tile counter. These mechanics are cataloged in the Bumps sheet.

  2. Some tiles transform when bumped. For example, giving a bear a lab coat (which in the white north serves as a cloak of invisibility) turns the bear into a polar bear. These mechanics are cataloged on the Morphs sheet.

  3. Another mechanic deals purely with the items in hands for purposes of crafting. Some of these recipes are order dependent, others are not. These are cataloged on the Recipes sheet. Whether order is dependent is implied by whether there are two recipes with the same items in alternate orders. We can model order independence by generating the inverse recipe if it’s absent. Some recipes are position dependent. We can model this either by adding an “enter the structure” mechanic or requiring the player to be on or adjacent to the corresponding tile.

  4. Bumping into some tiles will cause teleportation. For this case, we can reuse the backing state for the tile to store the teleport location index. There are few enough teleportation mechanics that we might not need a general solution generated from sheet data, but the teleports are tentatively tracked on the Teleports sheet.

  5. The last mechanic is dialog, as a fallback in the case of bumping into a tile that does not evoke a mechanic.

Most of these mechanics will involve generating lobster code from a spreadsheet.

Many of the recipe columns use glob patterns to refer to multiple entities. We have the option of exploding these glob patterns into multiple rules. The game runtime should not need to deal with globs. The set of matching entities is fixed.

Combat mechanics are not necessary to finish the game, nor even entity motion, but these would certainly add flavor.

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