Drew stuff. Posted both to dA Scraps. Might color one or two later, maybe.
[7:45:58 PM] Retl: Eh, I’m OK. In pain from a Stye + headache pains. I was convinced to try a Tylenol. I don’t believe it’s effective on me for some reason or another, though. Kinda spent some time moping about and occasionally looking at smut trying to pick my spirits up. Eventually just started playing the same games I usually do less out of a desire to play them and more for something to do without getting stressed out.
[7:46:30 PM] Retl: My bro went and bought some more meat to cook though, so I’m pleased about that. That’ll be nice tasting food with no questions about expiry for at least tonight and tomorrow morning.
[7:47:20 PM] Retl: I keep feeling like my return did more harm than good for the family, despite all the praise for getting the degree.
[7:48:24 PM] Retl: On the good side of things, I shared those griffon pics with the writer who created that character. He was amused and pleased that I was invested enough to draw her. The same guy also went and looked at the few stories I wrote and left positive comments in response. So that’s nice
[7:50:14 PM] Retl: And I’ve kinda had LUA Click for me enough that I can do a lot of the things I want with it now. Though I’m just running into walls all over the place trying to actually make games. The ones that I would enjoy the most are overblown in scope. I try dumbing it down but tend to lose interest. Tried thinking if there were other activities in my life that I enjoy doing. The answers to that question don’t really turn into ideas for interactive experiences, though. Just blog material more than anyway.
Drew this thing at some point.
Worked on namegen. SPECIAL is now randomly generated. Characters that are given level-ups will spend 10 skill points with every in-game tick when they have 10 to spend. I should probably make it so that they can eat. Which would require settlements having food. Thinking about working on regions soon, which would represent the general areas that the settlements are being made in. Also changed the skills listing back so that they use the same skillset as FoE PnP Revised Rules.
Considered adding ‘scenarios’ which present a series of challenges and let the player try to build up characters to solve them. Like needing a minimum amount of mechanics to start building a new home. Or trying to draft allies for an upcoming battle, and can let characters with high Speech or Barter deal with it, then other characters good with melee/firearms/unarmed/mew try to train them up in preparation.
- Mother asked me some questions about an uncomfortable topic.
- I am now responsible for scheduling the appropriate payment of my mother’s aides.
- Heard mixed sections of Murky No. 7. Some sections of ch 1, 3, 15, 14, 24. Not my kind of fic.
- Mother has an appointment tomorrow. I might be accompanying her.
- Thought about writing a fic. Decided against it.
- I am sleepy now.
- Blew 3 hours on whatever that is above. Don’t like it.
- Got graduation photo proofs in the mail. They sent me the photos from the person in front of me (coincidentally, a guy I partnered with on a project last semester). Called and got that fixed. Mother wants the photos. Dunno how much she plans to spend.
- Paid helper lady people cleaned up mother’s old room. It looks great, now. I took out two very large, very heavy bags of ???trash???.
- Planning to get OTG cable and use my MotoG as a mini laptop for blogging at least. If it works out. Already have a Logitech wireless USB keyboard that should do the job. And a cardboard cutout to hold the phone at a viewable angle. Because it’s more powerful than my Aspire One netbook and has a longer-lasting battery.
- I still have no idea what to do with this package of astroglide I was gifted.
- Made a Reuben sandwich again. It was pretty good I guess.
- I’m gonna go play Awesomenauts now and maybe try coding a thing tomorrow.
Alright, so I kinda fell behind on writing this thing. This is that post that I owed! Which is kinda being written more because I feel that I should than out of a need to record tasks which have been completed recently.
Something something something PIX
- On Friday, I:
- Met up with Ben. Recorded video and audio for The Seas Have Eyes postmortem presentation. Did something akin to pair-programming with another unrelated project. We didn’t switch roles though. I was observer and helped troubleshoot some errors with GetComponent<>() and using doubles where floats were needed. That made up a large portion of the day. Also, we talked about MLPFiM.
- Washed clothes.
- Played a bunch of Brave Frontier in the downtime.
- Drew a bunch of Sandy from Fallout Equestria: Better Days. (Those sketches above.)
- On Saturday, I:
- Tried to work on the LLD for Resonance. Ate incorrectly for breakfast. Spent most of that time lazy and lethargic.
- Played a bunch of Awesomenauts.
- On Sunday, I:
- Tried to auto-generate a documentation for Resonance using Sandcastle. Took me a few hours to figure out I needed to run it on existing XML documentation, then a about another half hour to figure out MonoDevelop can also generate such documention and that I had to enable it via checkbox in the project (not solution) settings menu. Then to build it. Then took another hour to realize I had to explicitly tell Sandbox to include the global namespace in the generated docs. And once I figured all of that out, I got a very thoroughly outlined website with lotsa cool pre-made themes for the website and everything! …Which I couldn’t turn in, as the assignemnt wants a standlone doc file, not a full website.
- Wrote up the LLD portion for the status indicators. (Just in case anyone is wondering, the High Level Design and Low Level Design documents are supposed to be written BEFORE coding, not after. So this was backwards and a pain and felt largely redundant.)
- Played a freaking ton of Awesomenauts and Brave Frontier
- On Monday, I:
- Got hype for tacos! Unfortunately, they were fish tacos. On the other hand, they were serving fairly-tasty nachos and really-tasty taco-pizza. But I didn’t want to hurt myself on the pizza part of the taco-pizza, so I didn’t get too much of that. Also, BALLOONS!
- Asked a friend a bunch of silly questions on Tumblr.
- Spent about 4 hours pouding out about a third of the LLD for Resonance.
- Picked up my Cap, Gown, and Tassel. Hung it up for the folds to fall out. It looks cool.
- Watched God Burns Down Equestria for Insurance Money. It was weird, but mostly-OK Youtube Poop. Above Average, but not quite there in terms of being a remix-content new story.
- On Tuesday, I:
- Spent about 6 hours pounding out the remaining third for the LLD for Resonance.
- Played a lot of Brave Frontier. Finally figured out that the best time to attain Idol unit is to grind them in the vortex in that map that’s only available on Tuesdays. Also figured out that grinding the same map over and over doesn’t work too well in BF because of the ‘Energy’ mechanic. Successfully evolved Shock Bow Loch to Thor Bow Loch. Got a bunch of idols of different types stored up in prep for evolving my other units.
- Today, I:
- Looked at pictures on the internet. It was fun.
- Had a rant and ramble about why demanding people on the internet to not do something becomes a challenge, whereas sometimes things left well alone might seem offensive but were done out of affection. Yes, fiction authors. When I draw those pics of your characters, it’s because I like those characters. Not because I want to ruin them. And while I know you might say “don’t do that” to me specifically, it doesn’t mean that I won’t. It means that instead of posting it to my usual galleries, I try to keep it to smaller circles of friends… Or sometimes it means I completely lose interest in the thing I was fawning over in the first place and stop following it, but that’s not too common.
- I’d kinda like to commission some work from b0rn-t0-die and see their interpretation of Sandy. Probably on an inexplicable balloon-bursting spree. I’m afraid I’ll end up being unable to afford them, though, but the only way to find out is for me to write up some specs and ask. I’ve got time today, so maybe I’ll do that.
- Comfirmed plans with family to move out on Sunday and turn in key just before the graduation ceremony and whatnot
- I plan to resume work on Super Bunny Bounce to see if I can get the core mechanics working with some placeholder objects. I’ll probably remake it using Unity 3D’s new 2D tools instead of trying to make these objects just kinda work otherwise. I’m also thinking I’ll use Ribbons Bunny as the feature character. If I do that, I’ll probably change her color scheme to use Carrot-Orange, Glitter Gold, and Taffy Teal instead of Grass Green, Bark Brown and Lemon Yellow. The contrast should make her easier to follow and less likely to be lost in any particular background. (And I kinda favor warm colors when given an option.) You can kinda get a vague idea of that kind of contrast with this image, but it’s not exactly what I meant either. I’ll probably also get rid of her pants (or make it optional) simply because I think it’s sillier and more entertaining that way. Kinda like how Donald rarely wears lower-body clothes, or how Sonic characters are typically nude except for shoes… Though come to think, the latter case draws attention to the fact that they run a lot. Ribbons will hop, bounce, and rebound a lot. What clothes are good for that? (The jist of what I’m thinking of for the game is to toy around with the idea of the ‘homing attack self-projectile’. Also, since Ribbons has ribbons, she may grab things with those ribbons and pull herself to them. I’m not sure yet.) I’d also like to add joystick support for that, in addition to touch.
- I’d like to write a fic or so about Pokey Pierce / Pinprick. I’ve got a lot of built up headcanon about the guy, and I’ve seen some pics of Scootaloo and her implied family that are just dumping more fuel on the fire. And it especially helps that there’s so many episodes of FiM in which he or his apparent family seems to show up as well. Would be fun. Would be a long term project though, not a single day. And would probably go freaking slow. If I do it, I’ll do it in first person.
Slept late. Woke up later.
Based on these, I made this.
Also played Brave Frontier, wrote about digital ponies and holoponies for about two and half hours, and started trying to make a 3D model of a catlady but then got all frustrated.
Tomorrow: Documentation for Resonance must be completed. Day after: PnP day. Day after: Continue trying to get job. Two days after that: Major Field Test. Three days after that: Meet the dean pre-graduation. Week later: Graduate.
I lived. Meetup with Travelport was cool. Got pizza, a travel bag, a cup, and a lot of info for potential job infos. Other meetup was a dead end: the guy I went to meet was not present. Might have to reschedule. Or. Something.
I really don’t have enough time or care to do something bunny related more involved than this right now.
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
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.
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.
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.
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.
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.
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.
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!
Drew: Combined stuff I do all the time with stuff I haven’t tried.
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.
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.