Handmade Hero»Episode Guide
Adding Brains
?
?

Keyboard Navigation

Global Keys

[, < / ], > Jump to previous / next episode
W, K, P / S, J, N Jump to previous / next marker
t / T Toggle theatre / SUPERtheatre mode
V Revert filter to original state Y Select link (requires manual Ctrl-c)

Menu toggling

q Quotes r References f Filter y Link c Credits

In-Menu Movement

a
w
s
d
h j k l


Quotes and References Menus

Enter Jump to timecode

Quotes, References and Credits Menus

o Open URL (in new tab)

Filter Menu

x, Space Toggle category and focus next
X, ShiftSpace Toggle category and focus previous
v Invert topics / media as per focus

Filter and Link Menus

z Toggle filter / linking mode

Credits Menu

Enter Open URL (in new tab)
0:56Blackboard: Dynamically controlling snake-like multi-segment entities
0:56Blackboard: Dynamically controlling snake-like multi-segment entities
0:56Blackboard: Dynamically controlling snake-like multi-segment entities
6:55Blackboard: Controller templates
6:55Blackboard: Controller templates
6:55Blackboard: Controller templates
14:424coder: Reproduce the pane creation bug
14:424coder: Reproduce the pane creation bug
14:424coder: Reproduce the pane creation bug
17:03handmade_entity.h: Remove entity_relationship and ReferenceIsValid and, from entity, PairedEntityCount and PairedEntities
17:03handmade_entity.h: Remove entity_relationship and ReferenceIsValid and, from entity, PairedEntityCount and PairedEntities
17:03handmade_entity.h: Remove entity_relationship and ReferenceIsValid and, from entity, PairedEntityCount and PairedEntities
18:14handmade_entity.h: Introduce entity_controller_type, entity_controller_slot and entity_controller_id, and add one of each to entity
18:14handmade_entity.h: Introduce entity_controller_type, entity_controller_slot and entity_controller_id, and add one of each to entity
18:14handmade_entity.h: Introduce entity_controller_type, entity_controller_slot and entity_controller_id, and add one of each to entity
22:17handmade_entity.h: Consider how this system will replace entity_type
22:17handmade_entity.h: Consider how this system will replace entity_type
22:17handmade_entity.h: Consider how this system will replace entity_type
24:59handmade_entity.h: Rename entity_controller_* to brain_*
24:59handmade_entity.h: Rename entity_controller_* to brain_*
24:59handmade_entity.h: Rename entity_controller_* to brain_*
25:44handmade_sim_region.h: Introduce brain_hash and add an array of them to sim_region
25:44handmade_sim_region.h: Introduce brain_hash and add an array of them to sim_region
25:44handmade_sim_region.h: Introduce brain_hash and add an array of them to sim_region
30:30handmade_world.cpp: Rename PackEntityReferenceArray to PackEntityReference and make it work on only one entity
30:30handmade_world.cpp: Rename PackEntityReferenceArray to PackEntityReference and make it work on only one entity
30:30handmade_world.cpp: Rename PackEntityReferenceArray to PackEntityReference and make it work on only one entity
36:58handmade_world.cpp: Make PackTraversableReference and PackEntityIntoChunk take a sim_region
36:58handmade_world.cpp: Make PackTraversableReference and PackEntityIntoChunk take a sim_region
36:58handmade_world.cpp: Make PackTraversableReference and PackEntityIntoChunk take a sim_region
37:49handmade_entity.h: Introduce IsDeleted
37:49handmade_entity.h: Introduce IsDeleted
37:49handmade_entity.h: Introduce IsDeleted
38:55handmade_sim_region.cpp: Move some functionality from LoadEntityReference to GetEntityByID and make it call the latter
38:55handmade_sim_region.cpp: Move some functionality from LoadEntityReference to GetEntityByID and make it call the latter
38:55handmade_sim_region.cpp: Move some functionality from LoadEntityReference to GetEntityByID and make it call the latter
40:32handmade_sim_region.cpp: Make PackEntityIntoWorld take a sim_region
40:32handmade_sim_region.cpp: Make PackEntityIntoWorld take a sim_region
40:32handmade_sim_region.cpp: Make PackEntityIntoWorld take a sim_region
41:45handmade_world_mode.cpp: Remove BodyRefs and HeadRefs from AddPlayer, and initialise a brain_id and some brain data for the Body and Head
41:45handmade_world_mode.cpp: Remove BodyRefs and HeadRefs from AddPlayer, and initialise a brain_id and some brain data for the Body and Head
41:45handmade_world_mode.cpp: Remove BodyRefs and HeadRefs from AddPlayer, and initialise a brain_id and some brain data for the Body and Head
44:08handmade_world_mode.cpp: Introduce AddBrain
44:08handmade_world_mode.cpp: Introduce AddBrain
44:08handmade_world_mode.cpp: Introduce AddBrain
46:46handmade_sim_region.h: Add MaxBrainCount, BrainCount and *Brains to sim_region
46:46handmade_sim_region.h: Add MaxBrainCount, BrainCount and *Brains to sim_region
46:46handmade_sim_region.h: Add MaxBrainCount, BrainCount and *Brains to sim_region
47:00handmade_world_mode.cpp: Excitedly make UpdateAndRenderWorld loop through the brains and do the brain logic
47:00handmade_world_mode.cpp: Excitedly make UpdateAndRenderWorld loop through the brains and do the brain logic
47:00handmade_world_mode.cpp: Excitedly make UpdateAndRenderWorld loop through the brains and do the brain logic
49:01handmade_sim_region.h: Add a brain_type to brain
49:01handmade_sim_region.h: Add a brain_type to brain
49:01handmade_sim_region.h: Add a brain_type to brain
49:22handmade_world_mode.cpp: #if 0 out the PairedEntities code for now
49:22handmade_world_mode.cpp: #if 0 out the PairedEntities code for now
49:22handmade_world_mode.cpp: #if 0 out the PairedEntities code for now
50:46Run the game with our disabled controllers
50:46Run the game with our disabled controllers
50:46Run the game with our disabled controllers
51:19handmade_world_mode.cpp: Loft the hero head controller code up into Brain_Hero and begin writing the brain logic
51:19handmade_world_mode.cpp: Loft the hero head controller code up into Brain_Hero and begin writing the brain logic
51:19handmade_world_mode.cpp: Loft the hero head controller code up into Brain_Hero and begin writing the brain logic
53:144coder: Bright white bug
53:144coder: Bright white bug
53:144coder: Bright white bug
55:12handmade_sim_region.h: Add a brain_id to brain
55:12handmade_sim_region.h: Add a brain_id to brain
55:12handmade_sim_region.h: Add a brain_id to brain
56:10handmade.h: Change entity_id to brain_id in controlled_hero
56:10handmade.h: Change entity_id to brain_id in controlled_hero
56:10handmade.h: Change entity_id to brain_id in controlled_hero
57:05handmade_world_mode.cpp: Fix compile errors
57:05handmade_world_mode.cpp: Fix compile errors
57:05handmade_world_mode.cpp: Fix compile errors
1:01:07handmade_world_mode.cpp: Make AddPlayer return a brain_id
1:01:07handmade_world_mode.cpp: Make AddPlayer return a brain_id
1:01:07handmade_world_mode.cpp: Make AddPlayer return a brain_id
1:02:02Q&A
🗩
1:02:02Q&A
🗩
1:02:02Q&A
🗩
1:04:16Miblo I must have missed the bit about the snake. What is that?
🗪
1:04:16Miblo I must have missed the bit about the snake. What is that?
🗪
1:04:16Miblo I must have missed the bit about the snake. What is that?
🗪
1:05:47nbm It's actually a millipede
🗪
1:05:47nbm It's actually a millipede
🗪
1:05:47nbm It's actually a millipede
🗪
1:06:10unrealdesign How long do you hope this will go on for? Do you see yourself doing different game once this is finished?
🗪
1:06:10unrealdesign How long do you hope this will go on for? Do you see yourself doing different game once this is finished?
🗪
1:06:10unrealdesign How long do you hope this will go on for? Do you see yourself doing different game once this is finished?
🗪
1:07:23lm4rcu5l You mentioned you'd spend four hours cleaning code. Why not have a Handmade Hero day once every other month or so and deal with problems like that?
🗪
1:07:23lm4rcu5l You mentioned you'd spend four hours cleaning code. Why not have a Handmade Hero day once every other month or so and deal with problems like that?
🗪
1:07:23lm4rcu5l You mentioned you'd spend four hours cleaning code. Why not have a Handmade Hero day once every other month or so and deal with problems like that?
🗪
1:07:43ezysigh About the one entity per grid spot checking, how will you handle leaving a spot just before a monster lands there? Right now it's binary. Do you plan to add a fuzziness as you step off a square onto another one and a monster lands on your spot?
🗪
1:07:43ezysigh About the one entity per grid spot checking, how will you handle leaving a spot just before a monster lands there? Right now it's binary. Do you plan to add a fuzziness as you step off a square onto another one and a monster lands on your spot?
🗪
1:07:43ezysigh About the one entity per grid spot checking, how will you handle leaving a spot just before a monster lands there? Right now it's binary. Do you plan to add a fuzziness as you step off a square onto another one and a monster lands on your spot?
🗪
1:09:53guitarm87 Someday I will have to ask you about how to think when representing data in a program. I understand structs, enums, arrays and such. But what regulates when to use which?
🗪
1:09:53guitarm87 Someday I will have to ask you about how to think when representing data in a program. I understand structs, enums, arrays and such. But what regulates when to use which?
🗪
1:09:53guitarm87 Someday I will have to ask you about how to think when representing data in a program. I understand structs, enums, arrays and such. But what regulates when to use which?
🗪
1:14:06longboolean So the idea is to have the entity system both be able to support groups of entities that change from one into another (like a monster that mimics other objects), and entities that when separated from the group can take action on their own (like a necromancer resurrecting a ripped off arm)?
🗪
1:14:06longboolean So the idea is to have the entity system both be able to support groups of entities that change from one into another (like a monster that mimics other objects), and entities that when separated from the group can take action on their own (like a necromancer resurrecting a ripped off arm)?
🗪
1:14:06longboolean So the idea is to have the entity system both be able to support groups of entities that change from one into another (like a monster that mimics other objects), and entities that when separated from the group can take action on their own (like a necromancer resurrecting a ripped off arm)?
🗪
1:15:45lachieds Slightly off-topic: On average how many hours a day do you work on 1935?
🗪
1:15:45lachieds Slightly off-topic: On average how many hours a day do you work on 1935?
🗪
1:15:45lachieds Slightly off-topic: On average how many hours a day do you work on 1935?
🗪
1:16:28paganheart On the note of UML, how much / often would you say you deal with that at work, if at all? In the gamedev industry, anyway
🗪
1:16:28paganheart On the note of UML, how much / often would you say you deal with that at work, if at all? In the gamedev industry, anyway
🗪
1:16:28paganheart On the note of UML, how much / often would you say you deal with that at work, if at all? In the gamedev industry, anyway
🗪
1:16:42guitarm87 Good answer, I understand what you mean. Just do it enough and you'll see what works. Experience. Thanks!
🗪
1:16:42guitarm87 Good answer, I understand what you mean. Just do it enough and you'll see what works. Experience. Thanks!
🗪
1:16:42guitarm87 Good answer, I understand what you mean. Just do it enough and you'll see what works. Experience. Thanks!
🗪
1:16:50elyasm Have you thought about using Vulkan? It is super low-level access to hardware
🗪
1:16:50elyasm Have you thought about using Vulkan? It is super low-level access to hardware
🗪
1:16:50elyasm Have you thought about using Vulkan? It is super low-level access to hardware
🗪
1:17:11Wrap it up
🗩
1:17:11Wrap it up
🗩
1:17:11Wrap it up
🗩
1:18:14Announce AndrewJDR's annotated_cpp repository1
📖
1:18:14Announce AndrewJDR's annotated_cpp repository1
📖
1:18:14Announce AndrewJDR's annotated_cpp repository1
📖