6 ms·
The SCUMM Diary: Stories behind one of the greatest game engines ever made
- aylons 13y agoAs a hardware and platform engineer, I can relate to the very satisfying feeling that is making a tool that enable several projects beyond what you could do by yourself. This is why a part of me dies everytime I read "full stack engineer". Not only it is imprecise, it sounds a little sad. I like being in the bottom layers of the stack, enabling several people in the others.
- gandalfu 13y agoThe "stack" most people using the term today consider is barely the tip of the iceberg. Computer programming has been trivialized by web development and most newcomers are still busy reinventing lisp. Give it sometime for them to discover where their code is running...
- bostik 13y ago> I can relate to the very satisfying feeling that is making a tool that enable several projects beyond what you could do by yourself. That is indeed a mark of good engineering. Looking at ScummVM, I can only think that SCUMM must have been the product of truly great engineering. A single codebase, supporting dozens of games? The basic design of SCUMM has to be solid for that to be possible. Compact, check. Extensible, check. The other adventure powerhouse of the time, Sierra, apparently had at least two different engines. (I know there was AGI, and the last I tried, AGI-interpreters could not play all the Sierra games. Another kind of interpreter was needed for some titles.) Now, if only Infocom had used bytecode for their games, instead of hard-wiring the game logic inside their executables. I still remember fondly their best titles: Spellcasting 101, Gateway, Eric the Unready, Super-hero league of Hoboken, ... -deep sigh-
- rsaarelm 13y ago> Now, if only Infocom had used bytecode for their games, instead of hard-wiring the game logic inside their executables. I still remember fondly their best titles: Spellcasting 101, Gateway, Eric the Unready, Super-hero league of Hoboken, ... Those are Legend Entertainment games. Infocom did use bytecode, and you can play their games on just about anything smarter than a toaster these days: http://en.wikipedia.org/wiki/Z-machine http://en.wikipedia.org/wiki/Z-machine
- bostik 13y agoThank you, I stand corrected. Mixed up the company name. :/
- cstuder 13y agoFull page instead of 6: http://www.gamasutra.com/view/feature/196009/the_scumm_diary_stories_behind_.php?print=1 http://www.gamasutra.com/view/feature/196009/the_scumm_diary...
- stuartmemo 13y agoAn example of SCUMM script from http://www.pagetable.com/?p=614 http://www.pagetable.com/?p=614 actor sandy face-right actor sandy do-animation reach walk-actor razor to-object microwave-oven start-script watch-edna stop-script stop-script watch-edna say-line dave "Don't be a tuna head." say-line selected-kid "I don't want to use that right now." if (melt-down) { say-line selected-kid "I don't think this game is very fun." }
- Scaevolus 13y agoThe ScummVM wiki has more details on how the SCUMM bytecode works: http://wiki.scummvm.org/index.php/SCUMM/Technical_Reference http://wiki.scummvm.org/index.php/SCUMM/Technical_Reference One interesting feature is cooperative threading for up to 25 threads.
- asperous 13y agoIt talked about this in the article: "Probably the most distinctive part of SCUMM was that it was multi-tasking. This meant that multiple scripts could effectively run simultaneously. You might create a clock on the wall in Zak McKracken’s office and have it animate. [...] The script would simply command the actor to walk, and then issue a “wait-for actor” command which put the script to sleep until the actor had arrived or was facing the right direction. This allowed you to write your scripts in a very linear fashion reflecting the series of steps that you wanted the actor to follow."
- pygy_ 13y agoMr. Wilmunder, I presume?
- taeric 13y agoThe name wasn't really trademarked, but we wanted to name it after another bodily fluid. I love everything about the culture as I understand it there.
- mnemonik 13y agoSCUMM VM ported to JS: http://clb.demon.fi/html5scummvm/ http://clb.demon.fi/html5scummvm/ Github: https://github.com/juj/emscripten-scummvm https://github.com/juj/emscripten-scummvm
- deleted 13y ago[deleted]
- TheCraiggers 13y agoThe thing that always amazed me about SCUMM was that they managed to make Moonbase Commander in it, which was a turn-based strategy game with online multiplayer built in. Granted, it does some weird stuff with the engine (to the point that, to my knowledge, no SCUMM emulator can play the game) but it still amazes me that the engine was that flexible.
- deleted 13y ago[deleted]
- deleted 13y ago[deleted]
- zobzu 13y agomy fav games are "incidentally" all running on scumm