Program Your Knights To Escape Treacherous Dungeons - Selfless Heroes (Northernlion Tries)

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 พ.ย. 2024
  • Selfless Heroes on Steam: store.steampow...
    Selfless Heroes is programming-themed dungeon-crawling puzzler that feels a bit like 7 Billion Humans. Check it out!
    If you enjoyed the video, please consider hitting the Like button. It helps me out a lot!
    -----------------------------------------------
    Subscribe: bit.ly/Northern...
    Follow me on Twitter: / northernlionlp
    -----------------------------------------------
    About this game:
    Solve puzzles by designing an AI for a team of selfless heroes. Test your algorithm, optimize it, and emerge victorious from the dungeon!

ความคิดเห็น • 162

  • @um536vids2
    @um536vids2 4 ปีที่แล้ว +259

    "Hi my name is Ryan and I write IF statments that are always true." -programmers anonymous

    • @snork_games
      @snork_games 4 ปีที่แล้ว +4

      hahahahahahahaha

  • @SmiteTheJinx
    @SmiteTheJinx 4 ปีที่แล้ว +103

    NL: I need to delete the preset first step of this puzzle
    ME: I had no idea you could be further away from the solution than you start at the beginning of the level, but the madmans done it

  • @michaelgibbons7014
    @michaelgibbons7014 4 ปีที่แล้ว +115

    As SOON as I thought "he should move his camera" he moved his camera. He's a goddamn professional gamer

  • @yewwowduck
    @yewwowduck 4 ปีที่แล้ว +24

    As a programmer, I love the DAE humor
    Also, code tip, don't put an else with every if (unless it wont allow you, hard to tell). If you want to walk down until you reach a cauldron and drop, don't do "IF X drop ELSE step" just do "IF X DROP, STEP" because they are always going to step regardless of anything else, unless they can't anymore.
    You can think about it like "what are all the things I need to do before stepping, then step"
    Also, unless there are 2 conditionals that are mutually exclusive, you do not need to "else"
    Combining these two would have removed lines 4, 5, 6, and 9 from your last puzzle. Perfectly valid way to solve it as you did, and coding is 100% an iterative process.

    • @JohnDoe-xx8yw
      @JohnDoe-xx8yw 4 ปีที่แล้ว +1

      He mentions he probably should try to dump the else fairly early on, and tries to at 24:08. Looks like it doesn't work

  • @ashraftalukder711
    @ashraftalukder711 4 ปีที่แล้ว +17

    "You think I'm worried about the efficiency of my path finding algorithm, this thing can run CRYSIS"
    -Computer Scientist NL 2020

  • @Jonkas1212
    @Jonkas1212 4 ปีที่แล้ว +44

    "This thing can run Crysis" - my god, no one man should have all that power.

  • @runt9plays967
    @runt9plays967 4 ปีที่แล้ว +87

    > programming-themed dungeon-crawling puzzler
    Welp, that's the fastest I've ever added a Northernlion Tries game to my wishlist!

    • @tracyh5751
      @tracyh5751 4 ปีที่แล้ว

      there are dozens of these types of games, although the theming is different.

    • @min2724
      @min2724 4 ปีที่แล้ว +7

      @@tracyh5751 Brother, I know you're just exaggerating but I dare you to name even 2 more "programming-themed dungeon-crawling puzzler" game.

    • @incog0956
      @incog0956 4 ปีที่แล้ว +2

      @@min2724 just leaving a reply so if they name them I get a notification and buy them

  • @mefistowski5292
    @mefistowski5292 4 ปีที่แล้ว +69

    My man just refuses the existence of diagonal movement

    • @hamlap
      @hamlap 4 ปีที่แล้ว +8

      If you live in eggdimensional space diagonals are trivial.

  • @blackfang04
    @blackfang04 4 ปีที่แล้ว +131

    This music is chill enough for an anime girl to study to.

    • @pungkrock
      @pungkrock 4 ปีที่แล้ว +4

      Felly - Fabrics :)

  • @umbaupause
    @umbaupause 4 ปีที่แล้ว +18

    "If there is an egg below you, then you're going to take down."
    To establish yourself as the superior egg, making sure nobody steps up to the king?

  • @Eclipse8502
    @Eclipse8502 4 ปีที่แล้ว +17

    NL : "I wonder, if we just programmed in the most hack-ey way possible..."
    Hey its my colleagues.

  • @aumetra
    @aumetra 4 ปีที่แล้ว +52

    'As long as its readable, that might be more important for maintenance on the future.'
    Congrats egg! You are now smarter than some of my coworkers 😅

    • @incog0956
      @incog0956 4 ปีที่แล้ว +1

      Them: it works
      Me: after reading the code* how
      Them: it works
      Me: but...
      Them: shh shh it works

  • @timothyluu9509
    @timothyluu9509 4 ปีที่แล้ว +2

    One of my favorite parts of this series is the positivity you bring. I’m sure it’s easy to rag on a game, but you actually do a great job of presenting games even if they aren’t your cup of tea.

  • @nickcrusaire
    @nickcrusaire 4 ปีที่แล้ว +60

    Game: "it is advisable to follow this tutorial carefully"
    TH-camrs: "Tutorialization of mechanics prepare to be ignored"

  • @TheGoshujinsama
    @TheGoshujinsama 4 ปีที่แล้ว +6

    "Excuse me, I'm very dumb" - Ryab 2020
    "Thinking you're dumb is a power move. If you think your dumb and your wrong then you're smart. If you think you're dumb and you're right... well at least you got one thing right." - Also Ryab 2020

  • @darklaier
    @darklaier 4 ปีที่แล้ว +15

    My egg I think you are thinking of a RESTful API at 4:00

  • @normalraptor
    @normalraptor 4 ปีที่แล้ว +5

    All of those OOP class culminates for this very moment of puzzle solving for a NL tries video. Poggers.
    Keep it up NL!

  • @TheShadesOfBlack
    @TheShadesOfBlack 4 ปีที่แล้ว +5

    Game: Has diagonals
    NL: Lets go right then up

    • @Luteloots
      @Luteloots 4 ปีที่แล้ว +2

      To be fair when I saw knights standing on a checker patterned floor in a programming game I did not expect you to be able to do diagonal movement myself.

  • @MegasXLM
    @MegasXLM 4 ปีที่แล้ว +11

    The tutorialization is a little heavy but once you get to solving complex problems that difficulty ratchets right up. I'm pretty tempted to pick this up to have a fun way to keep my efficiency sharp.

    • @incog0956
      @incog0956 4 ปีที่แล้ว

      If you played it you should also try 7 billion humans

  • @joehemmann1156
    @joehemmann1156 4 ปีที่แล้ว +10

    NASA did not land 3 men on the moon, it was 2, the third guy orbited the moon in the command module. Pedantic stat +1!

    • @LoreleiBlaine
      @LoreleiBlaine 4 ปีที่แล้ว

      tbf they did send more than that one trip, totaling much more than three men on the moon eventually

  • @mateuscaldeirabrantaraujo
    @mateuscaldeirabrantaraujo 4 ปีที่แล้ว +8

    PC Egg: Roguelite D A D
    Nintendoswitchplaystation4 Egg: MM2 G O D
    Othercapturemonitor Egg: PRO-GRAMMING M A J O R

  • @SpaceButler010
    @SpaceButler010 4 ปีที่แล้ว +2

    The switching to and from a normal text code editor is pretty cool. Neat looking game.

  • @Rlh1994
    @Rlh1994 4 ปีที่แล้ว

    The fact that this has a text editor in to use instead of the drag and drop is really interesting to get people more familiar with typing code, not seen that in many other types of these games!

  • @cptKamina
    @cptKamina 4 ปีที่แล้ว

    @28:20
    Game: "Your heroes are smart enough to understand that you're talking about the egg"
    NL: "If below = egg"
    Fantastic, just fantastic :D

  • @ravenjoker254
    @ravenjoker254 4 ปีที่แล้ว +22

    should I consider it purposeful irony when YT is running hair product ads before Egg's videos?

  • @gammafighter
    @gammafighter 4 ปีที่แล้ว +6

    "If baba is you..."

  • @Draugo
    @Draugo 4 ปีที่แล้ว

    I'm not usually really that much into these since they pretty much always boil down to the same levels but the fact you can type the code instead of using a fiddly graphical editor has raised my interest.

  • @MereddynYT
    @MereddynYT 4 ปีที่แล้ว

    About your engine question: Selfless Heroe is an open source game made in Phaser, a browser game libary, running on desktops via electron (or similar). You can look at the source on github

  • @chanm01
    @chanm01 4 ปีที่แล้ว +1

    I know he references it within the first minute of the video, but this is _actually_ 7 Billion Humans with a pallet swap and an exposed text editor.

  • @CheeseCakeCactus
    @CheeseCakeCactus 4 ปีที่แล้ว +1

    We have to celebrate these rare times in egghistory where we get to see the “I-don’t-know-what-game-engine-the-game-was-made-in-so-it-doesn’t-capture-with-window-capture-or-game-capture-on-OBS-so-I-gotta-use-display-capture-to-look-at-my-other-monitor” egg

  • @AlteroPax
    @AlteroPax 4 ปีที่แล้ว +1

    I love how this game looks like it is actually using the Atomic drop-in version of VS Code to power the text editor side of it.

  • @sayftarek9326
    @sayftarek9326 4 ปีที่แล้ว

    Dude I used to hate watching you play these games in the past, now that I've been studying this bs for 3 years, this is a joy to watch!

  • @paulmizter7583
    @paulmizter7583 4 ปีที่แล้ว +2

    I've been programming from home since the quarantine has started and no joke, your content has kept me sane while being stuck at home during the day by myself! Thanks!!

  • @alecwilliams1556
    @alecwilliams1556 4 ปีที่แล้ว

    Only time you need to worry about how efficiently written your code is, is when you’re going for those 3 gold stars baybeeeee

  • @PriM3QuEsTiOn
    @PriM3QuEsTiOn 4 ปีที่แล้ว

    btw nl, dont know if you realized this after the video but you can create multiple solutions for the same level and those together increase the number of stars. the solutions add to your star total for the level

  • @CreeperSlayer365
    @CreeperSlayer365 4 ปีที่แล้ว

    14:30 most game developers excessively worry about writing the most optimized code because multiple instances of our code has to execute in 1/60 of a second. Most programmers get a little more wiggle room to write scripts so in their field readability is more important.

  • @Mort-lf3gx
    @Mort-lf3gx 4 ปีที่แล้ว

    Thanks for playing! Wouldn't mind seeing this again sometime 👨‍💻

  • @KurtisRainboltGreene
    @KurtisRainboltGreene 4 ปีที่แล้ว

    Holy shit, they actually used blockly to translate from blocks to javascript. That's insane. That's fucking genius. I'm blown away.

  • @litapd311
    @litapd311 4 ปีที่แล้ว

    had this on my second monitor while doing a programming project. it was inspiring to know i could at least out program NL :p

  • @ronaldduttweiler1578
    @ronaldduttweiler1578 4 ปีที่แล้ว

    Fun little game and NL did well. I'm glad he didn't try to perfect all the code and just kept going, made it a lot more fun

  • @TheYontartu
    @TheYontartu 4 ปีที่แล้ว

    This is how they teach 1st graders programming concepts, good video NL

  • @tracyh5751
    @tracyh5751 4 ปีที่แล้ว

    28:18-28:24 this check doesn't need to be done because the value of the egg is always greater than 4 here.

  • @Alluvian567
    @Alluvian567 4 ปีที่แล้ว

    Ooh! 7 billion humans with a code editor mode? Yes please. Hope the puzzles are fun and there are enough of them. Other than that it looks GREAT.

  • @killermelga
    @killermelga 4 ปีที่แล้ว +2

    "when you do the apis and the for(techTerm in OutdatedTechTermsList) print(techTerm + "and the")"
    You know what I'm talking about

  • @nickalaskreynolds
    @nickalaskreynolds 4 ปีที่แล้ว +3

    ,,It is advisable to follow this tutorial carefully'' ohh they know the egg too well.
    I love a throwback to the NL programmer arc. Thanks for the content.
    added to my wishlist

  • @gheromesilvestre7803
    @gheromesilvestre7803 4 ปีที่แล้ว

    I can't stand to keep watching you play these puzzle games, NL. But I will

  • @TheCrybn
    @TheCrybn 4 ปีที่แล้ว

    Yoooo great video. Always enjoy watching puzzle games to see what solutions you come up with compared to what I think might work.

  • @kokosan09
    @kokosan09 4 ปีที่แล้ว

    this game makes my brain hurt, but it was still fun watching you puzzling it out!

  • @sm79165
    @sm79165 4 ปีที่แล้ว

    take a shot for every "I didn't put a frickin loop in it"

  • @Char7es96
    @Char7es96 4 ปีที่แล้ว +1

    Literally bought the game out of frustration

  • @busorenkin55
    @busorenkin55 4 ปีที่แล้ว

    Great video Ryan nice background noise for me while I work lol

  • @jasonanglemyer5543
    @jasonanglemyer5543 4 ปีที่แล้ว +3

    Great video. Thanks egg

  • @zacaa8977
    @zacaa8977 4 ปีที่แล้ว +1

    This game is so relaxing to watch!

  • @timefororbit
    @timefororbit 4 ปีที่แล้ว

    This is puzzle gaming at peek performance.

  • @Ale-mv3gr
    @Ale-mv3gr 4 ปีที่แล้ว +5

    I think this is golden goblet material.

  • @incog0956
    @incog0956 4 ปีที่แล้ว

    This is very 7 billion humans, in a good way

  • @EverClear0
    @EverClear0 4 ปีที่แล้ว

    Carnage Heart (Playstation 1) from 1995 or Gladiabots Steam) are both fun similar examples.

  • @niklas6047
    @niklas6047 4 ปีที่แล้ว

    I'd love more of this, what a comfy game!

  • @maximrose6259
    @maximrose6259 4 ปีที่แล้ว

    Dont forget to use And/Or function to simplify the line.

  • @minhuang8848
    @minhuang8848 4 ปีที่แล้ว

    "at least on the first ten or so levels I'm not gonna get bodied, which is very rare for me in those puzzle games"
    Is it though?

  • @TrollinErryday13
    @TrollinErryday13 4 ปีที่แล้ว

    Nice try Eggman! I heard the start of your "Selfless Knights" Grease parody at the end there, don't go thinking you snuck away from that!

  • @boiledpotaatti
    @boiledpotaatti 4 ปีที่แล้ว

    Remember how in ye olde computer classes (20 years ago) you were taught how to code websites? Somehow NL's "code copying" reminded me of it. I used to scour existing sites' codes all the time and copy anything that looked neat.

  • @snork_games
    @snork_games 4 ปีที่แล้ว +2

    Ah, the ol' NL makes you buy the game so you can prove you know better.
    WP developers, WP
    (I know they didn't sponsor/give him a code)

  • @EzioAuditoreDiPortal
    @EzioAuditoreDiPortal 4 ปีที่แล้ว +1

    You're absolutely correct that I'm watching this while doing software development
    So are we gonna talk about the majority of this game being identical to 7 Billion Humans, including the plaintext code language? (in 7 Billion Humans the plaintext was hidden but it was used for copy/paste, so you could paste into a text editor outside of the game and modify it, then copy it and paste it back into the game with the modifications) Especially the drag and drop code interface, like at least they came up with different sprites for the humans / datacubes / shredders. Seems pretty selfish if you ask me...

    • @TheNr1CoD4pro
      @TheNr1CoD4pro 4 ปีที่แล้ว

      Yeah, I don't like that it's a copy with no credit to the tomorrow corporation game... Seems to mainly use stolen code. They'd didn't take the time to at least redo all of it...

  • @georgeclose1
    @georgeclose1 4 ปีที่แล้ว

    This seems so cool, and the presentation is great. Thanks NL!

  • @johnbottomley102
    @johnbottomley102 4 ปีที่แล้ว

    Really enjoyed watching this one

  • @jozsefb7272
    @jozsefb7272 4 ปีที่แล้ว +1

    Congratulations Egg, you have finally achieved the goal of your "Let's look at" series.
    I am BUYING this game.

  • @dedale2610
    @dedale2610 4 ปีที่แล้ว

    Thanks for trying this, looks really interesting :)

  • @Sadddude
    @Sadddude 4 ปีที่แล้ว

    One step away from NL playing Exapunks.

  • @CrownOfMagic
    @CrownOfMagic 4 ปีที่แล้ว

    I don't love these games for me but I sure love them for the Egg

  • @Xplodonator
    @Xplodonator 4 ปีที่แล้ว

    I actually had a stroll through youtube. I saw some really... let's be civil: weird Let's Players. Glad I kept this one for last. Balm for my poor soul.

  • @moonmaan
    @moonmaan 4 ปีที่แล้ว

    I would like to see NL try to run Crysis on his computer.

  • @KarioDudeRBN
    @KarioDudeRBN 4 ปีที่แล้ว

    He got it stuck in his brain that he had to put "if" commands for everything. The boss is actually not that hard. Start with step right, then follow that with the if commands.

  • @HighLanderPonyYT
    @HighLanderPonyYT 4 ปีที่แล้ว

    When the dev makes you do the work for them.

  • @andrewgriffiths573
    @andrewgriffiths573 4 ปีที่แล้ว

    Hey egg, I appreciated and enjoyed this content. :)

  • @Forgedelver
    @Forgedelver 4 ปีที่แล้ว +1

    If Egg releases video
    me = happy

  • @Calcimer
    @Calcimer 4 ปีที่แล้ว +1

    Free version of the game in their webpage ^^

  • @inukami8963
    @inukami8963 4 ปีที่แล้ว +1

    As a programmer, I hate that a lot of these "optimal" solutions have these knights performing no-ops, for instance an optimal solution at 11:25 is a; fireball(s); fireball(n); step(e); jump a;
    Also come on it's 2020, no one is using jump statements in high level programming to make a loop

    • @05Matz
      @05Matz 4 ปีที่แล้ว +2

      Yeah. I really like programming/design focused games (as well as the oddball "programming-adjacent" or "engineering" games like Zachtronics' "Bureau of Steam Engineering" or their hardware-hacking ones I can't spell; or the various The Incredible Machine clones and sequels) and wish there were more of them (especially genre hybrids, which I feel is relatively novel territory), but the fashion for them these days seems to be to base them primarily around literal or metaphor-cloaked Assembly Language and super-low-level timing problems that require very... antiquated and specific methods to solve. It's particularly frustrating in cases where an inability to write optimised solutions prevents progression. I really want to like Shenzhen IO, for example, but after getting to a certain level I just can't seem to meet the super-strict code length limits with the tools provided, particularly when I have to debug complex timing interactions without increasing the code length even for testing.
      It seems like modern programming games almost always involve some combination of jump-based flow control, writing optimally-shortened code, and synchronizing multiple agents by counting instructions (because apparently they all share a clock, but have no other practical means of communicating...), usually all three at once.
      GOTO has been "considered harmful" in anything that's not Assembly since basically forever (and very few people have to touch that these days), we've largely stopped caring about the in-memory length of our code (aside from on certain embedded systems) since our data sets grew to massively eclipse it in size, and I'm honestly not sure under _what_ circumstances somebody would attempt to synchronize multiple processors by counting the instructions they execute.
      I just feel like there should be more to the programming game genre than "writing optimised Assembly on a very limited processor". It can be an interesting challenge when presented in a fun theme and with a gentle-enough difficulty curve, but I always find myself either getting stuck or losing interest in those low-level cycle-counting/register-usage-optimisation/jump-logic-based puzzle games very quickly -- whether it's more literal bare-metal computer programming like Human Resource Machine or Shenzhen IO, or something more metaphorical like SpaceChem. Writing that kind of code for non-trivial problems feels really daunting and frustrating! I know I'm not a great programmer, but the problems posed in these games are not really indicative of what "computer programming" normally means today, and I think they might turn beginners off by making it seem more complicated than it is. Optimisation is a thing that is sometimes necessary after a working prototype is written, but the problem solving and logical decomposition of a goal is both more important and more _fun_. Making the games (which are supposed to be fun and possibly somewhat educational about the basics) almost entirely about optimisation (the less critical, un-fun part) seems to miss the point. It is much easier to score, though; which in the absence of a rich context "outside" your programs makes it much easier to construct a game around it.
      ...It's after 2:15AM and even I can see I'm rambling, so I should stop talking now. Have a nice day.

    • @aenpien
      @aenpien 4 ปีที่แล้ว +1

      @@05Matz There's this game, Screeps, that requires you to program on a much higher level (basically writing javascript to play a multiplayer RTS for you). However, optimization remains very important (that's a negative for me). Check it out. Disclaimer: I played it 3 years ago and haven't kept up with updates/changes.

  • @JBobbyB
    @JBobbyB 4 ปีที่แล้ว

    Step(e)
    Step(e)
    Step(e)
    Step(e)
    If spike(e)
    Then step(e)
    Is how you get that first part, no looping bois we in this

    • @JBobbyB
      @JBobbyB 4 ปีที่แล้ว

      Then
      7x step(e)
      If (e) is spike
      - Step(e)

  • @MrPavarok
    @MrPavarok 4 ปีที่แล้ว

    Long live Spaces, NL. Join us.

  • @JBobbyB
    @JBobbyB 4 ปีที่แล้ว

    Hello NL, and thank you.
    Carry on.

  • @NicolaVoid
    @NicolaVoid 4 ปีที่แล้ว

    that game was actually nice !

  • @Droid15243Z
    @Droid15243Z 4 ปีที่แล้ว

    Time to look into this game!

  • @ColtonPhillips
    @ColtonPhillips 4 ปีที่แล้ว

    I know what he was talking about this game is programmed in api get pull push pop request and runs on mongodb with antialiasing enabled locally on mipmap cron timer bash scripts

  • @ryandarshen1846
    @ryandarshen1846 4 ปีที่แล้ว +3

    NL has a left side to his face???

  • @MattBee2k2
    @MattBee2k2 4 ปีที่แล้ว

    Never been this fast to a video

  • @Pedroebut
    @Pedroebut 4 ปีที่แล้ว

    11:14 you needed to move in a diagonal instead of doing left down/right up

    • @Pedroebut
      @Pedroebut 4 ปีที่แล้ว

      22:13 maybe if you had used a step up or down to waste time, so if to your right is a switch step right and up then go back to normal.

    • @ruzziasht349
      @ruzziasht349 4 ปีที่แล้ว

      @@Pedroebut go back to normal? do you mean step back?

  • @Symbiode_
    @Symbiode_ 4 ปีที่แล้ว

    I bought this game after watching this!

  • @SBBurzmali
    @SBBurzmali 4 ปีที่แล้ว

    I mean, there's a reason it can play Crisis...

  • @blue_genes
    @blue_genes 4 ปีที่แล้ว

    U had me at program

  • @yabbdab
    @yabbdab 4 ปีที่แล้ว

    I think the steamer is thinking of CRUD operations

  • @mitchellward5855
    @mitchellward5855 4 ปีที่แล้ว +1

    Just here for the algorithm

  • @chrisstans9606
    @chrisstans9606 4 ปีที่แล้ว

    I have no idea what he is talking about but I am here

  • @TheVictorpenha
    @TheVictorpenha 4 ปีที่แล้ว +7

    Here we go again, NL is gonna make me buy another game because he cannot play it right lol

    • @um536vids2
      @um536vids2 4 ปีที่แล้ว +2

      Black Phillip that happens to me with amplitude studios games all the time.

  • @DanielSDiggs
    @DanielSDiggs 4 ปีที่แล้ว

    Good ole REST API, I miss code egg

  • @craigwatkins6539
    @craigwatkins6539 4 ปีที่แล้ว

    Ohh shit. They let you code in the game. Instant buy for me.

  • @mikaelmacial
    @mikaelmacial 4 ปีที่แล้ว

    NL, play Night of The Full Moon!!! It is a Slay The Spyre + Little Red Hood card game!!!

  • @kevinkent5095
    @kevinkent5095 4 ปีที่แล้ว

    The Boolean Boy

  • @will_wmgc
    @will_wmgc 4 ปีที่แล้ว

    Quality entertainment and made my gf want to learn to code. Well played NL. You are an egg > 4

  • @evraegrace7461
    @evraegrace7461 4 ปีที่แล้ว

    Fs in chat for the clock cycles, bois