<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.9.0">Jekyll</generator><link href="/feed.xml" rel="self" type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" /><updated>2021-12-16T05:03:25+00:00</updated><id>/feed.xml</id><title type="html">Dan Russell</title><subtitle>I'm a game developer living in the Vancouver area. I'm interested in programming, design, hiking, bird-watching, surfing, camping, cats, music, cooking, and sometimes writing about these things on this blog.</subtitle><entry><title type="html">7DFPS End</title><link href="/2021/12/13/7DFPS-end.html" rel="alternate" type="text/html" title="7DFPS End" /><published>2021-12-13T00:00:00+00:00</published><updated>2021-12-13T00:00:00+00:00</updated><id>/2021/12/13/7DFPS-end</id><content type="html" xml:base="/2021/12/13/7DFPS-end.html">&lt;p&gt;I started to run out of steam at the end of the week, but I got my submission in.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://funintentions.itch.io/redreamer&quot;&gt;Redreamer&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With not much time to go, I decided to cut multiplayer. I had run out of time and cutting multiplayer reduced the scope quite a bit. It was a bit sad since a decent amount of time had already gone into the player models, animations, and syncing the gameplay between peers.&lt;/p&gt;

&lt;p&gt;Perhaps in a couple weeks I’ll update it with online co-op and add a couple other fun features that didn’t make it in.&lt;/p&gt;

&lt;p&gt;Thankfully, I was able to keep the egg hatching mechanics. I reworked the incubating mechanic at the last moment to make it work for single player and I think I actually like more this way. Now eggs will spawn around the map as the game progresses. If players incubate them (crouch on them for a couple seconds), they’ll be able to spawn inside them later if they die. This provides more options for players during a game. It also creates some tense moments since players are a sitting ducks while they incubate an egg, making them very vulnerable to the horde of eyeballs.&lt;/p&gt;

&lt;p&gt;What I’d like to change most is the way the barrel blaster works. There’s really no reason not to hold down the fire button for the entire game and that’s not terribly interesting gameplay.&lt;/p&gt;

&lt;p&gt;I also added a fun little FOV zoom that plays right before players respawn. It’s my favourite. 
&lt;img src=&quot;/assets/images/7DFPS-2021-end/into-the-egg.gif&quot; alt=&quot;Into the egg.&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</content><author><name></name></author><summary type="html">I started to run out of steam at the end of the week, but I got my submission in.</summary></entry><entry><title type="html">7DFPS Update</title><link href="/2021/12/08/7DFPS-update.html" rel="alternate" type="text/html" title="7DFPS Update" /><published>2021-12-08T00:00:00+00:00</published><updated>2021-12-08T00:00:00+00:00</updated><id>/2021/12/08/7DFPS-update</id><content type="html" xml:base="/2021/12/08/7DFPS-update.html">&lt;p&gt;A couple days later and it’s starting to resemble an FPS of sorts.&lt;/p&gt;

&lt;p&gt;I spent the weekend getting reacquainted with Blender and also decorating some cookies. I have some GIFs showcasing the new art assets, but the cookies have disappeared.&lt;/p&gt;

&lt;p&gt;On Monday, I focused on the adding the &lt;em&gt;barrel blaster&lt;/em&gt;. It’s currently a &lt;em&gt;pew pew&lt;/em&gt; style weapon, but I’d like to change it so that it fires a laser beam instead of individual projectiles. I’d like it to feel like a firehose that pushes enemies back and I can kind of get that if I increase the firerate, but a laser might be better.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/7DFPS-2021-update/eyeballs.gif&quot; alt=&quot;eyeballs&quot; /&gt;&lt;/p&gt;

&lt;p&gt;I added some enemies to aim at on Tuesday. For the movement of these eyeballs, I’m drawing alot from the swarming enemies in Devil Daggers. I also stubbed in some code so that the player dies if an eyeball touches them and the eyeballs will disappear if they take enough shots.&lt;/p&gt;

&lt;p&gt;Today, I finally got around to some of the egg mechanics. After dying, players will now be put inside an egg. There’s still more egg work to be done. At the moment, players can’t crouch so I’ll need to add that before teamates can incubate the spawn eggs by crouching on top.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/7DFPS-2021-update/hatching.gif&quot; alt=&quot;eggs&quot; /&gt;
&lt;em&gt;Players will see the outside of the egg that they’ll hatch from before it’s incubated.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;There are also some additional sound effects, art assets, and visual effects that haven’t been added yet.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/7DFPS-2021-update/friends.gif&quot; alt=&quot;friends&quot; /&gt;
&lt;em&gt;It’s allllmost ready for some online playtesting.&lt;/em&gt;&lt;/p&gt;</content><author><name></name></author><summary type="html">A couple days later and it’s starting to resemble an FPS of sorts.</summary></entry><entry><title type="html">7DFPS Day One</title><link href="/2021/12/03/7DFPS-day-one.html" rel="alternate" type="text/html" title="7DFPS Day One" /><published>2021-12-03T00:00:00+00:00</published><updated>2021-12-03T00:00:00+00:00</updated><id>/2021/12/03/7DFPS-day-one</id><content type="html" xml:base="/2021/12/03/7DFPS-day-one.html">&lt;p&gt;It begins! I’m really excited to see everything that comes out of this years 7DFPS game jam.&lt;/p&gt;

&lt;p&gt;For the idea I’m going with, I thought it would be amusing to have the players spawn inside of eggs so that they have to shoot their way out. I also wanted it to be a team game so that I can add another egg mechanic. When a player dies, a new egg will appear, but before they can hatch, their teammates have to come and crouch ontop of the egg for a certain amount of time to warm it up.&lt;/p&gt;

&lt;p&gt;Now I just need something to kill players so that they can keep on hatching. I’m really fond of horde modes so I think I’ll make one of those. (Whoa, looks like Quake actually just got a new horde mode today!)&lt;/p&gt;

&lt;p&gt;Since it’s important to walk before you shoot, I spent the first day mostly focused on the player controller. Here’s a look at the progress so far…&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/7DFPS-2021-day-one/player-controller.gif&quot; alt=&quot;Jump jump jump&quot; /&gt;&lt;/p&gt;

&lt;p&gt;I also did a little prep on Thursday to make sure my project is setup nicely so that I can make my levels in the TrenchBroom editor and then build them in Godot using Qodot.&lt;/p&gt;

&lt;p&gt;Next up for this weekend, I plan to spend a bit of time in Blender making models and I’d like to add some shooty mechanics.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/7DFPS-2021-day-one/game-jam-arthur.jpg&quot; alt=&quot;Arthur&quot; /&gt;
&lt;em&gt;Arthur thinks I should instead make a game about snuggling Arthur.&lt;/em&gt;&lt;/p&gt;</content><author><name></name></author><summary type="html">It begins! I’m really excited to see everything that comes out of this years 7DFPS game jam.</summary></entry><entry><title type="html">Iris Keyboard Build</title><link href="/2021/02/25/iris-keyboard-build.html" rel="alternate" type="text/html" title="Iris Keyboard Build" /><published>2021-02-25T00:00:00+00:00</published><updated>2021-02-25T00:00:00+00:00</updated><id>/2021/02/25/iris-keyboard-build</id><content type="html" xml:base="/2021/02/25/iris-keyboard-build.html">&lt;p&gt;&lt;img src=&quot;/assets/images/iris-keyboard-build/keyboard-and-mouse.png&quot; alt=&quot;My Iris Keyboard&quot; /&gt;&lt;/p&gt;

&lt;p&gt;I made my first keyboard. I’m super happy with how it turned out. The number of options for keys, switches, plates, cables, etc was a bit overwhelming, but I think it sounds, feels, and looks great. My previous daily driver at home, also my first mechanical keyboard, was a Vortex Racer 3 with MX Cherry Browns. A keyboard I enjoy a lot, but making a new one sounded like a fun project. My goal was to build a quiet ergonomic keyboard. I also wanted to put to use a soldering kit I had recently got to fix a pair of headphones before it collected too much dust.&lt;/p&gt;

&lt;h4 id=&quot;parts&quot;&gt;Parts&lt;/h4&gt;
&lt;ul&gt;
  &lt;li&gt;Iris Rev 4, FR4 Plates, and TRRS Cable from &lt;a href=&quot;https://keeb.io/&quot;&gt;Keebio&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Rosélios Switches, Krytox 205g0 and Switch Opener from &lt;a href=&quot;https://divinikey.com/&quot;&gt;Divinikey&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;DSA PBT Blank Keyset (otholinear base set + modifier set) from &lt;a href=&quot;https://pimpmykeyboard.com/&quot;&gt;Signature Plastics&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Deskeys Gasket Switch Films from &lt;a href=&quot;https://www.ashkeebs.com/&quot;&gt;Ashkeebs&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Custom Cable from &lt;a href=&quot;https://badgercables.com/&quot;&gt;Badger Cables&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I landed on the Iris keyboard for a couple of reasons. For my new keyboard, I was looking for a 60% or 40% layout. The 75% layout of the Racer 3 mirrored my laptop’s keyboard nicely and that made it easy to switch between the two. That said, the function row was rarely used and I also reach for the escape key a lot while programming and it was a little farther from the home row than I’d like. I’ve also been interested in trying a split keyboard so I can feel like I’m piloting a spaceship while I work. With that in mind, I gravitated towards the Iris and the Corne keyboards. Both are ortholinear split keyboards, the Corne with a 40% layout and the Iris with 60%. I end up going with the Iris mostly because people online suggested it would be the easiest of the two to put together for those without much soldering experience. The Iris keyboard is also named after the goddess of the rainbow so bonus points go to the Iris.&lt;/p&gt;

&lt;p&gt;GIMP helped me get a better sense of what the keyboard would look like with different colored keycaps. I copied an image of the Iris layout from this &lt;a href=&quot;https://jhelvy.shinyapps.io/splitkbcompare/&quot;&gt;site&lt;/a&gt;. I then created a color palette with all the different options Signature Plastics had for their blank DSA PBT keycaps. This let me mockup a bunch of different combinations.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/iris-keyboard-build/color-scheme.png&quot; alt=&quot;Color Scheme&quot; /&gt;
&lt;em&gt;Cosmic greenery vibes with lots of green to compliment the purple on my desk.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;For the keyboards switches, I went with Rosélios, a 67g silent linear switch. The MX Cherry Brown switches on my other keyboard feel good, but I wanted a quieter switch. I have also never tried linear switches, so why not. The MX Cherry Brown actuation force is 55 centinewtons, a degree of measurement I had never thought about before. The conversion from 55 centinewtons to gram-force works out to ~56g. The 67g actuation force of the Rosélios is noticeably more. I’ve mostly gotten used to the extra resistance by now, but it was common for me to only half-press keys at first. I would be curious to try the 62g Sakurio variant, but for my next build, I might try a silent tactile switch.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/iris-keyboard-build/roselios-switches.jpg&quot; alt=&quot;Rosélios&quot; /&gt;
&lt;em&gt;Rosélios switches with Deskeys Gasket films.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;For the full experience and in pursuit of superb sound and feel, I lubed my switches. After looking things up online, I went with Krytox 205g0 lube. For a complete beginner, opening and lubing each switch was a lengthy process and I was glad the Iris is 60% the size of a full keyboard. I was unsure about buying a switch opener, but it saved me so much time. The best alternative would probably be a flat screwdriver. Luckily my order of switches and lube arrived before everything else so I had plenty of time before I could even put the rest of it together.&lt;/p&gt;

&lt;p&gt;Opening up the switches to apply lube often loosened the switch housing. The looser housing sometimes created a wobbly rattle noise that I wasn’t sure how to fix at first. Unfortunately, I only learned about switch films until after I had soldered the right side of my keyboard. Inserting switch films between the upper and lower housing fixed the wobbly rattling completely.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/iris-keyboard-build/deskeys-gasket-switch-film.jpg&quot; alt=&quot;Rosélios Opened&quot; /&gt;
&lt;em&gt;0.3mm film to the rescue. They eliminated all wobble &amp;lt;3&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;My attempt to desolder the right side so I could add films to those switches did not go well. A combination of my soldering inexperience and my super cheap solder sucker is probably to blame. For now, the left half of the keyboard has films and the right side doesn’t. I plan to revisit the right side someday, but I’m too afraid I’ll damage the PCB in the process after my first attempt.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/iris-keyboard-build/soldered-keyboard.jpg&quot; alt=&quot;Soldered&quot; /&gt;
&lt;em&gt;Switches all soldered on.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I followed the handy keebio &lt;a href=&quot;https://docs.keeb.io/docs/iris-rev3-build-guide/&quot;&gt;build guide&lt;/a&gt; while assembling the keyboard and I didn’t encounter any problems. I think the ease of soldering on the switches gave me a false sense of confidence that it would be just as easy to de-solder any switches. The &lt;a href=&quot;https://caniusevia.com/&quot;&gt;VIA&lt;/a&gt; key tester was useful for confirming that all the keys worked and that my attempt to de-solder didn’t do any serious damage.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/iris-keyboard-build/switches-ready-for-keycaps.jpg&quot; alt=&quot;Switches&quot; /&gt;
&lt;em&gt;Ready for some keycaps.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;VIA also made remapping keys so easy. I haven’t made too many changes yet, but I did switch the space bar from the right side to the left so that I can remove the entire right side when I play games to give myself more mouse space and still have a jump button.&lt;/p&gt;

&lt;p&gt;I’ve been using my Iris keyboard every day for a couple of months and it would be hard to go back. Not just because it’s a lot of fun to type on, but I’m now wicked clumsy when I use a keyboard with a staggered layout and no layers or thumb row. I’m working from home full-time at the moment, but I look forward to making another for the office when the time comes to return.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/iris-keyboard-build/left-half.jpg&quot; alt=&quot;Left Half&quot; /&gt;
&lt;em&gt;Pretty stoked to press these keys :)&lt;/em&gt;&lt;/p&gt;</content><author><name></name></author><summary type="html"></summary></entry><entry><title type="html">New Year, New Website</title><link href="/2020/12/31/new-year-new-website.html" rel="alternate" type="text/html" title="New Year, New Website" /><published>2020-12-31T00:00:00+00:00</published><updated>2020-12-31T00:00:00+00:00</updated><id>/2020/12/31/new-year-new-website</id><content type="html" xml:base="/2020/12/31/new-year-new-website.html">&lt;p&gt;Happy 2021!&lt;/p&gt;

&lt;p&gt;When I first created my site, I was about to graduate and I wanted a place to showcase my portfolio. The updates stopped when I got my first job in the industry. After that, the site became a sort of time capsule.&lt;/p&gt;

&lt;p&gt;My new site will be more blog and less portfolio, a space for half-baked thoughts and project updates.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/new-year-new-website/website.png&quot; alt=&quot;website&quot; /&gt;
&lt;em&gt;My website circa 2016&lt;/em&gt;&lt;/p&gt;</content><author><name></name></author><summary type="html">Happy 2021!</summary></entry></feed>