tag:blogger.com,1999:blog-43738543498358742872024-03-12T17:14:53.040-07:00ComplexToyOn the topic Of Video Games; design, storytelling, half-coherent waffleings and more.Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.comBlogger62125tag:blogger.com,1999:blog-4373854349835874287.post-47583953251306425142021-12-19T10:54:00.001-08:002021-12-19T10:54:40.245-08:00Wooden dummy 3The milkhouse at the barn is my cramped workspace. I'm unsure how the weight is going to suspend from the center support. If this support is insufficient I'll either make a box support the dummy fits similar to this base or make cross supports similar to more traditional models. <div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbzh72RR-afE0LfPnqL3xpAyQ0rTWIRFRQMYKYDGDGtzfHaOoDEhFQJqI2gkYDK09cWqJo4WKjdN_SLZ9is0lEWdmVuASzxeWsMPAaSLUTVAEA0qL-Gl6DKswm-vIcSdn-m65ROSIapmHI/s1600/1639940076335727-0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbzh72RR-afE0LfPnqL3xpAyQ0rTWIRFRQMYKYDGDGtzfHaOoDEhFQJqI2gkYDK09cWqJo4WKjdN_SLZ9is0lEWdmVuASzxeWsMPAaSLUTVAEA0qL-Gl6DKswm-vIcSdn-m65ROSIapmHI/s1600/1639940076335727-0.png" width="400">
</a>
</div><div><br></div><div><br></div><div>The body and arms are their own tweaking challenge, the arms I'm repressing and modifying from my first dummy, the length of the arm base(as it fits in the body) has to stick out the other side of the wooden body by about 1/4 the length that fits in the body for the set pins to hold the arms in. When I was just practicing blocks on the arms the action was fine, if a bit loose from my inexperience, but lapsau or other trapping/ deflection/misdirection moves would shift the arms from their place. </div><div><br><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUe_dsZEFhT6HT6pKFlnc9s_1pbjGZpCU1E19voii_JJwiDCzXTUXaGZ3Bl2ciGJquVsL6RQHy6vwLuY-daUh_GVH174AtDdqOgZKnSWvUD3h9ZxIVgseeAMMNqleMVK9z25RlJbEoVcK7/s1600/1639940073077810-1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUe_dsZEFhT6HT6pKFlnc9s_1pbjGZpCU1E19voii_JJwiDCzXTUXaGZ3Bl2ciGJquVsL6RQHy6vwLuY-daUh_GVH174AtDdqOgZKnSWvUD3h9ZxIVgseeAMMNqleMVK9z25RlJbEoVcK7/s1600/1639940073077810-1.png" width="400">
</a>
</div></div><div><br></div><div>The action on the top arm moves in about a 1in or so extra inward because on the opposite inside corner I took about 1/4 inch more then I wanted it; but including the pins in the back should sure up some of the action.</div><div><br></div><div><br></div>Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-7220901716740886382021-12-10T22:30:00.001-08:002021-12-10T22:30:26.262-08:00Embossing/book/HDPE pressWith a little imagination you can imagine this as a large press. <div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiY3RWPs977o-Abn5dcdp8uE5IGqGwXQ0TrHW_OBN7QceGoHr24Jk1TFFw_ad-WS9mt3IUsKoDUP4EDD4z-R1Jm8lfvI8QxW0ZJfx41GHVXcNuyAFiDcpTr3UzQq7JkepnCKSYpt2sfuFHP/s1600/1639204222723978-0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiY3RWPs977o-Abn5dcdp8uE5IGqGwXQ0TrHW_OBN7QceGoHr24Jk1TFFw_ad-WS9mt3IUsKoDUP4EDD4z-R1Jm8lfvI8QxW0ZJfx41GHVXcNuyAFiDcpTr3UzQq7JkepnCKSYpt2sfuFHP/s1600/1639204222723978-0.png" width="400">
</a>
</div><div><br></div><div>The 2ton press will be switched out for a proper bottle jack. Similar to the Maker Brothers modification I've added extra length so I can fit various projects or future modifications.<br><div><br></div><div><br></div></div>Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-44297036181241470572021-12-08T21:26:00.001-08:002021-12-09T10:04:20.952-08:00wing chun dummy 2<div><br></div><div><br></div><div>To continue my Kung fu training I'm building a second training dummy for the school, one much lighter than the first. In the back of this photo you can see the body of the dummy. The frame you can see lying on it's back, the bottom support will have triangular braces to the suspension post. </div><div>The body of the dummy will have small tire act as a housing on the base and chain to suspend from the post that will mount to the base. Tentative design is to make a three or four part collapsible construct. </div><div><span style="letter-spacing: 0.2px;"><br></span></div><div><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDQH2TopUghe2UfP-fuGTKw6waVH_2vHFBgR5P4n4Yo-O_mzFnImkuZeNys5ZgOM_qb_qKD9qvNdTwdveQl5KhMNbjJP3P9k4YwhGT0sJgPjAcKMX8uirs9bY1bk02CJv_qzVF4sWjIDmM/s1600/1639027590849063-0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDQH2TopUghe2UfP-fuGTKw6waVH_2vHFBgR5P4n4Yo-O_mzFnImkuZeNys5ZgOM_qb_qKD9qvNdTwdveQl5KhMNbjJP3P9k4YwhGT0sJgPjAcKMX8uirs9bY1bk02CJv_qzVF4sWjIDmM/s1600/1639027590849063-0.png" width="400">
</a>
</div></div><div><br></div><div>The body will have 2 tire halfs on the opposite side of the dummy to both provide spring to the body when using the first wooden arm side; and when inverted provide a rubber spring striking surface. Other projects take priority as I'm on a time crunch to get more tooling made up to prep the barn and forge for winter. Keeping small projects updated here for posterity and to keep my phone memory.</div><div><br></div><div>Speaking of:</div><div>The first post I made on the construction of my first dummy was deleted, idk when, those photos are gone I'll rewrite some of that when I can if it becomes relevant. Otherwise I'll just take some more photos later</div>Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-71119163160698938882021-12-08T20:33:00.000-08:002021-12-08T20:33:28.777-08:00knifemaking toolingThe knifesmithing project has reached the point of needing new tools. Earlier I've recorded the progress with upgrading the forge, I have weldable heat now and am one step closer to that holy grail of making Damascus.<div><br></div><div>The next important upgrade is power, hammering and forming power that is; I'm one person with limited calories to burn per hour, as much as I can hammer a shape into the other shape I want, the more the steel the harder that is and the more fuel it burns. So my design goals are to build a hammer and press with a non-existant budget. So far I have most of what I need for this upcycled design.</div><div><br></div><div>There are some tricky design issues I'm excited to tackle. For resource and reference I'm using; '507 Mechanical Movements Mechanisms and Devices' by Henry T. Brown.</div><div><br></div><div>In no specific order these are some of the Mechanisms I hope to include in a drop hammer. The main goal of this project is to make a wooden frame vertical reciprocating drop, to have a treadle powered flywheel powering the lift and drop. </div><div><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkYeLPzkLV8uUjz-L8k9xcvY7cUO1oaD4kF1tN2w0zGOIQQ0jbndqvjcceE-yUwGYwjw5V-RqPwxiSfjeBKuI5R52nLXBfHcmRsS1xC0Jz_w-RvWmzRvUWxmRizWJUokfgb7r9GHI-bay6/s1600/1639024405536063-0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkYeLPzkLV8uUjz-L8k9xcvY7cUO1oaD4kF1tN2w0zGOIQQ0jbndqvjcceE-yUwGYwjw5V-RqPwxiSfjeBKuI5R52nLXBfHcmRsS1xC0Jz_w-RvWmzRvUWxmRizWJUokfgb7r9GHI-bay6/s1600/1639024405536063-0.png" width="400">
</a>
</div></div><div>Fig 154 is a drop hammer off a drum</div><div><br></div><div><br><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUOAfJsgDxdQmtUx2EgaiLs1Q-2nscnuo-wV-qeoCjKBDpyFyxuSVRyYpwkrjWW7YzTStWH_tyrdDtpI-K2JFZEHqpBPJ6NH3BfMUQY4R6P9ZgKalS61TU8NcFM27TMjT2RpPtZvEF6ufG/s1600/1639024402459676-1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUOAfJsgDxdQmtUx2EgaiLs1Q-2nscnuo-wV-qeoCjKBDpyFyxuSVRyYpwkrjWW7YzTStWH_tyrdDtpI-K2JFZEHqpBPJ6NH3BfMUQY4R6P9ZgKalS61TU8NcFM27TMjT2RpPtZvEF6ufG/s1600/1639024402459676-1.png" width="400">
</a>
</div></div><div>Here is another iteration on the simple drop hammer, closer to our design<br><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilx4HAO6tAv2lbOkw65-ViX_xU8f2n_3-_ZchruiMAzVoLwa-l-ggG0zZE5OX7p501cuShyphenhyphenBsIZIpHwP6MKkCtCNcD5W2yLFfcsu61T8FPO8iR9WtQ8iIoxDVfCchOjO7VvdTAprp5wpQM/s1600/1639024399676798-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilx4HAO6tAv2lbOkw65-ViX_xU8f2n_3-_ZchruiMAzVoLwa-l-ggG0zZE5OX7p501cuShyphenhyphenBsIZIpHwP6MKkCtCNcD5W2yLFfcsu61T8FPO8iR9WtQ8iIoxDVfCchOjO7VvdTAprp5wpQM/s1600/1639024399676798-2.png" width="400">
</a>
</div></div><div>Fig 353 is a variation on the Da Vinci cam hammer<br><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4xqPum1EStcAv2QnLvBATunQAq0AbXd_ErLJVxB-90z8EqqR3sCfolqi5gV6EZElEirL18kKCKhQX09UXbh0njmfB48EAeaUGZcqZP7VJ5YqrfrvY896cIprIHwPqqCZjOSmDprhuD-p7/s1600/1639024396932254-3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4xqPum1EStcAv2QnLvBATunQAq0AbXd_ErLJVxB-90z8EqqR3sCfolqi5gV6EZElEirL18kKCKhQX09UXbh0njmfB48EAeaUGZcqZP7VJ5YqrfrvY896cIprIHwPqqCZjOSmDprhuD-p7/s1600/1639024396932254-3.png" width="400">
</a>
</div></div><div>Figure 420 is a hammer swing stop, <br><br><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNu-DRQUphdB6WZ9Ot8bBT-2D5pkPFKPXWEzAYmSYvguOpz_qaDJ7_ZJmPT2TacM-kzKneXpc1jf4HgKKJlKzuSUi9R6GbE1pWZYCQHPno_UAMu-uIrW8tiYxce37HeEZyL_ntyj_2rF74/s1600/1639024394065924-4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNu-DRQUphdB6WZ9Ot8bBT-2D5pkPFKPXWEzAYmSYvguOpz_qaDJ7_ZJmPT2TacM-kzKneXpc1jf4HgKKJlKzuSUi9R6GbE1pWZYCQHPno_UAMu-uIrW8tiYxce37HeEZyL_ntyj_2rF74/s1600/1639024394065924-4.png" width="400">
</a>
</div></div><div>Fig 416 is a continual motion treadle assistant, the spring helps the right angle turning assisting the momentum of the treadle moving the drum.</div><div><br></div><div><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgizqRIHRK5RA88XRt5YSSMdVCaguM8L-NmS4oWWThGhr1VPfc6eVW0gPwOU7V8qwoNc9t-4LDqoXV5QeyhZt6RnutuwPZP-fYQ_YAbuLgkiQybkYWJq3GicNvyIQUVrBUkmYsdjB1AMkdF/s1600/1638912895711870-5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgizqRIHRK5RA88XRt5YSSMdVCaguM8L-NmS4oWWThGhr1VPfc6eVW0gPwOU7V8qwoNc9t-4LDqoXV5QeyhZt6RnutuwPZP-fYQ_YAbuLgkiQybkYWJq3GicNvyIQUVrBUkmYsdjB1AMkdF/s1600/1638912895711870-5.png" width="400">
</a>
</div></div><div>Figure 261 is a play on a weight drop pully system where the upstroke is slower than the downstroke<br><br><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKhpIMvvTrQBFyFzSxAT7VlBo_RQrp6fZ9KsNM9qV3nS_lQLdr4cqtPAbdq9uRcKWFviqlRrzDfQn2983JtWyxcKKPGsMTALpHWjX4npAY4WboVeMzUWVkQg3Y17TCEbWnRbZbsrT3T9_q/s1600/1638911253982919-6.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKhpIMvvTrQBFyFzSxAT7VlBo_RQrp6fZ9KsNM9qV3nS_lQLdr4cqtPAbdq9uRcKWFviqlRrzDfQn2983JtWyxcKKPGsMTALpHWjX4npAY4WboVeMzUWVkQg3Y17TCEbWnRbZbsrT3T9_q/s1600/1638911253982919-6.png" width="400">
</a>
</div><br><br></div>Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-61910571544226603052020-12-27T12:44:00.002-08:002020-12-27T12:46:31.364-08:00Jumping and platformsAs mentioned in previous post; instead of inserting a z axis and platforms into a randomizing machine, I'm re-evaluating the approach and making each of the puzzel pieces I want the machine to fit together first. I don't need the randomizer throwing together indipendent pieces if I don't know if or where or how they work together.<div><br></div>
<div class="separator" style="clear: both; text-align: center;"><iframe class="BLOG_video_class" allowfullscreen="" youtube-src-id="xBPko2zQxf8" width="320" height="266" src="https://www.youtube.com/embed/xBPko2zQxf8"></iframe></div>Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-30254249090433217912020-12-09T12:54:00.001-08:002020-12-27T12:43:30.303-08:00Maps and StacksSooo. Long time before I've gotten around to updating. This pandemic has had me attempting to focus more on removing obsticles then completing projects.
I'm much farther in understanding how to make a Z access and a global camera that might give me the LOCK ON toggle feature, or panning the camera around the corners, or include an active dynamic camera for mounted combat.<div><br></div><div>The main issue I've had is structuring the underlying framework of the level to produce all the elements I want to include in the game within the level randomizer. And the proper links between each element so I might be able to add and remove things from a data map into the level and have those dynamics tied to player progress. With that I can have my doors between random levels and the random or otherwise sequence between each level spawned to create the labyrinth between game location. I'll have a very basic map but that will structure the rest of these features I want to plug in.</div><div><br></div><div>I have two builds I am refining to try to get this rotation and stacking feature working just right. One is starting from a working randomized build with improper rotation. The second has beautiful rotation and needs the randomizer.</div><div><br></div><div>My initial goal was to figure a NorthSouthEastWest door spawn feature to test a basic loop between Spawn Room to the opposite side of a newly spawned room and South Door to the Home Room, with this I'll have the basic fuctions of the map. Then if I can make it add a second room between the Home Room and South Door after entering the North Door, and do the same with the East and West, I'll have something close to the map I want before I start playing with AI. But then I got this sprite stacking working and the movement and envorment I want to fit inside the randomized duengons that make up the game map needs multiple Z axis levels and would require a z axis . I'm just lucky the code that I needed to have a dynamic camera like I wanted around the player also helped adding the platforming effect and depth I was scratching my head about jamming into what working code I have. It reminded me how easy it is to put the cart before the horse when thinking ahead while working. So as much as the doors and randomizer make up a big aspect of the framework that will make this game a "game" with progression, and that is a fundimentially more important key in a finished product, the first step I ought focus on is all those blocks functioning within the camera physics and game collision physics before I stitch them into a randomizer. </div><div><br></div><div><br></div><div>tldr;</div><div>I have a puzzel maker that I wanna put interactive stickers on but soon as I got my eyes working and the puzzel spinning and I realized that also lets my game piece jump it'd be better if I make a puzzel piece variety pack with stickers that works with my eyes and my game piece, and the puzzel spinning; before I build the puzzel making machine. Beeefore I make the puzzel quilt. Fingers crossed. </div>Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-79716841383626348382020-03-04T12:50:00.000-08:002020-03-04T14:33:20.878-08:00Rouge Type devlog 3.0 map is mazing but arrows arn't blazing<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
Wanted to give a quick update, learned alot following the farming tutorial, enough to get the first room started and mess with playtesting.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/Hds06We0_g0/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/Hds06We0_g0?feature=player_embedded" width="320"></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
(great tutorial series, rather advanced for my level but still really easy to follow)</div>
<br />
<br />
So, essentially I have followed this two part tutorial series, and a working randomized room. What I need to figure out now is how to make the randomize controller place enemies and other objects about the room, like exits and chests.<br />
<br />
I'm not totally clear how I can plug in more random spawns in the room rn, so before I have a working project get stuck between another rock and a hard place I'm going to work on the bow and arrow mechanics. If I get the particle drop on the arrows and then the inventory segments of the bow mechanics done I'll either explore the tile system again and see if I can get more items to load, if not I'll look at messing with the arrow physics. I still hope to have at least a rebound effect in the first open build, also being able to recover arrows would be very cool as well. </div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-50481961413521903642020-01-14T10:31:00.004-08:002020-01-15T05:25:00.275-08:00Rouge Type dev log Entry 2.5 Bow problems<div dir="ltr" style="text-align: left;" trbidi="on">
Not a full update, just decided to organize my tutorial references for easier access. Plus having them here means someone besides me might find the resources they need.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/GUEVPYlv474/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/GUEVPYlv474?feature=player_embedded" width="320"></iframe></div>
<br />
Making a bow and arrow in an top down view posed a large challenge then just skewing the ratio and visual illusion, mostly because I haven't seen a tutorial that is tooled to incorporate all three; top down perspective, bow with charging shots, and a projectile motion. But I can throw them in a blender and see what happens; so what I'll want to do is figure my features and what I want the end product to happen and do the simplest version. Here is what I'm thinking.<br />
<br />
1. <b>Inventory compatible</b>, ought be able to switch too your bow from unequipped and switch through arrow types easily. Easy version is just an inventory, bow equipped (y/n) and are there arrows(y/n)?<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/LwBC6kyTa0M/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/LwBC6kyTa0M?feature=player_embedded" width="320"></iframe></div>
<br />
<br />
2. <b>Aim to mouse point</b>, the arrow ought be able to be shot in full 360 degree range; that's above, below, and at the level of the player character, this means a toggled 3 layer ray casting system that works together. Easy version is just a ray coming out from the player character and if there is a target in range maybe the player "locks-on" or something.<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/OY0V7AwPfrU/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/OY0V7AwPfrU?feature=player_embedded" width="320"></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/Upb7_90T3sQ/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/Upb7_90T3sQ?feature=player_embedded" width="320"></iframe></div>
<br />
<br />
3. <b>Charged projectile,</b> player should be able to "charge up" their shots, and arrows should go farther with less projectile drop or ricochet dependent on how charged the shot was. <br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/yx7pgux5hYs/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/yx7pgux5hYs?feature=player_embedded" width="320"></iframe></div>
<br />
See how these squares move about on a 2d world... and their arrows also look very 2d and make the world feel flat. I don't want that, I don't think I have to do it like that.<br />
<br />
4. <b>Projectile DROP</b><br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/rYVoHg-TWPw/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/rYVoHg-TWPw?feature=player_embedded" width="320"></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
I've tested nothing with arrow drop yet, but here's a different one in case I don't like that other one. <iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/aagmz6lz1pg/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/aagmz6lz1pg?feature=player_embedded" width="320"></iframe></div>
<br />
<br />
Okay, now I have that out of my system, back to the grind.<br />
<br /></div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-28138124025037503602019-12-14T12:33:00.001-08:002020-01-14T08:46:46.773-08:00Rouge Type dev log Entry 2.4<div dir="ltr" style="text-align: left;" trbidi="on">
<b>REFINING DESIGN</b><br />
<br />
Interestingly enough, I've been working with horses for the past few months and been refining the control design. The actual coding is much less impressive.<br />
<br />
As I mentioned in Rouge Type One <a href="https://complextoy.blogspot.com/2019/03/rouge-type-one-dev-log-step-20.html" target="_blank">Step 2.0</a>, Things are slow and I'm working on movement still. I'm using <a href="https://www.youtube.com/watch?v=cdJoJdtFbwc&list=PLSFMekK0JFgzbFfj1vAsyluKTymnBiriY" style="font-family: Roboto, Arial, sans-serif; font-size: 14px;" target="_blank">Friendly Cosmonaut</a>'s pixel perfect movement rather then Shaun's, because it works into the overall stretch goals of a simple growth/ time/ day night system that is an aspect of the main design. Right now I can't figure the glitch that makes the box draw itself rather than move and ghost underneath walls instead of colliding with them.<br />
<br />
Base build will be in <b>Beta </b>when<br />
<br />
<br />
<b>1. Player Movement & Action</b><br />
Because I want to include a variation of ways to interact with the map because the more combinations of approaches to play the broader the options in replaying the game.<br />
Kinds of movement are more important to consider than speeds of movement. If the player can run or walk only matters if there are times when both are the optimum option.<br />
<br />
Consider this, on a big project maybe you'd see and expect 16 different vehicle types with customization and tuning options, but if every line of code counts why include 10 vehicles that no one will play with? On the same side why code an entirely new vehicle or action that will only be used once in a while? This is why the kind of movement rather than the speed should be considered, if their are 3 options of unlockable vehicles and the only difference is speed then only one is useful at any given time. But if the three move differently; then the result is the player perceives movement differently. Checkers is a different game than Chess. When you play checkers you are looking at the board and movement for each piece all the same, but on a game of Chess every piece matters individually from each other because you must consider the board from a variety of perspectives.<br />
<br />
So sticking with that theme of approach and perspective changing what the situation is, we're sticking with classic adventure-game-platforming-puzzle-movement.<br />
That means WASD controls<br />
1.Crawl-walk-run<br />
2.Climb up/down<br />
3.<a href="https://www.youtube.com/watch?v=rYVoHg-TWPw&list=PLKVYdjU-JlRGAn644qRMTqdGab_P3Tr_v&index=22&t=364s" target="_blank">Shoot arrow</a><br />
4...And catch-all "interact".<br />
<br />
Alpha would work include<br />
1.<a href="https://www.youtube.com/watch?v=rYVoHg-TWPw&list=PLKVYdjU-JlRGAn644qRMTqdGab_P3Tr_v&index=22&t=364s" target="_blank">Multiple weapons</a><br />
2.<a href="https://www.youtube.com/watch?v=rYVoHg-TWPw&list=PLKVYdjU-JlRGAn644qRMTqdGab_P3Tr_v&index=22&t=364s" target="_blank">Jump</a><br />
3.Swim<br />
4.<a href="https://www.youtube.com/watch?v=K9TZS6WaVDo&list=PLKVYdjU-JlRFw4jjxLYbgGNH2WgfNZs3P&index=14&t=0s" target="_blank">Swing </a>on rope<br />
5.Mounted(on horse)<br />
<br />
<br />
<br />
<b>2. Level Spawn</b><br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/TgbuWfGeG2o/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/TgbuWfGeG2o?feature=player_embedded" width="320"></iframe></div>
<br />
The inspiration for what I'm looking to make with the level design comes from the likes of Binding of Issac. Zelda's lost wood segment, and<a href="https://www.youtube.com/watch?v=bVPg2g_enBI" target="_blank"> Nuclear Throne</a>.<br />
<br />
Base build will include one homestead room that allows entry into the segment of randomly chained forest rooms, each forest room will have randomized placed exits to the other forest rooms(incorrect door will lead one or more rooms back), upon climbing to the top of the trees from any of the forest rooms there will be a vertical <a href="https://www.youtube.com/watch?v=euAEr7Z7Pks&list=PLKVYdjU-JlRFw4jjxLYbgGNH2WgfNZs3P&index=21&t=0s" target="_blank">parallax</a> triggered to bring a far off tower into view (as if climbing to a greater height and seeing the tower in the distance) The tower will be either in the north, south, west, or east quadrant of the canopy and only visible in the distance if it is daylight, or there is a light in the tower, or a full moon, or whatever.<br />
The purpose of this is to create some benefit or value that can alter the difficulty of finding the tower besides simply changing the number of forest rooms the player must play through before reaching the tower, or what would be characterized as the boss level.<br />
<br />
Tentative step after this would be to tool separate randomizing sequences with separate sprites to differentiate between forest dungeon rooms, cavern dungeon rooms, and fortress dungeon rooms.<br />
<br />
Option 1<br />
<a href="https://www.youtube.com/watch?v=TZtMNnXFnHE&list=PL9FzW-m48fn2gQVYFxDzq4cz2A4uGWusx" target="_blank">Heartbeast Vs1</a><br />
<br />
Option 2<br />
<a href="https://www.youtube.com/watch?v=R2D_CjpnWec&list=PLKVYdjU-JlRFw4jjxLYbgGNH2WgfNZs3P&index=12&t=0s" target="_blank">GmSkew Cave Generator</a><br />
<br />
Option 3(pick me)<br />
<a href="https://www.youtube.com/watch?v=Hds06We0_g0&t=219s" target="_blank">Heartbeast vs2</a><br />
<b><br /></b>
<b><br /></b>
<b><br /></b>
<b>3. Enemy Spawn</b><br />
<br />
In truth I don't want to even begin to tackle this until I've figured how the dungeon generators are worked out, most of the player's interaction with the enemy will be in the random chained rooms, how many I make and how they work together should be linked to the difficulty. I'll set the number of enemies and difficulty of sort of enemy to increase as the player gets closer and closer to whichever specific tower and enemy.<br />
<br />
Hand crafted levels will always retain a better quality of polish then any procedural generated level, but what I can do is control how many and how close together the encounters are. The main plan is to aid a single item into the random spawn of the forest that will position the mobs and give them an origin point to operate from.<br />
<br />
Beta draft will include a firepit in it's randomly spawned forest levels, the firepit will be in one of the more open corners of the level and will spawn with mobs around it, this will be the basis for where I test out the AI.<br />
<br />
Beta will include<br />
<b>1</b>. Mobs that rage while player is in view, chase after the player, attempt to inflict damage, and loose rage while player is out of view.<br />
<br />
<b>2.</b> tentative next step at this point would be to build onto the base A.I. and include duties that they might be performing, for example one might tend the fire while idle, the other look for firewood, possibly forging for food (an option if I get the level spawning to work nicely with the farming segment.<br />
<br />
<br />
<br />
<b>4. Art Assets</b><br />
I'm not bad spritework, but also I'd rather design and aim within my own capabilities. I'll at least gear my placeholder art to resemble a Zelda 3/4th's top down isometrics perspective similar to oldschool gameboy art. I might do a hyper simplified pallet, like <a href="https://gamejolt.com/games/roguelight/31467" target="_blank">Rougelight</a> Or (again) something like Titan Souls.<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/jN1lJZIqRW0/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/jN1lJZIqRW0?feature=player_embedded" width="320"></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
As important as art is ultimately, skin without muscle or bones isn't a body, so I'm going to spend little mentioning the art during the bulk of the coding and testing process.</div>
<br /></div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-38184194949243306232019-06-26T21:48:00.000-07:002019-12-14T12:34:54.678-08:00Entry 1285943<div dir="ltr" style="text-align: left;" trbidi="on">
Dear Public Diary.<br />
<br />
Progress on the forge/game have been slow, but promising.<br />
<br />
The forge's new burners are up and running, though they are going to double my fuel cost, I should be reaching welding temperatures; ran out of gas before I got to run them long enough to bring it up to heat.<br />
<br />
<br />
On the game front I'm shuffling hardware around so I can Frankenstein myself something entirely out of tutorials. The specific seasonal/environmental change feature I was hoping for I found in a tutorial on a farming sim that also has customization outfits and crafting, two other features that I wanted as a stretch goal, three birds with the same stone. I'm not sure but it feels I won't be happy with the movement until there is some kind of lock-on mechanic. A second mode for the camera that could bounces between targets.<br />
<br />
I've decided on the separate control system for the riding/mounted play, something more akin to a tank sort of movement but where footing and terrain effect the speed and control of the direction of the player. Make it feel more like you're riding a jumping segway as compared to a motorcycle as most horse riding mechanics in games seem these days. Where the movement of the animal is a set distance above the ground and speed is consistent like a dirt bike driving over a polygon universe that has the wild west painted just above the surface. Making things like puddles and tall grass and other stuff into variables of the player avatar and avatar pet/mount would make strategic playing, like retreating into the thick woods, possible. Second varied distance from the ground, if the avatar feels like it never leaves the ground it feels like moving in a wheel, but when the walking and or running animations and sounds are done just right it feels good to go fast to dart about, I'm not one for utter realism, but I find gameplay loops feels more intuitive and satisfying. This will take testing.<br />
<br />
Big read is too old but my newest computer can handle GameMaker Studio 2.0, now just re-install game maker and to code it all.<br />
<br />
For the forge just means a new tank of fuel, I'll be putting photos of the knives I plan on submitting to the fair.<br />
<br />
Until then, Good Night Internet.</div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-80055875762753036792019-03-04T13:19:00.002-08:002019-12-15T06:29:38.944-08:00Rouge Type One dev log Step 2.0<div dir="ltr" style="text-align: left;" trbidi="on">
This are going to be boring for a while, keep your shirt on.<br />
<br />
<br />
I believe I found a work around to simulate a Z axis; on the artistic side of development one of the tricks of making a jump animation is keeping the origin(the point in digital space the player character controls are oriented to) in a single spot and simply have the image moving farther from that point in each frame, run of the mill how to animate a jump stuff, so far. What I should be able to do to make the game react and properly layer the air born player character though is key some step events to the specific frames. Far as I know this is a bit of a backwards way of doing it, I imagine the physics are suppose to be coded first with the different animation frames keyed specifically to the physics of the game as they happen, rather then hiding the physics in keyed frames of the animation, but far as my knowledge of the program and GML goes there's no reason for this not to work. "It's not stupid if it works." Is one of my favorite sayings, so here's to hoping in this instance it -or it leads to something that- pans out for me.<br />
<br />
<br />
My development philosophy is something between tackling the biggest crucial elements -which without the project would fail- and tackling the monotonous tedious tweaking and refining of the core game-play mechanics -which without polish the project wouldn't "play"-. These tend to be on somewhat opposite sides of the To-Do list, but they are both necessary to establish a foundation for the first proof-of-concept playable build. Because I can never make things easy for myself I have a notepad or two full of scribbled ideas for features or how I might be able to tweak enemy types, and weapons, and possibly how I might want to order object states for the AI; but first things first.<br />
<br />
1. Movement<br />
2. Shooting<br />
3. Generating Map<br />
4. Moving and Shooting through Generated Map<br />
<br />
As strange as it sounds, considering jumping in this design is in actuality an interaction of animation frames with instances of contact with environment that I'll have to designate as on a different level of the Z axis, testing out that jump design is moved down to step 4. First I'll need a map and environment to be jumping on and moving around.<br />
<br />
In other news I've updated the software I'm using, rather then 1.8 I'm onto studio 2, I guess it doesn't work putting new code for the new program into the old version.<br />
<br />
Right now I'm on step 2.<br />
I've put in Shaun Spalding's <a href="https://shaunjs.itch.io/shauns-weapon-system" target="_blank">ds map weapon system</a>, so not only does the moving square shoot, but it will be able to shoot and cycle through both hitscan and object projectile type attacks with ammo count, recoil, cool down, and other similar type weapon features. With this ds map system I should be able to cycle through all of the weapons I might want to add later. It's not an inventory system, but it's a foundation.<br />
<br />
Before I start onto the Generating Map I'd like first make a charge up feature for the WeaponBow and to integrate a ricochet into the projectiles, Tweak the speed and cool down and such so it feels more like shooting an arrow.<br />
<br />
<br /></div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-17243639623787007282019-03-01T18:38:00.001-08:002019-12-15T06:28:21.291-08:00Rouge Type One<div dir="ltr" style="text-align: left;" trbidi="on">
My understanding of GameMaker, is rudimentary at best, so I am happily resigned to simply following tutorials to make my little projects and the games I imagine. If the reader has found this blog hoping for tutelage, abandon all hope. I will at most relay the reader to the tutorial I have used, and give example of what I have used it for via my own work. This blog is my project journal for what I hope to be a portfolio piece, using only code from tutorials, to exhibit my own musings on design, game feel, and level design.<br />
<br />
I have Obj_Player in a step event coded movement,<br />
<br />
//Movement<br />
MySpeed = 300/room_speed<br />
<br />
<br />
if keyboard_check(ord("W")) {<br />
y = y - MySpeed<br />
}<br />
if keyboard_check(ord("S")) {<br />
y = y + MySpeed<br />
}<br />
if keyboard_check(ord("A")) {<br />
x = x - MySpeed<br />
}<br />
if keyboard_check(ord("D")) {<br />
x = x + MySpeed<br />
}<br />
<br />
As learned from <a href="https://www.pentadact.com/" target="_blank">Tom Francis</a>'s Make a Game With No Experience youtube tutorial series, I'm linking movement to room speed so the movement can be easily edited from a single point in the code rather than changing the number of pixels moved for each W, A, S, D. Also linking movement to the MySpeed variable I should be able to link in later additions like power-ups or if I find it not toooo difficult things like mounts. What I'm trying to figure out now is something similar to a jump, however I might be able to simulate a Z axis while keeping the WASD movement.<br />
<br />
More often the Z axis is simulated by a trick of layering, where and when the player character is drawn on-top or underneath other sprites in the environment, imagine if you will a glowing sphere. If the sphere is shown in a top down level moving ontop of high grass, it would be imagined to be at some height above the ground, floating, similar to maybe a fairy or firefly. But if the grass is drawn ontop, suddenly the same movement appears to be low to the ground, like some sort of glowing rat in the underbrush. Similar, if we had trouble making rodents or spiders or some ground enemy appearing as if they were not floating around midsection when they come to attack the player character, having them drawn behind the trees and underbrush, as well as having them trigger a rustle of the brush when they move past it would give them a very "grounded" feel, and would also give the world a very present feeling.<br />
<br />
My issue is making a sense of gravity in a game view that typically has the player character locked to the ground unless there is a ladder, or a chest high wall to jump over, or whatever might trigger a climb animation. </div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-39832064570935129752019-03-01T18:10:00.000-08:002019-12-15T06:29:50.475-08:00updates and that pesky rouge type project.<div dir="ltr" style="text-align: left;" trbidi="on">
Pre-POST<br />
Working nights is just as awful as I remember -go figure right- but on the side of tooling up for my blacksmiths and having the tech to fix the computer and possibly saving up for licensing or whatever has been good. Taking some time off school seems to have been exactly what I needed.<br />
<br />
<br />
The game I have been working on, is a Frankenstein's Monster of tutorials, and it's hogpog construction has bounced through different computers and multiple iterations that started on the foundations of the buggy code. For anyone following along, the previous gamemaker project was based off <a href="https://www.pentadact.com/" target="_blank">Tom Francis</a>'s Make Your First Game, tutorial series.<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/DN6dZWXUEzA/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/DN6dZWXUEzA?feature=player_embedded" width="320"></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
That <a href="https://complextoy.blogspot.com/2016/01/jam-log-no5.html" target="_blank">project</a> was.... iffy at best. The player could shoot, the bullets would push enemies back and make them shrink until they died. The player upon taking too much damage would explode in a splatter of bits, that the player then needed to pick up before being able to shoot again. This last bit hadn't quiet, every worked... perfectly. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
My next goal was to design a project that would combine two or more tutorials to make a more dynamic game. This is more so an experiment in design than it is in coding, because I am not a programmer, this is to see if it is possible to design an engaging polished product that can deliver an hour or so of game play. Along with give me some rudimentary foundation to test out things I'm excited to explore testing. Like, how to simulate the arch and fall of an arrow on a top down and not profile controlled game, as in.. how do you make a Z axis on a 2d top down game such as Zelda: The Minish Cap. How the heck do day/night cycles work? Could those be expanded to seasonal cycles? How do inventories work? Better yet, how does equip-able gear function? There's alot of stuff in games that's actually quiet impressive when it comes to the development side. But we're going to follow along some tutorials and figure it out bit by bit ^^</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br /></div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-31452915682723682962019-01-08T10:50:00.000-08:002019-02-27T20:24:58.735-08:00Oh look it's 2019.<div dir="ltr" style="text-align: left;" trbidi="on">
As neglected as this blog is I still like Blogger and the space I've cultivated, at least on this end. I'm excited to introduce to you guys my non-game making project, I've been working on this while trying to teach myself code and because physical products and builds are easier to show than buggy code; I'll be posting updates on that front here as well as my game project updates when I get them, essentially any photos or whatever I feel like fits here better then the fb page.<br />
<div>
<br /></div>
<div>
My goal for 2019 is to have an update at least once a month on the progress for my game. And depending how things go with RPF maybe make that project it's own blog bog. Back on the game front, right now I'm still using smaller projects to teach myself code, so expect little game jam type previews and unabashedly bad art.</div>
<div>
<br /></div>
<div>
<br /></div>
</div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-26091364793645385032016-08-10T23:24:00.000-07:002016-08-10T23:24:27.396-07:00The quandary that is room design<div dir="ltr" style="text-align: left;" trbidi="on">
In game design everything is interconnected. Like a meal, you can't have as satisfying an experience if each of the elements on the plate don't compliment each other.<br />
<br />
The game's use of Health or end states alter the way players move through the levels and how they approach situations.<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe width="320" height="266" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/4AEKbBF3URE/0.jpg" src="https://www.youtube.com/embed/4AEKbBF3URE?feature=player_embedded" frameborder="0" allowfullscreen></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
And of course what are the objectives? That will determine how the player operates within the space, is there much backtracking? Do they break every crate and check every nicknack before they go? Does the layout give them a clear path, or branching paths? Is the map interesting to navigate, is it memorable, does it present a varied amount of situations, or is it the same stuff different room? There are alot of nuances to consider when designing a level. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /><iframe width="320" height="266" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/6LO8Z1DkDqc/0.jpg" src="https://www.youtube.com/embed/6LO8Z1DkDqc?feature=player_embedded" frameborder="0" allowfullscreen></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
My inspiration for this current project, and a notebook that's now full of scribbled connecting squares, comes from a mental combination of the old choose your own adventure books, the zaniness of Dargon's Lair, the idea of these multi-faceted rooms, and of course a concept for a rpg influenced GUI I want to experiment with before I start coding the big project that will consume my life whole, garnishing olive on a toothpick and all. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
So the general plan is to build a handful of rooms that change over the course of the game, with multiple ways of moving about to reach the trigger for each, optional inventory items and character interaction. I like the idea of the player being able to completely ignore a quest or two because they don't like the character and want to give them the cold shoulder. I'm not going to give to much away, not because I'm worried of spoilers, but because there's not much to give away; but the general plan is to have a cast of misfit magical characters who guard a dungeon. The main character being a -captured and not always good at his job- thief who must now escape the levels of the dungeon. The immortal guards of which have become quite bored and disillusioned with the whole immortal guard gig, made a sort of game of their job in the hopes of keeping it from getting too incredibly dull. Hope to put up some sketches soon. Until then goodnight everyone ^^</div>
</div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-9301486337034316832016-08-07T18:13:00.002-07:002016-08-07T18:13:34.084-07:00Life update summer of 2016<div dir="ltr" style="text-align: left;" trbidi="on">
I try to do these every so often whenever I've been off development or just having posted anything for a while. Just to give a bit of a heads up, show anyone I'm still alive, and haven't abandoned game development.<br />
<br />
Last I posted I was working two jobs and trying to make some money on the side with projects, that's not changed at all. But I'm farther along with those projects and future proofing production. Some are definitely starting to show promise.<br />
<br />
On the more "life" side of things in the life update. I'm still in school... seriously considering changing one of my majors.. which.. would help me in literally everything I want to do outside of academics, this game development/my side projects/ writing, ect. as well as make my academics something I might want to pursue as far as a career, but we'll see what that means with my timeline for graduation. But whatever, I work enough to cover school and don't exactly have much in the way of bills, which is good because after school and car and gas I never have much in the way of funds. I bought a more powerful pc.. but quickly broke it, and it'll need repairs.. but I can't afford that right now considering car repairs sucking up that chunk of change. But my laptop is still kicking, and I have projects that don't require anything fancy that I'm working on, it's all just up to me to learn code and room/puzzle design. I have a goal of one game this year. We'll see how that goes. </div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-34944104452396475792016-01-19T21:43:00.000-08:002016-01-25T12:17:32.540-08:00Maximize Your Learning: Code<div dir="ltr" style="text-align: left;" trbidi="on">
One of the most important things a student or teacher could come to understand, is that learning cannot take place in a vacuum. Knowledge simply isn't retained without application. This is why homework exists kids, this is why most jobs will have you learn the trade onsite rather then just put you in-front of a screen with an instructional video, or rather, this is why you don't remember everything from that video or whatever they tell you on your first day, but rather you "get the hang" of it after a few days of being in the thick of it. Trial by fire.<br />
<br />
That being said almost any video online discussing learning code will say, you can't just learn code, you have to learn code while making something. Which is.. obvious after the fact. But during it's a difficult and weird idea to wrap your head around.. like.. How can I make something when I can only attain the knowledge to first make it after I've made it. This sounds worse then the chicken and egg problem. If don't have the tools to make something how can it be that the only way to gain the tools is to make the thing?<br />
<h3 style="text-align: left;">
</h3>
<h2 style="text-align: center;">
TUTORIALS<br />And<br />The Stages of Learning that Accompany them.<br />Followed by<br />The Best Way to Learn From Them</h2>
<h4 style="text-align: left;">
Learning code stage one: No idea where to start</h4>
Now, the beginners answer to that is, look up a tutorial. But because often newcomers don't know how to do anything yet, they also don't know what they cannot do, or how difficult specific things are over other things. Or what the advice that guy on the forum post even meant; what are these Array, Global int. and if loop things they speak of?<br />
<h4 style="text-align: left;">
<br />Learning code stage two: You speak Latin, but your magic seems to work.</h4>
The ambitious amateur will often after a time of this learn to look up the very specific features they're being told about and watch multiple videos, and copy what they see onscreen into the program, often mistyping little bits and, not knowing what's wrong, getting frustrated to the point of starting over or quit.<br />
<br />
<br />
<h4>
<br />Learning code the Intermission: It's-Not-Working-And-I-Don't-Understand-And-My-Career-Is-Over-Before-It-Started!</h4>
This last stage is unfortunately where most aspiring game devs get stuck and then.. well either quit or just stick with the excuse of "coding isn't for me, just can't do it." and then they focus their aspirations to working exclusively with art, writing, sound, design, or whatever small corner of production that looks as far away from coding. And there's nothing generally wrong with that path leading you to what you really love about video games, if you find you love being a producer or concept art, or sound, or animations guy more then you like anything else, that's fantastic. I'm just going to say don't let it stop you from making games. I spent years stuck in these last two stages of learning coding and years of unfinished projects and lost potential lessons because I let this pressure of never getting it to work or never finishing or not being smart enough, or ready to learn something, prevent me from making game. The important thing to learn from this temporary road bump in learning code is that it's one of those things that happens to everyone, and it by no way is a sign from above punishing you for trying something outside of your destiny, it's just a part of learning. You can overcome it. Honestly.<br />
<br />
<h4 style="text-align: left;">
Learning code stage three: Learning in Application </h4>
<div>
The best thing about stage three is you can jump to it at any point in your learning process; which does in fact mean, you are not guaranteed to go through stages one or two, you might just have the luck that you find the right tutorial and started with the right project and having everything fall together or apart in just the right way that you learned how to find your mistakes among the code, and the values of different functions and techniques of organizing data, and learned the math to make cool little features that do neat stuff. For some lucky people they stumble onto this stage in development earlier rather then later, but other struggle finding it. I think I've finally figured it out, it's not really a trick but i want to share it with you all because had I been told this years ago I probably would have some games under my belt.</div>
<div>
<br /></div>
<div>
1. JOIN A GAME JAM. Give yourself something external to pressure yourself into keeping at whatever tutorial series you're following and something that'll limit the scope of that project to something complete-able within a few weeks. </div>
<div>
<br /></div>
<div>
2. INSTEAD OF GIVING-UP, FIND WORK AROUNDS. There's more then one way to skin a cat and coding is no different. Learning what bits are interchangeable gives you insight to the logic behind the specific function bits and syntax in your specific code. This learning feature by feature goal mindset helps you visualize and cement in your mind what the specifics you see in the tutorial are doing and mean within the program, having something constant to apply the short youtube videos to helps you understand the building blocks outside of the specific use displayed. It's like how learning to use a foreign word in a sentence is more useful then just learning a phrase that uses that word. </div>
<div>
<br /></div>
<div>
3.OR JUST EDIT YOUR DESIGN. Good design is decision making that incorporates all elements of the work, it's not possible to see all the elements of the work before they're formed, so don't feel bad about throwing out the original blueprint you had while you're working. If the project you have doesn't look like it'll be as strong as this thing you thought before you started, go with the newer path you see it going. Especially if this new path interests you.</div>
<div>
<br /></div>
<div>
4. MAKE IT SIMPLE AND INTERESTING, TO YOU. If you're not excited or interested in working on it. Drop it. Nothing great has ever come out of someone who was only half paying attention, and no one has ever learned or remembers the lessons they learned from the school project that didn't interest them, also you'll make yourself miserable; don't let your hobby be something that makes you miserable. There were plenty of times I tried to make mini-games where the idea bored me but they were the only thing I thought I could make using the "beginners" level tutorials I found. And that's deeply frustrating because you want to make something interesting, but it seems like you can't learn how to make those things without making these boring games you don't yet want to make.</div>
<div>
<br /></div>
<div>
5. STOP BEING BORING AND MAKE GOOD SMALL GAMES. There is no reason for small or simple to equal dull. There are hundreds of small games out there that have limited coding and minimal design, that end up being interesting. These are the kinds of games you need to study. Try to think about all these simple features, and think of them in terms of what they could also do. This is where your design and creative skills pay off. You could do something interesting story wise, you could do something interesting art wise. You could just do something that's a kinda neat little mechanic. Just find something neat and small that excites you and make it, once you get that little neat thing, and you understand how you got it and what all your code is doing, then you've made it. Congrats kidos, you're a game dev.</div>
<div>
<br /></div>
<h2 style="text-align: center;">
THE BEST WAY TO "STUDY" A TUTORIAL</h2>
<div>
I'm a massive fan of the, follow with me step by step, line by line, regularly save and test to see if the code is working, kind of learning from tutorials. But at the end of the day, when you're new to a program and you know you're going to be referencing this tutorial more then once or trying to put your own twist on the feature you're learning to code. Backups and notes are a great thing. Now you can make a physical copy of the notes, which is brilliant, easy to access and good for following along. But what I've been doing that I've found most helpful when going through tutorials and organizing my notes/code. Is using something like google documents. I have a file for my code, a file distinguishing between each game program in that, and then i have files organizing between each tutorial, and documents for each tidbit of code with hyperlinks to that time in the video. </div>
<div>
<br /></div>
<div>
This has been very useful for the long winded videos that near the hour mark, you can break it up into bits, with notes next to the label like, //establishing array in room, //global variables for array, // algorithm for bullet time, ect. This lets you start breaking down the large chunks of code in your head via their function piecemeal rather then trying to remember each step in the recipe as one massive meal you can visualize it as all the small bits of prep-work that go together creating the whole, which will make it easier to dismantle and use bits later to make other features.</div>
<div>
<br /></div>
<div>
Secondly you can copy the code down verbatim into your document so it can be copy/past utilized later for other projects, and you'll always know where it is, and be able to access it anytime you've got a computer. Having this with the hyperlinks to the section of tutorial explaining each bit eliminates the need to search through your youtube history or sit through the majority of the video when only a few minutes pertain to what you need. It saves large amounts of time and also gives you a space to store that new code function you just figured out even though you don't have use for it in your current project. Honestly I'd rather have a dozen small word document files with lines of code in them then a dozen or so versions of the same game because I don't know if I'll want to go back to an old build, especially when most of the code is exactly the same except for a few long coded functions. That might just be me, but I'd rather my builds be stored on the cloud where I can always access and edit them rather then on a single computer, or hard drive. I have lost so.. so many jump drives, and there's nothing worse then the computer bursting into flames and loosing everything you've been working on. </div>
<div>
<br /></div>
<div>
And those are my tips to learning code the fastest, I went from almost never getting anything working after years of being stuck in the first two stages, to having a working understanding and building a game with my own unique twists that I coded on my own in the span of two weeks. All because of two things, I had a small project with a similarly small (achievable)scope and time-frame to make it in, and I was excited to make it.<br />
<br />
That being said, I didn't have any art/animations, and there was virtually no story, or levels, so those are things I'm going to need to learn to do as well. Next time I'll probably have something up on one of those. </div>
<div style="text-align: center;">
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
</div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-45047326757522730272016-01-11T11:44:00.000-08:002016-01-11T22:35:21.252-08:00Jam Log No.5<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dxvxy5X7TzjUlOH7rzG1PyvsPOKr7SgxaMZ5uDHaajJjXwU7KlDwcbScX281hz9QpVipC1GxgemdhyvWYFdGA' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
Wish you could hear the ricochet sound effects.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Using http://www.bfxr.net/ for all the sounds.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Camera implemented and basic bullet collision. What you don't notice is the character can actually walk through the walls at this point, just threw this in for visual markers of movement so i could tweak the camera code/player speed/ and view specifics until I was happy with it. Right now I'm attempting to code the enemies attacks/A.i. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Realized I need to do this before I start working on the graphics. I do have a basic image for the aliens... but I remembered how I'll fall into this trap of making a hundred or so sprites before even having the code working, and I refuse to fall into that trap again. I'm by no means a professional artist and by no means have that conviction to let go of that "perfectionist" drive and complete the work. I had the problem back when I was studying graphic design, and I still have it turning in papers. Some day I'll learn it.. But the code is what the people experience in the end, and as a Game Jam much isn't expected of me in the way of either. I know given the time I can decent work with sprites, but I don't know I can complete coding the game as designed. That's my main milestone.. I don't have to implement all the levels, if it ends up just being a big courtyard with spawning blocks I'll still be happy, as long as they spawn and move the way they're suppose to. This post will go up in multiple parts, I'll add onto this post as progress/issues crop up, this is just an update to show despite my loss of progress to scheduling, I'm still in this. Five days to go guys.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="" style="clear: both; text-align: center;">
Update 2</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dy30PJQx71PZeoGqXKQdZ5XtfQjm3DaLwO6-tvfm5JSm3F3tWMZLWx0faEgmvEQMehrimhwcCoU6JS9rtLvZA' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWr7dZSG_M4j4o5nB0kqeU43Zgo1BjxCH7NnTq_lURuL43ZDtZVHNNOqJsMziZSFBsQfcG0HDq51y_x6JZ7ewvlS_UB5cgltY8QXPzwm9z_b-gasCPeNkSSi5tUhSi6w9Mvn3SqZkWmsQ7/s1600/1452335_10203040342402596_2510608770228679089_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWr7dZSG_M4j4o5nB0kqeU43Zgo1BjxCH7NnTq_lURuL43ZDtZVHNNOqJsMziZSFBsQfcG0HDq51y_x6JZ7ewvlS_UB5cgltY8QXPzwm9z_b-gasCPeNkSSi5tUhSi6w9Mvn3SqZkWmsQ7/s1600/1452335_10203040342402596_2510608770228679089_n.jpg" /></a></div>
<div class="" style="clear: both; text-align: center;">
For some reason, the big enemy is invisible..<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dxlzhbHbRJ8REHpMdJP9NXBqpfWdcxtzF2KU-AQyVqKmnwo-ZCNIs52dnNxsNtRBsnzHy9-ABrcPNQknPjM' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<br /></div>
<div class="" style="clear: both; text-align: center;">
<br /></div>
<div class="" style="clear: both; text-align: center;">
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dwpTXp1_gFR_6StvMt2-HIjeGdbw2PyFlP9WtjmtjqJkPjdJ-txQvGnSTjueDtB3lVi1TR_hhM6cFI6a2OAxw' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiojY3GpSWimcHnM4OPKVjsTnjiQqMEFiH_3wySOH2KxJsfCZZuU7ALfvTjJrggNdqkXdF9slOEj7c-uus6SDXgUaC_aKHEK2Xv2dQkTeo-zHwRhM5yFTujaSfQmPk43z7cyPEBNqj9QCM6/s1600/sEnemyIdle_0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiojY3GpSWimcHnM4OPKVjsTnjiQqMEFiH_3wySOH2KxJsfCZZuU7ALfvTjJrggNdqkXdF9slOEj7c-uus6SDXgUaC_aKHEK2Xv2dQkTeo-zHwRhM5yFTujaSfQmPk43z7cyPEBNqj9QCM6/s200/sEnemyIdle_0.png" width="200" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiojY3GpSWimcHnM4OPKVjsTnjiQqMEFiH_3wySOH2KxJsfCZZuU7ALfvTjJrggNdqkXdF9slOEj7c-uus6SDXgUaC_aKHEK2Xv2dQkTeo-zHwRhM5yFTujaSfQmPk43z7cyPEBNqj9QCM6/s1600/sEnemyIdle_0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiojY3GpSWimcHnM4OPKVjsTnjiQqMEFiH_3wySOH2KxJsfCZZuU7ALfvTjJrggNdqkXdF9slOEj7c-uus6SDXgUaC_aKHEK2Xv2dQkTeo-zHwRhM5yFTujaSfQmPk43z7cyPEBNqj9QCM6/s1600/sEnemyIdle_0.png" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
started brainstorming the aliens, like the color scheme, especially around the head, but not happy about the body shape yet. will need to work out more silhouettes. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Update</div>
<div style="text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dydDmk4D3OIEchALNjqyZ3bXzwT5svDkNtC77T9TesdQykha3758wk4jfBPmIqBJ_R1ZuuRnXAuKrY5FrmIVA' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
Welp... the big enemies are still invisible, somewhere in my order of events the mind of the invisible monster destroys itself. Before I thought it was just invisible like when originally spawned, but the small hive mind of monsters that come out of it don't return... which, thinking of it now might be because I don't have something to in there to turn off their focus on the player.. brb. Whatever, that's still not working. Point being, I won't know if these is happening just right until I can see it interacting. I have to admit thought, I like how the code ended up having these guys converge towards the player, their movements are awkward as they fumble around each other trying to get closer to the player. I'll be fun to detail everything with nice animations and sound effects when all of this is done.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
update</div>
<div class="separator" style="clear: both; text-align: center;">
Wowza, that was an easy fix.. apparently... I had the little "visible" button for the big-enemy object unclicked.. don't know how that happened. </div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4KgypmnHDTkR1QyfHXooO0St5wRA_V8F0LI5WtoC62CM8aEyEE62w2djgH3IO-mybz2uiWNMWTrqppa-Nc1u_5ZMYv5Ltv-rOWydNQUgWxfuPObrt_SrH3O2h6F_pUeR26QTq8AI7A9h4/s1600/the+more+you+know.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="131" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4KgypmnHDTkR1QyfHXooO0St5wRA_V8F0LI5WtoC62CM8aEyEE62w2djgH3IO-mybz2uiWNMWTrqppa-Nc1u_5ZMYv5Ltv-rOWydNQUgWxfuPObrt_SrH3O2h6F_pUeR26QTq8AI7A9h4/s200/the+more+you+know.jpg" width="200" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Anywho now I can see what the problem is, first, the little mobs that come out of the biggie don't seem to be triggering their return, second the biggie is able to send out multiple waves, which isn't suppose to happen... not a bad idea though. This all needs some serious ironing. But it's getting closer to something that looks like a game.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br />
<br />
<br /></div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-16419259318695317642016-01-09T17:46:00.001-08:002016-01-09T22:13:03.697-08:00Jam Log No.4 <div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
KNOW THY LIMIT</div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dxQTzbuwa3APLY-G4wXovg2w45GN4xyjf1I1xw2fh6Nxccg5VjNONcUg3BAL6lMIzWAUg6s-j0uGS72JeBSTA' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Welp. The things I know I cannot yet do has grown, and I have learned. </div>
<div class="separator" style="clear: both; text-align: center;">
Here is the most updated version, the array and weapon switch system was not working, try as I may I couldn't follow all of the tutorial and my computer couldn't let me access the download the source material so I couldn't even compare the code side by side to see where I went wrong. I also now have a bias against learning code from programmers. Nothing against programmers, but <a href="https://www.youtube.com/watch?v=G4m419blvQY" target="_blank">the curse of knowledge</a> I've found in devs whose education/focus was in code, rather then art or design, was stronger. Of course I'm basing this off a very small sample size of tutorial videos I've seen on youtube, I know programmers whose education is in code that could probably teach me just fine, I'm just saying of the educational tutorials I've seen on youtube, coding taught from those who started elsewhere has been easier for me to learn from.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
So.. again, I've cut back and improved a little on what I know works, I've lost a few days to work but I'm not too far behind. I'm going to stop trying to add in things until I get this working like a game rather then a mechanic test. Then I'll see what I can do.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dzBGsujKSFL5MKkStderH1tgZUxL6RKhMNOHnWniMEs_yN_Vc1M7jMnSNr550-xV7Cm27CGOWV8d6vcSUnFOg' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
The player can now explode and the pieces come to rest, now the difficult part. </div>
<div class="separator" style="clear: both; text-align: center;">
I've worked it into the code that the player simply changes to one of the pieces thrown, to avoiding having to label and follow each individual piece thrown from the character, the character is changed into one of these pieces separate from their specific generation. The tricky part is coding it so that, first; you are thrown from the site of contact as if you are suddenly controlling one of the smaller pieces of gore, second the players control of the piece is removed during flight, third any possible extra contact with the enemy will not trigger another explosion, and forth once landed the player bit will regain control to the player and be able to be destroyed again, where the second contact with the monster (after this explosion) will result in game end.... an awesome stretch goal would be that the explosion damages and knock-backs any enemies within a radius as well. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dwfSQvidhw20mD3G4KTFMR2RTWPWZytF2_19YviWwDTj-cmgtRCiFKAyOAsAap94R5cQVGSnmqu_v3mzdBJIQ' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
ALRIGHT!</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
I got a good part of the tricky stuff that I was struggling with fixed, reason I was having such a hard time is because I had my variables set in the wrong place so they were constantly resetting instead of having them in coded where they'd remain static. Basic mistake, but satisfying pay out. So, what we have now is a person that shoots, can blow up, regain his pieces, and become whole again. While exploding there is a grace period where the player is invincible after that if hit before regaining their parts the player explodes and game over. For anyone confused how this ties in with the game premise as specified in an earlier post, don't be alarmed, that makes two of us. I thought of something cool I wanted to code, and ended up being able to code it, I'll be damned if I don't run with it. Probably somewhere in the same universe this game is the story about a newly formed zombie, fighting of those who accidentally resurrected him, the alien invaders. He's a gun toting mostly blooded patriot of his planet and he didn't much like his evening being disturbed. I'm going to do minimum colors with minimum style, because time constraints and animations are hard. I have placeholders for most of what I'll need but I'm going to bare bones it until I have the enemy A.I. up to speed and something like a level laid out and coded. Basics being, idle, shoot, run.. maybe a flashing idle for damage idk. I still have to make up this alternate enemy and then try my hand at this mini-boss idea. From what I have with the player code it shouldn't be that far a stretch. What concerns me is the specific instances.. The player, dependent on health, has different abilities. Some are so easy as changing the speed of movement or specific passageways being accessible, and that might be enough. But it'd be nice if each instance felt different to play, without one feeling better or worse then the other. What I might end up doing is simplifying the instances again, streamline the design. I was figuring a verbal count would have been nice instead of a number hanging in the top screen, but really... for what I have ammo is irrelevant. It's not about saving bullets, it's about getting to the end of the map in one piece... that is one whole piece.. all together. The hard part is going to be designing and coding each of those so they can stand up in play independently, and of course fixing some animation in time for that. I'll have an updated video later this week. Night fokes. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br /></div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-26808501002681020302016-01-05T23:40:00.003-08:002016-01-05T23:41:34.839-08:00Jam Log No.3<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dxsphm1XE3iBDo4TAQh4MT8r7zL1MM07CBddFTIRljiFF5AA1exSOZrLZffhPx7_GXBE0b-C0_WKBpXR0pcXQ' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
Where we left off.</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Shrinking enemies and "vacuum" weapon</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dxTScGXsN0ayZbXrJ1TJQR2OPMkwVZz9LHeBEtQERICIfe64XgtlndfA1c13vcfiCH0rPmiNLw1kJETLI3xiQ' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dx4cC8benTLsBwYirSTswutRJGCYe9McGubFWZRUp2oEkQibHnzvDjMJqbxeYwT7OnzugfrD1KrO6jQUcu1wQ' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
I would include more but what I have now is incomplete and doesn't work yet. I'm in process of phasing out the vacuum and all my other sucking and gun related code for this newer system that allows the weapon switch. Maybe when I complete this new thing I'll be able to work it back under the new framework, maybe not. It's to early to tell. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Today wasn't as productive as I hoped, but I think I'm still on schedule. After tomorrow I should have the shooty situation figured out and then it's on to coding in the enemies and working out the animation code (combining this set with that action ect)</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
For now, I'm going to take a moment to grieve a loss.</div>
<div class="separator" style="clear: both; text-align: center;">
Vacuum gun Mark1. You were fun while you were with us, gone but not forgotten. Lost along the trail so many ideas have ventured with their makers. While you might not make it with us to the end of this game jam, we will carry you with us in spirit. We'll see you in another life perhaps.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQBSrKxOP1IlShaBKJXwXaV5dkJEQeQpZHDMSUxU_iD0wU3YoF2zGgTTlFjm6xu1ucKCGsCWwcsTiTRzQ5PQ7pjJXKXHNPZIDQEjcHF3WjxQ8a-5gmCmcToqtTzgXe0Nl5AcQlvgH8MSku/s1600/rip.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQBSrKxOP1IlShaBKJXwXaV5dkJEQeQpZHDMSUxU_iD0wU3YoF2zGgTTlFjm6xu1ucKCGsCWwcsTiTRzQ5PQ7pjJXKXHNPZIDQEjcHF3WjxQ8a-5gmCmcToqtTzgXe0Nl5AcQlvgH8MSku/s1600/rip.jpg" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Until tomorrow, where maybe after work I can finish this and have something to show you all, I realized I haven't given much of the premise here. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
So here is a link tomy <a href="http://itch.io/jam/my-first-game-jam/topic/13148/devblog-the-sewer-patrol-its-working-title" target="_blank">DevLog</a> on the Itchio page for this jam, check out the other indie's there while you're at it, they have neat stuff, and they actually update it.</div>
</div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-24781098131806834042016-01-05T00:33:00.000-08:002016-01-05T00:34:01.218-08:00Jam Log No.2<div dir="ltr" style="text-align: left;" trbidi="on">
Alright, I think I'll do these once a night, show something recorded from the morning and then what I have before I go to bed.<br />
<br />
I got the vacuum weapon working, mostly. It pulls the player forward and I've tweaked the enemy's shrinking so that looks right. I haven't figured.. or tried yet to have the "bullets" destroy themselves after a certain distance, but that will be after I work out this cycling problem.<br />
<br />
I worked in the cycling system from<a href="https://www.youtube.com/watch?v=H-B8jhfC_ls" target="_blank"> this tutorial</a> with minor alterations. The primary being that I put the code for the player object in a Step event instead of a Create event, the youtuber said this would mean whenever the player switched guns any amo on the field would change as well, I didn't have this problem, the amo stayed the same. What did happen though was the weapon specifics were connected with the wrong weapon. And I'm stumped how this happened, it appeared to have been working when I had four weapons, but when I switched back to the planned 2 (remembering my habit of biting more I can chew) the specifics of knockback (or in the case of the vacuum suckforward) and the type of bullets that came out was switched.. without any discrepancy in the variable naming as far as I can see.. which is weird because I have it labeled so simply. Now this in itself isn't a problem I would just figure I have something in the Hud Object listed wrong so it pulls up the string differently or.. whatever. I could just rename them. But what's really the problem is if I switch to the other while there are still bullets onscreen it seems to massively tax the computer. The game freezes.. so... I'm going to have to delete a bunch tomorrow, back to the start where I just have the vacuum working.<br />
<br />
There is more then one way to skin a cat, and if this way freezes up the game it's got to go. I've got other tutorials for the same feature opened in tabs and I'll give them a shot tomorrow, at the very least I'll get enough of an idea of how to deal with global variables and strings that I'll be able to figure it myself, and if not that, then I guess the game doesn't need multiple guns. Plan tomorrow is to strip the game back to it's working version and finish working on that boss character. I have two related monsters and I'd be tickled pink if I could get them to connect the way I want, a variation on your basic <i>big guy explodes into small guys.</i> And if that doesn't work it's onto plan B, or I guess it's C, with the monsters and focus on these weapons, with a new stretch of QTE finishers.</div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-58977266069230552052016-01-04T21:16:00.001-08:002016-01-04T21:55:35.886-08:00Jam Log No.1<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
Jam Log No. 1</div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dwDy_CSS06B3Z9pN_NCUm2eR3F9oXUdYlYtXHbh-_1XScgqrumlvO5WNkxlE8Cbz8ED9nKi9BEtfICeMOLECQ' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
(apologies for the shotty video quality, grabbed the first free screen recorder I could find)</div>
<br />
Note to self, do not save code unless you know it works. I have no idea what's going wrong with all that code I wrote up and saved the other night, I plugged it in and going through bit by bit worked out all the little mistakes, capital where there should be an under-case here, a misplaced bracket there.. ect. And each test seemed to work fine, it'd compile then tell me where there was an error. but as soon as I thought I had all that, having combed through all the additional code and fixed what I thought was the last error, the GameMaker runner hit a snag. As in, no code error, but the runner shuts down whenever I try to run the game. I don't know what I did. And I can't find what part of the code is responsible if it is that. So.. I started again. I have basic shooting and movement, along with basic "don't walk off the edge" a.i. for the enemy. Soon I'll be deviating from the tutorial, and the trial by fire will commence.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dwk_zctZ_QvU5kCuH944KQy9zPijCrvptxNLMVpOq8aqmw-URGiGYpO8k6E248FDutKjKWI1seB2WR-1Ty02Q' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
(little better grasp of the program now, mousepad is fickle but everything working smooth)</div>
<br /></div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-52430140487884436352016-01-03T20:19:00.000-08:002016-01-03T20:19:51.750-08:00ENTERING A GAME JAM<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: center;">
Short life Update</div>
<div style="text-align: center;">
I'm officially only doubly employed, and in a much better position starting this year than I ended the last; and so I've joined a Game Jam. Because only being doubly employees with two academic essays to write and three custom orders resting on the work bench, I'm sure to have enough free time.</div>
<div style="text-align: center;">
I'm using <a href="https://twitter.com/Pentadact?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor" target="_blank">Tom Francis's</a> "<a href="https://www.youtube.com/playlist?list=PLUtKzyIe0aB2HjpmBhnsHpK7ig0z7ohWw" target="_blank">Make A Game With No Experience</a>" youtube Game Maker series as a blueprint for my submission and between everything I'll try to keep track of my progress. </div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
This is just a quick post to help boost the <a href="http://itch.io/jam/my-first-game-jam" target="_blank">My First Game Jam</a>'s signal and a little encouragement for anyone else looking for that extra little push to get them working. </div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
And because this is too short of a post I'm going to ramble some in the form of a list.</div>
<div style="text-align: center;">
While I've never finished a project, there is some advice I can offer.</div>
<div style="text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/jMhYItIqFaw/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/jMhYItIqFaw?feature=player_embedded" width="320"></iframe></div>
<h4 style="text-align: center;">
10 MISTAKES TO AVOID MAKING YOUR FIRST FAST AND DIRTY GAME</h4>
<h4 style="text-align: center;">
Or</h4>
<h4 style="text-align: center;">
<br />10 REASONS THIS WRITER HAS FALLEN FLAT ON HIS FACE TRYING TO MAKE GAMES</h4>
<div style="text-align: center;">
<br /></div>
<div style="text-align: left;">
1. REMEMBER IT IS FAST AND DIRTY</div>
<div style="text-align: left;">
People new to game making fall into this pit without even noticing, it's knowing when to cut your losses and call what you have done. It won't be perfect, that's what Game Jams are all about, so don't worry about making it looked polished. Just like when you write your paper the night it's due, first get a completed draft, then work out your most egregious errors, and keep working away at those for as much time as you have left on the clock. Fix the game breaking bugs, play it though to make sure everything's triggering how it should, and slap something like art over the top of it.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
2. FUN TRUMPS SENSE</div>
<div style="text-align: left;">
You'll find alot of indie games fall into the trap of making a game "<i>by the blueprints". </i>Designing and writing events into the game because that's what the creator expects to be in this or that sort of game. Firstly it leads to a dull same-ish genre piece we've seen and mostly forgotten about, and secondly it leads to you accidentally plotting out something that <u>is out of your league.</u> The rule of<i> Keep It Simple Stupid</i>, has never been more applicable and the simplest you can get without fault is a game where, regardless of how short or how badly drawn, the play is fun. This is your first game, don't concern yourself what happens after the queen is taken, or why she's taken, or who you even are for that matter until you already have boxes onscreen that are coded to damage, jump, and follow each other around; and all of those actions are fun. It's a harsh lesson, but if walking and shooting, or whatever, doesn't feel engaging and responsive to the player, if the thing the player has to do in the game doesn't feel rewarding, nothing else can save that game. Do not worry if the dragon showing up makes sense until the act of shooting it is fun in itself.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
3. FUN IS SIMPLE</div>
<div style="text-align: left;">
Where rule 2. is "don't design the game before you have the gameplay", rule 3. is "Keep Gameplay Stupid." Complex code and mechanics will do you no good when you're trying to iron out gamemaking bugs for code you've just learned. You are new to coding, you are new to game design, you have a very quickly approaching deadline; look for the simplest game type to code with the simplest tutorial series you can find. The mantra of the gamemaker; <i>simple to learn, hard to master, </i>is your friend. Not just because complex inputs and mechanics take more time trying to animate and balance for your game, but because what you might think to be one of the simplest features is in-fact a metric assload of code that you are<i> sooo </i>not ready to tackle. If you cannot find a tutorial for a feature you want, cut that feature out of the design, this is not your swan-song, this is your very first game for a Game Jam. You can explore whatever features you want later when you've gotten the hang of making an actual game. Recognize what the bare minimum of what you want your players to experience and find what you need to do that, be prepared to simplify or change it. Walk and then jump, or shoot, or punch. Try to make something that only needs the wasd or arrow controls and then one or two other buttons, after that you can explore, even then I wouldn't until the enemies and game features like restart or exit are coded in. </div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
4.LINES ON PAPER</div>
<div style="text-align: left;">
Art could very well be on your list of "things I'm not good at" but that doesn't excuse you from having to get around to making games. You don't need to wait for a fancy tablet or until you've taken art classes, you have the internet at your fingertips for one, there are more drawing tutorials then there are coding tutorials. And secondly this is a game jam, no one is expecting 3d models or photo-realistic drawings. The mind is an amazing and simple thing, just put two circles on a shape of any sort and image is suddenly recognized as a face. Make the circles a third the proportion of the now "head" and make one eye smaller then the other and congratulations you've made it cute. Now add any sort of other facial distinguishing features, like animal noses or ears, and you've reproduced the household aesthetic of a 5 something billion dollar title. Good art may be difficult to master, but art in itself is easy, forget whatever anyone else told you. As Garfield in his Saturday morning cartoon once said; "It's just lines on paper." The art should be as simple for you as doodling pixel art in paint, feel free to do just that in fact.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
5.USE A TOOL YOU'RE FAMILIAR WITH</div>
<div style="text-align: left;">
This isn't the time to be experimenting with a new image or sound editor, much less any new game creation software. Something you've already doodled or tried tutorials with if and whenever possible. This also means to know your design, and know when your tool just isn't suited for that purpose. Yes you could make a 3d game shooter with gamemaker or contruct, but the result is going to be comparable to The Mona Lisa made of Macaroni, impressive in it's own right, but it will always be just a lesser version of the original. </div>
<div style="text-align: left;">
<br />
6. STUCK WITH CODE, ASK THE DUCK<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/huOPVqztPdc/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/huOPVqztPdc?feature=player_embedded" width="320"></iframe></div>
<br /></div>
<div style="text-align: left;">
<br />
7. SURROUND YOURSELF<br />
The upside of having all of social media a tab away resting at your fingertips is that, despite all of the possible distractions, you are able to 100% capable of mingling with your peers. You'll be able to watch other developers work and see their approach to problems, learn little new tricks that someone does with their code, or at the very least you can pick up the hotkeys and shortcut ins and outs of your program. The easiest way to keep yourself inspired in your craft is to surround yourself with others in the thick of their own craft, leave yourself little reminders of why you love doing whatever it is you do and witness others to keep that creative clockwork turning. You might have one idea for what to do to spice up the mechanics you got from this or that tutorial, and suddenly you see something completely out there done by someone else that gives you this awesome idea that was just so simple you don't know why you didn't do it before.<br />
<br /></div>
<div style="text-align: left;">
8. INJECT YOURSELF<br />
It's never enough to just sit on the sidelines, and as long as you're using the duck method appropriately and not just coming to spam forums with questions as they arise, a community of craftspeople will just as gladly lend a hand with a question as they would gladly receive help when they truly need it. Everybody is there because they love what they do and they want nothing better than to hone their skills and have their work become as good as they can possibly make it. Do not be shy, it doesn't matter if you're still working on finishing your first, anyone whose had the experience of completing those first few games understands what position your in, especially under Game Jam conditions.<br />
<br /></div>
<div style="text-align: left;">
9. JUST DO IT<br />
Yesterday you said tomorrow, ect. ect. There is no time like the present, if you know what you want to do, do it. If you know what kind of game or what tutorial you want to use, start. If you just know what you want it to look like or you're stuck after getting your basic movement down, start doodling, always be making something. I don't necessarily mean call in sick an lock yourself in your room. But build productive habits, keep to a strict regimen of so many hours a day, whenever you find yourself thinking of or figuring something out, don't save it for later. Get up and do it. If you can't do it, write it down in a notepad. It's remarkable how many game changing ideas you'll forget by the time you sit back down with the folder open. Plus writing the psudocode will help you work out in your mind how all the parts go together and make learning the code and fixing the bugs easier, the more familiar you get with your code the easier time you will have getting it to do what you want.<br />
<br />
<br /></div>
<div style="text-align: left;">
10. AVOID UNNECESSARY DISTRACTIONS</div>
<div style="text-align: left;">
... It's a curse of the hobby to be on the same device we spend all of our leisure time on, but productivity is a habit learned through repetition like any other. Set daily goals and milestones to keep yourself on track and give yourself something to hold yourself to, when you get something done quicker then you expect move onto the next task, some thing will take longer then you expect and you're going to want all of elbow room you can make for yourself. It's great to be able to pump out a game in a week or two when you're chasing deadlines; but to do the work when no one is holding you accountable, when you're at home and ready to relax, that's the kind of diligence that makes a enthusiast or hobbyist into a craftsman. That being said, I'm going to jump back into the thick of it. Expect screenshots soon. Also.. don't do what I just did, if you're going to keep track of stuff kept it short, keep it simple. Screenshots and small blurb write ups if you need something to keep the creative juices flowing. </div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
<br /></div>
</div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-59701081195888590182015-12-17T23:29:00.000-08:002015-12-19T05:36:19.802-08:00Coding "Choice"/Story Pt.2 Also Life Update<div dir="ltr" style="text-align: left;" trbidi="on">
Quick life update<br />
I'm happy to say that I now know my last semester went better then I felt it was going, not as well as I hoped but much better than it felt like at the time. Also I can officially announce that I have another job, soon as my two weeks goes through i'll be in a *fingers crossed* more manageable double employment position. So that's that.<br />
<br />
<br />
<h2 style="text-align: center;">
Coding Divergent Stories Pt.2</h2>
<div>
So as we discussed<a href="http://complextoy.blogspot.com/2015/12/tackling-logic-and-challenge-of-coding.html" target="_blank"> last time </a>the gameplay in itself is not only inseparable to the story but in it's range of possible actions effects the themeing beneath the games overall experience, I'd argue that every memorable game experience has an element of this modeled into it's design. Mario is played by avoiding and overcoming obstacles, the theme is overcoming adversity. The Stanley Parable's gameplay is interacting with and against the narrator, the theme is agency against predestination. First person games are played by a single point, a projected you, as interacting manipulating and surviving a projected other, and the themes in first person games are often man against the world or against the horrific unstoppable other. There's alot of interesting stuff that could be said about how the layout of interaction changes the tone of a game for the player, like the modes of interaction put the player in a different mind space, or encourage them to create a different narrative (look at me staying on topic). </div>
<div>
<br /></div>
<div>
The apparent problem we were left with last time was how divergence allowed by interaction possibly undermines the narrative or theme of the game. And, at first I honestly didn't know how to answer this, but I think this wasn't so much an issue of the medium, but the manner that we think of story that lead us to the specific question. This is one of those problems every English major will encounter when writing essays. While themes and narrative are real things that do exist in stories, they are tangible to the reader and definite within a story, because after the piece of art is sent out in the world it's a finished work. But in another way it isn't, there is an intrinsic final part of art, that being the reception by the reader. Now, I'm not talking about the whole phenomena of a reader having to physical look at the words for the ideas those words mean to "re-create" the story before they can access it. No, what I mean is the themes are a thing that is received by a thinking feeling individual, and because of that what those themes end up meaning exactly is not set. Themes, while definitely inherent by the creators design. On purpose or not, they are in there. (I've written a paper about parental conventions of death and god as represented in Curious George episodes alone.)</div>
<div>
<br /></div>
<div>
What we're saying is that beneath the surface narrative texture, there are themes, ideas about stuff, which the audience will come and interact with to some degree. They might not know it but that episode about the Daleks and Oswin is an exploration of the themes of autonomy, of what constitutes human and self. Oswin figured she was sealed away from the nanobots that convert humans into the robot Dalek, a conversion that is a literal reconstitution of autonomy. The independent thinking human becomes a robot, a creature whose very name originates form slave, and is in it's nature one that follows it's programming, completely devoid of individual autonomy. Also there's a small element of Odysseus ship, the thought experiment of "<u>How many parts do you have to replace on a thing before it becomes a new, different thing? Does it?"</u>; Oswin made a small fantasy world inside her mind that she wasn't being converted into a Dalek by nanobots, but instead was sealed up in a crashed ship and was surviving and burning time before rescue, while her entire body was replaced there was supposedly this small element of will left that retained the part that made the mind of the converted Dalek still Oswin the human. And you can do this will all of media to better understand the anxieties behind the fictions and better understand the draw their audience has to them.</div>
<div>
<br /></div>
<h3 style="text-align: center;">
So What Does These Mean For Games?</h3>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipqGdahTtw-5mYQeKp7xuDQH2UflS-qoeKyVwAF_dKZsmVyNxbwqUJgvxbPnLubT26AqFMX8Ib-CTvCIFKfc-zA583pC0kyl8cuzGBrX73x3A1dTnXr928d1fBqN-s319h83iLU7hOKZKB/s1600/Me+and+my+best+friend+void.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="263" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipqGdahTtw-5mYQeKp7xuDQH2UflS-qoeKyVwAF_dKZsmVyNxbwqUJgvxbPnLubT26AqFMX8Ib-CTvCIFKfc-zA583pC0kyl8cuzGBrX73x3A1dTnXr928d1fBqN-s319h83iLU7hOKZKB/s320/Me+and+my+best+friend+void.png" width="320" /></a></div>
<div>
Themes are not definite, notice the theme in the Odysseus's Ship story is a question, overarching narratives are not complete always complete thoughts. The best kind often aren't, because art that recognizes these big ideas and questions are not definite or answered yet, leave this element of ambiguity in the characters, this is where the story's human element is. Socrates famously said "Know Thyself", but he never meant that to directly mean "understand who you definitely are", he meant "know what you are not, in being definitely sure what you do not know, you can better seek knowledge". Really good stories, almost never explore their themes by directly answering questions, often they explore these questions by presenting what the situation is not. </div>
<div>
<br /></div>
<div>
Are the Replicates who have differing "empathetic" responses then humans, not sentient? Well, they're not dumb, and what they feel can't be called insincere... Is that what sentience is?<br />
Good questions raise further questions, and so the reader is unconsciously diving further and deeper into the fantasy.</div>
<div>
<br /></div>
<div>
I'd never say that stories always attempt to have an ambiguous ending, or even that only the good ones do, that'd be dumb. What I'm saying is that in every bit of fictions exploration of a theme, just that you can't spell it out for the reader without either being insulting or making the story sound contrived.</div>
<div>
<br /></div>
<div>
<div>
Contrived plots are the biggest problem for young writers. Contrived is when the story feels like a certain point is pushed onto the series of events, seemingly because the author wanted it. Why this is so noticeable, is because instead of the girl leaving the scum bag that sexually assaulted her in the dive in theater, instead of her not trusting him after he showed he doesn't understand the word no and manipulated her trust, instead of all that... after he wins the race she dresses up to get him all hot and bothered because that's what he wants and now she wants just what he wants. Because happy endings is how it should be. God I hate Grease. The arch of that film that had the most tension the moment most people remember and relate to as "thee" important part of Grease, is the race. Notice it's never a problem just that the hero wins at the end, it's a problem if this doesn't make any sense with the rest of the story, that's what contrived storytelling is. </div>
</div>
<div>
<br /></div>
<div>
Insulting is when what was clearly conveyed, or at least could be understood by watching the scene is spelled out, the cop dramas that have each clue and what it could indicate getting described before the scene cuts.. yes that boring part, imagine those shows without the drama of who is sleeping with who or who showed up drunk, or whose terrified of their wife having a child in this rotten city. ect. There is the real meat of the narrative. The lesson is to not go 100% with the story, you decide how much you want your viewer to work to understand your story, but you never go 100%. If you do your fiction becomes a lazy read, the reader is left without the need to think about the character actions or make their own reading of intentions or emotions, and is left utterly distinguished from the fiction. Whatever percentage you make them work to fill out the rest of the story, "Who was right? Rorschach or Ozymandias?" whatever percentage that is is what invests them in your work.Think about what the characters and events are asking of the player while you create, but also recognize that this end result you're giving space for, you don't need to have control of that, you don't even need to have a definite version for yourself.</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhyphenhyphenKgU9oWx8yEFZqPnIG99pYTTd9d9A3MbhcUqsY9mk7dJLGOpbQLw1RQqEgiyXbKWPInq5wztEOq1Xn3F6Vy6rGNv-pF5oT3hDhCQisVxT3thuA3HgPFj1OCR6vPBqOPlFd3bz3U1Cn1c/s1600/they+look+like+monsters+to+you.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhyphenhyphenKgU9oWx8yEFZqPnIG99pYTTd9d9A3MbhcUqsY9mk7dJLGOpbQLw1RQqEgiyXbKWPInq5wztEOq1Xn3F6Vy6rGNv-pF5oT3hDhCQisVxT3thuA3HgPFj1OCR6vPBqOPlFd3bz3U1Cn1c/s640/they+look+like+monsters+to+you.gif" width="640" /></a></div>
<div>
<br /></div>
<div>
</div>
<div>
This is not just about giving space for the reader to work and invest and, well <i>read</i>, into your narrative. But this is about letting go of the idea that you need to control or even know what they are going to add to that space. And knowing this, approaching creating divergent stories changes. It's not so much, "how do I let them explore a story they''ll create and let them feel like they're the ones that created it while still designing a satisfying ending?" and suddenly the question is more, "how do I create tools that let them explore questions to their satisfaction?" The latter, is much easier to discuss. But again, it's late and I have quite a busy work weekend head of me and I think this is enough for one post. Goodnight, and thank you for reading. </div>
<div>
<br /></div>
<div>
<br /></div>
</div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0tag:blogger.com,1999:blog-4373854349835874287.post-80191088052690831312015-12-04T17:07:00.000-08:002016-07-10T08:07:47.037-07:00Tackling Logic, and the Challenge of coding in "choice"<div dir="ltr" style="text-align: left;" trbidi="on">
<h2 style="text-align: center;">
How does Story relate to Coding?</h2>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
For pretext first we should discuss Ludonarrative, or simple the narrative elements inherent in the mechanics of a game. It's been discussed before on this blog, but refresher is always good. In the manner that all mechanical actions possible to the player are framed within a narrative<i> act</i>, the play is the story. Interacting with a game, in itself, adds to the game's narrative. This is most easily recognizable when there are different manners in which a player can interact within the world. This can be something so simple as changing which class your character is, or having player action lead to different outcomes for the endgame scenario; to the more vague and small moments of, did Peach or Bowser win at the flower cup, or did Mastercheif favor the pistol or battle-rifle while saving the earth.</div>
<div style="text-align: center;">
The point being that the mechanics of a game and the narrative of a game are inherently intertwined and cannot be accurately discussed separately, this implications of this as this article will explore, is that if the ludonarrative or<i> playstory </i>(story that's within the actions allowed to the player) has a poor narrative it leads to unsatisfying gameplay.</div>
<div style="text-align: center;">
This isn't limited to the previous discussion of having each action lead to the broader arch as previously discussed; actions not for the hallow sake of themselves but for the overarching theme of the narrative. the previous point is what leads to the distinction of the "annoying mini game" vs side quests or moments of interaction that seem integral to the feel of the game. While Wind Waker is a story about a young islander fighting off monsters in island castles and dungeons, you can't imagine it without being able to sailing between islands. The sailing is an integral part as it's part of exploration.</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
There's the pretext, this discussion will be about instance to instance puzzles, and the problematic narrative of "choice" existing in what is ultimately a deterministic world. As always, the really hard problems turned out to be philosophy ones; and as always, philosophy has the answer... kinda. </div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
First we'll discuss a number of approaches to the problem and then discus the divergent instances that compound what appears to be the essence of the problem/solution. </div>
<h3 style="text-align: center;">
<b><br /></b><b>Que Sera Sera</b></h3>
<div style="text-align: center;">
Determinism is the belief that nothing that happens in the world could in any scenario, not happen. That whatever sequence of events is inescapable and unavoidable. This situation mirrors the reality of created worlds. In any movie or book, the events of the story will unfold exactly as they have before and always will. Similarly in coded worlds, they are integrally tied to the succinct and defined moment of the creator. While in philosophy this challenges most notions of freewill or purpose, in games it's more so an underlying challenge of purpose, but more on that later. In created or coded worlds the experience of the viewer or participant mirrors what the Stoics termed Eternal Reoccurrence. That everything that will happen, not only will happen and is inescapable, but has likely already happened before this instance, and will happen again in the exact same way in the future. Unlike most they did not believe that the inability to change the future would undermined freedom or freewill, because the event and the will linked to the event are separate things. According to the Stoics, if I'm destined to take a nap or not before I go to work, does not have any bearing on if I have the will to take a nap. This is known as soft Determinism. We see this in games in that no matter how many times you play the game the same events will be triggered as they are coded, and after no number of playthroughs can you avoid the hardwired series of events. Of course, this doesn't necessarily undermined hos satisfying the gameplay is, there are plenty of instances of games where there is no way to vary from the set path and yet the game still feels satisfying. Possibly the most famous and revolutionary exploration of this, is of course, The Stanley Parable.</div>
<div style="text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/Z1S796fXtl4/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/Z1S796fXtl4?feature=player_embedded" width="320"></iframe></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
Or, for a more 'on the nose' experience... </div>
<div style="text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/AZ-IcS7mRSk/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/AZ-IcS7mRSk?feature=player_embedded" width="320"></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
If you haven't yet, play the game.</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
The Stanley Parable as it's central gameplay gimmick, is the narrator dictating your movements throughout the game. This is first dictating your movements before they are enacted, playing with the notion of linear progression where the player is completely passive and has their will aligned with whatever appears to be the narrative, but then.. as the level design subtly tempts the player to walk off the directed path or investigate other corners, the narrator dictates the players rebellion. The resulting back and forth, which is really something that has to be experienced, is an exploration of the player's limitation within a determined medium and the very game's limitations within presenting choice. The game is a tongue in <span style="font-size: x-small;">cheek in </span><span style="font-size: xx-small;">tongue in cheek in-..</span> spiral into oblivion. Yet while it directly plays with the ideas of player choice, and possibly undermining player choice, at no point in-playing does that choice feel cheapened. Let that sink in, in a self-aware determined </div>
<div style="text-align: center;">
environment, that makes it's determined nature blatantly clear, at no point does the player feel their actions are pointless.. in a game about showing you how your actions don't lead to anything "special". </div>
<div style="text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/U42wsVF82J4/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/U42wsVF82J4?feature=player_embedded" width="320"></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<b><br /></b></div>
<div class="separator" style="clear: both; text-align: center;">
<b>Divergence</b></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
All games have in a sense been tackling this problem, where what feels like a lack of player agency is in fact not conveying a sense of meaning behind actions. No player wants to do something "just because" they want to do it because of what it means in the game they're playing. The designer makes choices in gameplay valuable by making them meaningful within the context the game provides. When the choice is meaningful in terms of gameplay (powerup new ability) but not in terms of the story ( person dying = no change on the part of the player's mo) then we have that infamous diagnoses of <i>Ludonarrative Dissonance,</i> or in layman<i> </i>terms, <i>"this part or acting in the game feels cheep, contrived, and just doesn't make sense"</i>. </div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
Divergent options that viably allow the game to be played differently allow the player to control, have a sense of agency with, and give meaning to the emergent narrative their participation in the game creates. It can be something so small as jumping on top of a koopa instead of jumping past or as complicated as using a +8 great sword with knockback and larger area of effect instead of a +9 dagger with higher dps. Choices become memorable when they stop being the automatic no-thinking-required kind, when they become personal. This is what creates memorable gameplay, this is what makes experiences that stick with us. This element of participation in the emergent narrative of games is what makes video games such a uniquely compelling and personal media to its fans. It's why people end up relating so personally to video games, because their actions and will become a part of the experience-</div>
<div style="text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4Sdcp9lFN4dM8eCG7iuOqgNfLlCRceNeQEQFF4Ga4GijNQxi4iELZGG_jc0uKsZ4QISmcMV-JGgg62SVOLizSbwhgwbALDhcbLcwZAU-kC7JhBPFNstO8R-Cx20IFMqoNdFK67GwVs6wN/s1600/stay-on-target.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4Sdcp9lFN4dM8eCG7iuOqgNfLlCRceNeQEQFF4Ga4GijNQxi4iELZGG_jc0uKsZ4QISmcMV-JGgg62SVOLizSbwhgwbALDhcbLcwZAU-kC7JhBPFNstO8R-Cx20IFMqoNdFK67GwVs6wN/s320/stay-on-target.gif" width="320" /></a></div>
<div style="text-align: center;">
Gahhh, yeah okay.</div>
<div style="text-align: center;">
<br /></div>
<h4 style="text-align: center;">
So, in the most clear instance of this, we have divergent stories. </h4>
<div style="text-align: center;">
Divergent stories as I'm referring to them are the kind where a primary aspect of the gameplay and theme of the game is a value on specific player choices. This covers everything from the recent AAA's exploration of dialogue options that lead to multiple endings or multiple romance options, to open worlds where there is no specific order to complete mission before the end game, to the choose your own adventure novels of yesteryear. All of these explore the same effect of divergent path in play. The challenge and deciding factor of this effect is its logical presentation within the context. The presentation of the divergent options must be logical, they must follow from the situation of the world as a both sound and necessity to the story as an overarching experience.To break this down to it's simplest components, in a choose your own adventure book, imagine how the writer would create the stream of events. After you've gone the route of the wizard, how would it feel to have the character bludgeon a guard to death rather than petrify him or shoot lightning bolts? No, a thief must be allowed to try to steal, a barbarian to fight, and a wizard to spellcast. There's a necessity for all player actions for the game to present some sort of foreshadowing, something that builds the internal logic that leads up to each moment of player action overcoming the obstacle. When there has been little to no buildup, either because the internal logic is just assumed and taken for granted or because the developers simply couldn't be bothered, we have coined the term "game logic" or more specifically within the point and click community "Sierra logic". There are plenty of fantastical scenarios that occur in games without the blink of an eye, this isn't because we rationally assume we could do the fantastic in real life, but because the game has presented the fantastic in slow building manner that allowed our suspension of disbelieve to keep up with the internal logic of the scene. I do not believe it makes any sense to be able to control my momentum mid-air during a jump, but when I experience this in a game and then experience being able to jump off a wall, the realization of wall jumping is natural. And overcoming that puzzle feels satisfying. </div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
The same way that building any rich internal lore for stories takes a slow and complex build of internal logic, the emergent story the player creates through actions takes a similarly slow and nuanced build. Without this built suspension of belief at worst case we end up with sierra logic where the game is almost unplayable or at best where what happens on screen doesn't translate to the player as actions that are there own. As game critic and internet personality Arin Hanson "Egoraptor" put in his <a href="https://www.youtube.com/watch?v=XOC3vixnj_0&feature=youtu.be&t=691" target="_blank">video essay</a> comparing Zelda titles</div>
<div style="text-align: left;">
<span style="background-color: white; text-align: left;"><span style="color: #222222; font-family: "arial" , sans-serif;"><span style="font-size: 13px; line-height: 16.12px;"><br /></span></span></span></div>
<div style="text-align: left;">
<b>"A puzzle is something you have all the information for, the only thing standing between you and the solution is your own ability to put the pieces together in the right way, the satisfaction you attain from solving a puzzle is from the A-HA moment. When the pieces fit and you only have yourself to blame for it. If you're missing a piece, how are you suppose to get to a conclusion a solution?</b></div>
<div style="text-align: left;">
<b>The satisfaction doesn't come from the door opening, it comes from the puzzle itself...</b></div>
<div style="text-align: left;">
<b><br /></b></div>
<div style="text-align: left;">
<b>It's daunting, it's interesting, it engages you, and it's really easy to understand, and because of all this it's satisfying..."</b></div>
<div style="text-align: left;">
<b><br /></b></div>
<div style="text-align: center;">
Having all the information in this sense leads to the logistics problem of what amounts to the design equivalent of foreshadowing. Which, might sound impossible. How can a story in an emergent narrative seemingly foreshadow the end at the beginning when the end hasn't been "created" yet? Well, because it's already determined. Back a the example of the choose your own adventure, the key feature is that the story starts out extremely vague, which is perfect for establishing the first Blue Moon, the thing which is unbelievable but form which the player has their first step into simultaneously believing, building, and being part of a fantastical world. the one crazy thing which all internal logic stems from. my personal favorite from fiction. </div>
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5ojev3M2lCBv_WWVWnBKz6aA6iKgXy1OQw6ya93iUr1vlKH6JhTR7dhpf7HpXOKCrmO_iH7uzp1bsIUnY-gAQf32pg6uxrW87cLaLFvSOC75akjBHG-qZ8WBXaUPhYSFOt8Hxm-skqOrw/s1600/wizardharry.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5ojev3M2lCBv_WWVWnBKz6aA6iKgXy1OQw6ya93iUr1vlKH6JhTR7dhpf7HpXOKCrmO_iH7uzp1bsIUnY-gAQf32pg6uxrW87cLaLFvSOC75akjBHG-qZ8WBXaUPhYSFOt8Hxm-skqOrw/s320/wizardharry.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
In The Stanley Parable the game regularly plays with what is assumed to be a "reset" state, commenting on the last play through or braking the forth wall mentioning how everything will start over again and again until the player does as the narrator wants. It strings together what would otherwise appear to be alternate endings, separate stories, into a single cohesive narrative. What appears to be an impossible number of divergent paths all basically leading to the same "ending". How is this accomplished? This write up took much longer than I wished and I still have to get some sleep in before work. We'll take a closer look at different instances of gameplay that handle divergent paths next time. Until then; feel free to write about your favorite game that has alternate endings, romance, or dialogue options and why you like it or think it works in the comments. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://complextoy.blogspot.com/2015/12/coding-story-pt2-also-life-update.html">Pt 2</a></div>
</div>
Weshttp://www.blogger.com/profile/10945361181604383070noreply@blogger.com0