diff --git a/src/diary/entries/211201 b/src/diary/entries/211201
index 2168a78..fb8ac12 100644
--- a/src/diary/entries/211201
+++ b/src/diary/entries/211201
@@ -48,9 +48,9 @@ december 1, 2021
rest of the month
-
My husband's hosting Christmas this year, but the new house still has lots of random boxes and cluttered surfaces. They'll be in town in two weeks, so cleaning is top priority. We barely have any furniture or decorations, so I hope it goes okay.
+
My husband's hosting Christmas this year, but the new house still has lots of random boxes and cluttered surfaces. Family'll be in town in two weeks, so cleaning is top priority. We barely have any furniture or decorations, so I hope it goes okay.
My Christmas cactus is flowering. :)
-Last updated January 11, 2022
+Last updated April 7, 2022
diff --git a/src/diary/entries/220101 b/src/diary/entries/220101
index 392bb0d..0efbb60 100644
--- a/src/diary/entries/220101
+++ b/src/diary/entries/220101
@@ -5,10 +5,8 @@ january 1, 2021
sunday, december 5
-
My family's hosting Christmas this year. My in-laws are visiting next week, so I compressed all the random packing boxes and did my best attempt at decorating last week. Maybe we can take advantage of post-Christmas sales and do better next yet.
-
This week, I'm going to do a mean job of sweeping and sanitizing all the surfaces.
-
They've still not decided if they'll be spending Christmas with us or in a different town, and how long they're visiting for. Going with the flow is fine, but I'd be a way more entertaining host if I knew how many meals and nights of activities to plan lol. I want them to like me. ;-;
-
For the rest, I didn't keep up with daily journaling, so...judging from my git log...
+
My family's hosting Christmas this year, so frantically cleaning, fixing everything up, and decorating. This is most of what occupied my mind, honestly, instead of Blessfrey.
+
I didn't keep up with daily journaling, so...judging from my git log...
@@ -9,49 +9,34 @@ This blog is my gamedev diary, but it's fun to use it as a real diary, too. Back
I always make a budget for everything and enjoy tracking my finances and investments. Honestly, I just really enjoy spreadsheets and incorporate them into every game I play, including the petsite I've been playing lately. I was also always the treasurer in every club I joined and made all their spreadsheets and budgets. It's more than just fun for me, though. I feel like it clears up a lot of uncertainty when you know where your money is coming from and going, and how long your savings will last.
-Buying our first house ate up my family's savings. I've been paying for all the repairs, bat removal (ew), and routine maintenance, too, when I never had to worry about expenses like that before. Also, towards the end of last year, the grocery stores have been getting hit with meat and produce shortages again, so we've been eating out more frequently. It's not even like it's been fun ordering out, either, because most places are closed, have 2-3 employees total, or are out of most menu items, but it's been another rising expense.
-
-Between the shell shock of covering all those closing fees and the higher cost of living, I need to rework my budget. My resolution involves identifying the most effective money saving methods without making my family uncomfortable and trying new ways to make extra cash this year. The money will go towards savings, investments, and furniture.
+Financial awareness suddenly feels more important with buying our first house, paying for our own repairs (no landlord to take care of everything anymore), rising food costs, and general rising cost of everything. My resolution involves identifying the most effective money saving methods without making my family uncomfortable and trying new ways to make extra cash this year. The money will go towards savings, investments, and furniture.
cutting spending
-My husband and I don't have entirely separate finances since we share everything, but I usually pay for groceries, we usually split furniture, and we buy some fun things for ourselves independently. I'm not very aware of his bank account, so this is more of my own personal resolution.
-
-It's easy to cut out most luxuries. I'll read my old books or free ones from Project Gutenberg, play my old games or whatever giveaway game from whatever Steam competitor, pan my beauty and skincare products, and lean on free entertainment like nature walks. Honestly, I don't deviate too far from that anyway these days.
-
-The food budget is more important but more difficult to tackle. I usually use fresh or frozen produce and other whole ingredients, so I don't necessarily save money when I cook at home. With every place raising their prices, there aren't really any cheap restaurants to order from anymore, either. Using more canned food and meal kits would save a ton of money, but even simplifying my existing recipes and planning each week around more overlapping ingredients would help. Since food is one of my family's largest expenditures, even small but consistent savings in this area would have a noticeable impact overall.
-
-My other unnecessarily high expenditure is water and water heater bills. There's so little to do for fun during the pandemic, I just want to take cozy baths. I don't buy bath salt or colloidal oatmeal on a monthly basis anymore, but it's still wasteful to fill a bath with hot water more than once a month. I need to cut back, but I like it so much. ;-; I think a big part of what I like about it is the change of scenery. Writing in the bath is congruent to writing at the cafe or a community center - it's away from my stuffy desk! If I could get the same experience taking my laptop in bed, down to the den, or out in the yard, I'd probably still be happy and save some money. Too bad it's so miserably cold, and it's so cozy warm in the bath.
-
+Mostly looking into cheaper versions of old recipes, make meals that seem differentiated even while using the same few grocery items over a week, taking less baths (honestly, the water heater bills can add up if it's your only form of pandemic entertainment lol), and cutting frivolous and fun expenditures where I can without going crazy.
-I do foresee some frivolous purchases in 2022, too, so I'll be intentional about them.
-
-
-My favorite color was named the Pantone Color of the Year, so I anticipate we'll get lots of periwinkle, lavender, stone blue, and cloud gray fashion releases. I won't miss out, but I want to spend less than $50 on Very Peri. That could look like a ColourPop palette and a water bottle, a set of hair clips and a blush, or a nice hat. I think I'll easily stay way under since I can't imagine anything better than Anastasia Beverly Hill's Soul or OPI's Show Us Your Tips!, but that's the ceiling if 2022 turns out to be a periwinkle paradise.
-
-Also, if there's a miracle and COVID leaves us forever, I want new lipstick in berry, vampy plum, and one unconventional color. It's not happening, but it was in my budget last year and will carry over until it does.
+
making money
+Obviously, cutting spending is painful. It'd be a lot better if I could just make more money to make up for the unreasonable inflation. Passive income and side gigs have always interested me, but I've never put forth the effort. Making it one year's resolution might be the push I need.
-Other than that, no incidental shopping. I'll rebuy basic bath products, skincare, and brow gel from the drugstore. At most, only one unexpected need should be purchased each month. (January's was a special screwdriver to repair my poor laptop.) I'll go back to buying one or two small items needed around the house per month. As for big items, we'll set that budget after few months of planning needs, colors, and themes together.
+I've gotten lots of compliments on the professional quality of my homesewn clothing and face masks, so I should be able to work out some niche item that's easy to mass-produce. I do my own pattern-making, so another route would be to rework my patterns for a variety of sizes, digitize them, and sell them online.
-
making money
-Passive income and side gigs have always interested me, but I've never put forth the effort. Making it one year's resolution might be the push I need.
+I'm not going to act like my artwork is great, but I think I could produce usable themed assets, too. My code isn't an object of envy either, but I could write some assets. There are plenty of gamedev stores, so I could get my real start selling tilesets on itch.io instead of working on this game until the sun explodes.
-I've gotten lots of compliments on the professional quality of my homesewn clothing and face masks, so I should be able to work out some niche item that's easy to mass-produce. It'd be cool to make some artistic things in smaller batches to sell as well. I do my own pattern-making, so another route would be to rework my patterns for a variety of sizes, digitize them, and sell them online.
+Maybe I could program something worth selling? Some kind of minigame.
-I'm not going to act like my artwork is that good, but I think I could produce usable themed assets, too. My code isn't an object of envy either, but I could definitely write some assets. There are plenty of gamedev stores, so I could get my real start selling tilesets on itch.io instead of working on this game until the sun explodes.
+I've also never tried buying or selling things online.
-I've also never tried buying or selling things online. I'd like to see what furniture is being sold in my area, but I have some things I could try to sell, too. Apparently Facebook Marketplace is the end all be all. I don't like Facebook and would rather not have an account there, but I can try it for my resolution. The local used clothing store is too swamped to accept clothes, so I might have to try Depop or Poshmark or something like that for those. If everything sells, it's not like it will be big money, but every little bit helps.
+Another weird thing, but I've never had a credit card before. Debit cards have poor protection against fraud, so I might as well have a credit card, even if I'll only treat it like a security layer. Some of them have pretty good rewards. It could be worth choosing one based on rewards rather than rates. I wouldn't mind cash back or cheap vacations just from buying gas and groceries. I've never had one before, though, so I'd have to learn all the terms first. Intentionally borrowing money is so uncomfortable.
-Another weird thing, but I've never had a credit card before. Debit cards have poor protection against fraud, so I might as well have a credit card even if I'll only buy things I can afford. Some of them have pretty good rewards. It could be worth choosing one based on rewards rather than rates. I wouldn't mind cash back or cheap vacations just from buying gas and groceries. I've never had one before, though, so I'd have to learn all the terms first.
+...Just some ideas to try. Every little bit counts, I guess.
let's get to work
-If only I could be a sim and trap myself in my desk for 3 days until a lucrative novel is completed, email it to a publisher, then get enough royalties every week to live comfortably for the rest of my life, despite eggs costing §11. If I had access to spamming motherlode, I might even tolerate the frequent house fires and aliens abductions.
+If only I could be a sim and trap myself in my desk for 3 days until a lucrative novel is completed, email it to a publisher, then get enough royalties every week to live comfortably for the rest of my life, despite eggs costing §11. If I had access to motherlode, I might even tolerate the frequent house fires and random zombies eating my garden every night.
-Anyway, now that everything's slowed down, I should start biweekly articles again. I already have articles planned, but maybe-maybe if I'm not too shy, I can start sharing the more fun parts of my GDD. I change my mind a lot and forget my old ideas for characters, setting, and plot, so it'd be nice to be able to look back. It'll lead to a lot of unrepresentative articles, but hopefully since it says "diary" up there, they can be appreciated as iterations.
Be well in the new year. Later. :)
-Last updated February 1, 2022
+Last updated April 7, 2022
-RPGs are all about the stats that define their characters. The values of each stat are constantly being jostled around by buffs, debuffs, enchanted equipment, environmental effects, and perks. If you allow each
-
-
when does a character become hostile?
-NPCs generally will not seek out the player for combat. They will either stand stationary or follow their patrol route, oblivious of the player until becoming hostile.
-
-Usually, if an NPC is hostile, that means a threat got too close. Currently, proximities in Blessfrey mirror Edward T. Hall's zoning for interpersonal distances. Intimate distance is the range for physical interaction and melee attacks and social distance is the range for assessing hostility and ranged attacks.
-
-(By WebHamster - Own work, CC BY-SA 3.0, Link)
-
-Last updated January 12, 2022
-
diff --git a/src/diary/entries/220324 b/src/diary/entries/220324
new file mode 100644
index 0000000..087e04e
--- /dev/null
+++ b/src/diary/entries/220324
@@ -0,0 +1,30 @@
+
+
applied skills vs. applied keywords
+march 24, 2022
+#skill
+
+
monitoring skills
+In Blessfrey, entities like to know where effects come from.
+
+For one, knowing the source of a killing blow allows for cute little feedback like the Binding of Isaac's death screen.
+
+More importantly, it allows mechanics to interact more freely. If the bleeding status effect on a character is linked with the Cat Scratch skill, used by Bad Cat, that opens up possibilities. Maybe there could be a skill that reflects target's status effects back unto the original dealer. Maybe there could be an effect that negates skills from animal sources. Maybe a skill could heal an ally for even more you are both suffering from the same skill. The source is important if I want to do anything beyond the basic "cure bleeding."
+
+
+
how should the data be bundled?
+Skills themselves contain keywords, references to the user and target, and any data that could possibly be needed. It's immediately obvious to just directly tack the still onto the back of an array on the target. It can never be that easy, though. Skills contain keywords, all of which have different durations and aren't necessarily in the tree at the same time. Also, there's not a lot of applications for cycling through all the applied skills, besides making something like Guild Wars's effects monitor and damage monitor.
+
+
+
+There aren't a lot of cases where the game would be looking to remove any instances of "Cat Scratch." However, there would plenty of skills looking to remove bleeding or status effects.
+
+It's a more direct approach to treat keywords and skills separately in the code. Characters can keep an array with references to the applied keywords instead of applied skills. The other data can be bundled with it as an array: [keyword, source, [tags]].
+
+The keyword is the important part because, in bleeding's case, it's the main culprit for the actual health degeneration of the character. It also has its own duration, so there's no conflicts with holding onto bleeding even if all other keywords from its skill expiring. The source is just a noncommittal reference, so it and its data can be accessed as needed. Maybe the keyword and skill contain everything needed, but I'm going to pull out some frequently accessed attributes into tags to see if that helps with efficiency.
+
+
it'll be better this way
+It's always a good idea to separate keywords from their governing skill. When skills and keywords are decoupled, each can run their course without interference.
+
+
+Last updated April 7, 2022
+
diff --git a/src/diary/entries/220401 b/src/diary/entries/220401
index 22ae866..83bc043 100644
--- a/src/diary/entries/220401
+++ b/src/diary/entries/220401
@@ -1,12 +1,43 @@
-
march 2022: demo skills
+
march 2022: demo skills, new game
april 1, 2022
#diary
-
tuesday, march 1
+
thursday, march 3
-
...I'll document this soon.
+
Adrenaline Rush demonstates working critical and attack rate increases; effects are properly removed at timeout
+
refactored highlight; it only uses control nodes as it always should have; data can be added and removed to the highlight
+
skillbar allows common skills to be equipped on a character's skillbar, no matter their job
-Last updated April 7, 2022
+
friday, march 4
+
+
refactoring attack and movement, since move-to is wonky; attack no longer waits for a complete loop to realize it's out of range and should move to target
+
allow for UI windows to toggle
+
+
+
saturday, march 5
+
+
Appraise adds floor item value to its highlight
+
added skills with an instant activation time
+
+
sunday, march 6
+
+
inventory items are highlightable
+
tweaked appearance of inventory UI
+
+
saturday, march 19
+
+
started drawing some new keyart for Blessfrey
+
+
tuessday, march 29
+
+
started seriously developing Lemonland, an action-oriented petsite
+
+
thursday, march 31
+
+
started digitizing the gdd for Lemonland. I started writing it probably around 2017.
+The effect of a Blessfrey skill is broken into keywords and conditions. For example, Blessed Purity cures 2 poisons from target and heals for 35 per poison removed. Technically, it's a skill with the cure keyword and a conditional heal keyword. This way, "heal" code is reusable, and players can rely on "heal" skills to be consistent.
-
my goals
-The systems and game mechanics in Blessfrey are mostly present and functional, so I feel like it's a good time to practice releasing, hosting, and supporting a game. The first release will just be a tech demo. I want it to showcase the features in the game, have structure and goals, and have some of the same gameplay feel of future releases. Hopefully it's fun, but we'll see when it's all bolted together.
+Phases are necessary for skills to be reactive. For Blessed Purity, cure is first, and heal cannot activate until it received the outcome of cure. To achieve this, I partially copied Guild War's skill effects without much thought: initial effect -> main function (not sure if there's a name for this) -> end effect. Most keywords are thrown into the main phase, anything that needs to happen immediately goes in initial, and anything that happens at the end goes in the end.
-The core of the game is curating from a wide variety of skills and combining them into a viable skillbar. I'm going to try to get away with skimping on content to put more focus on the release process, but skill variety deserves the most attention. I'll shoot for 30 skills for now, or in other words, 3-4 skillbar's worth without repeats.
+Naturally, I had a lot of problems with the flow of the skill. Some keywords (like bleeding) can last up to half a minute, while others (like attack) are executed instantly. When I let the skill run without breaks, the end effect ran long before earlier keywords finished up. When I forced keywords to execute one at a time, I had projectiles that awkwardly persisted until an unrelated keyword timed out. Timing was unpredictable, and instead of implementing a third fix, I wanted to critically assess the internal structure of the skill.
-
finding structure
-I could release a goalless demo, but I fear people wouldn't explore long enough to discover any depth. If I could rip a level from the finished game, structure and goals would already be built in, but this demo will be more or less original content. I'll have to build structure as I go along.
-This demo should showcase more gameplay than story and world, so it should probably have more in common structurally with a tutorial room. I'll just fallback on the tutorial bingo approach again and hope it never loses its luster. Bingo is a great excuse to list gameplay prompts for the player while giving them some choice on how to proceed. It's also a game in itself, so I don't need to take my game design much further: every full consecutive set of activities is a little win with a prize and a full board bingo is a big win with a big prize. I'm not going to worry about a fail state, so the demo can be more like a playground than a challenge.
+
-The demo shouldn't just resemble a tutorial - it should be a tutorial. It is the first time unguided players will be able to play, so there needs to be lots of in-game guidance. I'll test a stealth tutorial and see how it compares to a more conventional tutorial. Ideally, the tutorial should be easy enough for veterans to breeze through without noticing it's even there, but nudges and tips are given to those who need it. It'd be even cooler if the tutorial doesn't break immersion, coming from level design, believable dialog, or from passers-by setting an example. Maybe it's a terrible idea and there's a reason why all games start out feeling like post No Child Left Behind era public school, but I want to try it out. Since I have the event system, it's just a matter of listening for lack of movement, unnecessary key spamming, stalling in quest progress, or any other apparent failures and sending someone over to help out.
+The concept of a phase brings nothing to skills. Even Guild Wars seems to use "initial effect" and "end effect" more like conditions than integral structure. The majority of skills don't operate in phases anyway.
-
world and story
-I won't be taking an exerpt of the story or using fully realized locations, but the demos should at least conceivably fit within the full game. This time, I'm just going to use two of the major supporting characters, Chloe and Night, (both healers) and enough of the school to service a demo. The courtyard is a relatively safe area with some easier enemies to the far side of the map, guarding collectible items. If you die, the checkpoint is in this field, managed by Chloe. The nurse's office is an item shop, run by Night. The storage room is a maze full of monsters and treasure. The areas, monsters, and dialog will be more involved than anything I've ever tested before, and it'll include a stress test skill. Let's see how the engine handles it!
+Some keywords need to know what skill they belong to, what skill other keywords belong to, and who their user and target are. The poorly understood flow of skills sometimes causes this information to be freed with the skill before it's needed. Also, in general, keywords within the same phase run sequentially when that isn't necessarily my intention. It kind of invalidates the entire concept of phases, too. Sure, an end effect keyword is certainly called after an initial effect keyword, but in most versions of Blessfrey's skill.gd, the flow is identical when putting the same keywords one after the other into the main phase.
-
ugly
-Of course, it's going to be pretty rough overall. It's the first alpha build released to the public, so there are a few bugs I know are still in there, some capable of crashing the game. Also, there are no frills when it comes to the audiovisual side - barely any animations, all audio is from the public domain, effects are carelessly placed, and so on. Like Yandere Dev says, "all assets are placeholder." :)
+It makes me wonder what a phase even is. I can't even define the boundaries of the phase in the diagram because it's so arbitrary. Do my skills need phases at all?
-Anyway, back to working on the demo!
+Keywords already have structure built into them. Keywords lock their effect behind an entry condition (like curing 1 or 2 poisons) and guard the exit with another condition (like bleeding lasting 30 seconds). It would make more sense if end effect keywords were replaced by keywords that trigger upon the completion of earlier keywords, while other keywords are free to fire off simultaneously.
-Last updated January 12, 2022
+
skills should feel like going to the DMV
+Most DMVs I've suffered through in my life have been all-day affairs of standing in lines that stretch around the building through the bad side of town, attended by only one service desk manned by a slow, error-prone clerk. Honestly, that's not too far off from my original skill design. I'm not referring to those DMVs, though. The DMV that's closest to my new location is much more efficient, lets you sit as you wait, and has (novel concept) multiple service windows. That's a much better model for my skill.
+
+
+Since my "DMV" will be a separate entity from the skill (basically an event handler), the fate of the skill is less important when it comes to data it holds inside. Flow is also more controlled, since the skill itself cannot progress its own current state.
+
+As for flow, obviously, skills without triggers can fire off immediately. The DMV will connect to the KnowledgeBase and begin listening for any event topics that could trigger the keywords. Once a keyword's conditions are met, it will become active and be applied to the target. The DMV also sets up a timer for its duration or listens for exit cues to know when to remove the keyword. Some keywords will never activate, but they will be freed once they had their chance. If Blessed Purity cures 0 poisons, heal will receive a sad "0" and free quietly.
+
+Under the DMV model, the skill's flow becomes more circular.
+
+Nothing's ever going to be perfect, but taking time to plan and be intentional gives a better outcome. Never thought I'd prefer the DMV, but you can learn design concepts from anywhere.
+
+
+Last updated April 7, 2022
diff --git a/src/diary/entries/220421 b/src/diary/entries/220421
index a165cca..c5a16ba 100644
--- a/src/diary/entries/220421
+++ b/src/diary/entries/220421
@@ -1,32 +1,49 @@
-
-
defining the major jobs in blessfrey
-february 10, 2022
-#game-design #jobs
+
+
skills aren't a manor; they're the DMV
+april 7, 2022
+#skill #redesign
+
skills are unmanageable as is
+The effect of a Blessfrey skill is broken into keywords and conditions. For example, Blessed Purity cures 2 poisons from target and heals for 35 per poison removed. Technically, it's a skill with the cure keyword and a conditional heal keyword. This way, "heal" code is reusable, and players can rely on "heal" skills to be consistent.
-
the basics
-RPG classes are called "jobs" in Blessfrey. Characters will have a primary job, but they will have limited access to other jobs through multiclassing. It's similar to Final Fantasy Tactics. I think it's cute to call secondary job a "side job."
+Phases are necessary for skills to be reactive. For Blessed Purity, cure is first, and heal cannot activate until it received the outcome of cure. To achieve this, I partially copied Guild War's skill effects without much thought: initial effect -> main function (not sure if there's a name for this) -> end effect. Most keywords are thrown into the main phase, anything that needs to happen immediately goes in initial, and anything that happens at the end goes in the end.
-
job requirements
-Guild Wars and Magic: The Gathering are my main inspirations for Blessfrey's game mechanics. I had trouble getting into other MMORPGs after Guild Wars. Others have so many mechanics, classes, levels, consumables, and levels of equipment that they begin to feel so chaotic, random, and unlearnable, or (even worse) the meta's so obvious that players only use a 1% of the content doesn't matter because there's a
-, and all your successes are owed to time, micro-transaction money, and RNG. Guild Wars
- because they are never as tight in their design or allow player skill to shine as often. In contrast with standard MMOs with more class ArenaNet self-labels their game as a CORPG (competitive online role-playing game), so it's not surprising it plays so differently. Guild Wars, especially before expansions started coming out.
+Naturally, I had a lot of problems with the flow of the skill. Some keywords (like bleeding) can last up to half a minute, while others (like attack) are executed instantly. When I let the skill run without breaks, the end effect ran long before earlier keywords finished up. When I forced keywords to execute one at a time, I had projectiles that awkwardly persisted until an unrelated keyword timed out. Timing was unpredictable, and instead of implementing a third fix, I wanted to critically assess the internal structure of the skill.
-
lucrest, the mundane
-Lucrest is more or less representative of a typical town, with a shopping center, school, church, a neighborhood, and some natural beauty. Functionally, it will have story events and side quests, but it will mainly serve as the hub for recovering and gearing up between dungeon crawls. I think of it as Torchlight a lot. (At least, the hub from the first game.) Artistically, it's an opportunity to work with what's familiar to me.
-I think it's a chance to do something a little different in a game, too. I learn lots of interesting little tidbits of Japanese culture through Japanese media, but I feel like my day-to-day life and childhood rarely come up in games with American settings. Some games do have detailed settings, like Bloodlines's L.A, Mafia II's generalized 1950s east coast, and all the Night in the Woods's, Life is Strange's, and David Cage games out there, but America is so patchwork that I enjoy them for their cultural differences as much as I do for their cultural simularities.
+
-This is due to an urban vs rural divide, but it's also a regional divide. Writers favor other regions heavily, then limit the South to Louisiana and Florida, which are both geographically southern but culturally divergent with stronger ties to France and Spain respectively than the English derivative Deep South. Wikipedia agrees. In their list of games by state, California, Alaska, the West, and the D.C. metropolitan area dominate American representation. It's not like the Deep South is the most romanticized setting, but there's only 1 notable game in Alabama for me to compete with, and it's a sports game.
+The concept of a phase brings nothing to skills. Even Guild Wars seems to use "initial effect" and "end effect" more like conditions than integral structure. The majority of skills don't operate in phases anyway.
-Really, I just want to put the things meaningful to me and my world in this game, good and bad. Looking around, though, it seems like a little portal into suburban Alabamian life could be novel.
+Some keywords need to know what skill they belong to, what skill other keywords belong to, and who their user and target are. The poorly understood flow of skills sometimes causes this information to be freed with the skill before it's needed. Also, in general, keywords within the same phase run sequentially when that isn't necessarily my intention. It kind of invalidates the entire concept of phases, too. Sure, an end effect keyword is certainly called after an initial effect keyword, but in most versions of Blessfrey's skill.gd, the flow is identical when putting the same keywords one after the other into the main phase.
-
what's there to do in alabama?
-This isn't my first iteration of game world that's more of a personal diary for things I encountered growing up. I spend a lot of my middle school years filling out a GDD for a game named after the fictional neighborhood it was set in. The protagonist was Walker, a girl who she ripped out all the pages of her diary in a moment of grief and set them to the wind. All you did was walk around, watch events, collect diary pages, and do some basic puzzle-solving. There's an entire subdivision to explore, each neighborhood with its own flair and obstacles. As you collect diary pages, you unlock a clearer image of who Walker is and why she was sad. At the time, I was inspired by Tale-of-Tales, especially The Path and The Graveyard, but similar genres have since emerged like walking simulators and whatever those Slenderman collect-all-the-pieces-of-paper games were. The only remnant I have left of the game is an old tumblr blog. If only Unity went free earlier; I would totally be sharing an broken demo instead of a moodboard with a broken theme.
+It makes me wonder what a phase even is. I can't even define the boundaries of the phase in the diagram because it's so arbitrary. Do my skills need phases at all?
-
+Keywords already have structure built into them. Keywords lock their effect behind an entry condition (like curing 1 or 2 poisons) and guard the exit with another condition (like bleeding lasting 30 seconds). It would make more sense if end effect keywords were replaced by keywords that trigger upon the completion of earlier keywords, while other keywords are free to fire off simultaneously.
-Sixth View's gameplay is really basic, the narrative is really linear, and a lot of it is middle school cringe, but there's a tiny glimpse of Lucrest in there. Like Sixth View neighbors, Blessfrey townspeople are going to be drawing with sidewalk chalk, having yard sales, playing Concentration 64 and Big Booty, painting clear nail polish over chiggers, avoiding water serpents in the brook, doing Bible drills, folding fortune-tellers, finding golden orb weavers in their gardens, wondering why pairs of shoes were hung over telephone lines and trees, wearing clover crowns, making sock monkeys, blowing dandelion puffs, finding arrowheads in the river, four square, cutting through cotton fields, and all the stuff I think of when I think of home.
-Last updated January 16, 2022
+
skills should feel like going to the DMV
+Most DMVs I've suffered through in my life have been all-day affairs of standing in lines that stretch around the building through the bad side of town, attended by only one service desk manned by a slow, error-prone clerk. Honestly, that's not too far off from my original skill design. I'm not referring to those DMVs, though. The DMV that's closest to my new location is much more efficient, lets you sit as you wait, and has (novel concept) multiple service windows. That's a much better model for my skill.
+
+
+Since my "DMV" will be a separate entity from the skill (basically an event handler), the fate of the skill is less important when it comes to data it holds inside. Flow is also more controlled, since the skill itself cannot progress its own current state.
+
+As for flow, obviously, skills without triggers can fire off immediately. The DMV will connect to the KnowledgeBase and begin listening for any event topics that could trigger the keywords. Once a keyword's conditions are met, it will become active and be applied to the target. The DMV also sets up a timer for its duration or listens for exit cues to know when to remove the keyword. Some keywords will never activate, but they will be freed once they had their chance. If Blessed Purity cures 0 poisons, heal will receive a sad "0" and free quietly.
+
+Under the DMV model, the skill's flow becomes more circular.
+
+Nothing's ever going to be perfect, but taking time to plan and be intentional gives a better outcome. Never thought I'd prefer the DMV, but you can learn design concepts from anywhere.
+
+
+Last updated April 7, 2022
diff --git a/src/diary/entries/220501 b/src/diary/entries/220501
index 22ae866..f61b039 100644
--- a/src/diary/entries/220501
+++ b/src/diary/entries/220501
@@ -1,12 +1,31 @@
-
march 2022: demo skills
+
april 2022: the flowers bloomed
april 1, 2022
#diary
-
tuesday, march 1
+
monday, april 4
+
-
...I'll document this soon.
+
we've waited through 4 years of silence, 6 years since the last album, military service, Burning Sun, Seungri's retirement, Taeyang's marriage and birth of his first child, the forced cancellation of their tour due to COIVD, TOP's termination with the label and founding of his own label. Big Bang finally came back, even if it feels more like a good-bye. I appreciate other directors, so I almost forgot G-Dragon is the more masterful director in KPOP after such a long silence. The video says everything in 3 minutes. Still Life blows everything away. So much joy.
+
it means everything that Seungri's battered chair is present beside the others (G-Dragon's chair is the director's chair) and all five of the lines in the final logo are intact. They aren't cowards and didn't abandon him, even if the media, corrupt courts, and public opinion did. I wish I had that level of strength and loyalty.
-Last updated April 7, 2022
+
saturday, april 9
+
+
starting to get my bearings with Angular after spending an hour on tutorials before bed the past two days.
+
+
+
sunday, april 10
+
+
finally got a new refrigerator installed. The old one's been broken, and new ones have been delayed. I missed ice cream. ;-; Delivery got rescheduled to during church, though, which was disappointing.
+
implementing the CSS grid with Angular...so hard.
+
+
+
monday, april 11
+
+
painted my nails OPI Quest for Quartz - it's from the XBOX collection. The quality is way below normal OPI nail polish, it's so packed with glitter that it's difficult to get a smooth finish with but somehow still looks matte once dry, and the color has as strange undertones as first-party 360 controllers. Flattering pinks and nudes are difficult colors for me to find, though, and this nearly nude mauvey medical pink is perfect. Yay, finally a nude polish that doesn't turn orange or brown on me...thanks, Microsoft?
sudo npm install -g @angular/cli (you can decide whether to share analytics)
+
+
+
grab the template
+Now you're ready to start an Angular project. Begin in the folder you'd like your project folder to be. Instructions and files are also available on Angular's github.
+
+
+
ng new Example (accept Angular routing and CSS) Change out the name 'Example' with your project name.
+
Now you'll have a folder named 'Example,' containing your skeleton. If you didn't already have git initialized in the folder, it'll automatically do so for you.
+
+
test run
+Now you can run your example project in the browser.
+
+
+
cd Example/
+
npm start
+
Now you can browse to your project. By default, it used port 4200, so it's viewable @ http://localhost:4200/
+
When you're done, stop the script by entering ctrl + c into the terminal.
+
+
+If you see the page below, you have everything you need to get started on your own project.
+
+With a basic HTML/CSS website (like blessfrey.me), the CSS Grid allows you to align its nested divs into rows and columns. Angular allows you to break each area into a component to be styled by the grid.
+
+I'll use the petsite browser game I'm making as an example:
+
+These two contain all the subcomponents generated earlier.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Then the CSS grid takes place in the CSS file.
+
+
+Last updated April 12, 2022
+
diff --git a/src/index.py b/src/index.py
index 842d2cd..9cd4250 100644
--- a/src/index.py
+++ b/src/index.py
@@ -375,10 +375,10 @@ def error404(error):
return "unfortunately, a 404 error. the page you're searching for doesn't exist. (or am I just hiding it for now?) try another page! "
@error(500)
def error500(error):
- return "unfortunately, a 500 error. something is wrong with the page you're trying to find, if it exists at all. try another page! "
+ return "unfortunately, a 500 error. something is wrong with the page you're trying to find, if it exists at all. try another page! return to blessfrey.me."
@error(502)
def error502(error):
- return "unfortunately, a 502 error. this was likely due to website maintenance. usually it'll be back up before you finish reading this, but otherwise, I'll notice something's wrong soon! "
+ return "unfortunately, a 502 error. this was likely due to website maintenance. usually it'll be back up before you finish reading this, but otherwise, I'll notice something's wrong soon! return to blessfrey.me."
# Downloads
@route('/download/')
diff --git a/src/static/img/ent/SkillDMV.png b/src/static/img/ent/SkillDMV.png
new file mode 100644
index 0000000..c1f3bb3
Binary files /dev/null and b/src/static/img/ent/SkillDMV.png differ
diff --git a/src/static/img/ent/SkillDMVFlow1200.png b/src/static/img/ent/SkillDMVFlow1200.png
new file mode 100644
index 0000000..5a960e9
Binary files /dev/null and b/src/static/img/ent/SkillDMVFlow1200.png differ
diff --git a/src/static/img/ent/SkillManor.png b/src/static/img/ent/SkillManor.png
new file mode 100644
index 0000000..2dc871b
Binary files /dev/null and b/src/static/img/ent/SkillManor.png differ
diff --git a/src/static/img/ent/SkillManorFlow1200.png b/src/static/img/ent/SkillManorFlow1200.png
new file mode 100644
index 0000000..b2095d4
Binary files /dev/null and b/src/static/img/ent/SkillManorFlow1200.png differ
diff --git a/src/static/img/ent/angular_componentdir.png b/src/static/img/ent/angular_componentdir.png
new file mode 100644
index 0000000..4f613c1
Binary files /dev/null and b/src/static/img/ent/angular_componentdir.png differ
diff --git a/src/static/img/ent/angular_examplepage.png b/src/static/img/ent/angular_examplepage.png
new file mode 100644
index 0000000..3df413b
Binary files /dev/null and b/src/static/img/ent/angular_examplepage.png differ
diff --git a/src/static/img/ent/bindingofisaac_deathscreen.png b/src/static/img/ent/bindingofisaac_deathscreen.png
new file mode 100644
index 0000000..741a6df
Binary files /dev/null and b/src/static/img/ent/bindingofisaac_deathscreen.png differ
diff --git a/src/static/img/ent/guildwars_skillmonitor.png b/src/static/img/ent/guildwars_skillmonitor.png
new file mode 100644
index 0000000..287b7b7
Binary files /dev/null and b/src/static/img/ent/guildwars_skillmonitor.png differ
diff --git a/src/static/img/ent/lemonland_cssgrid.png b/src/static/img/ent/lemonland_cssgrid.png
new file mode 100644
index 0000000..f2efd27
Binary files /dev/null and b/src/static/img/ent/lemonland_cssgrid.png differ