#so a basic looping macro works
Explore tagged Tumblr posts
Text
May or may not have set up a macro to boop my sister every 5-ish seconds
#boop o meter#i'm using the mini mouse macro for those curious#i was fully prepared to download gecko driver and use selenium#but then I realized that I didn't need to do any complex or dynamic page navigation#and it's not like they captcha'd it#so a basic looping macro works
313 notes
·
View notes
Note
hi i'm so sorry but if you feel like it could you help explain how to create a codex page in twine... i've just started figuring out twine and i'm extremely lost
There may be easier ways to do this, so mind you that I can only explain to you how I did it way back when I first made AToC. I'll start from the beginning, since I'm not sure how much you have or haven't figured out yet. I'm also not especially adept with coding, I just know enough basics to help me along!
Mind you these are instructions for Sugarcube, I don't know anything about Harlowe. You will need to know how <<if>> macros, variables and links work in order to understand this explanation.
First, if you want your codex links to show up in your sidebar, you need to create a passage called StoryMenu, which is where you can drop the links to your codex passages.
Further, if you only want the links to show up after the player has reached a certain point in the story, the easiest way I figured out how to do it is to create a variable.
Let's say, you only want your Character Codex to unlock after a player has reached a certain passage in the main story, then you should create a variable for it (e.g. $charcodex). At the passage where you want the codex to unlock, simply set $charcodex to true, and in your StoryMenu passage, qualify the link to the Character Codex with a simple <<if>> macro.
This is an example of what the StoryMenu of a very early build of AToC looked like:
Very basic! For AToC's current build, it looks a lot more complicated as I'm using a template with additional CSS code for formatting. I'm sure there's other ways to do it as well, but I'm not particularly adept with code so this is what worked easiest for me.
So, you've created your Character Codex, and it shows up in your StoryMenu, what now? Simple: just link to individual passages in your Character Codex however you want to format it. Like so:
There's a whole host of ways to format individual codex pages depending on your needs, like images or basic CSS code, but I won't get into that right now, you should be able to find tutorials for that!
Another important note: make sure to include the following code to your Javacript section, under the "Story" tab of the menu in Twine. It prevents players from getting caught in a loop of passages while they're going through the codex pages and the main story:
// MAKING SURE RETURN TO GAME LINKS DON'T CREATE A LOOP $(document).on(":passagestart", function() { if (!tags().includes("noreturn")) { /* If it doesn't, then set $return to the current passage name. */ State.variables.return = passage(); } });
This code requires you to tag any codex passages, both menus and individual ones, with "noreturn", like this:
Hope that explanation helped you!!
But, as I said, I'm not particularly skilled with coding. For future reference, if you need more coding resources, I would recommend checking out @/nyehilismwriting, @/idrellegames, and @/manonamora-if who have all set up extensive masterlists for coding resources or have answered questions from others that may be useful to you!
68 notes
·
View notes
Text
Nearly 20 years ago I did an "ICT" GCSE (uk qualification at age 16) which was basically how to use microsoft word and so on; it was only semi-useful, but could be made better if the curriculum was built around like encouraging students to understand the computer as a human-made thing that is under their control. Teach the distinction between plain text and rich text, demonstrate multiple different software suites to achieve the same or similar ends. Microsoft word and libreoffice and a normal plain text editor (teaching the standard text manipulation shortcuts, ctrl+right-arrow to go to the next word etc) and vim and something like pandoc. Get the kids thinking about using keyboard shortcuts, and in terms of macros. A little bit of shell scripting -- just basics, variables and for loops and wildcards. Admin work power user training, basically.
18 notes
·
View notes
Note
hi there! sorry if you've gotten a similar ask before. do you write wayfarer directly into twine or do you keep it in a separate doc? do you just have really clearly labeled sections in a word doc or something or is there a specific program you use to keep track of every story path? basically, with something as expansive and w/ as many routes as wayfarer, how do you keep all your writing organized?
I have answered this before, but I can't seem to find my posts on the subject (you may want to peruse my coding in twine tag, the masterpost has a bunch of different resources for this kind of thing!).
But in short, no, I do not write Wayfarer directly into Twine. This could functionally work for a very small game, but I would still advise against it as Twine doesn't really work as a word processor. You can't proof-read in it.
My process has three main steps:
Outlining
Writing
Coding
Compiling
Outside of my big beat chart (which spans the whole game), I break each episode down into their own outlines, and then break the routes of each episode down into their own outlines. Sometimes specific sections end up with their own outlines too. My system probably doesn't make much sense to anyone other than me, but as long as I know what the divisions are, then it's all good.
I write in MS Word. Each episode has its own folder (sometimes with subfolders) and every section of the game gets its own document.
Here's the main folders, each episode goes into its own thing.
This is an subfolder for Episode 1, specifically Route B.
Within my word documents themselves, I use a colour-coding system for separating out branches and sections. This is extremely useful for writing dialogue loops, like this:
I also add in any coding notes (variables, true/false states, stat checks) while I am writing so I know what I need to do when I sit down to code 4+ months later. I usually throw a X or XX on choices after I have written them as a note to myself that I have finished it (this is just personal shorthand - X means I've done the pass version of a check, XX means I've done the pass and fail states).
I use about 8-10 colours in my documents; I have a set of MS Word macros set up so I can easily switch between them.
I share my word documents with my editor via OneDrive, which makes it easy for her to got through and proofread.
I use MS Word because I've been using it to write since the 2000s and it's what I prefer to use. I have also been writing professionally for over a decade now, so I have systems and strategies in place that work for me that I've developed for myself over time. But if you're new to writing and you're looking for a word processor that can also help you with outlining and keeping your story straight, something like Scrivener may be helpful.
One the text is ready to be coded, it's a lot of copy/pasting from Word into Twine. When I'm coding I will typically be running multiple programs at once:
MS Word
MS Excel (for my variable sheets)
Twine
Notepad++ (which has some regularly used code stored in it; I also use it to edit CSS and Javascript, as well as any really code-heavy sections since it's easier to do that in Notepad++ than it is in the Twine editor)
Notepad (just the regular version - I use it for writing notes to myself while I'm coding)
a web browser to launch tests in as I code
Once I am done coding and I have tested things, it's time to compile. The Twine editor can only handle so many passages and text in one file (around 500-700 passages before you hit massive lag), so I break Wayfarer into multiple story files. Having multiple story files also makes it really easy for me to cross-reference events (if I need to grab a passage title to reference it later) because I don't have to look through one big file. If I know the event happens in Episode 2's first scene, then I know I need to open Chapter_2.1.
My Twine library looks like this at the moment:
I am using an old version of the editor (with an up-to-date version of SugarCube) since I didn't like the new one. I don't necessarily recommend using the Twine editor when you can easily make your game with Twee extensions in Visual Studio Code and have better support and functionality, but this is what I like and it really comes down to personal preference.
But because everything is in separate files, I have to merge them altogether. I have Tweego installed on my PC; it's run through the command prompt and outputs multiple story files into one HTML file. I've talked about this process here and here.
And that's basically it! I don't think there's a one-size-fits-all solution to keeping track of your IF. You need to figure out what works for you, based on your writing and outlining habits, how big your story is, and how much you intend to keep track of.
Hope this helps!
#wayfarer#wayfarer if#coding in twine#twine#twine game#interactive fiction#interactive novel#answered
46 notes
·
View notes
Text
Thess vs Holiday Prep
Well. Today was ... a mess.
As previously stated, we are in something of a distaster with the workload. Because apparently people being gone for several weeks at a time (it's, what, over a month now?) does not call for getting a temp because "Maaaaaaaaaaybe they'll be back next week".
(Side note: honestly, this really is down to Temp and Other Part-Timer having poor communication skills. I was in regular contact with the office when I was on long-term sick getting my fibromyalgia diagnosis, just to keep them in the loop. Temp, meanwhile, leaves it until two days after the date her doctor's note says she can return to work to say, "Actually, that's not happening". This is, frankly, ludicrous on all counts and we still have no idea when she's going to be back.)
Anyway. First thing was, of course, the regular day job. I did, however, stand up on one very basic point - a request that someone please for the love of fuck take that seventeen-minute Monstrosity so I don't have to. I mean, honestly, it was for the best. My left hand - the one that got caught in a door, y'know - was already sore as fuck just on Annoyances. A Monstrosity would have killed me. And I literally said that. My exact words were, "I know everyone leaves the longer ones for me and I usually don't complain, but I got my hand caught in a door over the weekend (nothing broken, just very bruised) and a macro that long will cause me problems, especially with [Breast Guy]'s macros". Looked back and it was gone. I'd bet good money that Scruffman did it himself, since he probably wasn't going to ask Goblin to do it. I think he looked at my email, went, "I have people out sick and [Thess] is working with a bruised hand on top of that chronic pain thing, so I am going to agree to this pretty reasonable request without a fucking word, at least in part because I will need [Thess] on overtime as much as possible since she's* the only one who will actually do any and I can't afford to cripple her right now. Two days without [Thess] in the office was bad enough".
(* - side note: I am not out at the office. Look at the country in which I live, and the government policy on trans folks over here, for the answer as to why.)
Had to step out - on Christmas Eve, no less - for a couple of last-minute things I couldn't carry on my last shops trip. Mostly bleach, toilet paper, a couple of nibbleables, and something I could reasonably stuff into my face with minimal effort. Thankfully that wasn't a huge deal - honestly, Tesco's yesterday was worse.
But after that I had to come home and do overtime. We're only barely below 500 cases, partly because we had the usual folks in - and one lady in particular throwing urgent cases in the queue until, like, 6pm. I literally yelled, "IT'S CHRISTMAS EVE; GO HOME!" Two and a half hours of overtime, nightmare.
After that and a bath to try to soak some of the aches out, it was time to meet another of my obligations. Specifically ... I do dessert for Christmas dinner at the parentals' house. Started as a tradition last year because it's easier for me to make a dessert that I can eat. Thankfully I wasn't baking anything, exactly - just slightly destroying the kitchen with a mint chocolate cheesecake. The "licking the spoon" test says I did good, anyway. But after all that, we were approaching midnight and I hadn't even had dinner yet. That was my "I'm going to make a nice Christmas Eve dinner for myself" out the window; I just made something simple. But it did mean I ate a proper meal.
After that, wrapping the Christmas gifts for the parentals. Thankfully the Christmas snack hamper for my stepfather was easy to handle; just arrange everything nicely in a gift bag (though I have to remember to take his brie out of the fridge when I take out my cheesecake). Mum ... three small things - two for Christmas, one for her birthday, which happens on the 19th. Managed well enough, despite being obscenely tired by then. Did the cards, packed everything I will need (except for the refrigerated stuff) and set it by the door for easy pick-up tomorrow.
After that, I could finally relax ... in juuuuuuust enough time for it to be "nearly time for bed". AAAAAAAAA!
Happy Holidays, everybody. I wish you a more peaceful holiday than I seem to be having.
6 notes
·
View notes
Note
For the fanfic writing asks: 7, 18, 26, 29, 78
7. Post a snippet from a wip.
so here's a short one that i haven't shown you before; after the readmore i'll add a longer one that you've already seen but i still wanna post lol
"Nice outfit." [Raihan turns and sees Piers coming around the corner.] "I didn't fool you for a second, did I?" [they say, grinning.] "You kiddin'? I'd clock those mako eyes of yours anywhere." [The reference gets a good chortle out of them.] "Hahaha! I'm a first-class SOLDIER, don't you know? Macro Cosmos enhanced me with Eternatus cells." "Oh my god, can you imagine?" [They share a good laugh together.]
(the brackets are supposed to indicate like, placeholder text or stage directions that i wanna edit later but in practice i end up bracketing most non-dialogue text on the first pass LOL,,,, it's fine,)
18. Do you enjoy research? Which fic of yours required the most research?
most of the time i do! it's fun to learn new things, of course. but sometimes, man, i feel like i'm trying to roll a boulder up a mountain (labeled "executive dysfunction" like in a freaking political cartoon) and just not getting anywhere with it. as for which fics need the most research, uh, probably any of the ones where i have to write in a language i don't speak ^-^;;; which so far is just Merlin's Bairns and The Day To End All Days. and really the former was entirely in scots whereas the latter just has scots dialogue, so you might think the former unequivocally needed more research. but here's the thing... end all days has a single line of scottish gaelic... and having to come up with that seriously tipped the scales the other way i think. lmao
26. What’s your least favorite part of the writing process?
proooobably coming up with the first draft of anything... the process of putting ideas down on paper for the first time is always so strenuous for me. for some people, being able to just stream-of-conscious that shit into the text editor is a legitimate skill that needs to be developed, and i'm one of them 😔 not that doing the editing afterwards is always a breeze either... ahhhh
29. What’s something about your writing that you’re proud of?
i've gotten this question a couple times in the past, and let's see, i've already talked about my dialogue writing... and i think i've mentioned my fluff fics too... so how about something else? i like what i can come up with when i put a word limit on myself! i feel like i can convey a fair bit even when i don't have a lot of words to work with.
78. What motivates you during the writing process?
........... divine providence mostly LMAO. uhhh in general i have trouble staying motivated throughout a personal project, or any protracted endeavor. when it comes to creative works, though, i can usually get some fuel out of wanting to see something fairly-to-extremely specific come to life. if i wait for someone else to make things that cater to my niche interests i'll be waiting basically forever, so it's up to me to write about leon trapped in a time loop, or hop trying charcuterie with his new brother raihan, or an autistic grad student falling in love with an autistic himbo jock in a surreal post-post-apocalyptic world... well, you get the point! not to mention it's fun to see people's reactions to my fairly-to-extremely specific ideas :)
the longer wip excerpt that i said i'd post:
[context: gloria and victor just got their gym challenge uniforms, before the motostoke opening ceremony]
"Glo! Get a load'a this. Did you know that numbers with leading zeroes count as different to numbers without?" [he informs her, holding up the top to show off what's printed on the back: Victor 001.] "What!" is her first, honest reaction. But she recovers quick enough to jab at him, "That just makes you a discount Leon, y'know." "Shut up," Victor retorts cheerfully, taking the locker next to hers. "You're just mad you didn't think of it first." [It's a funny move, so she is a little jealous. But she's also pretty happy with her own number, 102, even if no one but Victor and Hop is allowed to know why she picked it.] "Positively fuming, aye. So is it pronounced 'zero-zero-one' or 'oh-oh-one'?" "Uhhh, it's just, 'one'. The zeroes are, uh, silent." He can't even finish his sentence without laughing. "Okay, sure. Whatever. You gonna catch a foongus and start saying 'let's have a champignon time' too?" [cackling] "No, you git! Hop's gonna think I'm a freak!!"
3 notes
·
View notes
Text
Why VBA Is Still a Game Changer for Data Analysts in 2025

In today’s digital world, a data analyst’s responsibilities go far beyond just analyzing numbers. As industries undergo transformation through AI and automation, one tool continues to stand the test of time due to its adaptability and power—VBA (Visual Basic for Applications). While many are shifting toward Python or R, VBA remains the quiet achiever, driving seamless data workflows, especially within Excel. At GVT Academy, we recognize the power of blending trusted tools with next-generation technology. That’s why our Best Data Analyst Course with AI, including VBA is designed for the data warriors of this new era.
What Does VBA Mean and Why Is It Necessary?
Visual Basic for Applications (VBA) is designed to automate tasks in Office programs, especially Excel. It enables users to automate repetitive tasks, create custom functions, and work with enormous datasets—all within the Excel environment.
Now, you may be asking: Why learn VBA over AI or Python?
Here is the simple truth: organizations are still extensively using Excel for reporting, dashboards, and so forth, and daily operations become slow when manual work is piling up. VBA often becomes the weak link—where potential efficiency can quickly turn into frustration.
Relevance of VBA for a Data Analyst in the Practical Realm
Let me highlight some key ways VBA directly supports data analysts:
1. Automation of Repetitive Tasks
Data cleaning can take hours; report generation can take hours; formatting may take hours. With one click, VBA automates these tasks. Imagine generating 10 weekly reports in 10 seconds rather than 2 hours!
2. Data Processing at Scale
Excel is great—but not perfect. VBA extends its capabilities to enable analysts to handle larger datasets, by creating loops, conditions, and even integrating with databases like Access or SQL Server.
3. Custom Dashboards and Tools
With VBA, you can design personalized buttons, forms, and user interfaces within Excel to enhance functionality. The dashboards are designed to be interactive and easy to navigate, making them ideal for users without a technical background.
4. Better Reporting and Visualization
From creating pivot tables to color-coding key metrics, VBA supports the creation of dynamic and professional reports responsive to business requirements.
Integration of VBA and AI; New Horizons
At the GVT Academy, we believe that a perfect data analyst is one who has the knowledge of old-fashioned productivity tools like VBA, along with modern technology such as AI and machine learning. That’s why we created the Best Data Analyst Course with AI, including VBA, to give our learners a holistic skill set.
What Makes Our Course Different:
AI-integrated curriculum: Explore how artificial intelligence enhances predictive analytics, sentiment analysis, and data modeling.
Hands-on VBA Projects: Automate Excel-based reporting, build macros, and create your own Excel-based applications.
Real-World Scenarios: Work with real datasets and be job-ready from day one.
Live Mentorship: Trainers with years of experience as data analysts in banking, healthcare, and IT domains.
Hybrid Online/Offline Study: Flexible learning modules to fit every schedule.
Our novel integrated AI + VBA solution helps students gain an edge in interviews, internships, and real-world problem solving.
Who Should Learn VBA in Today’s AI-Driven World?
You might think VBA is outdated, but here is the reality: companies will want it.
If you are:
An entry-level professional looking for ways to stand out
A working professional who wants to automate routine reporting
Or a business analyst working to make Excel more effective for their tasks
… VBA is a must-have in your arsenal.
Combined with AI skills, you become truly irreplaceable.
Final Words
While AI, Python, and cloud came to the limelight, VBA stands at the sidelines while powering thousands upon thousands of business functions day in and day out. For serious candidates, this isn’t even a question. The true data analyst should have foundational tools and futuristic tools working for her/him, to stay ahead of the curve.
With this in mind, GVT Academy has curated a program—the Best Data Analyst Course with AI, including VBA—assuring that you do not merely learn these tools, but master them.
So, whether you are new to the data game or want to gear up, always keep this in mind: VBA is not just a programming language. It is a productivity revolution waiting to happen at your fingertips.
Join GVT Academy and unleash your full potential as a next-gen data analyst.
1. Google My Business: http://g.co/kgs/v3LrzxE
2. Website: https://gvtacademy.com
3. LinkedIn: www.linkedin.com/in/gvt-academy-48b916164
4. Facebook: https://www.facebook.com/gvtacademy
5. Instagram: https://www.instagram.com/gvtacademy/
6. X: https://x.com/GVTAcademy
7. Pinterest: https://in.pinterest.com/gvtacademy
8. Medium: https://medium.com/@gvtacademy
#gvt academy#data analytics#advanced excel training#data science#python#sql course#advanced excel training institute in noida#best powerbi course#power bi#advanced excel#vba
0 notes
Text
Week 8 Speed, Stress, and Small Wins – Racing Forward
This week I worked on a basic racing prototype and ran a short playtest with a classmate. The design was minimal—just a looping track and basic left/right control—but enough to test core mechanics. We discussed challenge hierarchy, so I tried to structure the game with micro-challenges (tight corners), intermediate goals (lap count), and a macro goal (complete 3 laps under 45 seconds).
During the playtest, my tester mentioned that the car felt “floaty” and too easy to control, which made the game feel dull. To respond, I added a top-speed cap and increased off-road friction to punish bad cornering slightly—creating more stress and pushing the player to drive cleanly.
The lecture’s breakdown of rewards and punishments also helped me reflect. Instead of just giving score, I added a speed boost (reward of facility) for clean driving and added flashing feedback when going off-track (mild negative reinforcement).
It’s still basic, but this week helped me see how stress + skill = challenge, and how clear rewards make even simple games feel better-paced. I’ll definitely apply more of this thinking in the next iteration.
0 notes
Text
Rebreather Diving (With my Prescription Dive Mask) on the Fu Sheng Wreck in Sint Maarten
Rebreather diving in Sint Maarten
One of the ways we are differentiated is the fact that we are divers, not just opticians and optical techs. While the last two years have been challenging for us and others in the dive industry, I was finally able to start getting back in the water this year. The video above highlights a recent awesome dive we we are able to do on a wreck in Sint Maarten. For those wondering, I dive a prescription scubapro d mask with single vision lenses.
I like to write about some of my dive travels with my own prescription dive mask and share them with you all.
In this article, I will also cover specific prescription dive mask concerns for rebreather divers. (Be sure to check out my video above highlight the whole dive).
What is a rebreather?
In Scuba, we have a compressed air tank attached to a diving regulator (a first and second stage). Every time we inhale the regulator provides us (normally) air (or nitrox, or even other gases, depending on the dive) at the surrounding pressure, so our lungs can inflate. Every-time you exhale, all the air in your lungs exits the regulator as bubbles. The human body, however, is not so efficient as to extract all the available oxygen in a single breath of the same gas, so the bubbles contain a significant amount of wasted oxygen. If there was a way to recycle this air, you could extend your time diving.
On a simple level, this is what a rebreather accomplishes. Instead of all your exhaled air exiting as bubbles, you exhale into a counter-lung. The exhaled air then moves across a scrubber removing the carbon dioxide. As the oxygen in the breathing loop decreases, you either manually add, or the rebreather adds pure oxygen to the loop to keep your breathing gas at an ideal mixture.
Prescription dive mask concerns for rebreather divers
If you are a rebreather diver, and like me need corrective lenses, there are a few unique concerns that open circuit divers don't face.
While heads up displays and computers for recreational divers have recently seen a surge in popularity (like the Scubapro Galileo HUD), they are a mainstay in rebreather diving. Rebreathers either utilize a heads up display (HUD) with a series of different color lights to indicate different rebreather conditions or a computer with a full digital display that can provide more information than the more basic HUDs. The most popular HUD computer is the Shearwater NERD, which I personally use on my Prism 2 now.
The shearwater NERD uses a special lens to focus the display when the diver is looking at a distance, despite the computer sitting inches away from the diver's face. This allows the diver to be watching his or her surroundings while also having the dive computer screen in focus. If the diver utilizes bifocals or readers in their dive mask, however, the near vision portion of the lens is not suitable for viewing the NERD (While beneficial to a standard light HUD). For rebreather divers who utilize bifocals or reading glass for near vision, we generally suggest using only distance lenses on the side of the mask they view the NERD (normally the right eye). For more information on our bifocal lens scuba mask options, please read my article here.
We are also able to produce fully customized lenses that include a reading section at the top of the lens instead of the bottom of the lens, where the NERD is placed, so the diver can use the top of the lens for photography or other macro work.
Whether you dive a rebreather or open circuit scuba, our diving experience allows us to help you pick the right prescription lens for your needs. Feel free to give us a all or shoot us a message. Our prescription lenses are installed in house in our lab in Houston and are able to provide corrections for astigmatism, double vision, and other unique needs.
Diving the fu sheng wreck in Sint maarten/st. martin
During my time on St. Martin, I dive the Fu Sheng wreck, a dive I have been trying to do since arriving on the island. The wreck, nestled in about 110 feet off the coast of St. Matin, remains largely in tact. The wreck sank unintentionally, and is one of the older wrecks on the island.
The wreck hosts a variety of marine life including garden eels, moray eels, rays, and a mix of coral.
Diving the wreck on my rebreather allowed me a dive time of just over an hour with only a short deco time of 20 minutes on the way to the surface.
Additional resources
For diving in St. Martin, I have used both of these operations, which have supported rebreather diving (and recreational open circuit). I do not receive anything in exchange for recommending them, and I found them to both be great dive centers.
Ocean Explorers Dive Center in Simpson bay
Dive Sint Maarten in Philipsburg
The original content will be published on SeeTheSeaRX
0 notes
Text
DFX352 | Post 4
We're in the final stretch! Just a few more characters to make and I'll be done and onto finishing up my demo reel!
So, first let's look at what I've accomplished since the last DFX post:
Finished base capybara class and two main sub-classes
Finished idle animations
Created dialogue and animation system
Created dialogue bubble
Made a function to make capybaras face the player character
Coded all three 'quests'
Added "inventory" UI widget
Implemented interaction interfaces
Made material adjustments
Finished 6 out of 12 capybara characters
Yeah, I got a lot done! Just a warning, this is going to be a LONG post. Let's get into it!
Dialogue system
The dialogue system took a bunch of tweaking, but essentially how it works is that each dialogue "chunk" could have multiple lines, and was saved as an array. I also created an animation map to go with it that chooses which animations to play with each line.
The dialogue index increments after each "chunk" is spoken, and the animation index increments every line.
Base capybara class and sub-classes
After I finished the base capybara, I ran into some problems. And, after reading some forum posts online, I figured out how to solve them. You see, I was going to just create duplicates of the base capy for every individual character, but it lead to some issues in the animations, and just wasn't very efficient. I would've had to duplicate the animation blueprint for every individual capybara, which is messy, slow, and not ideal.
Well, I had forgotten that UE5 uses object-oriented programming, which to many people is obvious. Not me though. While I do have a minor in computer science, I haven't been keeping up on my studying after completing the minor several years ago. So, this was actually a great refresher!
I got to work simplifying the default capybara and made it my main parent class.
This is the event graph for that very class. All of my macros are still here as well, with some minor changes.
After that, I made two main subclasses. One of them is for characters with 5 lines, and another is for characters with 1 line. That way, all I have to do is make a child class, add an accessory (if that particular capybara had one), and fill in the dialogue and animation variables. Super easy! Also, in the root parent class, I added a blank function both before and after the animations and dialogue play out, since some of my characters had speech that would jump around.
For example, this capybara is a child class of the 5-line capy, and these are some conditions it has that changes the order that the dialogue displays.
So, it will stop progressing and replay the same dialogue over and over until a condition (speaking to a character named Jerry) is met, when it will then progress. This takes place in the "Dialogue Anim Index Change" variable that's overridable by child classes of the main capybara. Here it is in the root parent class:
So, I have my five-line character class, my one-line character class, and some of the quest-related capybaras needed to be a bit more customized, and are direct children of the root parent class. Still, having a root parent fixed so many problems for me, and got me thinking in terms of object-oriented programming again. Awesome!
Facing the player
While I was playtesting a week or so ago, it was frustrating that you could engage in conversation with a capybara while they're facing the complete opposite direction of you. It just didn't make much sense. So, I made a little custom event to fix it. It looks a bit more complicated than it is.
Basically, this calculates the angle to rotate to get from the capybara's current rotation to the rotation it would have facing the player. The RInterp node is supposed to smoothly rotate to that new rotation, but because of the way my code was set up it would jerk the capybara just a little bit closer to facing the player and then stop. My solution was to just put it in a for loop, and that works fine.
And yes, I had to make my own custom For Loop With Delay function because for some reason, despite it being super easy to make (and it doesn't cause any issues), UE5 doesn't allow delays in for loops normally. So you have to hard-code your own. This is usually one of the first things I do when I start a new project. It's just so useful. Epic Games, I'm begging you to implement this as a default macro!
My only gripe with what I have now is that they just... spin to face you. I might see about adding a stepping animation to make it look more natural. Unfortunately, I don't have time to do this, for this initial version of the game at least.
Dialogue bubble
So, earlier on in this project I made a bunch of concepts for pretty cool dialogue bubbles that I had classmates vote on, but unfortunately I just didn't have the time to make the one I wanted to. So, they're pretty simple. It still looks nice, but I might come back to this and change it in the future.
It also has a slight bounce-in and bounce-out animation that looks really satisfying!
Quests
There are three quests in this game. I don't want to spoil them, but they're pretty simple. One tip for playing this game: characters' dialogue can change after interacting with other characters or objects in the world. So even if you think you've exhausted a capybara's dialogue, you might need to speak to them again after doing something else in order to complete the quests!
And yes, there are some items you can add to your "inventory" that will show up on-screen. Nothing too fancy, but it will help you keep track of where you're at.
Finishing Capybaras
Yeah, I've coded six out of twelve characters, including all the quest-related characters! Everything else will be smooth sailing. I wouldn't be surprised if I managed to finish this project tonight. So far, Quin, Jerry, Alex, River, Aglet, and the Wizard are done! You'll get to meet them if you end up playing this game!
I think that's about all I have to talk about! I was really worried about finishing this on time, but I think I'm in the clear. I fully intend on continuing to work on this project over winter break, just to polish it up a bit and add things like a start and pause menu, maybe some dialogue sound effects, and maybe even the secret area I had to cut out!
1 note
·
View note
Text
Non-Spoiler Review of Remembrance of Earth's Past

Remembrance of Earth's Past or known as (The Three-Body Trilogy) by Liu Cixin • Book 1: The Three-Body Problem • Book 2: The Dark Forest • Book 3: Death's End • Book 4: The Redemption of Time (written by Baoshu) (Optional)
The opinion by many out in the world is that the “Remembrance of Earth’s Past” is the greatest science fiction series every written. Written by Liu Cixin, a Chinese computer engineer and science fiction writer. Liu Cixin is a nine-time winner of China's Galaxy Award. In 2015 Liu Cixin won the Hugo Award for his novel “The Three-Body Problem” as well as the 2017 Locus Award for “Death's End.” Liu Cixin also won the Chinese Nebula Award. In English translations of his works, his name is given as Cixin Liu. He is a member of China Science Writers Association and the vice president of Shanxi Writers Association. He is sometimes called "Da Liu" (Big Liu) by his fellow science fiction writers in China.
The “Remembrance of Earth’s Past” is the first Science Fiction series to hit the national spotlight in China’s history. It is so popular China holds the series in high regard as a National Treasure. The book series was published from 2006-2011 and translated into English by Ken Liu starting in 2014 to 2019. American audiences are only now discovering this masterpiece of Science Fiction and Existential Horror. Netflix has a show planned for 2024 for “The Three-Body Problem,” the first book. It is uncertain if all the books will be converted for the show or if they are only doing the first book. The main trilogy take place over a few hundred years starting in and around the aftermath of World War 2 and go up to the year 2400+ to another 18 million years into humanity’s future. The optional 4th book which isn’t officially part of the canon but has the permission from Liu Cixin. I personally count the fourth book as part of the canon, but it is also ignored by other readers of the series. It is totally optional and to me does not hurt the story, plot or characters. It just gives the series a proper end rather than the ambiguous ending left at the end of “Death’s End.”
This BLOG serves as a NON-Spoiler introduction to the series. Here we are just going to describe the basic plots of the four books and some thoughts about them. The hope is I grab your interest enough so that you all go and either read these books or listen to them on audiobook. The audiobooks were very well produced and have that radio/theater quality and style to them. Very few science fiction novels actually change how I think. This series absolutely did that with its concepts of first contact, the dark forest theory, game theory, nihilism, time, relativity, relativistic time, reality possibly being an infinitely long loop, love, death, infinity, multiple-dimensional realities, macro and micro quantum reality, religion not being real and existentialism.
The Three-Body Problem (Book 1):
“Set against the backdrop of China's Cultural Revolution, a secret military project sends signals into space to establish contact with aliens. An alien civilization on the brink of destruction captures the signal and plans to invade Earth. Meanwhile, on Earth, the greatest scientists around the world start to commit suicide, different camps start forming, planning to either welcome the superior beings and help them take over a world seen as corrupt, or to fight against the invasion.” https://www.goodreads.com/book/show/20518872-the-three-body-problem#?ref=nav_brws
The Dark Forest (Book 2):
“Earth is reeling from the revelation of a coming alien invasion — four centuries in the future. The aliens' human collaborators have been defeated, but the presence of the sophons, supercomputers printed on protons. These subatomic particles allow the Trisolarans instant access to all human information in real time. They have the ability to disrupt Earth’s ability to create technologies greater than the Trisolarans. This all means that Earth's defense plans are exposed to the enemy. Only the human mind remains a secret. This is the motivation for the Wallfacer Project, a daring plan that grants four men enormous resources to design secret strategies hidden through deceit and misdirection from Earth and Trisolaris alike. Three of the Wallfacers are influential statesmen and scientists but the fourth is a total unknown. Luo Ji, an unambitious Chinese astronomer and sociologist, is baffled by his new status. All he knows is that he's the one Wallfacer that Trisolaris wants dead.” https://www.goodreads.com/book/show/23168817-the-dark-forest
Death's End (Book 3):
“Half a century after the Doomsday Battle, the uneasy balance of Dark Forest Deterrence keeps the Trisolaran invaders at bay. Earth enjoys unprecedented prosperity due to the infusion of Trisolaran knowledge. With human science advancing daily and the Trisolarans adopting Earth culture, it seems that the two civilizations will soon be able to co-exist peacefully as equals without the terrible threat of mutually assured annihilation. But the peace has also made humanity complacent. Cheng Xin, an aerospace engineer from the early 21st century, awakens from hibernation in this new age. She brings with her knowledge of a long-forgotten program, “yhe Staircase Program,” dating from the beginning of the Trisolar Crisis, and her very presence may upset the delicate balance between two worlds. Will humanity reach for the stars or die in its cradle?” https://www.goodreads.com/book/show/25451264-death-s-end
The Redemption of Time (written by Baoshu, Book 4):
“Set in the universe of “Three-Body Problem trilogy,” “The Redemption of Time” continues the events from the end of “Death’s End.” This original story by Baoshu―published with Liu’s support―envisions the aftermath of the conflict between humanity and the extraterrestrial Trisolarans. In the midst of an interstellar war, Yun Tianming found himself on the front lines. Riddled with cancer, he chose to end his life by entering “the Staircase Program,” only to find himself flash frozen and launched into space where the Trisolaran First Fleet awaited. Captured and tortured beyond endurance for decades, Yun eventually succumbed to helping the aliens subjugate humanity in order to save Earth from complete destruction. Granted a healthy clone body by the Trisolarans, Yun has spent his very long life in exile as a traitor to the human race. Nearing the end of his existence at last, he suddenly receives another reprieve―and another regeneration. A consciousness calling itself “The Spirit,” later, “The Master,” has recruited him to wage war against an entity that threatens the existence of the entire universe, “the Lurker.” However, Yun refuses to be a pawn again and makes his own plans to save humanity’s future…” https://www.goodreads.com/book/show/36262251-the-redemption-of-time
My Opinion:
I will do a bigger BLOG-breakdown of the series with heavy spoilers at some point in the future. This BLOG is for people who have not read or listened to the series and have seen my posts using quotes from all four novels for the past three months. I tend to post quotes from the book I am listening to when I do my workouts, nature walks or treadmill atmospheres. This book series is nothing but brilliant. It’s no wonder China has been trying to adapt this to visual media. As of the writing of this BLOG there are five listings for this on IMDB.com for different kinds of visual media for this property. The only one I think I will have access to, that I can actually watch, will be the 2024 Netflix show on the “Three-Body Problem.” Depending on if you read the optional fourth book, “The Redemption of Time,” the meaning of these novels take on their own meaning.
• What Is Real? • Is Reality Real? • Do We Even Know The Difference If Any of “This” Is Real? • Does Anything At All Have Actual Meaning? • Does Anything Actually “Matter?”
The phrase "This has all happened before, and it will all happen again" is a line from the reimagined science fiction series "Battlestar Galactica." In the context of the show, it reflects the idea of cyclical history and the recurrence of events. The idea is that history repeats itself, and the same patterns and conflicts reoccur throughout time. This is a theme over the course of the four novels that is heavily explored.
This series is sometimes referred to as “existential horror.” This isn’t to imply horror in the traditional sense. Like, say, the existential horror of aliens invading Earth, like in, “Independence Day,” a monster on the ship “Alien,” or the everyday reality we live in not being real at all, “the Matrix.” It is more existentially terrifying from concepts it raises and how those concepts are dealt from the different perspective of these ideas coming from the different cultural perspective of a computer engineer in China rather than our standard Western way of telling a story, dealing with characters and the existential themes of the nature of our Universe. How this series deals with these questions in our everyday society. An example I will pull from, that really isn’t a spoiler, but how love between two people is dealt with here. China handles these things much differently, culturally and artistically, than say, how American writers tend to write about love in a fictional story. Once you get used to how the information is being displayed in the confines of the story and characters; the easier you get lost in the existential terror of the events as they unfold. To me, listening to these books was like how I saw “The Matrix” for the first time or “Alien” for the first time. That it was more than just a monster movie or insane visual action. You get lost in the concept of “what if” this could all be at play in some point in Humanity’s near or perhaps distant future. That “what if” this is all some sort of simulation or video game where the plot is so fixed that any choice you make has no impact, imprint or evidence on the outcome of the game. That no matter what you do in the game; you end up at the same boss fight at the end, with the same life, the same weapons, the same everything. It's these types of environments where the lack of realism is felt and where we eventually realize that something is not right with said reality. Human beings possess a kind of intuitive alarm in our minds. We hear a voice that isn’t a voice. It is a thought, but we describe to others as a voice. Others do not hear what you heard. They only know of it because you described it to them. However, they do not actually know for themselves. An example would be; we trust when we look up at the Moon that it is there, but you, I, most, have never been there to touch, see, step foot on it to know it if is actually there or not. Granted, we do know that it is there. We see it from Earth, we see its impact on the tides. We feel its gravity. Our mind alerts us when something doesn't feel real. That is usually how we know we are in a dream. Some things seem real, some seem normal and then you see a giant spider in the sky where the Sun should be. Eventually the brain will tell you what is real and what is not real. It is when our realities are flipped upside down and inside out, like a tesseract, that feelings on reality become existential horror. If we were in a simulation of reality and everything was so perfect that we’d began to perceive the artificiality of our surroundings.
Reality is never perfect in the concept of what we humans think of as perfection. In reality perfection and infinity are one-in-the-same. That; “on a long enough timeline, the survival rate for everyone drops to zero. It's only after we've lost everything that we're free to do anything. You're not your job. You're not how much money you have in the bank. You're not the car you drive. You're not the contents of your wallet. You're not your fucking khakis. You are not a unique snowflake. You're the all-singing, all-dancing crap of the world...” ― Chuck Palahniuk, “FIGHT CLUB.” Granted this is not the Universe of “Fight Club.” However, it could be. Some of the quotes in Palahniuk’s “Fight Club” and “Choke” speak to me in a way that his characters tend to live in a reality-bubble where the main character is always questioning whether or not the reality they are in is a real one. “The ability to let that which does not matter truly slide. Self-improvement is masturbation. Maybe self-destruction is the answer.” ― Chuck Palahniuk, “FIGHT CLUB”
If reality seems too good to be true or too erratic to be natural it can lead to dissatisfaction and rejection of that reality. That is why I say if you do not want your reality shattered. If you do not want to think of humanity, you, us, everything, every moment, every lover, every taste, touch, smell, sight seen or idea in your mind as just another grain of sand on an infinite beach and that grain having no effect whatsoever, no impact, imprint or evidence on the outcome of the collective sand on that infinite beach. That no matter what you do as a grain of sand on the beach you end up with the same life, the same job, the same woes, the same loves, tastes, fixations, disappointments, depressions, disappointments; the same everything. Then do not read these books. If you believe in God. You might not anymore at the end of these books. If you believe all life is precious you also may not believe that anymore. That is how impactful this series can be. However, if you are just a science fiction junky, like myself, and want your mind blown by an amazing story, I implore you to read or listen to these.
The Three-Body Series explores the grandeur and mysteries of the universe. It underscores the contrast between human mythologies and the scientific understanding of the cosmos. The vastness of space, the insignificance of humanity in the face of cosmic forces, and the pursuit of knowledge and scientific truth. The series invites readers to contemplate the Universe's enormity and complexity, highlighting the importance of scientific exploration. Liu Cixin's work combines science, philosophy, and storytelling to convey a sense of wonder about the Universe, which forced me to question our place in the cosmos. This series will intersect with science, philosophy, and human existence, making it a compelling read for those who appreciate profound intellectual exploration in science fiction literature.This series not only offers a riveting science fiction story, but also encourages readers to contemplate the nature of knowledge, the mysteries of the universe, time, and the implications of our place within it. It's a compelling invitation to embrace the wonders of science and the unknown, making it a must-read for those who appreciate both intellectual depth and an engaging narrative.
“The creation myths of the various peoples and religions of the world pale when compared to the glory of the big bang.” Liu Cixin, “The Three-Body Problem”
Non-Spoiler Review of Remembrance of Earth's Past Also known as "The Three-Body Trilogy" by David-Angelo Mineo 10/25/2023 2,514 Words
#thethreebodyproblem#remembranceofearthspast#cixinliu#thedarkforest#deathsend#redemptionoftime#goodreads#sciencefiction#thelurker#aliens#blackhole
0 notes
Text
10 VBA Tips and Tricks to Make Your Life Easier

Are you tired and fed up with spending hours on repetitive tasks in Microsoft Excel? Do you want to boost your productivity and creativity and streamline your workflow? Look no further! In this article, we will explore ten valuable VBA (Visual Basic for Applications) tips and tricks that will revolutionize the way you work with Excel and make your life easier. So, let's dive in and discover how you can become an Excel power user.
1. Automate Repetitive Tasks with Macros
Macros are a powerful feature in VBA that allows you to automate repetitive tasks. By recording a series of actions, you can create a macro that can be executed with a single click. This saves you time and effort, especially when dealing with large amounts of data or performing complex calculations. Say goodbye to manual data entry and let macros do the work for you.
2. Speed Up Data Manipulation with Arrays
Working with arrays in VBA can significantly speed up data manipulation. Instead of looping through each cell or range, you can load data into an array, perform operations on it, and then write the results back to the worksheet. This approach, especially when combined with VBA Macros training in Gurgaon, can be much faster than traditional cell-by-cell processing and can make a noticeable difference, particularly when dealing with large datasets.
3. Customize the Excel User Interface with User Forms
User forms are customizable dialog boxes that allow you to create intuitive interfaces for your Excel applications. With user forms, you can collect user input, display informative messages, and create interactive dashboards. By leveraging the power of VBA, you can enhance the user experience and make your Excel applications more user-friendly and professional.
4. Error Handling for Robust Code
To ensure your VBA code runs smoothly, it's crucial to implement proper error handling. By using error handling techniques such as "On Error Resume Next" or "On Error GoTo," you can gracefully handle unexpected errors and prevent your code from crashing. Robust error handling improves the reliability of your VBA projects and provides a better user experience.
5. Optimize Performance with Screen Updating
The Screen Updating property in VBA allows you to control whether the screen is updated during code execution. By temporarily turning off screen updates, you can significantly improve the performance of your macros. This is especially useful when working with large datasets or performing resource-intensive operations. Remember to re-enable screen updates once your code has finished executing.
6. Work Efficiently with PivotTables
PivotTables are a powerful tool in Excel for data analysis and summarization. By using VBA, you can automate the creation and manipulation of pivot tables, making it easier to analyze and visualize complex data. You can dynamically update pivot tables, change their layouts, and apply advanced calculations, empowering you to gain valuable insights from your data more efficiently.
7. Interact with Other Applications Using VBA
VBA allows you to interact with other applications, such as Word, PowerPoint, or Access, seamlessly. By automating tasks across different Office applications, including Advanced Excel Classes in Gurgaon, you can streamline your workflow and eliminate manual steps. For example, you can generate reports in Word based on Excel data or import data from Access into Excel with a single click. The possibilities are endless when you harness the power of VBA to connect different applications.
8. Secure Your VBA Code
Protecting your VBA code from unauthorized access or modification is essential, especially when sharing your workbooks with others. VBA provides various security measures, such as password-protecting your code or locking specific modules. By securing your code, you can ensure the integrity and confidentiality of your VBA projects.
9. Leverage Events for Enhanced Interactivity
Events in VBA allow you to trigger specific actions based on user interactions or changes in the worksheet. By leveraging events, you can create interactive Excel applications that respond to user input in real time. For example, you can automatically update calculations when a cell value changes or display a message when a specific condition is met. Events empower you to create dynamic and responsive Excel solutions.
10. Learn from the VBA Community
The VBA community, along with numerous online forums, websites, and tutorials, is a valuable resource for learning and exchanging knowledge, including advanced Excel training in Gurgaon. By actively participating in these communities, you can expand your VBA skills, get answers to your questions, and stay updated with the latest trends and techniques. Embrace the power of community and grow as a VBA developer while also exploring opportunities for advanced Excel training in Gurgaon.
In conclusion, VBA is a game-changer for anyone working extensively with Excel. By implementing these ten tips and tricks, you can take your Excel skills to the next level and enhance your productivity. Whether you're a beginner or an experienced user, mastering VBA will unlock a world of possibilities and make your life easier. So, start exploring, experimenting, and embracing the power of VBA today!
For more information, contact us at:
Call: 8750676576, 871076576
Email: [email protected]
Website: www.advancedexcel.net
#excel training in gurgaon#excel training in delhi#advanced excel training in gurgaon#excel classes in gurgaon#excel course in gurgaon#advanced excel corporate trainer#VBA Macros training in Gurgaon
0 notes
Text
alright lets get started. heres the initial layout.
you might notice a lot of mutable instruments modules and yes the box was mostly built around *primarily* using stages (here known as segment generator) as a set of 6 decay envelopes triggered by various sequencers. i literally only just finished putting it together so i havent given it a try yet to see how it works but ill outline my thought process behind this initial build.
so here we have sequencer land. i probably didnt need marbles in here considering it isnt super relevant to the intent behind this box, but i like to use marbles in basically every setup i build in vcv rack because you never know when you need multiple turing machines.
the heart of this synth is the segment generator, as stated before. up in the corner i have CLKD to act as a master clock for the entire box because it offers a precise BPM clock which, considering the point of this box is to create percussion sounds and especially percussion *loops* that i can use in other work, is going to be very useful for getting things to sync up right in logic. next to it is the topograph module by valley, which is a clone of mutable instruments fantastic grids module, which uses a 2D map of drum patterns from across the world to generate drum patterns that can be tweaked in real time using the fill knobs. beside that is the rebel technology stoicheia, which is a "euclidean rhythm sequencer", using the mathematical principles of euclid to generate percussion patterns. its really neat and creates some interesting patterns just by twisting knobs and ive been meaning to use it more.
here in sound territory we have even more mutable modules (or "audible instruments", as that is who repurposed the open source mutable code to port all these modules to vcv rack). starting from the right we have a pair of plaits (macro oscillator 2) and a pair of TS-Ls, these by instruo. plaits is a "macro oscillator" with 16 different oscillator models, each of which can be shaped using the timbre, morph, and harmonics knobs which do different things depending on the model. TS-L meanwhile is a simple analog oscillator with sine, triangle, and square waveforms, plus pulse width modulation and wavefolding. these are meant to be my primary sound generators, a quartet of oscillators in pairs of analog and digital, for the best of both worlds (though i do wish TS-L had sawtooth waves).
the remaining modules on the top part are a pair of filters, namely ripples once again by mutable instruments (im on a mutable kick today after diving into a lengthy video about stages). theyre simply wonderful sounding filters offering 2 and 4 pole low pass filters as well as a 2 pole band pass filter. theyre my go to filter these days. the bottom rack meanwhile has the ever popular rings ("resonator"), a physical modeling oscillator using resonators to create sometimes percussive, sometimes bell-like, and sometimes plucked string-like sounds. its another module i use in as many setups as i can shoehorn it into because it just sounds nice and theres nothing like it.
to its left is streams, another mutable module that provides a pair of low-pass gates. low-pass gates are an innovation from the west coast and the world of don buchla. in the real world sounds that decay in volume also tend to get darker as they decay, something don buchla figured out when he was developing his own take on synthesis back in the late 60s. in contrast to moog designs (and the 99% of the synth world that took after moog) many buchla synths feature these instead of traditional filters and VCAs. you can essentially see a low-pass gate as a combination low pass filter AND VCA, working in tandem to filter out high frequencies from a sound the quieter it gets. streams in particular i havent played with much but in a synth where low-pass gates are a significant focus (due to their wonderful effect in creating percussive sounds) i wanted to wrap my head around what it can do.
that ends the discussion of the major blocks of the synth so now im just gonna look at the rest of the modules which are a bit scattered to wherever they can fit. here we have a simple noise generator on the left, a logic module in the middle, and the CGS modulo magic on the right. the modulo magic is something far beyond my comprehension or ability to explain (all i really know is its originally a serge module that i guess was later adapted to eurorack) but from what i understand it uses the concept of modulo operations to effectively limit an input voltage to a certain range. the logic module meanwhile, in case it isnt obvious, uses logic gates (AND, OR, XOR, and NOT in the case of this module) on incoming signals to generate trigger outputs.
in this corner we have a pair of ALM tangle quartets, which are 4 channel VCAs with a mix output. i dont have much to say about these other than VCAs and mixers are essential to any modular system and you can never have too many of them. to the right is a pair of buchla inspired random voltage generators stacked into a single module. the orange plug receives a clock source or trigger of some kind, and the four blue plugs underneath spit out random voltages that change each time the module receives a trigger. the other two plugs below that are a simple CV inverter (any control voltage that goes in comes out inverted).
finally on the right we have utilities, based on mutables kinks, and tidal modulator 2, based on mutables tides. kinks is a simple utility module with an inverter, wave rectification, logic AND and OR gates, and sample and hold. tides meanwhile is a modulation source that i, once again, have not wrapped my head around yet, but am slowly getting the hang of.
and last but most certainly not least, we come to meta modulator, also known as warps, and modal synthesizer, also known as elements. warps takes two inputs and modulates them against each other in some way based on the position of the algorithm knob, ranging from simple crossfading and cross modulation, working up thru multiple ring modulation algorithms, bitwise XOR modulation, a comparator, and finally resulting in a vocoder. elements meanwhile uses excitation and resonators to act as a full physical modeling synth voice on its own. i cant say how much use im going to get out of it in this box, but i thought it would be neat to include since i had the space and didnt know what else to put in. its a bit similar to rings but with a much larger feature set and with an entire excitation section to use for shaping the transients of the sound.
so overall im looking forward to using this to create a bunch of really cool percussion sounds. ive also got a little manual trigger module on the side thats just a big ol button i can push to trigger a sound for ease of sampling. plus the variety of sequencers are there so the synth can be used as a kinda fucked up sounding drum machine. when i get around to using it ill post another write-up including my thoughts on the design and its usability and whether or not it does what i set out to do with it.
i think todays vcv rack experiment will be building a percussion synthesizer that i can sample and use outside of the modular world except instead of a single voice itll be capable of building patterns too
so a percussion box for sampling both one shots and loops from
ill do a writeup on the process later when its done
5 notes
·
View notes
Text
Most Marvel post-credit scenes hint at the future. Loki opted for a blunter approach: the God of Mischief would return in season 2.
Based on the final turn of events, there was really no other choice: Loki (Tom Hiddleston), having journeyed to the furthest point in spacetime with his variant Sylvie (Sophia Di Martino) to meet the founder of the TVA, a scientist-turned-survivor-of-multiversal-war known as He Who Remains (Jonathan Majors), finds himself zapped into a new reality when his lady self slays the omnipresent being. The mind reels!
Creator Michael Waldron takes delight in the endless possibilities of Loki’s core premise. And as a veteran of Rick and Morty, he knows what anchors a mind-bending show, and what will keep Hiddleston’s character hurtling through his chaotic, rewritten future. Below, Polygon talks to Waldron about landing on the key choices of Loki season 1, what to expect from season 2, and a bit on his next project, the wrestling drama Heels, which is set to premiere on Aug. 15.
Did you know there’d be a second season of Loki from the beginning or was that choice made later in the process?
Michael Waldron: We always knew that it was a possibility. We always knew that we wanted to propel Loki and these characters out into the MCU after this, into further stories. But that didn’t really crystallize as a sure thing until we were in production and everything. And as we were really figuring out the finale.
So you were still cracking the ending as you shot the show?
There was a hiatus due to the pandemic. So things were constantly being retooled because of that. I think, by and large, everything with He Who Remains and the Sylvie-Loki conflict was always there. But that cliffhanger was the sort of thing that suddenly became a really appealing opportunity, a chance for that to lead into a second season.
What element of the series helped you crack the macro story of Loki, and made all the other pieces fall into place? Each episode almost feels like a standalone adventure, similar to Rick and Morty, but what helped it all click?
The first couple of weeks in the writers room was just laying out the individual episodes. It was very important to me that each episode stood on its own, and you could say “This is the Lamentis episode,” “This is the apocalypse moon episode,” “This is the Void episode.” I didn’t want it to just be cut up chapters and have one long continuous story. Obviously, we had to figure out the time travel for things to slot into place. I think a big idea for us was the way you get around the TVA by hiding in apocalypses. That felt like such a big, cool, exciting idea that it drove the action of episode 2, episode 3, and in a way it’s like Alioth is the ultimate apocalypse that He Who Remains is hiding behind. That sci-fi idea cracked a lot open for us. I know that after we had that I went home and I slept a little sounder.
Did adding the multiverse to the Marvel Cinematic Universe feel like blowing something up or expanding it, in terms of narrative possibilities?
In the same way that after the first couple Iron Man movies, and with the first Avengers, suddenly these movies were kind of going to space. Then we had Guardians. I think of the multiverse as another version of that. It’s new ground to cover, and particularly interesting because characters meeting other versions of themselves and other versions of people they know is... cool. That’s just a cool sci-fi concept! But I think with anything, as you expand outward, it only works if the humanity remains. It’s exciting to watch characters dealing with big crazy multiversal conflicts because we can see ourselves in them. I think you just have to hold on to the humanity that makes these stories work in the first place.
Did you go back to the Thor movies for Loki? Was there anything to find in the past of Marvel as you were paving the future?
Absolutely. I mean I watched them many times, contrary to what Twitter might think because I did some bits on there saying that I’ve never seen Avengers and I upset some people [laughs]. I have seen it many times. “Confirmed: Loki writer has seen Avengers and saw it before writing Loki show.”
In fact, I was watching all these movies on a loop in the writers’ room. I gleaned so much because you watch the evolution of the character. Avengers was particularly informative because our story picks up Loki right after that, but I also I found a lot of inspiration in Thor: The Dark World, a maybe sometimes maligned movie that I actually really enjoy. I just think there’s great stuff with Loki being tangentially responsible for the death of his mother, how he reacts to that. That is the start of his journey of that version of Loki’s redemption, so I was inspired by that.
What’s propelling the characters into season 2? Where are you headed in basic terms?
In season 1, you saw a lot of characters reckoning with and questioning their own glorious purpose, and that glorious purpose changing, [characters] realizing that that can change. Everybody except for Sylvie. I think she holds onto hers, which is vengeance, and to the detriment of us all, perhaps. And we’ve got a Loki who, at the top of our show, assessed himself as a villain and, I would argue, at the end of our show, has become a little bit of a hero. There’s nothing more heroic to me than fighting for the right thing and losing. You see that washing over him as he’s there back at the TVA, after Sylvie has knocked back there. And then he gets up because that is what heroes do — they keep going. So I think that you’re gonna see a Loki that looks at himself in a different way certainly that at the top of this.
Do you hope to explore more of Sylvie’s backstory in season 2?
I guess we’ll see. We certainly have our own rich backstory for her, stuff that didn’t get to make it into the show. Elissa Karasik, our episode 2 writer, wrote a lot of amazing backstory for Sylvia and everything. So those ideas exist out there.
And her version of Thor?
Tune in.
How did He Who Remains come about? Did you bring the character to Marvel or was that a character Marvel hoped to introduce?
I was pushing and our team was pushing early on in the writers’ room that it should be a version of Kang up in that Citadel, sort of fusing the mythology of He Who Remains with a little bit of the Immortus mythology. And that was a thing we were excited to do. And it became clear that it actually made sense for our story. The only way we were going to do it was if it made sense, but it was like, who had a better argument for creating the TVA to prevent other versions of themselves from existing then a guy as evil as Kang the Conqueror?
You wrote the upcoming Doctor Strange in the Multiverse of Madness — did Marvel hire you for that after Loki? Does the movie feel like a continuation of the show?
Yeah, that opportunity came as we were getting ready to start production on Loki. It was a pleasure. I got to work with Sam Raimi, a hero of mine. I was in London for five months making that movie at the top of this year. We had a blast. I think that it’s a continuation in as much as ever every Marvel movie is to some extent a chapter in an ongoing story, but these things are meant to stand alone and the most important thing about Doctor Strange too is making the most kick ass Doctor Strange movie we could.
Is Loki a two-part show now or are you invested in telling a longer story with future seasons beyond season 2?
Time will tell, but I do my hope is that season 1 stands on its own. We always wanted to tell a complete story there. And in whatever the next chapter may be will stand on its own as well.
Your next show, Heels, is already on the way. We got a big preview out of Comic-Con this year, but I’m curious about the scope of this story. You’re starting with two brothers running an independent wrestling franchise, but you’ve dropped the name “Vince McMahon” a few times — is this about the building of an empire? Would you liken it to The Godfather or Breaking Bad?
I always thought about it a little bit of a Scorsese-sort-of rise, and we’ll see if there’s a fall. Starting from humble beginnings and trying to build some crazy. Wrestling was certainly not always the empire that it is and that’s what’s interesting, to watch the evolution of a family-run wrestling business from something you do in your small towns and perhaps a national, even global empire. That would be a really compelling arc for a show over the course of several seasons. I’d be excited to explore that.
What’s the most dramatically fulfilling wrestling moment you’ve witnessed? What’s the bar for the wrestling drama of Heels?
It’s gotta be Hulk Hogan turning heel in the WCW. There was an invasion storyline, these guys from WWF, Kevin Nash and Scott Hall, came over and they were the bad guys. It was at a Pay-per-view and and they were beating up on the good guys that you love, and here comes Hulk Hogan in the yellow and red and he’s the hero. “The Hulk’s gonna get ‘em! The good guy’s here!” And then the Hulk just leg drops Randy Savage. That was the original Red Wedding. I just think about the boldness of turning him heel. To a little kid... I wasn’t even like a massive Hulk fan, but he was just such a mythological figure. What a chance that Hulk Hogan took as a performer, as a bankable kind of movie star at that point. That was bold, risky storytelling and it set off two years of amazing storytelling with Hogan just playing a craven, cowardly heel and just being so evil. I really respect the hell out of them for doing that. That was a great storyline.
60 notes
·
View notes
Text
Quarantine & VR
5500-word story, so I used the Keep Reading feature for once. Similar stories and bonus material on my Patreon.
“Are you sure you’re OK with this?”
We were slowly driving through an eerily empty city center from my student flat next to campus on one side of town to Ethan’s flat on the other, with all my belongings stuffed in the back of the U-Haul. Not that I had so much stuff we needed one. I just moved into the state right before the semester started, but it was the cheapest rental we could get. No one is going anywhere with this lockdown in effect. We barely had time to read the syllabus before everything screeched to a halt. You thought we’d know by now how to handle pandemics, but nooo.
“I wouldn’t have helped you clear out your shit if I wasn’t. Bit late to ask now.” “Yeah, but it seemed like the polite thing to do.”
Ethan turned towards me and spoke with a more serious tone. “I’m really happy to have you stay at my place. I think I would go mad staying alone. Go mad or go home, and I don’t think being locked up with the parents would be better.”
He was about as new in the city as I was, but his aunt had moved out of an old apartment last year and his parents had decided to take over the lease. Apparently it was even cheaper than the student apartments and much larger, but further away from campus. Though where it was in the city didn’t really matter as long as this lockdown was going on.
“Someone else is out at least”, I said indicating out the window. Across the street, a police officer with a navy blue face mask followed our truck with his eyes. Or her eyes I guess. Hard to tell in uniform and mask. I don’t know why, but I found it a rather good look. I hate the flimsy paper masks, but these form-fitted ones kind of make you look more badass.
“Do you think he looks sexy like that?” he asked, as if he had the same thought. “It’s a bit dystopian sci-fi, but that’s not to say it doesn’t look good.” “Take next right. The one after is one way.”
The apartment had two bedrooms, a large living room, decent bathroom and kitchen. Ethan’s aunt had left some furniture, but overall there wasn’t that much stuff. Makes sense as he had barely been here a month. That’s how he had a sparsely furnished extra bedroom for me to use. This was only the second time I had been in the apartment. Ethan forced me to have a look in person before he allowed me to agree to stay with him. Now standing there with all my belongings in the truck outside and my student flat lease canceled, I realized we really didn’t know each other. I studied corporate finance and he medical computer science, whatever that meant. When I asked he tried to explain that almost everything in a hospital now has a computer in it, and a ton of work went into things like volumetric renderings of MRI scans and somewhere there I started to tune him out.
There really weren’t any overlapping circles between us, we studied completely different subjects, he was active in computer games and health, I was trying to get into the writing room of the student theatre company and looking to sign up in the cinema club. But both of us had the bright idea to start working in the student pub, and really hit it off during the start of school year party they threw for their workers. We decided to pick the same work schedule and found out we have the same taste in pop culture, music, books, movies.
And now I’m moving in with him.
He had the larger of the bedrooms with a queen-size bed in the middle, a desk with a few computers and screens set up, gaming computer chair, a reading chair. Basically his room was set up so he could live there except for visits to the kitchen and bathroom. My room didn’t have a desk, but a normal bed, an armchair that looked comfortable, and more wardrobe space than I would ever need. He told me that I could basically consider the living room as mine as well. It had two couches in front of a big flat screen. By the balcony door stood a workout bench and weights. Barbell, plates, dumbbells, and that kind of stuff. Apparently it wasn’t Ethan’s but his uncle’s, but that didn’t really make a difference here and now.
Moving my stuff only took a few runs up the stairs, so we were soon back in the truck, returning it to the rental place. Ethan really didn’t have to come with me, but he said that this would probably be the last adventure for a while, and decided to come along.
“You’re supposed to buy pizza and beer for everyone who helps you move, right? What do you fancy?” “I’d like… You know what? We’re not going to get out much, and you don’t look like someone on a strict diet. Oh, no offense!” “None taken.” “How about we both keep healthy macros and workout regimen while locked up. Instead of paying rent you can help me make sure I at least isn’t in worse shape when all this shit ends.” “Macros?” “Diet.” “Sure I can do that, if you show me what to do.” “It’s a deal then. I’d like one with Gorgonzola and ham.” “Come again?” “The pizza topping. I’m allowed one cheat day per pandemic.”
The pizza place was only a block away from the apartment. Just this one time it was great, as we walked back with one quattro formaggi and one bresaola. But it would be so much harder to eat whatever Ethan had in his plans knowing a real wood fire oven pizza was just four minutes walk away.
Unprompted Ethan started to tell his story over pizza. How his father was a successful businessman in Arkansas, but his hometown always felt too small for him. He talked about how he was making synth music in school. How that made him interested in computers. How, since it was such a small town, he had ended up on the football team without any desire or skill to actually play the game. How he had almost by accident found this education program and had looked forward to both leave Arkansas and to study. I too did a year be year recap of my life so far, up to how my girlfriend dumped me just before the summer. In a way that was lucky, because it made me feel free from obligations and actually do what I wanted.
It was 9:21 when I woke up from a knock on the door. I was a bit disoriented for a second until I remembered where I was. I was sleeping in the guest bed left by Ethan’s aunt. After the pizza we did continue to talk over beer all evening, but I didn’t feel any hangover. Just thirsty. It wasn’t that early in the morning anymore on the other hand. “Yep” I called out. “I’m making breakfast,” Ethan called out from the other side of the door. “Coming”.
It literally only took me seconds to get ready. Stand up. Sweatpants. T-shirt. Done. In the kitchen I saw Ethan had a similar fashion sense, but had gone for shorts instead. “Porridge is fine with you? It would be good if it is. Lots of fibers.” I couldn’t really recall if I liked porridge and told him as much. The porridge itself didn’t taste much, but with toppings I could get used to it. “With our schedule in our own hands I think it would be a good idea to start out with breakfast and work out. That way we can get it out of the way.” Sounded sensible enough.
I changed into shorts as well and made myself ready to do my part of becoming Ethan’s gym buddy. At a quick glance we didn’t look that different, Ethan and I. On one hand I never had that big of an appetite, but on the other I had never really done any sports, and had no gym experience, so I let Ethan guide me. He tested different motions and how many times I could do them with weights he selected and noted down the results in a notebook that would log my progress. It wasn’t at all as tiring as I thought it would be. “Oh, you’ll feel it tomorrow for sure.” We each took a shower, and I went back to my room to catch up on my reading.
A few hours later I was starting to think about lunch. More because I was getting tired of reading than actually being hungry, but I thought I should ask Ethan if he had a plan. The door to his room was open, but as I got closer it became apparent it was an oversight on his part. Splayed on the bed was Ethan, naked save for a pair of boxer shorts and a big VR goggles. His right hand was massaging his obviously erect dick through the fabric of his underwear. He must have followed his normal routine and forgotten I had moved in. I’m not a prude and do the occasional tug myself, like any student, so I was more embarrassed than shocked. As on autopilot, my mind decided to ignore Ethan and continue walking to the kitchen to assess the lunch situation, but another part of my brain decided to keep him in sight.
Walking without watching in an apartment I’ve been in for all of 18 hours predictably made me jam my toe into the door frame. In the corner of my eye I could see Ethan’s body spasm and ripping off his VR goggles as I yell out in pain and surprise. He stared right at me, eyes wide open and mouth ajar in an expression that was hard to read. Surprise for sure, but also something else in between horror and delight. Perhaps it was like the smiles and laughter after you have completely made a fool of yourself. My eyes were drawn to his, and I could feel my face twisted in pain. It was like time stood still, waiting for either of us to make the next move. Out of sheer momentum my mind continued ahead as if nothing had changed and blurted out “What’s your plan for lunch?” over whatever Ethan said at the same time.
“What?” and an awkward pause again. “I said would you like to try?” “I… What is it?”
Ethan put down the VR kit on the bed, quickly got up and stepped into his pair of shorts. His erection was still very much apparent. He pressed escape on one of the keyboards and the screen switched from one incomprehensible menu to another.
“It’s a virtual reality system. I’m using an open source environment system to render inputs from an interactive story engine controlled by a GAN AI system. I’ve been experimenting with regenerative NLP feedback loop plugins for it.” “I followed you all the way up to and including virtual reality system.” “It’s like a VR movie that is generated specifically for you. Here.”
He picked up the bulky goggles and held it out to me. It wasn’t just goggles, but a pair of headphones were built in, and there were a few additional sensors glued on. Hesitantly, and with a throbbing toe, I stepped forward and took the headset. It wasn’t as heavy as it looked. I put it on my head and as it settled into place a digital version of Ethan’s room wobbled into place as well. It was remarkably similar. The colors and patterns were all slightly wrong, but the layout of the room and placement of furniture was almost spot on. I assume he had measured everything at one point and put in the data somehow.
“Go lie on the bed.” Ethan told me. I very tentatively stepped towards the bed, and feeling my way there. It was somehow surprised to find a bed where the digital bed was, and although the visuals of the sheets didn’t quite line up with what I felt, if you just moved quick enough the illusion of actually being in the digital room felt very real.
“This is so weird.” “I’ll start a blank session for you.” “A what?”
Almost immediately a guy entered the room through the door frame. This must be some VR video recording or something because he looked completely real. About the same age as Ethan and I but more fit and, I’ll admit, better looking. He looked flush and sweaty, with his french crop unkempt as if he had just ruffled it. He wore a navy blue sweatshirt and sweatpant shorts. I couldn’t see further down from my position. “Fuck, that was so dope! I love getting pump like that, you know what I’m saying” He was stretching his arms in different ways. Then he zoned in on me, like he was actually looking me over. “Fuck, I love how you look, babe. Mind if I join?” I shake my head slowly. He breaks out in a big smile. I notice he has a bit of a sweatpants boner. Carefully he climbs into bed, next to me. There’s no vibrations of course, or heat or smell, but everything I see looks utterly convincing.
“Hey, are you OK?” “What the…”
I’m looking into Ethan’s face as he stands over me. Bewildered I pat my head.
“I removed it once the program stopped. Didn’t shake you from your sleep one bit. I guess it wasn’t that interesting for you.” “It was very convincing. I fell asleep?” “Perhaps moving stressed you more than you knew? Or it could just be, you know, how shit the world is right now.” “Fuck… I only wanted to ask about lunch.” “A bit late for that. It’s like four and something. Let’s wait an hour or two more and have dinner. Ok with you?” “Sounds dope.”
It was like neither of us wanted to talk about what had happened. I certainly had questions. Had I just fallen asleep like that? Perhaps he was right and I had been anxious about the move and how things would work out. And what was up with that program? It wasn’t gay, exactly, and it didn’t mean Ethan was gay, and if he was there wasn’t anything wrong with that. All of it was just so confusing. Perhaps Ethan was right to just pretend it didn’t happen. Poor guy. I walked in on him watching porn, and then I fell asleep when he tried to show his system. Watching the news on how ever more countries were shutting down was probably time better spent.
He had not joked about being sore in the morning. I woke earlier than in weeks feeling stiff as hell. I didn’t want to wake Ethan, but I couldn’t just lie there in agony, so I got up and did some bodyweight repetitions. Squats, push-ups, dips, and stuff like that just to get some blood flowing. It honestly felt great. Me doing morning gymnastics! Who would have guessed that a week ago? When I left my room I found out Ethan was already up, but didn’t want to wake me up.
“Dude, we need to sort that shit out. I’m ok with you making noise when you’re up. You live here.” “You live here too. What if whoever gets up first makes breakfast and wakes the other up.” “Yeah, dope. I’m down with that.”
We quickly worked out the kinks in our schedule. I would typically wake up first, do a quick workout routine in my room. Then set the breakfast and wake up Ethan. Then we would do workout together. We had different weights and number of reps, but we had very quickly settled on the same exercises, though Ethan was still adjusting my form ever so often. Ethan would then shower first while I did stretches. We then kept to ourselves until lunch. Ethan cooked for both of us. Depending on what we felt like and needed we would either go back to study or do something like shopping or that kind of stuff in the afternoon.
It was hard to keep track of time, but I think it was on a Sunday four weeks later when Ethan said during breakfast that he wanted to show me something he had worked on. He moved the workout bench and the barbell stuff to just outside his room and told me to lie down. The bar had no plates on it, and that’s how I’ve used it until two days ago when I started to add extra weight to it. Ethan emerged out of his room with the VR set in hand, and a trail of cables running in into one of his computers. “Here, give this a go.”
I was a bit surprised, given the last time, but I was also curious what he had to show. Once snugly fitted on my head I was transported into a real gym. It wasn’t a very large one, but a few people did their thing around me. He almost scared me, the guy with the french crop, when he called out “Hey, bro!” just to my left. He had the same navy blue sweatpant shorts as the last time, but his upper body was bare, glistening muscles. He took a step back and his eyes were scanning me up and down. “Dude, you look so fucking good! You’ve really been hitting the weights.” I smiled and immediately realized that I was smiling at an avatar that wasn’t actually there and couldn’t see me, but it’s amazing how good some positive reinforcement feels, even if it is from a program. Perhaps that was the surprise from Ethan.
“Here, show me what you got!”
He walked around me, through the couch I knew was there in the real room, and stood behind me. I leaned back fully on the bench and looked up. He stood over me, just behind my head, so all I saw was a navy blue bulge, some abs and pecs, and his face looking down on me. “Go on, I’ve got you.” I could somehow feel him standing over me. Was Ethan spotting me in the real world? Not that it matters with an empty bar. I grabbed it. It felt heavy. “Good. Give me 15.” He started counting as I lifted. “Slower on the way down. Keep control all the way. Ten more” As I was getting to fifteen he upped it a bit. “Come one! Five more!” As I sat the bar back I felt utterly exhausted. “Fucking awesome, dude!”
“You really went all out.” “What?”
I was lying on the workout bench but I wasn’t wearing any VR shit. I sat up and hit my head in the barbell.
“Fuck! Dude, what the hell!” “The idea was for it to be motivational, but you really took it to heart.” “It was fucking dope, bro. I’m so pumped. Guy was kind of cute too.” “You think?” “Fuck, yeah. I wish I had those pecs.” “You better start some supplements then, if you can’t even last a virtual session.” “What you mean, dude?” “It’s already lunch.” “Fuck dammit!”
I rubbed my head where I had hit it and looked around the room. It looked mostly like before, but the sun had clearly moved ahead. Fuck, I really felt pumped to get some reps in hard and really make a difference. Perhaps lunch, and then do my daily sets.
“You ok with shopping without me after lunch?” “Sure. You need anything?” “I… You said supplements.”
Fortunately for me I have a roommate that studies medicine, kind of. Well, he hasn’t actually gone to any of the classes yet, but he has the books, so he picked out some things for me to boost me. Some of it looked like medicine, in small plastic jars with scientific-sounding names that could just as well have been a frat house. Alpha-omega-manganese-BS-whatever. Some of it decidedly did not look like medicine. Enormous containers with lids that looked too fucking small, with names like amazing-gainz-ultra. He set up a regimen for me to follow, basically some stuff with every meal. I started right away that evening with something like a vanilla and chalk milkshake after dinner. I don’t know why, but something made me feel really good drinking it.
I slept fucking fantastic, and despite having done way more lifting the day before than ever I barely felt any soreness or anything. I probably woke up Ethan with my harder than normal pre-breakfast cardio. Lots of burpees and jumping jacks, so I almost felt guilty making breakfast while steaming sweaty, but whatever. Ethan had to remind me what supplements to take. I really should have written that shit down.
I had a strong deja vu while doing weights. It wasn’t until Ethan spotted barbell for me I realized that this was almost exactly what I had seen doing the VR shit. I looked up and saw Ethan standing over me similar to the guy, but Ethan was wearing grey sweatpant shorts and a red tank. I kind of wished he was topless as well, like the other guy.
“You ok down there?” “Fucking dope, bro”
I realized I must have zoned out a bit. What’s worse I could feel I rocked a hard erection out of nowhere. Rather than making a deal out of it, and run to the shower, I decided to pretend like everything is normal. Guys get boners all the times. He’s a guy, so he knows that. I even did a few extra exercises to really drive home that point. While Ethan took his shower I dared to lower my shorts and slowly stroke my dick. I haven’t cummed once since moving in with Ethan, which I realized was longer than I’ve gone in years. The days were blurring together. I hadn’t watched porn either since moving in. I’ve been too preoccupied with the move and everything else going on.
“All yours” Ethan said and closed the door to his room. I just froze. I was sitting on the workout bench, shorts by my ankles and dick in hand. He saw that. There is no way he didn’t see that. I could feel my face getting hot by embarrassment, yet I continued to sit there and stroke my dick. What the fuck is wrong with me. My mind flashed to Ethan, to the guy in the VR, to his bulge just above my eyes, to his abs to the barbell, to the free weights.
No. I got up and took a long shower, trying really hard to not think about anything. Just observing the tiles, the shampoo bottles, the soap. But there were the creeping thoughts that perhaps Ethan will find me a weird creep and kick me out. How would he do it? He’s been far too nice to be direct. Would he bring up this incident or would he just wait a week or something and over one lunch say something vague like we are not as good of a match as he hoped? Fuck. I needed to do something.
I couldn’t concentrate at all on the block on taxation I was supposed to read. Apart from the residual thoughts of unease I was beginning to see what a mistake it was to not cum in the shower. I was very close to surfing porn sites, but decided against it and ended up aimlessly browsing social media. I can’t really explain how, a hundred clicks that trended in that direction perhaps, but I got into the circles of fitness instagram people. Big arms, broad chests, and slinky stringers. Somehow I was hard again. Stealthily I walked back to the bathroom, locked the door, and started to jerk off in the shower. I’d been saving for a week and been hot all day, but somehow it took quite a while to shoot the load. My mind was a soup of barbells, Ethan, sweatpant shorts, vague old porn clips, and more recent instagram models. When I finally came it was like I’ve never orgasmed before in my life. Rope after rope shot out of me, the first few even hit the wall, and my hips involuntary thrust forward for each of them. I felt cleansed in a way, like a weight had been lifted from me. I couldn’t really understand why, though. Nothing had really changed.
I didn’t want to go back to my room and study. I rinsed the shower, got a pad and a pen, and went to the kitchen to get on top of the supplements. I decided to write down all the ingredients from the labels. I had just accepted Ethan’s plan uncritically. It’s probably fine, but I wanted to understand it. That’s where Ethan found me.
“Hey, dude. Already hungry?” “Yeah… No… I don’t know, bro.” “You don’t know?” “It’s like… Fuck. You saw, bro.” “Saw what? You jerking off?” He laughed and sat down. “You saw me doing it first.”
He was right, of course. I didn’t know how that could have slipped my mind.
“Was it porn?” I didn’t know why I asked that. I was curious, but it also felt a bit too personal of a question. “Yeah. Wanna see?”
Before I even had time to respond he continued “Let’s fill up your macros first and then I can show you. If past experiences are any indications you’ll take your time.” “Already jacked off today.” Why did I tell him that? “Even better”
Ethan had this ever changing dish where he would chop and fry vegetables like bell pepper, chili, garlic, ginger, onion, peas, and whatever else was around, pour in coconut milk and whatever spices you craved that day green curry or red curry for Thai, madras curry for Indian, Soy and miso for Japanese, anise and szechuan for Chinese, saffron and parmesan for Italian, and so on. Then serve it with pasta or grains or rice. I helped him prepare it, as I always do unless he started making it without telling me. This time however the air was different, filled with tension and awkward anticipation. He made it with chicken, lemon grass, and brown rice this time. We hardly spoke a word while cooking, and then continued to eat in silence. We both knew what was on my mind, and there wasn’t any question on the subject that wouldn’t be awkward. I was weirdly looking forward to trying out whatever it was he wanted me to try. I couldn’t explain why it felt so compelling to me. Just thinking about it made me hard. “You clean up here and I’ll go and set it up for you,” he said as soon as his plate was empty. “Yeah,” was all I could manage, and he left. I finished my plate as well, put the few things we’ve used in the dishwasher and went to his room.
His bed was made and on it was the VR headset and what I first though was a protein drink shaker. “Dude, is that a… fleshlight?” I asked him both with incredulity and genuine curiosity. Curiosity because a cable ran from it to one of the boxes on the floor that connected to his computers, and incredulity because I couldn’t believe he thought I would use one of his sex toys.
“Yes. No. Not exactly. It’s modified to connect into the haptic subsystem.” “Haptic?” “Force feedback” “It’s a vibrator, bro.” “Eh.. No. Well, not only. You’ll see.” “Why do you think I’d touch that, bro?” Though somewhere inside I knew I would. “It’s a brand new inset. You’ll be fine.”
I walked up to the bed and suddenly wasn’t sure what to do. I would need to at least lower my shorts and boxers to get the until-recently-fleshlight on my dick, but Ethan was still in the room. Not only in the room but almost studying me like a lab project.
“I’ll lie down?” “Got to strip first,” he said motioning towards my tenting shorts. He saw me hesitated and continued “Dude, I just saw you jerk off in the living room this morning”. I blushed and pulled down my shorts and boxers, and stepped out of them. “Shirt too,” he said. I removed that as well and stood naked in front of him. “Wow, you are making progress. Ok, on the bed and hook yourself up. Red dot up.” I climbed into the bed, as he told me, and grabbed the cyber-fleshlight and pushed it down on my hard dick with the red dot up towards my head. There was some sort of lubrication in it and it slid on with very little effort. It must have been heated as well, because the lubrication didn’t make it feel cold. I was given a nod from Ethan and put on the helmet over my eyes and ears.
The alternative version of Ethan’s bedroom was already there, waiting for me. I looked around and as far as I could tell everything looked like in the real world, except no Ethan of course. After half a minute, perhaps more, I was almost about to ask if he had started it when the French crop guy jumped in through the doorway, as if he was in a hurry. He was naked except for a pair of white, tight speedos that both highlighted his big package and created a reference point for his deep tan and made it look even deeper. There was a sheen over all his body, like he had been working out hard or oiled himself up, and he was breathing heavy. “Sorry, I’m late. I didn’t expect you so soon,” he panted. I didn’t know what to say. “You want me to help you with that?” he asked and nodded towards my dick. I looked down and saw a massive erection, easily twice my real size. “As an apology…” he continued.
“Yeah, sure bro.”
He made the cutest little jump of joy in response, and caught my smile. He composed himself and locked eyes with me. Then he started some sort of dance where all the movement was in his hips and abs. Then he added more of the upper body, still keeping eye contact. I thought I would hose him down with cum from my monster penis right there, so sexy was it. He smirked and moved closer. Still swaying he leaned forward and licked the head of my dick, which shot pleasure up my spine. He then started to circle the head with his tongue, before taking it into his mouth. The first few times were shallow, but then he stopped teasing and begun to really do down deep on the dick. In addition I could feel him alternate between stroking my hips, the insides of my thighs, and tugging my balls. Just as I was about to nut he stopped working on my dick and started to slowly run his tongue up my faint abs, circling my nipple. I was squirming in horny delight.
He was straddling me now, face to face. I couldn’t resist it any longer and reached to pull him towards me and kiss him on the mouth. There was a loud crack of plastic against plastic as our VR helmets collided. “Dude?” I was looking at the French crop guy who was moving his hands in front of his eyes. “Ethan?” I asked, suddenly realizing what was going on. The French crop guy looked bashful, did a little wave, and answered in not-Ethan’s voice “Yeah.”
“Did you just blow me?” “I wasn’t… No, it’s still the device.” I hesitated, considering briefly what this would mean. “Would you like to?”
79 notes
·
View notes
Text
Here's a great example of why writing code which is clear for the human, and which stays within well-defined portable C behavior, ultimately ages better:
Here's the simplest, dumbest, most straightforward C implementation I can think of for getting the position of the highest one bit of an integer:
int highest_one_bit_position(unsigned int value)
{
int position = 0;
while(value)
{
value >>= 1;
position += 1;
}
return position;
}
Now that looks super inefficient. O(n) runtime! Has to check every bit. So you might be compelled to spend your time thinking real hard how to make it more efficient, and realize we can do something like a binary search:
int highest_one_bit_position(unsigned int value)
{
int shift = (sizeof(value) * CHAR_BIT) / 2;
int position = 0;
while(value)
{
if(value >> shift)
{
value >>= shift;
position += shift;
}
shift /= 2;
}
return position;
}
Now you might pat yourself on the back about how sexy this is, about how you achieved O(log(n)) runtime, and so on. I did.
Alternatively, or in combination, you might try to implement a lookup table to jump directly to the answer once you're down to the last chunk of bits, worrying about the optimal table size to fit into your L1 cache and so on.
Congratulations, you made your code slower.
A recent `clang` can turn the first version into a just a few machine instructions with no loops, because most modern CPUs have an instruction like "count leading zeroes" that can be used here, but `clang` can't figure out what's going on in the second one. [Edit: in Clang version 13, the optimization pass that did this was removed, because when compiling sufficiently complicated software it could severely slow down or even seem to hang the build - it hasn't been added back yet, as of Clang 16.]
Incidentally, based on this, I discovered that a way to get the count-leading-zeroes instruction if it is available, in a recent `clang`, with pure portable C code which has entirely-defined-by-the-standard behavior on any C implementation, even ones where integers have unused bits or whatever, without any compiler intrinsics, turns out to be to keep the first version of the above, and then use it like this:
int count_leading_zeroes(unsigned int value)
{
return highest_one_bit_position(-1) - highest_one_bit_position(value);
}
(You could replace -1 with `UINT_MAX` if you want to be more accessible to people not fluent in C's conversion rules and if you don't mind repeating the type information, I just like to write code that is as type-independent as possible, and -1 is the most portable and straightforward way in C's actual formal semantics to say "all value bits set to one" for any unsigned integer type. That way you can just textually replace the type in a couple places and the code still works, which even lets you write macros like C++ templates, where instead of weird implicit template instantiation by usage and name mangling, you call the macro with that type and the explicit name you want, and it expands to a definition of the function for that type.)
Anyway, see, once a good compiler can figure out that the first function is basically CLZ with some boilerplate around it, I knew to trust that it can probably also figure out that two calls to that pure function, where the first gets compile-time constant inputs, basically have the boilerplate cancel out.
So what did we (re)learn?
Turn on optimizations in your compiler! Every bit of manual optimization until you do that is at best wasted irrelevant effort, at worst actively making your code less efficient than it could be if you just let the compiler optimize from a clear view of your intent!
Measure before and as you optimize! And the first, easiest measurement is to just look at the assembly code generated by the compiler (after you've turned on optimizations in the compiler of course).
Stay within well-defined behavior in C! If you can't safely turn on maximally aggressive optimizations in your compiler, it's probably because your code relies on undefined behavior, or implementation-defined behavior, that changes with optimization settings.
Write clear C code which says what you mean in the simplest, most straightforward way that C offers for saying it. At least at first, until you've realized it is still too slow and measurement has shown that the compiler optimizations have failed you, or you've got a real need to use a compiler that can't optimize properly for some reason.
12 notes
·
View notes