datanon

channel image

datanon

datanon

subscribers

Pretty much the hardest IWAD level. Requires cheese due to Barons being more of a threat (if you want 100% kills). I cut all the deaths and menu nav, but to give some perspective the original footage was around 16 minutes, and I cut about 4 minutes at the start. I think I died 3-4 times total during the course of the level after that point.

A little bit of awkward pausing here but I think I cut the majority of it.
File here https://mega.nz/#!SkEWlCqQ!GJfINP3LEhVch11nUyqkKjIDHzRq1K4adgdAZhbtuBY

ZS HUDs never ever :^) but maybe once I untangle the mess of an API they use.
Also technically binding something to "+command" auto registers the KeyUp event to "-command". Kinda forgot to mention that. If you ever think you may want "-command" it's good practice.

OH NO I NOTICED SOMETHING WRONG. Somehow the mod preserved an old lump that caused this issue to not break it, but for the record:
You need to define event handlers in a MAPINFO lump, either inside a gameinfo section like
gameinfo
{
addeventhandlers = "FearHandler"
}
Or inside a specific map by name. Sorry about that. I'll probably redo this video just to correct it.

Entity Component model & why UI is handled off-thread relative to the game world
https://www.gamedev.net/articles/programming/general-and-gameplay-programming/understanding-component-entity-systems-r3013/
https://gamedev.stackexchange.com/questions/70382/why-game-loop-should-be-running-on-a-separate-thread

Get the pk3 here, go through it yourself and mess with it!
https://mega.nz/#!n4EiRAwK!JrX01KSxa9GfS_rEewZ5w-Mu6BwMOEtjjoMMqqMXO7Q
As much as I'd *love* to make a ZS HUD video next I think I'll probably keep my sanity and maybe address another topic first.

RIP your speakers around 16min I'm so sorry I'll never laugh again.
(These can get very complex so if you don't understand don't worry)
https://en.wikipedia.org/wiki/Iterator
https://www.quora.com/What-is-an-iterator-2
also relevant are
https://en.wikipedia.org/wiki/Modulo_operation
https://www.tutorialspoint.com/computer_programming/computer_programming_arrays.htm
https://www.tutorialspoint.com/design_pattern/singleton_pattern.htm

In the process of encoding this video I realized you can just call Destroy() to kill an actor cleanly. Oops. Babel's getting a new optimization then :^)

NOTE: BeginPlay() is called when an actor is created, not at the start of a level. I mean technically it's also at the start of a level but that's because actors are created at level start.
Hopefully I didn't ramble on too long, but this topic is really complex and I didn't want to go overly fast or gloss over anything.

Useful Links
http://www.learncpp.com/cpp-tutorial/122-virtual-functions/
http://www.cplusplus.com/doc/tutorial/pointers/

Anon wanted to see it fry a computer, so he can watch it fry mine. No cuts or editing.
Turns out the SSG stutter is probably from all the signals having to iterate through like 4000+ monsters whnever you fire, but I actually managed to make it less bad by staggering its own fear signal so that's something.
EDIT: Oh shit it's not it's from the SSG puffs mostly because they check distance. Will attempt to fix.

When you name an anonymnous function, it just becomes a named function.
Type-casting is better explained here https://en.wikipedia.org/wiki/Type_conversion
Types can be found here https://zdoom.org/wiki/ZScript_variables
An explanation of scope can be found here https://en.wikipedia.org/wiki/Scope_(computer_science)

SHOW MORE

Created 6 years ago.

9 videos

Category None