Now Saving: Repost to Tumblr?

Tumblr followers: I can disable the posting of these WordPress blogs to Tumblr. Do you want me to disable them or continue as usual?

Today I: Worked on a video explaining how I usually go about an average college day. (If you wanted to watch it for whatever reason, it is here. ) My first time using my Plantronics Gamecom headset mic for recording audio, and it’s both a big step up from any mic I’ve used before, and a bit of a worrying shift for me in terms of sensitivity. Heck, the thing even picks up my mouseclicks and breathing fairly well. Weirds me out.

The imagery for the video is slapped-together snapshot photos from when I’m out and about and brief videos when I remembered “Oh right I have a video assignment in like a week, I should record what I’m doing”. I ordered the videos in Pitivi video editor… then realized I didn’t have transition effects that I wanted without installing another package. So then I renamed all the photos and videos based on my outline in Pitivi, and then copied it to my Windows partition, rebooted, and recreated the timeline with Windows Movie Maker. Then I recorded the audio with Audacity stepping through how I usually get through a day with the goal of walking through it in such a fashion to at least roughly match my image outline. I did a little bit of editing to remove some easy background noise and a number of ‘um’s (I still missed plenty, apparently). CaptainHoers gave me some tips on how to knock down volume or clip out microphone bumps so that it’s less jarring, so I tried it a few times.  Put that edited audio with the video and used audiosettings to give ‘music’ full emphasis and none of the in-video audio. Rendered that to mp4 and did a handful of conversions before posting it to to the assignment dropbox and Youtube.

Didn’t get Carb Sick today. But I still had the grits. Maybe this time it was the size of the portion that helped? I made a point of leaving the cafeteria immediately after I finished my first plate.

No drawing was done. No coding was done. Spent a little more time flailing around at the IRC chat than I intended to. Probably gonna go ahead and post Blow Ups over to dA after I finish writing this post. Maybe to fimfic as well. Not sure yet.

Sleepy.

Now Saving: Awesomenauts Patch 2.3

I didn't draw this.
I didn’t draw this.

Awesomenauts Patch 2.3 came out with the new character Penny. So I’ve been playing that for the past three or four hours.

 

Other: Made progress in robotics attempting to create a robot that can solve a maze and replay the solution. turns out we were working on the assumption that memory was persistant after reboot, but after running the debug tool a few times we found that we couldn’t retain the information on the path traveled after turning it off and on, so now we have a pushbutton to kick the robot into replay mode without powering down.

Memory limitations are the roughest bit of the bot though. We seem to be hitting the limit on our array of bytes at about 22 entries. We’re using bytes instead of  of words because we can check distance traveled for a good 5-10 seconds before we hit an overflow, which is much less than the approx 40 seconds we’re getting from a word without cutting the array length to 11. Which is important, since the array length corresponds to the number of turns we can make until the robot ‘gives up’.

Also, I finally managed to complete SimSE with a passing score of 92, and submitted the newest worksheet to the team member who’s handling that. Friday’s work should be split between SSE project Resonance, and G2 proje- oh wait no I take that back. I have a micro-project in Digital Multimedia that needs to get done first.

Oh. And revised my resume. Again. Got a third confirmation that yes, I should in-fact be revising my resume, and the advice  getting is more for the sake of readibility, not to make THE PERFECT OMFG RESUME INSTAJOB. Still not liking the feel or thought of this whole jobhunting thing, but it’s a thing that’s going to happen. I’ll worry about it when I get there.

And I had Wirepony do editing for Blow Ups, which I linked yesterday, and then I wrote an additional few paragraphs near the ending. That’ll be going up on Stable 45 soonish (Tomorrow, maybe?)

 

HEARTBLEED EXPLOIT IS A THING THAT HAPPENED. Check to see if sites you use have been affected, if they have been, check if they’ve updated. If they have updated to a version not affected by the exploit, change your password.

That is. You probably should if you value the account. I realize that’s not always an easy thing to commit to.

Now Saving: Someone Is Going to Rob You

Worked on: Went to Games II class. We discussed pathfinding and compared Breadth First, Best First, Dijkastra, and A* as well as a brief stepthrough the general idea of those algorithms, followed by an interactive pathfinder demo software.

Started writing Stable 45: Blow Ups.

IdeaSomeone is Going to Rob You. Briefly considered kind of a turn-based game in which time ticks by in fractions of seconds and there’s a 45 second time limit in which a character will (probably) attempt to rob the player’s character. The goal is to A: Survive the encounter and optionally B: Get away with all belongings and health intact.

The idea being that the player can create a character to a degree- Pick their proficiency at speech,  self defense, physical fitness, visual perception, sound perception,  depth of social connections. Maybe also have ‘backgrounds’ that affect those stats or give more specific benefits.  (I dunno. Like uh. Took a self defense course. Or having have committed theft/robbery at a previous time themselves. Being a scholar. Having a paid escort. ). This probably would also affect what kind of equipment the player’s character has available, like whether or not they have a cellphone, if they have their money in a wallet, is the money cash or cards, do they have keys, do they have pepper spray,  is all they’re carrying a camera and photo album? Do they even have money?

The robber in the scenario is generated randomly with its own stats and background and skills.

Gameplay would take place in a scenario in which there are multiple people. doing their own thing, and the player has no way of knowing which is the robber unless the robber acts against the player’s character. If the robber acts hostile towards the player, the player is free to respond in several ways, though there would be some dice rolls based on stats to gauge  response time and panic level before offering the player their options. It’d be turn based to allow a bit of back and forth between the player’s character and the robber and actions like trying to pursue via speech would take longer than an action like punching or shouting for help.

With the scenario of multiple people, it’s possible someone else might be robbed, or that the decided ‘robber’ might be detected in advance or simply decide that whatever they wanted isn’t worth the consequences. With the stats, it’s possible that the robber might attempt to threaten the player’s character with a knife only to be promptly disarmed, beaten silly, and have authorities called in for assistance. With the backgrounds it might be possible for a robbery attempt to start, only to end awkwardly when the robber realizes the person they tried to rob was an old childhood friend from school.

Either way, after 45 seconds in-world time passes (which doesn’t correspond to RL time), the player’s involvement in the scenario ends. Maybe since the player is viewing/playing through an electronic device, their ‘connection’ fades away? Or maybe authorities show up?  Maybe the robber panics and attacks self.

Weird idea, but it seemed like it’d work OK for a mobile game or something.

Now Saving: Anticlimax

Worked on putting this short sketch story thingy from earlier onto Stable 45:  http://retl.github.io/stable45/pipbuck.htm

Played: More Brave Frontier. Also, PnP day was today. In which we met Eris and then a bunch of NPCs disappeared.

I once suggested that one would most want to save after completing unpleasant or unfun tasks such that they wouldn’t have to redo them if the worst happened. Though sometimes it would be nice to be able to go back and fix the days that were not-so-nice with the foreknowledge of what happened in them previously. Though then I realized that that might be how I make it to the days I do write about. How would I know? If everything I had done in one pass had ceased to have ever happened, then there’s nothing of it to recall in the present. I couldn’t have sensed it with my body to interpret the signals to have memories of it with any particular body or anything.
They’re just a string of possible events that have not occurred in the realm in which I exist.

 

Is that what dreams are? Recall of existences that once were but no longer are? It would give dreams like the one I last wrote of a different degree of importance, I suppose.

 

A lot of anticipation and disappointments right at the start of the day. Waiting in a line 20 minutes to find out at the end that the guy in the fancy outfit cooking the unusual meal is not serving to students. To expect the bus at 12 and see it at almost 12:10. Still waiting to see what comes of the Super Smash Bros. Nintendo Direct, but my expectations have been knocked down a peg.

Admittedly, though, I woke up feeling immediately like giving up on the day and going back to sleep. Played videogames (Brave Frontier) on my phone for about two hours until that feeling went away. Still been feeling a little drained and meh, but I’ll live. I guess.

 

 

Now Saving: The Seas Have FEAR

phonedin

 

 

I really don’t have enough time or care to do something bunny related more involved than this right now.

Bad Dream:

I mentioned how sometimes my subconscious starts beating myself up for liking certain things in fantasy that are illegal and unrealistic in the real world right? Ended up waking up this morning from a dream where I was pulled into some kind of interrogation or something over something never-specified-in-the-dream that I had done, and then was given a fatal injection after they had concluded guilt. But for some reason it didn’t kill me instantly, and I was flailing and thrashing and fighting in pain over it.

Woke up relatively painlessly from the dream, but a little startled and fearful. Because again, there’s not exactly any real way to know if trying to get help for thoughtcrimes and worrisome metal processes and whatnot isn’t just gonna get flipped around and used as a weapon. Had an hour or two where I realized that while on some level I have accepted that I will die and that I am OK with that fact, I always assumed that my death would be instantaneous or peaceful and painful. And that as much as I always insist that ‘it’s better to try to survive, because with survival comes the potential for change (hopefully for the better)’ it directly contrasts with my mental assumption of a peaceful death and my belief that ‘the dead don’t feel’. (Though while I believe the dead don’t feel, I sometimes question that given some ghost stories I’ve heard.)

My point being. I’ve still got some issues. I’ve still got some guilt for having those issues. And I still don’t think there’s any way I’ll ever be getting rid of the baggage. The hard part is knowing that I’m wrong and that may very well one day end me. Or I could try to get help now and face the immediate risk of being ended.  I think I’ll go with the longterm survival plan thankyou.

My eyes are tired, so I’m gonna go to sleep soon

Copypasta:

Normally I don’t share assignments I’ve completed with the internet so that there can be no claims of academic dishonesty, but I think this time in particular, there’s enough specifics that it would be difficult for anyone to steal this work, and easy for me to prove it is me should it ever be contested:

The following is what one of my weekly reports  for Games Programming II looks like (with some lost formatting):

CPSC 4112 – Game Programming II – Spring 2014 – Weekly Report

Week from 31 Mar. 2014 to 6 Apr. 2014

Name: Carlis Moore

Game Studio: Blue Husky Studios

Game Title: The Seas Have Eyes

What I worked on this past week:  Added an enemy that damages the player when the player looks at it.

What issues were the most salient:

There is no cone primitive in Unity. So when I went to try to make the trigger for detecting if the player needed to be hurt, I couldn’t just have a child cone. I had to create and import a cone to use as a child mesh collider from Blender, and I had to manually reshape and reposition it multiple times to try to match with the projection of the flashlight. It’s still not perfect, but it’s progress.

What I plan to work on this week:  Make the other two enemy types work. Add the weapons and other powerups.

 

Special Topic for this week:

Referring to our discussion on Wednesday, do Exercises 2 and 5 in Chapter 9 of the textbook (pg. 211) and submit your answers.

Exercise 9.2

Pause Ahead <http://askiisoft.com/games/pause-ahead/> seems to take heavily after Super Meat Boy and Eversion. It’s a bit ambiguous, as the 2D platformer is something of a genre that was pushed to popularity due to successful 80s and 90s titles like Donkey Kong, Mario Bros., and Super Mario Bros and there have been several games explore variations within the genre since.

Similar to Super Mario Bros 3, the character navigates their way around lethal obstacles by running and jumping. The player may pause the game at any time. There’s a timer that counts down to zero and will remove a life if the player doesn’t reach an exit in time. There are large angry-looking rock creatures that stay stationary until the player gets close and then slams down.

Unlike Mario, Eversion, or Braid, Pauein cannot defeat enemies by jumping on them. The number of seemingly-living creatures is limited and moving obstacles are placed with such care that it takes a lot of forethought and precision to overcome them. The slightest touch of any obstacle means an instant explosion of Pauein and restart of the level. And just like Super Meat Boy, clearing a level shows a replay where all of the previous lives simultaneously run through the course as the player had before.

Unlike Super Meat Boy, Pauein cannot jump, and they have no damsel to save. The player’s only other ability is to pause the game, which freezes all obstacles in place and locks Pauein into moving with the same velocity they had at the instant the game paused. While paused, Pauien is impervious to damage and the timer will not count down. Using this mechanic is a requirement, as by level 5 there is a level with a jump that is impossible to cross without using the pause to fly the distance. (Failing repeatedly on this stage will point out the mechanic up to 10 times before giving an achievement for ignoring the primary mechanic of the game.)

The above mechanic was present from the start of the game’s design, as can be gleaned from the Molyjam prototype <http://archive.molyjam.com/display.php?GameID=141> where the prompt was ‘”What if the pause button was a weapon? Until developers think outside the box we’re going downhill.”‘ Were that mechanic removed (and the game playable without the mechanic up until the above mentioned fifth level) it would be like a simpler, easier Super Meat Boy with different theme.

 

Exercise 9.5

In Metroid for the NES, player’s relationship to the enemies is not balanced towards fairness, but balanced in favor of the player. Typical enemies are weak and dispatched with very few attacks, while boss monsters tend to have a variety of abilities and powers that the player cannot ever obtain. Regardless of the enemy type, however, almost all of them are designed with such patterns that they can be beaten by a player after their methods are learned. There are many power ups that allow the player to become stronger and stronger until they deal far more damage than any lower tier enemy can deal with, and the player has the ability to regain health from pickups while enemies cannot. Metroid wants the player to win, but they have to spend a lot of time carefully exploring if they want the powerups to excel. While some powerups are mandatory for progression (Like the Screw Attack) it is possible to clear the game without getting them all, as a number of them are for convenience and completion’s sake and are well hidden bonuses.

Metroid feels fair for the most part during play, as the game doesn’t hurt the player in ways they can’t identify what’s damaging them, and the game doesn’t trap the player into scenarios that they cannot win or that the outcome depends more on luck than the player’s ability to respond to a given scenario.

 

Log Entries:

  • 2 April 2014

    • 3 PM – 5:30 PM: Flailing about trying to create at least a placeholder enemy. Did eventually implement a basic form of damage and stuff though.

    • Defects:

      • Had a lot of smaller issues dealing with referencing the correct objects from the collider and dealing the damage at a regular rate. The first were easy to deal with. The latter, I use a cooldown timer to handle.

  • 5 April 2014

    • 1:30 PM – 5:50 PM:

      • Tweaked player movement so that there are three different movement control schemes the player can use. Currently there’s no way to toggle this in-game without using the Unity inspector. Tweaked the enemies and players so that they can check if they see each other via a Raycast.

      • Enemy can now smooth-follow the player once it starts looking at it. Once the player leaves enemy range, it stops tracking the player.

      • Defects:

        • Had a TON of trouble for about a half hour trying to figure out why my raycasts weren’t finding anything. Turns out I was passing a ‘0’ at the end when I should not have, making the object check only for things on a layer that I wasn’t using.

  • 6 April 2014

    • 1:30 PM – 5:50 PM

      • Added the three different enemy types as placeholders. Slabs do not move from their position, but can look at the player. Boogers will chase the player when very close by, and deal the most damage per unit time. Stalks will follow the player for a much wider range and deal the most damage per attack, but have a smaller attack rate.

      • Made the screen flash red when the player is taking damage so that it’s more clear to the player when they’re being hurt. If the player’s HP drops to 0 or less the timescale is set to 0, effectively giving a Game Over state. It’d be nice to also display a Game Over screen and have a high scores list and menu cycle here.

        • Defect: I had a silly amount of trouble with this one. Originally I tried setting values in GUI.color and GUI.backgroundcolor on a GUI.label and eventually GUI.box to cover the screen. But setting those values did not affect the theme that the box or label was using. I looked up information online on how to work around it, and the best solution I found was to create a 1×1 pixel texture, set the pixel color dynamically, set that texture to repeat over the length of a surface, and then use Gui.DrawTexture to put that texture onto the screen. While it arguably takes fewer lines of code than doing the same in HTML5 with Canvas, I do miss having tools to directly draw figures and shapes to the screen filled with a color rather than having to create a texture with said color and then filling with that texture.  I imagine this practice has something to do with the rendering pipeline, but didn’t look much deeper into it.

      • Updated the Readme with the controls, added a button to toggle between the three different movement-styles,  and tried to add code to hurt the player on collision with the enemies…

        • Defect: My collision detection wasn’t working at all. No matter what tweaks I tried, the enemies were not acknowledging that the player had ever entered their collider

          • Possible Solution A: I could have the player check for collision with the enemy and then let the enemy know that the player has collided, and then do damage that way. But that’s something of an OOP violation, as the player class shouldn’t know the enemies are hostile. The enemies know that they are hostile.

          • Possible Solution B: Iterate through all contact points on a collision for ALL that correspond to the player or the player’s child. Messy, slow, and a little bit of a pain to code, but this might be the one that ends up being used.

          • Temporary Workaround Solution: Simply check if the player is within a secondary much-smaller damage radius, and then assume that it is in contact and deal damage. That’s what I did in the last hour of working on the project today, but it’s not very convincing and doesn’t scale well at all with enemy size, but trying it did make me realize a small coding error.

      • The enemies now FLEE the player! Also, I moved a lot of the utility methods I found myself using in multiple games into a separate class, that I’ll now be importing most of my existing Unity projects. I might keep a separate repository just for managing changes to it, too. Not sure on that, yet.

        • Defects:

          • Moving my usual methods into its own library was a little tricky, as I had to re-write almost all of the methods so that instead of assuming they were being called in an object that was a GameObject or owned a gameObject, they were all static methods that would be called and given a ‘performer’ gameObject as a reference with which to do all other behaviors.

          • I wasn’t sure if the enemies were supposed to be stationary or moving. Slabs, for example, were marked as stationary in the HLD, but only deal damage if the player is looking directly at them AND in physical contact with them. Which is odd. because if the player sees a Slab ahead of time, why would they ever touch one? I contacted Leggiero for more info on this one. They told me to look at the HLD again. Then I noticed Stalks and Boogers had a vague description of speed, but no explanation of in what fashion, direction, or quantified speed they moved.

          • Once I got them moving, I found they didn’t move in the way I expected. Yes, they did wait until they got in proper range before attempting to move, but once they moved, they often flew very far away from the player, with or without a rigid body. They’re supposed to be chasing the player, not fleeing it!

Now Saving: Weekend Computer Lab

Drew: Combined stuff I do all the time with stuff I haven’t tried.

littlebunnyandstuff

Learned: Computer lab is open on weekends 8AM-10PM. Must have ID and must go through correct doors to avoid lockout. ID scans on white plastic with red light, not black with blue light.

Worked On: The Seas Have Eyes. 3 hours logged. Three player control modes supported. Placeholder enemy will only damage when facing player (detected via raycast) doesn’t turn to look at player unless player is looking at it (detected by imported cone mesh collider). Need to merge branches to master, add weapons and score. Other two enemy types. Game Over Screen. High Scores Table.

Played: 3 matches of Awesomenauts. Playing on revised league 8/7 has made it clear I’m not that great.

Tried to play more Sprit Stones but corrupt game data necessitated a reinstall, and because I didn’t link with facebook, I lost all of my save data with the reinstall. Tried out some new games instead.

Cut the Rope Full Free – Don’t bother, the ads are incredibly obnoxious. Also, it’s almost all physics-puzzles. Not my kind of game.

Angry Birds Friends: Pretty, cheerful, but ALSO physics puzzles. And thus I don’t enjoy it.

Now Saving: Not Bunny Month

Bunnies and Stuff-1 Bunnies and Stuff-2 Bunnies and Stuff-3 Bunnies and Stuff-4

 

At first I kinda wanted to do a Bunny Month thing where I drew a bunny for each day of the month until at least the 20th. But I’m still not feeling too great on the drawing front, and haven’t yet replaced the power cord for my EP121.

Got a lot of work done on Stable 45’s Burst Party minigame… but completely derped on working on TSHE or on making the art/story assets to fill the site. I might have to really simplify the scope of the game to get it done on time. Tomorrow, I need to remember to record footage of my daily routine for a smaller digital multimedia assignment.

Also, watching Escape from LA. It’s a fun movie, and is convenient for me to follow thanks to familiarity with Metal Gear Solid.

 

Upper-right pic above with the characers with multiviews? I kinda like that bodybuild for my humanoid characters and if I made 3D characters and stuff I’d like them to be styled like that.

Now Saving: I Scanner

Things I don’t want undone if I die tomorrow and have to reload my save game:

A: I have a scanner. It is right next to me and can be used to scan drawings. I will doodle and scan this months. Lotsa doodles. Because month. Except the first. day Because you know why.

B: Programming for robotics and SRNSOFTENG.

C: Bought headset to help with telecommuting in case of voice calls / screen sharing / etc. Should arrive in mail in two days.

Help?

IMG_20140330_161430588 IMG_20140330_161537349

Contrary to what it might seem from how much time I spend using computers, I am not great with the science that makes electric things not-kill-people.

Dropped my EP121 while it was plugged in. This bit of the power adapter bent at a weird angle and now that small open section right where the metal meets the white bit keeps sparking if I plug it in and doesn’t charge well at all. Is this something easy to fix, or do I need to buy a new one?

What this means for people who follow my stuff sorta-kinda:

1) Less art. At least very little of it will be done digitally. I didn’t bring my old Wacom Bamboo with me when I came back to residence halls. Probably won’t be too noticiable because I’ve been on an art downturn in general lately anyway.

2) More time in computer labs and libraries on weekdays. I’ll need access to a computer during my group meets and it’s not worth the trip back to my room just for that.

3) Less time on Skype and Steam at night: I won’t drag my desktop machine to bed to finish the conversation, sorry.

Help?

Oh Hey, You Found My Blog. Congrats.