#action processing
Explore tagged Tumblr posts
Text
Inform Basics: ACTIONS and RULES
Note: this is a longer post than usual, but some of it is debug content that isn't required reading.
I've been promising to talk about debugging for a long time. And, in truth, figuring out disambiguation problems with the TRACE command is debugging. But since you may not have known the term disambiguation a couple of weeks ago, that's probably not what you had in mind.
No, you were probably thinking about some hardcore, silly weirdness in your game, some very hard to pinpoint problem. Today's post is about that kind of thing. We've talked about action processing. The events of a player's turn happen in a set order. We deal with that in the actions we define. The order is, first to last:
Before
Instead
Check
Carry Out
After
Report
Of course, there are things that happen outside of these phases. For instance, if we create an EVERY TURN rule, those fire at the very end of the turn, after report rules have been processed. In the course of play, players don't have a lot of insight into the various machineries of an Inform 7 turn. A lot of it is there just to keep Inform 7 being a thing at runtime, and that doesn't interest us. There's a very complicated mapping of the turn's processes, but I think it would just discourage beginners from trying to write IF at all. So let's not. Most Inform 7 stuff just works, and that's why I like it.
Still, at times there will be a head scratcher. When that happens, we have two tools that can help us figure out what's going on. The first is ACTIONS. Let's say we have a nice, juicy 50,000-word game, and one of our testers gives us a transcript in which "jump" isn't working properly. Instead, the jump command is printing a description of the room. With ACTIONS on (just type "actions" at the command prompt in a test environment), Inform 7 will print the specific actions being attempted and let us know if they succeed or fail.
Under default conditions, with JUMP working as expected, that would look like this:
>actions Actions listing on. >jump [jumping] You jump on the spot. [jumping - succeeded]
The text in brackets is the debug content toggled by ACTIONS. If we've set actions that interfere with jumping.... well, let's look at this code as an example.
Before jumping in the lab: say "Look before you leap!". Instead of jumping: try looking.
OK, so the BEFORE is specific to the lab, but the INSTEAD applies to the entire game world. So we must have forgotten something somewhere. We can use the ACTIONS command to have a look:
>actions Actions listing on. >jump [jumping] Look before you leap!
[(1) looking] lab nice lab.
[(1) looking - succeeded]
[jumping - failed]
This gives us something to chase after! This is a pretty simple example, but ACTIONS is most useful for helping us find problems once we get to a certain level of complexity in our game world. In this example, we can see that jumping "failed" and that looking "succeeded." By "failed," we know the jumping action never completed. Most commonly, that will be caused by an "instead" rule--they stop actions from continuing, right? A control-f on "instead of jumping" is probably in order.
But what if something more devious is at work? What about a case where the ACTIONS command doesn't report anything unusual? The next step is the RULES command, which is a verbose listing of every rule that fires in the course of executing a command. Now, as I said at the start of today's post, a lot of those rules are really none of our business. Their strangeness can be intimidating when reviewing the output in RULES mode. My advice is just not to worry about it. Just like the TRACE command, only a handful is likely relevant to us, so don't pressure yourself to figure it all out.
Though by all means do, if you're curious. Just don't be bothered by it.
So brace yourself, I'm going to print the output. I'm only going to talk about the pink text, so don't worry too much about the rest. I just want you to know what you're looking for.
>rules Rules tracing now switched on. Type "rules off" to switch it off again, or "rules all" to include even rules which do not apply.
[Rule "parse command rule" applies.]
>jump [Rule "declare everything initially unmentioned rule" applies.] [Rule "generate action rule" applies.] [Rule "announce items from multiple object lists rule" applies.] [Rule "set pronouns from items from multiple object lists rule" applies.] [Rule "before stage rule" applies.] [Rule "basic visibility rule" applies.] [Rule "basic accessibility rule" applies.] [Rule "carrying requirements rule" applies.] [Rule "instead stage rule" applies.] [Rule "requested actions require persuasion rule" applies.] [Rule "carry out requested actions rule" applies.] [Rule "descend to specific action-processing rule" applies.] [Rule "work out details of specific action rule" applies.] [Rule "investigate player's awareness before action rule" applies.] [Rule "player aware of his own actions rule" applies.] [Rule "check stage rule" applies.] [Rule "carry out stage rule" applies.] [Rule "carry out jumping" applies.] nice lab.
[Rule "after stage rule" applies.] [Rule "investigate player's awareness after action rule" applies.] [Rule "report stage rule" applies.] [Rule "report jumping rule" applies.] You jump on the spot. [Rule "last specific action-processing rule" applies.]
[Rule "A first turn sequence rule" applies.] [Rule "scene change machinery rule" applies.] [Rule "every turn stage rule" applies.] [Rule "timed events rule" applies.] [Rule "advance time rule" applies.] [Rule "update chronological records rule" applies.] [Rule "A last turn sequence rule" applies.] [Rule "scene change machinery rule" applies.] [Rule "adjust light rule" applies.] [Rule "note object acquisitions rule" applies.] [Rule "notify score changes rule" applies.] [Rule "parse command rule" applies.]
So you'll see in there the text that's been troubling us. That's "nice lab," which is the room description of the lab. We can usually start by looking at the rule immediately above the output. In this case, that's the "carry out jumping" rule. Hm, ok, so let's do a ctrl-f on "carry out jumping." We'll find this:
carry out jumping: print the location's description.
What a strange bit of code! Who knows why we did it. This is why I recommend giving names to particularly experimental or impactful rules. They are printed by names during a RULES debug session. So this code:
carry out jumping (this is the dubious jumping rule): print the location's description.
Will look like this in debug:
[Rule "dubious jumping rule" applies.]
The main thing to take from all of this is this: these tools can help you understand what Inform 7 is doing with a command. Like most debug content, you don't need to understand all of it, you just need to know what you're looking for. Usually, that's going to be some or all of the output that the player is seeing. Hopefully, that information will lead to a productive search of your code. I personally found the output from RULES intimidating; I gave myself permission to only understand what I needed to understand.
OK, next time, some lighter fare. We'll look at other useful commands and features for developers and testers.
#inform 7#interactive fiction#parser#i7#i7 for beginners#i am not a programmer irl#action processing#debugging
11 notes
·
View notes
Text
Shen Yuan is very special to me bc he’s the type of person who would say “they would NOT fucking say that” to the person who is in fact, in the process of saying that. Binghe is out here trying to confess his love and Shen Yuan is slamming his hands into his ears and yelling ooc.
#Svsss can be summed up by saying it’s the process of SQQ learning that his actions had caused his blorbo to in fact say that.#SQQ is a clown I love him dearly#shen qingqiu#lou binghe#bingqiu#svsss#scum villian self saving system
1K notes
·
View notes
Note
dad villain au: did emilie just. not consider at all that adrien was literally dying at the time. wow
she's in the habit of deciding when Adrien's suffering is acceptable, and if it is, she'll just fix it later.
#my art#adrien agreste#emelie agreste#gabriel agreste#dad villain au#mayura#as emelie faces zero consequences using the peacock she's more likely to utilize it in a way she didn't in the last timeline#last timeline she faced real problems. had to come to terms with her own eventual death. got to see action and reaction in process#in this timeline there was no consequences. so why shouldn't she make this as 'perfect' as possible?#before gabriel got his memories of the last timeline back he was actually pretty against her being weird abt adrien but eventually just#let her do whatever lmao. he was like. alright fine if it makes you happy dear#sure you can rearrange his genome so he cant catch chicken pox again whatver#as a result when things dont fit her delusions she gets upset moody or aggressive
5K notes
·
View notes
Text
isat is praised a lot for its ludonarrative harmony and how the player's feelings are synchronised with siffrin's, but something i don't see mentioned much is how it also works the other way around -- the player trying to get certain dialogues/interactions (the player's influence on siffrin's actions), even if they go against siffrin's wants at the moment, are all justified in game.
for example, if the player continuously attempts to use siffrin's dagger on their allies, siffrin is having intrusive thoughts. and if the player repeatedly tries to go into the bathroom in act 5, siffrin secretly really wanted to monologue because he's a little obsessed with them lol
#isat spoilers#in stars and time#isat#siffrin isat#my ramblings#it reminds me a little of the player's influence in deltarune and how the concept is handled in opposite directions#in deltarune the player is explicitly a separate being from kris & the player can sometimes control kris's actions against their will#while in isat the player IS siffrin. there's no separation; the player's actions/impulses are justified through siffrin's thought processes
611 notes
·
View notes
Text

Prolific animator Yoshihiko Umakoshi (馬越嘉彦) is best known for his work in shonen anime like My Hero Academia, however he also worked on several episodes of Kunihiko Ikuhara's 2011 Mawaru Penguindrum. During this time, he gave us this Revolutionary Girl Utena piece, itself a bonus purchase privilege poster at Mandarake stores for the purchase of Monthly Anime Style (月刊アニメスタイル) magazine, Vol 5.
It was first published as the full-color feature of the Hardcore of Utena's Supplement booklet in 2013. The Hardcore of Utena is a massive, two volume artbook released at Comiket 84, where you could receive this booklet with the purchase of the larger volumes. Mostly miscellaneous sketch art that features elsewhere, I nevertheless had it scanned already and felt like, hell, let's just finish it and get up there for you! So here are the scans of the 44 page booklet, or if you want the even larger versions, or a download of the lot, I also uploaded it to the Internet Archive! That's gonna be a pattern, y'all. ;)
#revolutionary girl utena#utena#yoshihiko umakoshi#heartcatch precure#my hero academia#utena meta#empty movement#utena archiving#anime archiving#comiket#for real i keep adding things to this site update because it's easier than the miserable process of compiling it all#this is peak adhd in actions folks i've been trying to update the site so long#but every time i sit down to code that#I find some more shit to do rofl#anyways lots is coming including maybe some free shit#idk
540 notes
·
View notes
Text
I love them so much it's unreal
#svsss#shen qingqiu#luo binghe#bingqiu#I know this is more of a shitpost but genuinely i really love how they both are clumsy and figuring out how to love each other#like physically and emotionaly#binghe is so in love with his husband he cant help himslef but want to bite at him and kiss with all the enthusiasm in the world#and Shen Qingqiu is overthinking every part of the process to make sure hes good but he cant say it out right but#he needs to think about hia actions and its both a different type of love but#theyre figuring it out#and they love each other and they have eternity to show how they both love#also i really like when Binghe bites and Shen Qingqiu does too but not liek this#they will get there 💞🥰#my art#nibbelraz
426 notes
·
View notes
Note
Good evening,
You'll never guess what I just posted.
https://archiveofourown.org/works/60479521/chapters/156202336#workskin
Enjoy 10k more words of content.
From,
Someone actually studding to become an engineer
I ENJOYED EVERY BIT OF IT AND CAINE ESPECIALLY BUT THIS -
THIS BIT MADE ME LAUGH SO HARD
#tadc#the amazing digital circus#tadc jax#tadc zooble#tadc pomni#Okk ok but I can't wait to see how Cain's adventure for Zooble goes#DONT WORRY THE NPCs ONLY LIGHT ON FIRE AFTER 10 MINUTES OF BEING IGNORED ITS SO REALISTIC#You write their dialogue and actions so well#im having trouble with words tonight but I took all day to process your chapter and read it through a few times and its really fantastic#thank you for blessing me this day I needed it#WHEEZING
692 notes
·
View notes
Note
Have there been times the Turner parents have suspected something but shrugged it off?
They have never suspected Timmy Turner of anything! Despite often expressing regret or disappointment, they still very much love their son! And all the benefits he brings them!!
The Turners are a well established family in the neighborhood. It wouldn't bode them well to go around casting doubt against their own son. It'd affect their reputation terribly!
Bitties Series: [Start] > [Previous] > [Next]
#fairly oddparents#fop#fop a new wish#fop timmy turner#fop timmy#fop mr turner#chimmy changa#timmy turner#mr turner#tw mild violence#tw verbal abuse#tw emotional abuse#tw blood#asks#boxmorelover232#im limited by 4 panels per comic for the asks#so the whole process is a bit drawn out and slow#the next several chimmies are all dialogue to establish his character and relation with the humans in his life#no big action for chimmy for a bit#if its not noticable. mr turner took the medkit from timmy's moving truck#and purposely withdrew the bandages in the last panel#also. hopefully. peoples' reading comprehension is good on my blog. bcs. like.#im playing a morally gray if not a purposeful misleading narrator. an antagonistic narrator specific against chimmy. so like.#dont misinterpret my dialogue boxes as me condoning or supporting the parental abuse chimmy's got going irl#we can read on this blog series#blease#itty bitties fop au
646 notes
·
View notes
Text
- wip -
u won't see this until next month but i at least wanted to share the plans
#hina.scribble#art process#wip#jjk#megumi#ive spent a week on this render so far im pulling out all the stops#this is going 2 b my best work to date i promise u that#me actually putting effort in2 lines of action and perspective? me letting myself spend entire days on one individual element?#anything and everything fr him#more than anything ive ever drawn this will b my love letter to megumi
271 notes
·
View notes
Text
Neige, this isn’t very “friends” of you.
Vil watching this entire interaction: what have I done to deserve this. genuinely.
Part 7! | Part 1 | Part 2 | Part 3 | Part 4 | Part 5 | Part 6
Part 8!
#oh if it isn’t the consequences of my own actions#- neige probably#Arlo needs like 5 more seconds to process this#and then he’ll never be seen in public again lmao#twisted wonderland#disney twst#twst fanart#twst oc#twst original character#arlo wake oc#neige leblanche#twst neige#red camellia - sunny’s ships! ☀️
321 notes
·
View notes
Text



This idiot didn’t know about the light side 🙄
#dusknoir#grovyle#pokemon doodles#original art#was thinking about this#Like it makes sense half the world is enshrouded in darkness#Side where it was night when The Incident occurred#But what abt the other side?#Maybe that was Grovyle/Celebi’s problem#All the dark/ghost types live on the dark side#And the grass types/whoever prefers the light live on the other side#Also makes me wonder how far reaching the time problems are#I’m guessing poke-earth has entirely stopped#No revolutions or orbiting the sun#Since no day/night or seasons#Is the moon still orbiting earth?#The fact that it was a full moon every cutscene in the past suggests perhaps not#(Although I don’t think that was foreshadowing as much as just easier to have one moon pic lol)#Are the other planets still moving?#Dialga wouldn’t necessarily represent time specifically on earth right?#Kind of assumed he’d be time throughout the universe#so does that mean the entire universe has stopped?#or is in the process of stopping?#Consequences of Darkrai’s actions spreading far further than previously imagined
158 notes
·
View notes
Text

Shield & Shelter - Chapter 13 (extra)
FULL COMIC: HERE
#jikook#jikook fanart#royal au#some of their though process for you all!#I dont use thought bubbles enough - or as much as I people usually do - so....#in case some of you needed more context behind thier actions#side note.... I LOVE how jk turned out here
207 notes
·
View notes
Text
girlbossing too close to the sun.
#art#ive literally just been treating this game as a library simuator#i walk from bookseller to bookseller opening up all of their books#vivecs sermons are either a highlight or the point at which i stop reading#ive been trying to convince the ordinators that imitation is the highest form of flattery but it hasnt been working#let me wear your helmets please theyre so funny..#posting morrowind in 2024 isnt a cry for help but youre not wrong to be concerned.#morrowind#almalexia#vivec#im going to explain the chitin armor give me a moment#so the bonewalker nerevar on the shrines is adorable and it was only after drawing it however many times that i realized#it looked relatively close to a modified chitin armor#and so i modified chitin armor a few times and this was probably the cutest result#i also know i drew almalexia relatively pristine and untouched by years and vivec not so much but my thought process was#vivecs role as if not a favorite then the most accessible divine or the most “hands on” in a manner of speaking#acting in ways visible to the general population or actions explicitly brought to their attention#like not that almalexia isnt doing anything she is#but the dissemination of information regarding that is very different etc etc etc#anyways to a certain extent a god is the face on a shrine or in art or upon a statue or carving#but vivecs presence is interwoven with the geography of vvardenfell especially and his actions and writings with pubished materials#and the arts and culture and customs etc etc etc#so to me the face of a god you know and feel a commonality with or a god that walks alongside you is a face you would recognize#and vivec is already otherworldly looking enough#the simple mark of the years on his skin in some way grounding him in reality felt more right#that and i think the ways in which he and almalexia care about outward appearance are slightly different- they prioritize different things#and the ways they present outward power and their embodiment of their respective attributes share some similarities as they both have that#important preoccupation with physical power and physical strength to a certain degree#oh my god nobody read this i am yapping so bad.#tes
713 notes
·
View notes
Text
Making smol crab action figures out of smol crabs 🦀
327 notes
·
View notes
Text
eeljima for MerMay 👀
#I say OOO GIRL#ok so like I picked an electric eel cuz lightning yadayada BUT#they're also related to KNIFE fish which also have a spotted pattern like his snakes if you squint so THEREFORE—#brahk thought process in action#you will see more of this he has a grip on me#I'm not even really into mermaid stuff tbh but you throw my boys in there and OUGH suddenly I'm the biggest fan 🥴#yakuza#ryu ga gotoku#majima goro#my art#mermay#merfolk
380 notes
·
View notes
Text
Writing Group vs. Group & One vs. Many Fight Scenes
Group vs. Group
To win the readers' sympathies, make sure there are more (and stronger) bad guys than good guys.
Portray a strong "them versus us" mindset. Sometimes, this is a microcosm of a larger religious, social, racial conflict.
Visual clues are often used to emphasize the divide between the two groups: black coats versus white suits, jeans against shorts, etc. They'll have different weapons, use different languages or speech patterns.
Each group will have a leader who spearheads strategies and motivates the rest. This can be an established leader like the eldet sibling, the head girl of the school, etc. Or someone who has the respect of the others and takes charge spontaneously when the situation rises.
The Point of View
Group fights are easiest to write in omniscient PoV
Otherwise, choose a PoV character who is invovled in most action, and restrict yourself to their line of vision. You can take short breaks (like two seconds after he kills his immediate opponent) to account for how his comrads are doing.
One vs. Group
1 vs. many fights where the single person comes up triumphant are fun, but hardly plausible. The key is to provide an illusion of reality.
Keep the number of opponents realistic: three, not thirty.
He would be more highly trained/have special powers than all of his opponents.
He is positioned in such as way that all of his opponents come at him from only one direction (like having his back to a wall), or he stands in a higher terrains from where he can keep an eye on all of them.
She identifies the group's leader and takes him out first.
She creates a situation which forces the group to spread out, or hits when they are already dispersed rather than tightly knit together.
He uses a weapon which can take out several opponents at once. The most effective one for this would be a machine gun, or the hero holding two swords, one in each hand.
If you want the bad guys to come at the hero one by one, some ideas:
The hero has aken p position in a place where only one villain can squeeze through at one time
The attackers don't arrive simultaneously. They come running, and each attacks as soon as they reach the hero.
The gang has a code of honor which demands 1:1 fights.
The fight is an initiation requirment where the newbie must prove themselves in 1:1 combat with all of the established members.
Some tips:
If a hero with superior arms taking on many who are unarmed will make the readers see him as a butcher, and their sympathies will be lost for good.
If he take out too many opponents at once, the readers wouldn't feel like he has really put up a fight. If your hero has a superpower that allows him to do this, establish the boundaries of this power and push the hero to the limit.
If the novel has too many 1:many scenes, it will lose its dramatic effect, and worse, seem unrealistic as you move along.
If you like my blog, buy me a coffee☕ and find me on instagram! 📸
#write up#writers on tumblr#creative writing#let's write#writers and poets#helping writers#poets and writers#creative writers#resources for writers#writing#write it#write that down#write for us#write every day#write anything#writeblr#writers#writer community#writer stuff#fight scenes#action scene#combat#writing process#writing community#writing inspiration#writing prompt#writing advice#writing ideas#on writing#writer
353 notes
·
View notes