The Micro Fiction Games Jam is running again!

This year's theme is Absorb, Repose, Recursion.

Can you write a recursive game about absorbing in just 280 characters? Now is the perfect time to find out!

Go to the website and read/ create games

microfictiongames.neocities.org

#MFGJ #TTRPG

I know it is short notice, but #MFGJ will run this year from November 22nd to November 29th.

The theme will be revealed on the 22nd when I wake up and get a moment, and will close for another year on the 29th.

Short notice, I know, but we are getting there.

Hurrah for micro games!

#mfgj https://git.casuallyblue.dev/yumaikas/archipelago-game/src/branch/main/browser.nv

That support file, for the curious. It -is- a bit longer, because I was leaning into the emoji-as-code thing a bit less. Turns out that neither VS Code nor neovim in kitty are amazing at working with emoji, especially if said emoji end up getting random characters copied around them.

archipelago-game/browser.nv at main

archipelago-game - A solo journaling RPG

Forgejo: Beyond coding. We Forge.

#mfgj There -is- another file that connects that game logic to pedestrian concerns like displaying in a browser, how random numbers are generated, and asking the user for input, but the core of the game fits in a toot, (though not in a classic tweet)

The other nice thing about Nova for this is that the "my state is a bunch of stacks that I write rules over" model makes it easy to write event-based/async heavy logic, which is what a call and response game like this needs.

Behold! The game logic!

#mfgj

**~~
~map~ (
๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ ๐Ÿ๏ธ
๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ โ›… ๐ŸŒŠ ๐ŸŒŠ
๐ŸŒŠ ๐Ÿ๏ธ ๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ
๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ ๐Ÿ๏ธ ๐ŸŒŠ
๐ŸŒŠ ๐Ÿ๏ธ ๐Ÿ๏ธ ๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ
๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ ๐ŸŒŠ
)

~move to~ ๐ŸŒ‡ @ ๐ŸŽฒ x ๐ŸŽฒ y
~move to~ โ›ต @ 0 x 5 y

~๐Ÿ—~ 5
~๐Ÿš~1 ~๐Ÿ”ป~๐Ÿš
~day~ 0

*~~ ๐Ÿ”ป๐Ÿ—OR๐Ÿ’€
~~ โ†•๏ธORโ†”๏ธ
~~ โ— ๐ŸŽฒ
~~ โ“๐Ÿ”
~๐Ÿ—~ 0 ? * ~~ ๐Ÿ’€

*~~ ๐Ÿ”ป๐Ÿ—OR๐Ÿ’€ *
~~ time passes
~๐Ÿ”ป~๐Ÿ—
~~ show map


* ~~ โ†•๏ธORโ†”๏ธ *
~~ moving...
~โ“~ ( W N S E )

*~~๐Ÿ”*
~~ ๐Ÿ”ป๐Ÿ—OR๐Ÿ’€
~~ โ†•๏ธORโ†”๏ธ
~~ โ— ๐ŸŽฒ
~~ โ“๐Ÿ”

*~~ โ— 1 * ~~ โ— 2
*~~ โ— 2 * ~~ โ— 3
*~~ โ— 3 * ~~ โœ [๐ŸŒŠ or ๐Ÿ๏ธ]
*~~ โ— 4 * ~~ โœ [๐Ÿ , ๐Ÿฆ‘ or ๐Ÿฆ]
*~~ โ— 5 * ~~ โœ [๐Ÿ“ฆ!] ~๐Ÿ”บ~๐Ÿ— ~๐Ÿ”บ~๐Ÿš
*~~ โ— 6 * ~~ โ›ˆ

*~~ โ›ˆ 1 * ~~ โ›ˆ 2
*~~ โ›ˆ 2 * ~~ โ›ˆ 3
*~~ โ›ˆ 3 * ~โœ~ [๐Ÿฆˆ!] ~๐Ÿ”ป~ ๐Ÿš or ๐Ÿ—
*~~ โ›ˆ 4 * ~~ โ›ˆ 5
*~~ โ›ˆ 5 * ~โœ~ [๐Ÿ”ช๐Ÿฆˆ๐Ÿ˜…] ~๐Ÿ”บ~(๐Ÿ— ๐Ÿš ๐Ÿš)
*~~ โ›ˆ 6 * ~โœ~ [๐ŸŒ€โ›ˆ๏ธ] ~move to~ โ›ต @ ๐ŸŽฒ x ๐ŸŽฒ y
*~~ โ›ˆ * ~~ โ›ˆ ๐ŸŽฒ

* ~~ ๐Ÿ’€? ~~ โ— ๐ŸŽฒ *
* ~~ ๐Ÿ’€? ~~ โ“๐Ÿ” *
* ~~ ๐Ÿ’€ *
~~ โœ [๐Ÿ’€]
~~ ๐Ÿชž

* ~โ›ต loc~ $x $y ~๐ŸŒ‡ loc~ $x $y ~~ โ“๐Ÿ” *
~~ โœ [๐ŸŒ†๐Ÿ˜…๐Ÿ !]
~~ ๐Ÿชž

* ~~ โ“๐Ÿ” *
~~ record day
~~ ๐Ÿ”

* ~~ ๐Ÿชž ~๐Ÿš~ 0 * ~โœ~ FIN
* ~~ ๐Ÿชž? ~๐Ÿš~ $n? *
~~ โœ [๐Ÿš]
~๐Ÿ”ป~ ๐Ÿš

#mfgj Finally, rules are tested from the top of the file to the bottom, the first one that matches is fired. After a rule matches and is fired, the process of testing rules starts over.

The nice thing about Nova for this shitpost of a game is that it doesn't have much syntax. Just enough to mark out stack and labels, and whitespace to separate symbols in a fact.

Which makes it a perfect host for an emoji-based code crime, like what follows:

#mfgj I've been working on a language project called Nova. It's based on a list of rules over a bunch of stacks, each with a name (except for the one stack that is nameless).

In a Nova file, the first non-whitespace character is the thing that toggles you between the conditions that cause a rule to fire, and the consequences of a rule:

| causes | effects

Inside the causes and effects, the -next- non-whitespace character is used for stack names

| :a stack: of causes | :a stack: of effects

#mfgj At the time, I mostly composed it using Notion (I've since left Notion as a tool for LLM reasons, though I enjoyed my time with it quite a bit, and nothing has quite landed where it was).

So, how do you take an attempt at a semantic black hole and turn it into something interactive?

How about using a programming language that has very little syntax?

Well, I meant to do this last night, but I made a new thing!

https://yumaikas.itch.io/that-dratted-archipelago-interactive-edition

So, this, in itself, isn't anything -major-. It's a shitposty expansion of a shitpost.

Back in 2021, for #mfgj, I decided to fit as -much- Solo RPG as I could into a tweet, using emoji.

Later twitter would kick the bucket, but I still have this around: https://junglecoder.com/mfgj/2021.html

That Dratted Archipelago: Interactive Edition by yumaikas

A very small journaling RPG

itch.io

Now.

Today really is the last day of the Micro Fiction Games Jam. When I get up tomorrow morning at some point I will be turning submissions off until next year, so if you wanted to get something in then this is the time to do it.

https://microfictiongames.neocities.org/submit/

It is on y'all to make sure that I have a real bumper crop of games to upload first thing in the morning.

#MFGJ

Micro Fiction Games