From b6d104887096b7f18fb4c429111e1d3c37d9cc53 Mon Sep 17 00:00:00 2001 From: June McEnroe Date: Wed, 26 Jul 2023 10:25:54 -0400 Subject: Add first draft of a MTG game format --- www/causal.agency/.gitignore | 1 + www/causal.agency/Makefile | 11 ++++--- www/causal.agency/leveler.7 | 76 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 84 insertions(+), 4 deletions(-) create mode 100644 www/causal.agency/leveler.7 (limited to 'www') diff --git a/www/causal.agency/.gitignore b/www/causal.agency/.gitignore index a2ca9b75..b00b1c3c 100644 --- a/www/causal.agency/.gitignore +++ b/www/causal.agency/.gitignore @@ -1,3 +1,4 @@ index.html +leveler.html scheme.css scheme.png diff --git a/www/causal.agency/Makefile b/www/causal.agency/Makefile index d406eb23..a31e4ff6 100644 --- a/www/causal.agency/Makefile +++ b/www/causal.agency/Makefile @@ -1,11 +1,14 @@ WEBROOT = /var/www/causal.agency -FILES = index.html style.css scheme.css scheme.png alpha.html +GEN = index.html leveler.html scheme.css scheme.png +FILES = ${GEN} style.css alpha.html all: ${FILES} -index.html: index.7 - mandoc -T html -O style=style.css index.7 > index.html +.SUFFIXES: .7 .html + +.7.html: + mandoc -T html -O style=style.css $< > $@ scheme.css: scheme -st > scheme.css @@ -17,4 +20,4 @@ install: ${FILES} install -C -m 644 ${FILES} ${WEBROOT} clean: - rm -f index.html scheme.css scheme.png + rm -f ${GEN} diff --git a/www/causal.agency/leveler.7 b/www/causal.agency/leveler.7 new file mode 100644 index 00000000..75378c97 --- /dev/null +++ b/www/causal.agency/leveler.7 @@ -0,0 +1,76 @@ +.Dd July 26, 2023 +.Dt LEVELER 7 +.Os "Causal Agency" +. +.Sh NAME +.Nm Leveler +.Nd A Magic: The Gathering\(tm Game Format +. +.Sh DECK CONSTRUCTION +A full deck of 100 cards consists of 3 sub-decks: +.Pp +.Bl -enum -offset indent -compact +.It +50 cards +.It +30 cards +.It +20 cards +.El +. +.Pp +A full deck may contain only one of each card other than basic lands. +. +.Pp +Cards from all Magic sets are legal, +except those +.Lk https://magic.wizards.com/en/banned-restricted-list#legacy-banned "banned in the Legacy format" , +as well as: +.Pp +.Bl -bullet -offset indent -compact +.It +.Lk https://scryfall.com/card/thb/73/thassas-oracle "Thassa's Oracle" +.It +.Lk https://scryfall.com/card/uma/61/laboratory-maniac "Laboratory Maniac" +.It +.Lk https://scryfall.com/card/war/54/jace-wielder-of-mysteries "Jace, Wielder of Mysteries" +.It +.Lk https://scryfall.com/card/40k/46/out-of-the-tombs "Out of the Tombs" +.It +.Lk https://scryfall.com/card/jmp/13/ormos-archive-keeper "Ormos, Archive Keeper" +.El +. +.Sh PLAY RULES +Each player starts the game with 30 life. +. +.Pp +Each player starts the game +with their first sub-deck in their library. +The two other sub-decks are outside of the game. +. +.Pp +When a player's library is empty, +if one of their sub-decks +is still outside the game, +their next sub-deck enters the game +and is shuffled into their library. +This is a state-based action. +. +.Pp +When a player has taken 10 total damage +over the course of the game, +if their second sub-deck is outside the game, +they exile their library. +This is a state-based action. +. +.Pp +When a player has taken 20 total damage +over the course of the game, +if their third sub-deck is outside the game, +they exile their library. +This is a state-based action. +. +.Sh AUTHORS +Copyright \(co 2023 +.An June McEnroe +.Aq Mt june@causal.agency -- cgit 1.4.1 class='logsubject'>Add PNG encoder to gfxxJune McEnroe 2018-02-12Only list first space of tabsJune McEnroe 2018-02-12Use Intel syntax in LLDBJune McEnroe GDB has no idea what's going on if you run it on a Cocoa app, and it turns out LLDB is pretty nice. Why does it get a bad reputation? 2018-02-11Add "Close Window" menu item to gfx/cocoaJune McEnroe 2018-02-11Tweak gfxx code styleJune McEnroe Just things. 2018-02-11Avoid xres/yres names in gfxxJune McEnroe 2018-02-11Only set GFX if unsetJune McEnroe 2018-02-09Link -lncursesJune McEnroe Apparently the curses link doesn't exist everywhere. 2018-02-09Fix X11 KeySym lookup with modifiersJune McEnroe On friends' systems there appear to be modifiers that are always set which were intefering with selecting the KeySym based on the state of shift. 2018-02-09Clean up bin/gfx/x11.cJune McEnroe Only behavior that should have changed is avoiding reallocating the pixmap unless the width or height is larger. 2018-02-09Move gfx interface to header fileJune McEnroe .o files should technically depend on this, but I don't think it will matter much. 2018-02-09Silence BSD ctags warningsJune McEnroe 2018-02-09Link LDLIBS regardless of GFXJune McEnroe 2018-02-09Move gfx frontends around to simplify buildJune McEnroe I forgot that you can expand variables inside variables names in make. Certainly makes some fun things possible. 2018-02-07Add janky X11 graphics frontendJune McEnroe 2018-02-07Include stdio.h in gfb.cJune McEnroe As promised. 2018-02-07Exit by returning false from input to gf{b,cocoa}June McEnroe I haven't built gfb yet, so a fix commit is probably incoming. 2018-02-07Rename title to status in gfcocoaJune McEnroe Also separate the options and fileName buffers in gfxx. 2018-02-06Require 4 bit counts on gfxx command lineJune McEnroe 2018-02-06Add gfxx controls for custom bitsJune McEnroe 2018-02-06Add gfxx palette loading and dumpingJune McEnroe 2018-02-06Add tags targetJune McEnroe This seems a bit out of character for me, but this is basically free: ctags(1) is part of FreeBSD and Darwin, and vim automatically uses tags. Also the format of tags files is cute. 2018-02-06Replace gfxx SCALE macro with interp functionJune McEnroe Short-circuits for b = 8. 2018-02-05Rename gfxx space indexed and add palette samplingJune McEnroe 2018-02-05Take scale into account for when to stop drawing in gfxxJune McEnroe 2018-02-05Always skip most significant bits in gfxxJune McEnroe This works for CARDS.DLL but might not for other things. We'll see. 2018-02-05Set title in gfcocoaJune McEnroe 2018-02-05Double-buffer gfb frontendJune McEnroe Still not vsync (seems like a newer DRM-fbdev implementation handles FBIO_WAITFORVSYNC but my kernel doesn't), but avoids flicker from clearing to black for each frame. 2018-02-05Rewrite gfxx bit handlingJune McEnroe Specifies how many bits for each of "alpha" (ignored), red, green, blue. Separates byte-order and bit-order. Much more flexible, but now won't render CARDS.DLL graphics properly due to the skip bit being not where it expects. Also mmaps the file instead of reading it all in. And the default palette and sampling got removed again for now, since it's too awkward to use. 2018-02-05Add flip option to gfxxJune McEnroe This handles upside-down graphics much better than reverse did. 2018-02-05Remove gfxx reverse optionJune McEnroe 2018-02-04Fix gfxx draw stop conditionJune McEnroe Would not draw the last partially visible column when mirrored. 2018-02-04Reuse CGColorSpace and CGDataProvider in gfcocoaJune McEnroe 2018-02-04Mark mac target phonyJune McEnroe 2018-02-04Set up Makefile for gfxx-cocoa or gfxx-fbJune McEnroe 2018-02-04Avoid doing excessive work in gfxxJune McEnroe By stopping when the next column would be off the edge of the buffer. 2018-02-04Handle window resizing in gfcocoaJune McEnroe 2018-02-04Set cinoptionsJune McEnroe 2018-02-04Tweak colorscheme moreJune McEnroe 2018-02-04Color MatchParen DarkYellowJune McEnroe White is not obvious enough. 2018-02-04Add palette sampling to gfxxJune McEnroe 2018-02-04Add 4-bit RGB to gfxxJune McEnroe Replace default palette with alternating black and white. 2018-02-04Add Quit menu item to gfcocoaJune McEnroe 2018-02-04Switch back to sane Objective-C styleJune McEnroe 2018-02-04Quit gfcocoa when window closesJune McEnroe 2018-02-03Apparently this is how people write Objective-CJune McEnroe