Handmade Hero»Forums»Code
Casey Muratori
801 posts / 1 project
Casey Muratori is a programmer at Molly Rocket on the game 1935 and is the host of the educational programming series Handmade Hero.
Has Day 23's Technique Been Documented Before?
So, this is the official thread for people to tell me whether the technique I show on day 23 has ever been documented before, or whether I'm the first person to show it. I am unaware of any prior description of it (or even anyone else who has ever done it, for that matter), but there's a lot of material out there in the wild, so it's possible that it has been talked about before and I just never saw it.

- Casey
38 posts
Has Day 23's Technique Been Documented Before?
Are you talking about the future here Casey? Day 23 is tomorrow... (well, today, but you get what I'm saying)
Casey Muratori
801 posts / 1 project
Casey Muratori is a programmer at Molly Rocket on the game 1935 and is the host of the educational programming series Handmade Hero.
Has Day 23's Technique Been Documented Before?
Yes, I am talking about THE FUTURE!!!

Well, the near future. There will not be hovercars.

OR WILL THERE?

- Casey
38 posts
Has Day 23's Technique Been Documented Before?
There will not be hovercars.

Hoverboards, though, are a given.
Dejan
25 posts
Has Day 23's Technique Been Documented Before?
This has piqued my interest, I'll have to sneak a peek at the twitch stream during my afternoon break!
ambiguous panda
11 posts
Has Day 23's Technique Been Documented Before?
big buildup, anything short of proving the existence of santa will be a big disappointment.
Casey Muratori
801 posts / 1 project
Casey Muratori is a programmer at Molly Rocket on the game 1935 and is the host of the educational programming series Handmade Hero.
Has Day 23's Technique Been Documented Before?
It's going to be pretty f'ing sweet, man.

- Casey
27 posts
Has Day 23's Technique Been Documented Before?
Heard it here first, folks. F'ing. Sweet.
Johan Öfverstedt
45 posts
Has Day 23's Technique Been Documented Before?
I have never heard or seen anything like it in my 20 years of coding and venturing into dark tunnels of algorithms & data-structures. Pretty sweet stuff.
Kasper Sauramo
19 posts
Has Day 23's Technique Been Documented Before?
I do think it is a fairly common feature in recent games.

One parallel I can think of is from the moba/competitive scene where games are recorded for playback and viewing in a client. This allows for multiple viewers of the game inside the client without recording a video and actual "live spectating", saving playbacks, continuing from a point in a replay (very useful in Starcraft 2) and so forth. Here's one of the first articles I stumbled upon when googling: http://www.gamasutra.com/view/fea...play_building_a_game_.php?print=1

I would imagine this is more often implemented on top of the engine layer though (working in the script world), and not combined with hot dll loading. In any case, it seems very similar and if there's something I'm actually missing which makes it totally different, I'd like to hear about it.

On another note, I love the translucent window idea, even though in most real life (non streaming) situations it can be avoided with multiple monitors.
Livet Ersomen Strøm
163 posts
Has Day 23's Technique Been Documented Before?
It's very nice.

About the dll thing, I believe you can push that 100% so the main exe never need to be recompiled? That way you can also upgrade the game remotely while running.

The main exe only need to keep one pointer to the game-memory, that it then delivers back each frame. What I mean is that everything else can happen in game.dll or be controlled by it, as long as ALL of the state is in virtual memory, and can be found via this one pointer. No static variables in dll. You could put version info in gamestate, and the new dll can reformat data as needed to keep running. Unless I miss something?
Casey Muratori
801 posts / 1 project
Casey Muratori is a programmer at Molly Rocket on the game 1935 and is the host of the educational programming series Handmade Hero.
Has Day 23's Technique Been Documented Before?
It's the live code editing plus the replay that I was talking about. Playing back the game state is not new - there were companies that did that commercially, even (not sure what happened to them... one was called "Replay" or something). It's setting up the loop and editing the code while viewing the loop that I've never seen demoed before.

- Casey
Kasper Sauramo
19 posts
Has Day 23's Technique Been Documented Before?
That is something I was unable to find and have never come across. I bet sometime somewhere in a place far away there's been a scenario where an artist/script writer has thought about how awesome it would be, mentioned it to the dev team and they've dismissed it as too hard and not worth it. But that could be it.

I feel I'm not worthy of the knowledge of this awesome power.
Adrian McCarthy
8 posts
Has Day 23's Technique Been Documented Before?
Bret Victor has a talk from 2012, where he demos some ideas for making the connection between the coding and the result much tighter and more real time. It includes lots of demos, some of which are games or game-like. He doesn't talk (much) about the implementation of his demos, just at what instant feedback and easy experimentation can enable. It's an excellent talk overall, but the most relevant bits (and fun demos) are in the first half.

http://vimeo.com/36579366
Nia
1 posts
Has Day 23's Technique Been Documented Before?
Edited by Nia on
aidtopia
Bret Victor has a talk from 2012, where he demos some ideas for making the connection between the coding and the result much tighter and more real time. It includes lots of demos, some of which are games or game-like. He doesn't talk (much) about the implementation of his demos, just at what instant feedback and easy experimentation can enable. It's an excellent talk overall, but the most relevant bits (and fun demos) are in the first half.

http://vimeo.com/36579366


Yes! This is the exact video I was thinking of and looking for to post to this topic. Thank you for sharing. I was having trouble finding the right keywords to find it. :)

Edit: Here is something one of my friends found while I was talking with them about the same talk. Someone implementing what Bret Victor did, and giving their own input on it. http://www.chris-granger.com/2012/02/26/connecting-to-your-creation/