💾 Archived View for tilde.town › ~vidak › programmes › uwu › readme.gmi captured on 2022-03-01 at 16:20:36. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2022-01-08)

-=-=-=-=-=-=-

uwu

(A . n . G . a . L .)

┌─┐┌─┐┬─┐┌┬┐┬┌┐┌┌─┐┌┬┐┬┌─┐┌┐┌ 
│ ┬├┤ ├┬┘│││││││├─┤ │ ││ ││││ 
└─┘└─┘┴└─┴ ┴┴┘└┘┴ ┴ ┴ ┴└─┘┘└┘ 

\│/      ┌─┐┬ ┬┌─┐┌┬┐┌─┐┌┬┐┌─┐
─ ─      └─┐└┬┘└─┐ │ ├┤ │││└─┐
/│\      └─┘ ┴ └─┘ ┴ └─┘┴ ┴└─┘

readme

You will need two files in order to run uwu.

- uwu.el; and

- uwu-graphics.el

Save the files somewhere easily accessible and rememberable. Then load

the two files into Emacs in the following order:

M-x load-file uwu-graphics.el
M-x load-file uwu.el

Once you have done this, start up the interactive elisp REPL like so:

M-x ielm

then, inside this REPL, evaluate the following expression to set up

the two windows you need in order to play with your virtual pet:

ELISP> (uwu--window-setup)

After you have done this, you fill find evaluating the following

functions instructive as to how uwu works.

Looking up pets you might like

ELISP> (adult-pet-gfx-lookup 'alignment 'skill 'genus)
This will return the key-value list record for the graphics for a
specific pet. You may find the following table useful for
navigating the numerous lists of pets that come installed with uwu.

| (Pick one) | (Pick one) | (Pick one) |
| Alignment  | Skill      | Genus      |
|:----------:|:----------:|:----------:|
| Lawful     | Smart      | Normie     |
| Chaotic    | Creative   | Active     |
|            | Social     | Funny      |
|            |            | Loud       |
|            |            |            |

When considering choosing a pet, please know that there are 2x3x4
(24) different combinations of the above table. That is, for every
pet with a particular 'skill', there are four 'genuses'. And of
every pet with a particular skill, there are two 'alignment'
categories of pets. An 'alignment' would be the pet's demeanour, or
'personality'.

Please see the following two concrete examples of how you traverse the

list of pets:

ELISP> (adult-gfx-lookup 'chaotic 'social 'loud)
ELISP> (adult-gfx-lookup 'lawful 'creative 'normie)

Drawing the pet visualiser

ELISP> (switch-pet-gfx 'alignment 'skill 'genus)
ELISP> (one-frame-of-animation 'alignment 'skill 'genus)

These two functions draw one frame of the pet visualiser. The first

draws a new frame without erasing the visualiser buffer, and is more

of a core component of the *human-pet-interaction* buffer.

Both functions write to the uwu-visualiser buffer only.

The second function will erase the visualiser buffer, and draw a new

frame of randomly generated movement of your pet.