#anyway tl;dr learning a new language is fun and worth while if you can set the time aside
Explore tagged Tumblr posts
Text
The more I think about the post about reading work in the original language the more I find myself I want to add a bit of nuance.
While, it is true, that like there’s specific nuances and cultural context that exists in the original language it was written it, I do feel the need to point out translations have their own value too, like beyond accessibility.
Hell, it’d be hypocritical for me to not value them given that it was a Vietnamese translation that got me invested into an OTP.
I think it is worth noting that learning a language to experience a work in the language it was written in might offer a new experience and that’s about it.
#one of these days i'll talk about about the two whole works that i've read#they have a different vibe from how they address each other in the original japanese#it's not my otp but it's a ship that i think it is cute and i like to talk about it anyway#but i really should make a point to also brush up on my viet while i lean how to read another language#anyway tl;dr learning a new language is fun and worth while if you can set the time aside#but don't be discouraged if you cant translations are still valid and might not offer the same experience#but that is okay#pure rambling
16 notes
·
View notes
Text
Is anyone else doing this?
There is absolutely no one interested in this tl;dr (what is this, Livejournal in 2011?) but every time I try to write fic, my brain only wants me to write this, so I guess it’s a sign to put things out into the universe.
Predictably, I’m doing a little reflection on 2019 and setting some goals for 2020. I didn’t really set any goals last year, but sometime around Summer of Smut, I told my betas that I wanted to be pushed more to expand on moments in my fic when it seemed like I was glossing over things that could be fleshed out. Because they heard that and pushed me to do better, I went from writing teeny tiny short chapters to one-shots that are over 5,500 words. I can literally see the progression of my writing from too concise to more fleshed out. HUGE thanks to the team of support I’ve totally lucked into this year for helping with that.
I’ll put a read more here so you can scroll by! Before you scroll, I hope you have a good new year!
So, goals for 2020! I’ll get the non-writing ones out of the way first:
Keep my current Duolingo (French) streak going as long as I can.
At first, I was going to just start (well, re-start, because I had this same goal in like...2016 or something) using it in 2020 like a cliche, but instead, 42 days ago I downloaded the app. How do I know it was 42 days ago? Because that’s my current streak! So far the progress is at:
Excuse-moi, comment tu t’appelles?
Elle est Anglaise.
Tu travailles beaucoup.
So, if you ever meet an English woman who works a lot and you need to know her name, I’m your gal! I don’t know what I’m ever going to do with this. It’s nice to know another language, I guess, that in no way benefits my career. It’s what I like!!!
Read 10 novels
I’ve gotten so bad about reading. Three years ago I read 50 books. Two years ago I read 20. Last year and this year? Zero. I reblogged something recently that said reading a ton as a kid/young adult, for a lot of us, was to escape, but now that we have so many ways of escapism available to us (and mine is fic writing and my Firestick), taking the time to stop and read doesn’t seem to happen much. I tried audiobooks once, and I can’t listen while trying to work or multi-task. Inevitably, I focus too hard on the other thing I’m doing and before I know it, I’m lost and have to rewind. So, it’s back to the tablet or the 56849675656 physical books I have. Ten isn’t a big goal. That’s not even a whole novel every 30 days. I’m trying to decide what to read first even though my to be read list is massively long. Let me know if you have any suggestions!
Write more handwritten notes to send in the mail.
The stationary is bought! This is something I want to get better at because...God, who doesn’t just need happy things in the mail sometimes? Is it faster to send an email? Sure, buuuut, there’s just something about sitting down and actually writing out your thoughts to a person. And there’s really nothing like getting old-fashioned correspondence in the mail. You can dramatically read it by a window with only a single candle as your light. Anyway, I have names and addresses and I’m gonna do this.
OKAY, NOW WE’RE TO THE WRITING ONES!!!!!
Write at least 100 words per day.
I wouldn’t only write 100 words per day, of course, but every day I will write that amount as a minimum. Sometimes it will be bad. Other times it could be good and might even turn into something. The simple point is just to write, and I’ve bought a couple of creative tools to help with that. I don’t even know who I would share those 100 words with or if it would be worth it. In any case, by the end of the year, no matter what, I should have 36,500 words total. We’ll see!
Get better about responding to AO3 comments.
I am notoriously bad at this and don’t mean to be. I worry that I sound repetitive or that my appreciation doesn’t sound genuine. I don’t really know how to respond to praise, so if you ever get a reply from me that’s just a heart or just a simple thank you, I’m sorry that I’m not 10x more eloquent in accepting thanks and at this point I’m just grateful people leave it.
Let go of the pressure
I guess that’s self-explanatory, but this fall was not great in my own head surrounding fic. I let a lot of things that were not true make me believe I could only write one thing or nothing at all. Once I let go of that, the one-shots started flowing. I’m happy with my writing right now; not because I think it’s super great, but because I’m feeling it. That may not make sense to anyone else and that’s okay. I was never happy with anything I wrote from August - November. It feels really good to not feel that way anymore and all because I finally listened to my wife and Danielle and took their advice. If the two of them ever gang up on me I don’t stand a chance.
That’s it, I think! Earlier in the month, I thought I wanted to get into meditation; I changed my mind after trying every day for 2 weeks. I also thought this was the year I wanted to start learning ASL, but I can’t figure out a place/time to practice and I don’t want to scramble and stress over something that should be a fun exercise. I have a few other super personal goals that may get talked about at a different point! This is long; if you read it we’re probably actually friends or you are also my wife, in which case please come kiss me.
Happy end of the decade! Hello, 2020.
36 notes
·
View notes
Text
making a pico8 game during my first week of RC
tl;dr - Play my first ever solo game right here!
On my first day of Recurse, fellow W1 2017 batcher Ayla Myers (whose work you can peep here) presented on fantasy game consoles, PICO-8 in particular. Her presentation ran roughly 5 minutes, but it only took about half that time to convince me that I should give it a whirl. Since asking for help is more than encouraged here, I approached her immediately afterwards and asked if she could do a quick walkthrough of PICO-8 sometime.
“Yeah, of course. When do you want to start?”
“Uh…” It was already 6pm. “Tomorrow?”
“Okay!”
And lo, 11am the next day found myself and a handful of other Recursers sitting around a table in the Turing meeting room as Ayla showed us the ropes.
PICO-8 is a highly-opinionated, highly-constrained fantasy console with a robust set of tools for quickly developing and sharing games. While I’d played a few PICO-8 games before, I hadn’t realized just how core the commitment to retro-nostalgia is to the engine itself. Here are some fun things I learned about PICO-8:
It includes a pixel art editor and a chiptune mixer, both of which are a delight to use.
PICO-8 games can have 2 players, but each player only gets 6 possible inputs: four directional keys and two others (typically Z and X).
On the programming side, developers are allowed a maximum of ~8k tokens and ~65k characters. This incentivizes some extreme optimization, overloading, and other tricks in larger games that near those limits.
The games are super easy to export and share, either as embeddable HTML and JS or as downloadable executables.
As someone who has shipped dozens of games professionally but has never personally programmed one from start to finish, I decided that it’d be a good exercise to build one during the remaining 4 days of the first week.
On programming in a new language.
PICO-8 uses a subset of Lua, which I’ve never read or written before. Under other circumstances, I probably would have preemptively given up and shied away from using a tool that required learning a new language. Fortunately, my current circumstances are “you are entirely here to learn new things and surrounded by people who can help, actually” so I waved off the anxiety and plunged ahead instead.
Turns out that Lua felt very similar to other game programming I’d done in the past, so there wasn’t any need to worry anyway! (One begins to suspect that there is rarely a ‘need’ to worry… 🤔)
There were a few things that stood out in particular as I built my game.
First, to handle animations - like bobbing a sprite or moving UI elements on and off screen - I found myself repeating a pattern using a counter (incremented every update loop) and a maximum (resetting the counter to 0 when it reached this value). I wasn’t sure if a series of timers would be a better fit for cycling through animation states, especially since this pattern meant assigning at least two tokens per animation. Since I was focused on building this quickly and wasn’t worried about running up against the token limit, however, I figured that consistently using a single pattern that I knew worked was the way to go.
Example of the section of the bat’s update loop that flaps her wings up and down and plays a quick beat on each flap:
Second, I learned that tables are “the only data structuring mechanism” in Lua, and that there is no readily available method to query them about the number of items they’re holding. To solve this, I tracked the count of items as a separate variable and updated the count any time I was adding or removing items from the table. If I were pinched for tokens I’d probably handle this differently, likely by writing a separate function that iterates over the the items in the table and returns the count.
Lastly, and this one was a pleasure to discover, Lua is perfectly a-okay with removing items from a table while iterating over items within that table. For example, during the update loop I want to iterate over each of the moths in the game and check if the bat is in a position to eat them. If the bat should eat the moth, I want to add a quick sound effect, draw some bug-gut splatter to the screen, and remove the moth from the moths table.
I can do all of that like this:
This was a big relief to me because I’ve had trouble doing the same with JavaScript in the past!
On finding relief in constraints and designing a tiny game.
I didn’t have a strong idea when I first started making Sonar, other than that I should be able to finish it in a few days and that it should be about animals. Certainly my appreciation for earth’s non-human lifeforms would stave off any temptation to jump ship if things got confusing or tedious. 🦇
There was a brief moment where I sat, staring at my laptop screen, wondering what I could even do with only two non-directional inputs. It took about five minutes for me to come to my senses. What if this constraint, much like the constraint on tokens or audio channels, was a blessing? “Wow, I’m so glad I only have two buttons to work with,” I told myself, found it to be true. “In fact, let’s start by using only one of those buttons.”
Changing your perspective sure is a time-efficient way to clear obstacles!
On making art and SFX.
While I’d done some game programming (though never a complete solo project), I’d certainly never done game art or audio. In fact, art and audio often felt more intimidating than the rest of the design or development. I didn’t really know anything about creating reasonable looking pixel art or have any kind of background in creating music or sound effects; I just knew that both were important to making a game feel whole.
Once again, PICO-8 provided seamless introduction to these areas of game development. With only 16-colors and 8x8 pixels to worth of space to work with, I never got stuck trying to pick the perfect colors or shape for a sprite. If it worked, it worked, and it only took a matter of seconds to make changes and see them live in the game.
As someone who has zero musical education the responsibility of creating audio made me more than a little apprehensive, but I found the SFX editor similarly quick to learn and pleasant to use. I stopped short of making any ambient music, but I did make a few sounds: a steady but muffled bassline for the bat’s wings flapping, a high-pitched chirp for the echolocation, a gulp for a bug being swallowed, and a confirmation bloop for starting the game. SFX are necessary for giving a non-haptic game the illusion of tactile feedback, and even just these few simple, two-note sounds do a lot of heavy-lifting in making the game feel more responsive.
On jamming fast, alone, in an environment geared towards collaboration.
The single biggest struggle I had while working on this project was worrying if I should be spending my time doing something else. Whenever I spent large chunks of time coding alone, rather than pairing or attending study groups, I couldn’t help but feel like perhaps I was missing the forest for the trees. Shouldn’t the first week be about learning as much as possible about my peers and their interests, in the spirit of future collaboration? Did I somehow find a way to ‘do it wrong?’
Hard to say, what with only one week’s worth of information! My current guess, however, is no. I became familiar with a new language, I learned a new toolset, and I finished a project that I feel at least remotely comfortable showing to other people. Those are pretty solid accomplishments, even in the face of a gnawing suspicion otherwise!
More importantly though, I practiced being comfortable following my own intuition of what an ideal first week might look like. I proved to myself that I could set my own goals and meet them. I also developed a general feel for the ebbs and flows of working with myself as sole author and stakeholder on a project. I’m sure this kind of self-knowledge is valuable at any level, but as a beginner it feels like an especially worthwhile point of reference.
Besides, this was all made possible because I was inspired by a fellow Recurser, asked them for help and got it.
How could that be wrong? 😊
You can play Sonar right here.
ps. I almost forgot something funny!
This is one of the first things that happened when I began animating my pixel bat:
I laughed at this for a solid minute. It was wonderful, and only more so because I had spent the previous two hours setting up new software, familiarizing myself with basic Lua syntax, and fretting over whether my pixel art would be at all legible.
As one of my friends commented, “OH NO, HIS FLAPS FELL OFF!” And then, “or HER flaps, excuse me.”
Making games is generally time-consuming, tedious, detail-oriented work. On the bright side, many of the bugs and SNAFUs you run into are just silly as heck. The moments where ish goes off the rails can provide exactly the right dose of harmless humor to revitalize your motivation to finish. 👑
edit (11/15/2017)
Once again going above and beyond in her helpfulness, Ayla informs me that you totally can get the length of a list in PICO-8!
Here’s how, using the # operator:
local some_list = {32, 4, 72} print(#some_list) -- prints 3
✌️🦇
edit (11/17/2017)
So probably it makes sense to link to the the code, since becoming a better programmer is the whole gosh darn point! 😑
Also, because it may be helpful, I want to provide a quick outline of how you might also crank out a small game in a narrow window of time:
day1 - purchase and install pico8 (if you’re at RC, talk to someone about using their license!) - install a lua linter on your text editor of choice - run pico8 in console mode, so u can use printh to debug - make a player character that responds to input - make a 2-state animation for that player character (eg. flip between two sprites, add some bobbing motion, etc) - get ppl to Play Your Game!
day2 - make an enemy (note that these could also just be Collectable Objects if u aint feeling like defaulting to violence ✨) - make a 2-state animation for that enemy - give that enemy some passive behavior - disappear the enemy conditionally (eg. touched by player, hit by bullet) - make another enemy with similar but more challenging behavior - get ppl to Play Your Game!
day3 - add an end-condition (eg. eating some amount of bugs) - add SFX. this is more important than music for making your game feel whole, and you can do just about everything you need to with 2 note blips - add UI elements (eg. health bar, bullets left, etc) - add a start screen - add an end screen - get ppl to Play Your Game!
day4 - add finishing touches - export your game as html from PICO8 - host somewhere, like itch.io - write a blog post!! - share with your friends and the rest-o the world
2 notes
·
View notes