[video member=cmuratori stream_platform=twitch stream_username=handmade_hero project=code title="Hopping Monstar and Occupying Trees" vod_platform=youtube id=wAqPNROQZas annotator=Miblo] [1:48][Run the game and set the stage for the day] [3:17][handmade_brain.cpp: Give ExecuteBrain the ability to move the Monstar] [6:13][handmade_world_mode.cpp: Make AddMonstar take a traversable_reference] [8:10][handmade_world_mode.cpp: Make AddStandardRoom call AddMonstar] [12:44][Run the game and see that the Monstar doesn't appear to be initialised correctly] [13:43][handmade_world.cpp: Make PackEntityReference leave the Index the same if there's no SimRegion and no GetHashFromID] [14:52][Run the game and see that the Monstar is no properly occupying a square] [14:58][handmade_brain.cpp: Enable the Monstar to move, run the game and watch it move] [15:39][handmade_world_mode.h: Add random_series GameEntropy to game_mode_world] [16:15][handmade_world_mode.cpp: Make PlayWorld initialise GameEntropy and use that GameEntropy to generate the rooms] [16:55][handmade_brain.cpp: Make ExecuteBrain set the Monstar's Delta using the GameEntropy and take game_mode_world *WorldMode] [21:40][Kick back and eat some cheesy poofs while watching the Monstar hop around randomly] [23:42][handmade_world_mode.cpp: Introduce struct standard_room, and make AddStandardRoom return it and specify the StandingOn points] [29:52][handmade_world_mode.cpp: Make AddWall take world_position P and traversable_reference StandingOn, and specify that the Tree occupies squares] [30:47][Run the game and find that the Monstar cannot hop on the Trees, but that we can currently hop over them] [32:11][handmade_world_mode.cpp: Make the Head collide with the Trees] [33:55][handmade_brain.cpp: Stop ExecuteBrain checking for deletion and doing unnecessary controller code] [37:51][handmade_brain.cpp: Investigate why the Head is sticking by adding a DEBUG_B32 for NoPush and a DEBUG_VALUE for ddP2, and setting the Head's UnitMaxAccelVector to false] [42:09][Run the game and hit the Assert relating to MaxEntityVelocity] [44:39][handmade_sim_region.cpp: Stop MoveEntity taking the move_spec] [47:01][handmade_brain.cpp: Stop entity taking the move_spec] [47:44][handmade_brain.cpp: Change how ExecuteBrain sets the Head's ddP] [54:40][Run the game and find that we've fixed the bug] [55:41][handmade_world_mode.cpp: Make AddStandardRoom call AddFamiliar and make AddFamiliar take world_position P and traversable_reference StandingOn] [57:07][Run the game and see our Familiar occupying its square] [57:32][handmade_entity.h: Remove Moveable from entity_flags] [58:57][Q&A][:speech] [59:50][@gasto5][Why are the textures not loading properly sometimes?] [1:00:51][@mmassi][Why the decision to make the game grid-based?] [1:01:00][@fr0styninja][There were sirens earlier. Is #manintree back at it again?] [1:01:15][@skullkrack][Do you think even after getting a four-year degree in MIS it's worth it to learn a language such as C#?] [1:01:44][@longboolean][I guess technically if the gameplay is centered around tiles and facing direction, you wouldn't necessarily need collision detection?] [1:02:55][@tterrace][What are the ~18 threads that run with the game?] [1:07:20][@cvaucher][What is going to replace the ground splat system? Just different tile types and seamless textures?] [1:07:41][@bugogy][Why don't you program in a UNIX-based OS?] [1:10:40][@imjustroids][Why wouldn't multithreading work all that well? Complications? Limitations?] [1:11:08][@gasto5][How did you manage to make thinks work in Windows when you started your career, given that MSDN at least now is negligible or unreliable or both?] [1:11:56][A few words on the giant splatter of garbage that is the Windows API][quote 489] [1:13:35][@imjustroids][You said something about the multi-threading being funky?] [1:14:08][@sirfindel][Do you have positive or negative thoughts when it comes to learning and using Python for building applications?] [1:14:24][@metaled32bit][MSDN came on 2 CDs] [1:15:04][@tickleforce][Which programming languages do you use regularly?] [1:15:35][Thanks][:speech] [/video]