diff --git a/src/diary/entries/210201 b/src/diary/entries/210201 index 254f8e7..fc0e81e 100644 --- a/src/diary/entries/210201 +++ b/src/diary/entries/210201 @@ -1,5 +1,5 @@ -

january 2020: new year

+

january 2021: new year

february 1, 2021


diff --git a/src/diary/entries/210204 b/src/diary/entries/210204 index 2539db8..c0f0a3d 100644 --- a/src/diary/entries/210204 +++ b/src/diary/entries/210204 @@ -3,27 +3,27 @@ february 4, 2021
#offtopic

-Most of 2020 passed without significant progress towards shipping Blessfrey and perfecting my website. 2021 likely won't be a return to normal, but I will try to be more productive regardless. I know one thing for sure, though. From now on, when I pray, "Father, thank you for this day," I'll try not to take a normal, healthy day for granted. This year, I'll try to make the most of what I've been given.
+2020 passed without significant progress towards shipping Blessfrey and perfecting my website. 2021 won't be a return to normal, but I will try to be more productive regardless. I know one thing for sure, though. From now on, when I pray, "Father, thank you for this day," I won't take a normal, healthy day for granted. This year, I want to make the most of what I've been given.

-Being separated from people for a year is draining. I might be a quiet person, but I get my energy from being around people. Even being near crowds of strangers cheers me up when I'm feeling down.
+I began severely limiting my outdoor activities during January, before social distancing was officially mandated. Being separated from people for a year is draining. I might be a quiet person, but I get my energy from being around people. Even without losing a family member and experiencing a global pandemic, staying at home so long is depressing.

-I began severely limiting my outdoor activities during the second week of January, about two months before social distancing was officially mandated. After a full indoor year, going out has become such a fantasy. Simple grocery trips are an event to celebrate with cute clothes and makeup.
+After over a year of sheltering in place, going out has become such a fantasy. I wore makeup sparingly outside of work hours before, but now every outing feels worthy of celebrating with my cutest outfits and makeup, even when it's a simple grocery run.

-For inspiration, I started watching lots of small beauty youtubers for new tutorials. It turns out nobody makes tutorials anymore, but the closest equivalents incorporate a surprising amount of self-reflection about makeup, particularly the wastefulness of large collections. It's cheesy, but I felt a connection to the wastefulness of my 2020.
+For inspiration, I started watching lots of small beauty youtubers like Lauren Mae Beauty, Hannah Louise Poston, and Abby Williamson for new tutorials. It turns out nobody makes tutorials anymore, but GRWMs and other modern equivalents incorporate self-reflection about makeup, particularly the wastefulness of large collections. (Seriously, this is a pocket of Youtube where girls act like it's normal to have a storeroom full of PR makeup and still buy makeup on a monthly basis. Then they constantly preach down at viewers for our consumerism, all while sharing affiliate links and hyping new releases lol.) It's bizarre what happened to makeup Youtube, but the new "minimalism" wave resonated with the wastefulness of my time and resources during 2020.


-

panning makeup


-Online beauty communities value panning. For a community based around consumerism, it's aspirational to be content with what you already have and actually use it regularly. (As someone with a lot of HumbleBundle games, I kind of get it. As if I'm going to 100% every single game that came bundled with the few I wanted.) To promote making the most out of makeup, the term panning was coined for reaching the bottom packaging of a product. #Projectpan and #panporn are full of photos of well-loved makeup, like this Instagram girl's blushes.
+

panning


+Minimalist makeup youtubers value panning and product empties. When they continuously collect new releases, either through PR or compulsive shopping, they barely ever use a product more than once. #Projectpan and #panporn challenge this behavior and are full of well-loved makeup, like this Instagram girl's blushes.

View this post on Instagram

A post shared by Curated By Léah (@_curatedbyleah)


-Panning is obviously encouraging you to buy less and all that, but the message that stands out to me is to use the things you love. Products get discontinued all the time, so there's a natural tendency to save your favorites. That's wasteful, since makeup is more likely to expire than empty. If it's your favorite, you should use it every single day!
+Panning obviously encourages you to buy less and all that, but the message that stands out to me is to use the things you love. Makeup gets discontinued all the time, so there's a natural tendency to save your favorites. That's wasteful, since makeup is more likely to expire than empty. If it's your favorite, you should use it every single day!


panning other areas of life


-I guess the concept is obvious, but I find wisdom in panning. It can be applied anywhere - unfinished projects, videogame backlogs, unread book collections, skipped Bible readings, stocked up baking ingredients, unused art supplies, ignored MOOCs, forgotten exercise equipment, and hoarded assets + libraries...For each item in those areas, I could have been developing skills, gaining new perspectives, and having fun. Otherwise, it's just junk taking up space in my apartment and hard drive.
+I guess the concept is obvious, but panning spoke to me. The wisdom can be applied anywhere - unfinished projects, videogame backlogs, unread book collections, skipped Bible readings, stocked up baking ingredients, unused art supplies, ignored MOOCs, forgotten exercise equipment, and hoarded assets and libraries...For each item in those areas, I could have been developing skills, gaining new perspectives, and having fun. Otherwise, it's just junk taking up space and expiring.

-In 2021, even if I have to do it all cooped up at home, I'm going to be more intentional about enjoying my hobbies. I've already finished 2 books, made freezer cookie logs, and actually completed a playthrough of Planescape: Torment. The pandemic disrupted my life, but stifling myself isn't healthy.
+In 2021, I'm going to be more intentional about enjoying my time at home. I've already finished 2 books, made freezer cookie logs, and finally completed a playthrough of Planescape: Torment. The pandemic may have disrupted my life, but stifling myself isn't healthy.

Happy (belated) New Year. Enjoy 2021 to the fullest. :)

-Last updated 05/26/21
+Last updated October 17, 2021
diff --git a/src/diary/entries/210301 b/src/diary/entries/210301 index b8d8bff..fac7ba4 100644 --- a/src/diary/entries/210301 +++ b/src/diary/entries/210301 @@ -1,5 +1,5 @@ -

february 2020: AI

+

february 2021: AI

march 1, 2021


diff --git a/src/diary/entries/210401 b/src/diary/entries/210401 index abf58f5..486aa69 100644 --- a/src/diary/entries/210401 +++ b/src/diary/entries/210401 @@ -1,5 +1,5 @@ -

march 2020: AI

+

march 2021: AI

april 1, 2021


diff --git a/src/diary/entries/210501 b/src/diary/entries/210501 index 968da06..d6ca585 100644 --- a/src/diary/entries/210501 +++ b/src/diary/entries/210501 @@ -1,5 +1,5 @@ -

april 2020: will patrols ever work?

+

april 2021: will patrols ever work?

may 1, 2021
#diary

diff --git a/src/diary/entries/210601 b/src/diary/entries/210601 index efa931f..8b4de11 100644 --- a/src/diary/entries/210601 +++ b/src/diary/entries/210601 @@ -1,5 +1,5 @@ -

may 2020: mostly GDD and CSS

+

may 2021: mostly GDD and CSS

june 1, 2021
#diary

diff --git a/src/diary/entries/210624 b/src/diary/entries/210624 index 1213f3c..38dff6b 100644 --- a/src/diary/entries/210624 +++ b/src/diary/entries/210624 @@ -3,51 +3,49 @@ june 24, 2021
#offtopic

-I've spent more time pattern-making than programming, so let's take a fashion break on the blog this week!
+I've spent more time pattern-making than programming, so let's take a fashion break this week!

my life story told through clothes


-Hand-me-downs from older girls at school and church have been a staple in my wardrobe for the majority of my life. Anything that was too big, I kept around to grow into later. I did enjoy the clothes because they weren't anything like what my peers were wearing at the time. My boxy denim dress with white embroidery received comments that I looked like I was from a different fashion era - maybe an insult, but it's a really curious way to be described. Also, sometimes they were old enough to swing back around to the cusp of fashion, like the story of my wide leg jeans.
+Hand-me-downs from older girls at school and church have been a staple in my wardrobe for the majority of my life. Anything that was too big, I kept around to grow into later. I loved them because they weren't like anything my peers were wearing. My cousin's old boxy denim dress with white embroidery received comments that I looked like I was from a different fashion era - maybe an insult, but it's a really curious way to be described. Also, sometimes they were old enough to swing back around to the cusp of fashion, like the story of my wide leg jeans.

-When I grew up, I thought I could finally invest in a few nice work and event clothes for my adult wardrobe, since everyone said I was finished growing. Then I suddenly get a freakish growth in my early 20s. My doctor wasn't concerned, but almost everything was suddenly too short and couldn't fit around my shoulders anymore. Everything but old hand-me-downs from a boss's daughter. Since I was moving, I welcomed the opportunity to avoid the costly and demotivating search for clothing in my size. And with the initial pressure of having no clothes resolved, I never really tried to replace my wardrobe. I was even on trend, since thrifting exploded in popularity.
+When I grew up, I thought I could finally invest in a few nice work and event clothes for my adult wardrobe, since everyone said I was finished growing. Then I get a freakish growth spurt in my early 20s. My doctor wasn't concerned, but nothing fit around my shoulders anymore...everything but old hand-me-downs from a boss's daughter. I welcomed the opportunity to once again lean into hand-me-downs and avoid the costly and demotivating search for clothing in my size. And with the initial pressure of having no clothes resolved, I never really tried to replace my wardrobe. I'm even on trend, since thrifting has exploded in popularity.

-The clothes I did buy or make myself tended to be fussy by preference, rife with layering and delicate chiffons. It's feminine, but when the pandemic hit, I craved ease and comfort over anything else. For about a solid year, I wore nothing but comfy old cotton hand-me-downs and my husband's t-shirts.
-
-Now, coming out of the pandemic, I crave normalcy and looking cute again. I still don't really have anything in my style, though, just a few loose-fitted chiffon blouses and skirts that survived the growth spurt. If the pandemic did any good, it finally pushed me to do something about it. I'm at a more stable point, so it's a good time for it.
+After months of pandemic-era shelter-in-place orders, I crave normalcy and looking cute again. I still don't really have anything in my style, though, just other people's clothes. I'm at a more stable and independent point in my life anyway, so I should dress like it.

capsule wardrobe concept


-You need a thesis before you jump into anything. If a higher-level concept is guiding you, it'll give you consistent answers for the little details. In general, a design-oriented approach encourages you to solve any potential problems ahead of time. Creating a style guide and debugging are a big part of both programming and fashion, and that common ground is what draws me to both.
+I do nothing without a thesis. With a higher-level concept to guide me, everything down to the little details can stay consistent. Obviously taking a design-oriented approach applies to gamedev, too. It's kind of like a style guide for sewing.

-My functional goal is to fill out my wardrobe with some solid core pieces that are easy to mix and match. I'll worry about more fashion-oriented or niche pieces later. My more abstract concept stems from my story above - my attachment to my old hand-me-downs, my desire to have an individualized style, and some lingering pandemic preference for natural fibers. I'll play with the sizing of clothes and update old styles in my closet.
+My functional goal is to fill out my wardrobe with some solid core pieces that are easy to mix and match. I'll worry about more fashion-oriented or niche pieces later. My more abstract concept stems from my story above - my attachment to my old hand-me-downs, my desire to have an individualized style, and a lingering pandemic preference for comfy, unfussy natural fibers. Technically, this translates to playing with the sizing of clothes and mixing of decades and cultural inspirations.

sketches

-I'll make 3 mock turtlenecks, a button-down shirt, a bodice, a pair of pants, two shorts, a light bomber jacket, a kimono, two pajama sets, and 2 pajama sets.
+I'll make 3 mock turtlenecks, a button-down shirt, a bodice, a pair of pants, two shorts, a light bomber jacket, a kimono, two pajama sets, a swimsuit, and a few hair accessories.


(image: a bomber jacket with a luminous light pink polyester and a gray, beige, and light brown lace, a bodice with a white bamboo viscose with pink cherry blossoms and blue birds, a kimono with black inky block batiste, a button-down short sleeve shirt with shank buttons, black piping, and a beetle print, and a mock turtleneck with thumbholes and a metallic foil knit)
-Bomber: I've had a favorite light rayon bomber jacket for 10 years, but it's finally wearing out and has some weird bleach stains. This is basically a knockoff of a BB Dakota design, and I may end up making a few variations. This one is a shiny pink polyester (a beautiful exception to my natural fiber rule) with multicolored lace trim, a metal zipper, and a beige drawstring.
+Bomber: I've had a favorite light rayon bomber jacket for 10 years, but it's wearing out and has some weird bleach stains. This is basically a knockoff of a BB Dakota design, and I may end up making a few variations. This one is a shiny pink polyester (a beautiful exception to my natural fiber rule) with multicolored lace trim, a metal zipper, and a beige drawstring. I think I can keep the old BBD jacket, too, but it needs embroidery or appliques over the stains.

-Instead of chiffon, I'm going to include more batiste and poplin. They're all lightweight, layer-friendly fabrics. Chiffon is usually polyester, though, while the others are usually from natural fibers like bamboo or cotton. Like the other tops, it's designed for layering. I will have ruffles at the shoulders and long straps from the waist, so they can be wrapped around and tied in a bow.
+Bodice: This is a light layering top made from batiste. It will have ruffles at the shoulders and long straps from the waist to wrap around and tie in a bow.

-Kimono: I have a favorite purple floral chiffon kimono that has a seam that is still coming undone after three repairs, so it needs a break. This design is similar, but there's not really a lot you can do with a simple long, kimono-sleeved sheer kimono. This one is rayon batiste, though, with a dark inky print.
+Kimono: I have a favorite purple floral chiffon kimono that has a fraying seam. After three repairs, it needs a semi-retirement. This design but with rayon batiste and a dark inky print...if Mood ever restocks the Penitentiary Block print!

-泣き虫 (Cry Bug): An oversized poplin button-down with short sleeves and an oversized beetle print. It has black piping along seams, a pocket, and black glass shank buttons. The fit is meant to fit like your dad's shirt where the short sleeves come down too far, the armholes are too deep, and the pocket is too big like they're from a menswear shirt, but the collar and length are appropriately proportioned for me. It's white with an oversized print that visually plays up the unusually large proportions of the shirt. The piping and glass shank buttons remain the corrent proportions, though.
+泣き虫 (Cry Bug): An oversized poplin button-down with short sleeves and an oversized beetle print. It has black piping along seams, a pocket, and black glass shank buttons. The fit is meant to resemble your dad's shirt where the short sleeves come down too far, the armholes are too deep, and the pocket is too big, but the collar and length will be appropriately proportioned for me. It's white with an oversized print that visually plays up the unusually large proportions of the shirt. The piping and glass shank buttons remain the correct proportions, though.

-Mock Turtle: Then there's three mock turtlenecks since I really like light turtlenecks but don't have any anymore. One is a foil knit with thumbholes, one is a striped knit, and one is a 4x2 rib knit.
+Mock Turtle: There's three light mock turtlenecks. These are my favorite staple, but I lost mine 2 moves ago. (RIP) One is a foil knit with thumbholes, one is a striped knit, and one is a 4x2 rib knit.


(image: A mock turtleneck with gray and white horizontal striped tissue knit, a mock turtleneck with 4x2 black rib knit, pants with seagrass green, brown, and tan plaid linen, a pair of shorts with natural linen with white, lime, and orange stripes and a multicolor fringe ribbon in mint, baby pink, brown, neon coral, baby blue, and straw, and a pair of cuffed shorts with a bow belt in dragon fruit printed linen.)
-Pants: Straight-legged plaid linen pants with a fly-front closure, belt loops, side pockets, and blind hems.
+Pants: Straight-legged plaid linen pants with a fly-front closure, belt loops, side pockets, and blind hems. Linen feels great in the summer and lends itself to a well-tailored staple.

Shorts: Two pairs of linen shorts, one with stripes and striped fringe ribbon trim and the other with a dragon fruit print and cuffs and a bow belt.


(image: a one piece long sleeve swimsuit with a mock turtleneck, an obi belt, three ruffles over the hips, and shorts, a yukata-style pajama set with bishop sleeves and berry red piping and dawn blue jacquard, and a pajama set with gathered sleeves, a gathered empire-waisted top, and gathered shorts with a sailor color and oversized rick rack trim and dark blue jacquard fabric with white bow print. )
-Swimsuit: The one piece swimsuit is made out of pastel green and pink neoprene with pops of yellow in an abstract swampy design. I actually lived around wetlands for most of my life, but I mostly just like the print. It has long sleeves, a mock turtleneck, and an invisible zipper at the center back. The focus is the obi belt made from the same material. There are three panel-and-tier ruffles covering the shorts to give some illusion of volume against the closely-fitted belt and top without adding more unnecessary bulk. I'm not 100% on materials yet and may need to bring in a thinner swimwear tricot for the layers.
+Swimsuit: The one piece swimsuit is made out of pastel seafoam and pink neoprene with pops of sulfurous yellow in an abstract swampy design. I actually lived around wetlands for most of my life, so it's cool to see a wetlands design instead of another tropical beach or flowering meadow print. It has long sleeves, a mock turtleneck, and an invisible zipper at the center back. The focus is the obi belt made from a contrasting black neoprene. There are three panel-and-tier ruffles over the bottom to give some illusion of volume against the closely-fitted belt and top without adding more unnecessary bulk. I'm not 100% on materials yet and may need to bring in a thinner swimwear tricot for the layers.

-Pajama sets: The pajamas are not my design. They are basically knock-offs from Yahoo! Japan shopping, since I don't feel like importing pajamas. (The originals are Japanese-style yukata-style long sleeve pajama set for spring and fall from OPEN-CLOTHES and summer pajama set for ladies in their 20s with flared collar and cute short sleeves from kittyshop. Products names are translated from Japanese to English.) They're only included in this collection because I have no pajama sets that fit besides the never-seasonally-appropriate heavy sets I occasionally get for my winter birthday. I'm using jacquard fabric I've had around but never used, and instead of the ruffles on second set, I'm going to use oversized rick rack.
+Pajama sets: The pajamas are not my design. They are basically knock-offs from Yahoo! Japan shopping, since I don't feel like importing mall-tier pajamas. (The originals are Japanese-style yukata-style long sleeve pajama set for spring and fall from OPEN-CLOTHES and summer pajama set for ladies in their 20s with flared collar and cute short sleeves from kittyshop.) The only real design change is using oversized rick rack instead of ruffles on that second set. Pajamas are the most pressing sartorial area in my life in which I need a self-assertion. People like to gift me pajamas, but they always ask me my size then buy a size or two down. Why won't anyone believe I'm not an XS! The one time I got something that fit, it was unwearably heavy fleece for my yearround hot climate. I don't want to be ungrateful or wasteful, though, so I've either crammed myself into tiny pajamas or sweated since I was little. That's so silly, especially now that I'm an adult. There's beautiful but unused jacquard fabric hanging in my closet. There's nothing stopping me from turning it into cute Japanese jacquard pajamas that actually fit.

pattern-making and sewing so far


@@ -64,9 +62,9 @@ I'm in the middle of sewing the button-down. The sleeves are cuffed and reinforc (image: incomplete button-down shirt with disconnected sleeves. )
-After the button-down is finished, I really want to tackle a swimsuit next. I was prioritizing everyday clothes, but I've been thinking it would more fun to have a swimsuit as soon as possible. Since I was planning to take my time with it, the obi swimsuit is not only made from the most challenging fabric, but it also has the most elaborate design. I might design a simple swimsuit to use for now, since it's reasonable to have more than one swimsuit.
+After the button-down is finished, I really want to tackle a swimsuit next. I was prioritizing everyday clothes, but I've been thinking it would more fun to have a swimsuit as soon as possible. Since I was planning to take my time with it, the obi swimsuit is not only made from the most challenging fabric, but it also has the most elaborate design.

-Maybe I'll update again when I've completed some garments, but thanks for reading an off-topic post.
+Anyway, thanks for reading an off-topic post.

-Last Updated June 27, 2021 +Last Updated October 17, 2021
diff --git a/src/diary/entries/210708 b/src/diary/entries/210708 index 1611930..e0cb7e0 100644 --- a/src/diary/entries/210708 +++ b/src/diary/entries/210708 @@ -3,7 +3,7 @@ july 8, 2021
#ai #character #combat #design #movement

-Househunting has been unexpectedly time-consuming, but I'll share the tentative design for the attack-movement loop. Hopefully now that an offer was accepted, I'll find some time to iron out the design before packing and moving begins.
+Househunting has been unexpectedly time-consuming, but I'll share the tentative design for the attack-movement loop.

The attack-movement loop needs to allow the character maintain attack range while attacking. The flow is complicated to follow, but this is how it works for now:
@@ -34,8 +34,8 @@ Too fast:

I'll work it out sooner or later, dependent on how hectic moving turns out to be.

-(By the way, that's my first gif recorded and edited entirely in ffmpeg. It's not pretty, but at least I could write my bash script without relying on copypasta code from forums this time. I was trying to follow the documentation website before, but it's unreadable. The man page is so much easier to understand and search through.)
+(By the way, that's my first gif recorded and edited entirely in ffmpeg. It's not pretty, but at least I could write my own bash script without relying on copypasta forum code this time. I was trying to follow the documentation website before, but it's arcane. The man page is much easier to understand and search through.)


-Last Updated July 10, 2021 +Last Updated October 17, 2021
diff --git a/src/diary/entries/210722 b/src/diary/entries/210722 deleted file mode 100644 index 1611930..0000000 --- a/src/diary/entries/210722 +++ /dev/null @@ -1,41 +0,0 @@ - -

how to attack a moving target

-july 8, 2021
-#ai #character #combat #design #movement
-
-Househunting has been unexpectedly time-consuming, but I'll share the tentative design for the attack-movement loop. Hopefully now that an offer was accepted, I'll find some time to iron out the design before packing and moving begins.
-
-The attack-movement loop needs to allow the character maintain attack range while attacking. The flow is complicated to follow, but this is how it works for now:
-
- (image: diagram of the attack movement loop) -
-The code is color-coded by object. Warm gray is input, orange is the character's action module, yellow is the character, yellow-green is the character's equipment module, blue-green is the attack handler, blue is the AI's attack module, purple is the AI's movement module, pink is the AI, brown is the KnowledgeBase's MessageBus, and cool gray is the character's kinematic body.
-
-

the loop explained


-Upon attack input, the character sets up for attacking and creates an attack timer. On timeout, the character's weapon swings. If the character is out of range, the "out_of_range" signal is emitted. Otherwise, the weapon successfully swings, either emitting "target_dead" or "hit."
-
-The AI receives these signals. If the target was out of range, it sets up to follow attack target.
-
-Every AI tick, it prompts the character to pathfind to the target then sets the character's velocity to the current_dot (the first node the character is trying to reach in path) minus the character's global_position.
-
-Every frame, the character's _process(delta) method calls move_and_collide with velocity * speed * delta. If the character's velocity isn't 0,0, the "moved" event is published to the Knowledge Base's MessageBus.
-
-The movement handlers are subscribed to "moved," and will emit signals if the character reached either the next waypoint (the target or the chosen goal point at the end of the path) or the current dot (the first point along the pathfinding between the character and the goal point).
-
-The AI receives these signals. If the next waypoint is reached, it's removed from the list of waypoints, the "arrived_at_attack_target" signal is emitted, and movement is cleared.
-
-Then the AI receives the "arrived_at_attack_target" signal and prompts the character to begin the attack all over again.
-
-

in-game


-It works in-game, too, but it's pretty janky, especially without animations. If the slime is slow enough, the player character attacks until it gets too far away, moves back in range, and continues attacking. If it's too fast, though, she never gets to attack and jitters constantly after the slime.
-
-Too fast:
-
(image: Angel follows slime)
-
-I'll work it out sooner or later, dependent on how hectic moving turns out to be.
-
-(By the way, that's my first gif recorded and edited entirely in ffmpeg. It's not pretty, but at least I could write my bash script without relying on copypasta code from forums this time. I was trying to follow the documentation website before, but it's unreadable. The man page is so much easier to understand and search through.)
-
-
-Last Updated July 10, 2021 -
diff --git a/src/diary/entries/210801 b/src/diary/entries/210801 index c9b1cb1..e8bb008 100644 --- a/src/diary/entries/210801 +++ b/src/diary/entries/210801 @@ -1,5 +1,5 @@ -

july 2020: mostly moving

+

july 2021: mostly moving

august 1, 2021
#diary

@@ -10,7 +10,7 @@ august 1, 2021

friday, july 8