>write whole game >put it into a library >call it in 1 line
@apropo886810 ай бұрын
basicly
@XonokMe10 ай бұрын
Your comment squished to one line: "import minecraft"
@LordVandor110 ай бұрын
I disliked
@abdou.the.heretic9 ай бұрын
#include int main() { game.start(); return 0; } EZ.
@Fortnitestrocker9999 ай бұрын
@@LordVandor1 why do u have italian death note intro
@thethe928610 ай бұрын
And then there’s me who attempted to make Tetris in python and somehow it had like 8k lines and still didn’t work
@875393196 ай бұрын
haha having a game engine is a huge difference!!
@drew74575 ай бұрын
That's rough buddy
@jes78994 ай бұрын
I mean they had a game engine
@tino2588522588522 жыл бұрын
Imagine what these guys could do if they realized you can write more than 10 lines of code! Jokes aside, I enjoyed this a lot!
@PlayWithFurcifer2 жыл бұрын
...wait, you can do that?! thank you :)
@KeithOlson Жыл бұрын
@@PlayWithFurcifer Pssst. 0x10 lines.
@WohaoG Жыл бұрын
Yeah, you can use up to *11* lines! @@PlayWithFurcifer
@saschaheinzelmann6984 Жыл бұрын
im pretty sure i needet more then 10 lines for my first "hello world" programm, and at least 9 or em where not needet :D
@Ricardo1701 Жыл бұрын
Well, now they have a top 50 game on Steam, lol
@Aarimous2 жыл бұрын
I know game dev is just a bunch of duck tape and hacks, but this takes that to a whole new level!! Nice work.
@PlayWithFurcifer2 жыл бұрын
Lots of duck tape here :>
@Playburger1337 Жыл бұрын
Nivea und Panzertape in der matrix, genius duo! @@PlayWithFurcifer
@TinariKao Жыл бұрын
*adjusts monocle* The tape is known as "duct" tape as it was originally used in taping ducts together. Duck tape is a brand of tape that was made much later because they realized more people said "duck tape" than "duct tape". Fun!
@kevnerx Жыл бұрын
I like not having to choose when saying it out loud since it sounds the same in most accents. I do not like when someone thinks they're correcting me by clarifying. In those situations it helps to have both a branded and non branded roll in your back pocket at all times. Just in case.
@TinariKao Жыл бұрын
@@kevnerx I like the idea of having a roll of both and when someone asks, you ask back with a little coy trailing off in your voice, "Oh, sorry... did you want duc.... tape or duc... tape?"
@rigen97 Жыл бұрын
The moonwalking skeleton is honestly just the right amount of jank to give a game like this a charm. This is a pretty crazy undertaking, good job
@8singularity2 жыл бұрын
This is brilliant. Not only do you demonstrate the workflow and thought process for coding and editing, you do so with a smile. In other words, your video made me feel like I can do it too. Thank you guys!
@PlayWithFurcifer2 жыл бұрын
Thank you so much :) I bet you can do it!
@leetri2 жыл бұрын
It's kinda crazy how versatile the AnimationPlayer is
@PlayWithFurcifer2 жыл бұрын
I love it
@SmeddyTooBestChannel2 жыл бұрын
Literally if it had to ability to change position as opposed to it being set screen locations it would be perfect (which I hear they are working on, so in theory it IS perfect).
@milesparker5572 жыл бұрын
Kinda makes me think about which parts of my game i should move to the animation player.
@w花b2 жыл бұрын
@@milesparker557 new challenge, make a game only in the animation player.
@daxillion2 жыл бұрын
Only three days ago I started learning game development and godot... I loved it from the first instance ( pun intended), and earlier today, I realized that the animation player is unbelievably amazing. This video confirmed my hypothesis.
@Ethereal_Phoenix_ Жыл бұрын
I created a game in this genre recently for a game jam, probably had 20x the code and honestly not much more functionality. Very impressive work.
@PlayWithFurcifer Жыл бұрын
@quinndepatten44422 жыл бұрын
More of this please! Stuff like this seems perfect for understanding every nook and cranny of the engine.
@PlayWithFurcifer2 жыл бұрын
Thank you! :)
@elymX7 ай бұрын
Son: Dad can we buy Vampire survivors? Dad: Give me 7 mins Son
@viper26k Жыл бұрын
And that's how you learn that less lines of code doesn't mean good coding. Very impressive video!
@TheLemonyOne Жыл бұрын
I've never seen someone turn an entire game into a code golf challenge, amazing
@dandymcgee11 ай бұрын
"10 lines of code" (+ 10 million lines of dependencies)
@PlayWithFurcifer11 ай бұрын
you say this as if its a bad thing :D try coding without an editor, OS, compiler,...
@joshbond83916 ай бұрын
@@PlayWithFurcifer People do it's called bare metal programming, how do you think your operating system kernel exists in the first place...?
@PlayWithFurcifer6 ай бұрын
@@joshbond8391 I have not said it's impossible, i have said he should try and make a game without these tools. Read before you smartass my dude :)
This was a super fun video! I was rooting for you all the way!!
@PlayWithFurcifer2 жыл бұрын
Thank you very much :D
@Soulessblur Жыл бұрын
Holy roguelike, Batman! This is a fun watch. I love the fact that you don't just write out the short code, but show how it's "typically" done then explain your compression process line by line.
@mnm12732 жыл бұрын
Wow you are amazing. I didn't think the baseline goal was possible (I expected a janky mess that worked on technicalities, because 10 lines is so few) and you actually made the game more detailed over time. Just love it.
@PlayWithFurcifer2 жыл бұрын
Thank you! It still is a janky mess :D
@DanielSnider02 жыл бұрын
The AnimationPlayer is my favorite code editor.
@PlayWithFurcifer2 жыл бұрын
:D
@5minutemovies9772 жыл бұрын
Next video : make a game using animation players only :D
@PlayWithFurcifer2 жыл бұрын
I mean....maybe its possible
@jlewwis19952 жыл бұрын
Given how powerful the animation player on its own is it shouldn't be that hard :p
@alvarocafe2 жыл бұрын
This is awesome, keep it up! Best Godot channel
@PlayWithFurcifer2 жыл бұрын
Thanks! :D
@Somebody-lq5gm2 жыл бұрын
Soon the AnimationPlayer will be powerful enough to BE the engine. It's the emacs of nodes 🤣.
@PlayWithFurcifer2 жыл бұрын
Maybe we can get this thing turing complete :>
@PaulSpades Жыл бұрын
@@PlayWithFurcifer Well, it does loops, there's a frame counter, input and output trough variables, and it can branch. I think it is complete.
@emdivine Жыл бұрын
@@PaulSpades It's amazing how many things turn out this way. I remember seeing somebody proving that the MOVE processor instruction itself is turing complete, and writing a transpiler that makes your entire program use only MOVE, just because they can. I don't doubt at all that the animation player is turing complete.
@MrEliptik2 жыл бұрын
I loved the video! The concept is super cool and I think it's a great way to showcase little tricks. The animation player is super useful and could be even better. One day, we'll be able to make entire games just with anim players x)
@PlayWithFurcifer2 жыл бұрын
Thank you very much :D A commenter made flappy bird with only animation players sooooo ....
@MrEliptik2 жыл бұрын
@@PlayWithFurcifer That's cool! I might try the challenge one day ^^
@AlfredBaudischCreations2 жыл бұрын
I think we already can!
@L4Vo52 жыл бұрын
Ha, this reminds me of the completely-codeless flappy bird I made a few months ago. Specially the tricks with AnimationPlayer for the leveling system. Perhaps I should make a video about it...
@PlayWithFurcifer2 жыл бұрын
I would love to see how you did it!
@InnerEagle2 жыл бұрын
Do eet
@rungeon832 жыл бұрын
Very creative solutions, I adored this video!
@PlayWithFurcifer2 жыл бұрын
Thank you very much!
@harrycohen6308 Жыл бұрын
holy shit i thought this would be clickbait I was not expecting you guys to actually pull this off. hella impressive
@thekingbenjy2 жыл бұрын
This is so cool! You should try moving all of the code into a single script to get some extra lines (no need for so many “extends ___”)
@PlayWithFurcifer2 жыл бұрын
What a devilish idea, i love it
@justinwhite27252 жыл бұрын
Yeah, if it's a single script you also don't need that include statement at the top every time either.
@animated_sammyBoiii9 ай бұрын
You just earned a sub sir I have seen one of your video before It was good too and will be helpful for me ❤
@raphaeltussand8627 Жыл бұрын
For the moonwalking skeletons, you might be able to utilize a key in the animator to scale X with directional movement on the X axis.
@bigbodge2 жыл бұрын
Its incredibly bad programming and would result in a very ugly line, but you could use the same script for the player and enemy, and just use a ternary operator based on the parent nodes name to determine whether it does the player movement or enemy movement. Thats two lines in one!
@tendocat87782 жыл бұрын
That sounds like a great idea to me
@welovedotnet2 жыл бұрын
Go doesn’t have ternary afaik
@bigbodge2 жыл бұрын
@@welovedotnet this is in GDScript, which Im fairly sure does
@welovedotnet2 жыл бұрын
@@bigbodge nice!
@christucker95662 жыл бұрын
@@welovedotnet Godot has ternary, it's written as "var value = 7 if should_be_seven else 9" as an example.
If you use godot and using godot doesn't count as using lines, modifying it wouldn't count as using lines too. So you could work out makros into the engine - this way you could define a makro for "extends Node2D; _physics_process(delta):" and can save a line with MAKRO [stuff that is made] in the enemy/player node. (afaik godot doesn't have makros because they are stupid)
@PlayWithFurcifer2 жыл бұрын
What a scary idea
@delqyrus26192 жыл бұрын
@@PlayWithFurcifer it is scary, dirty and stupid, but would save a line of code.
@PlayWithFurcifer2 жыл бұрын
@@delqyrus2619 Thats the spirit!
@NaudVanDalen2 жыл бұрын
Or extend everything you need by default.
@jeffreystephens2658 Жыл бұрын
Yeah, I legit thought they were gonna write a helper file and just just call ten functions. But then they did this crazy shit instead lmao. I'm impressed.
@OutMagic Жыл бұрын
Thats freaking mental wow, your expertise shines so much wow. I'm still super new to your ch and its amazing!!
@PlayWithFurcifer Жыл бұрын
Thank you :D
@scotmcpherson Жыл бұрын
This is way more educational than one might expect
@lbaxel9122 Жыл бұрын
It is interesting but not good practices, so not that much
@scotmcpherson Жыл бұрын
@@lbaxel9122 experimenting with novel approaches are how new ways to do something are learned. A 10 line survival game no matter how minimalistic it is, is a big deal and worth of attention.
@sch3ffel8 ай бұрын
just stumbled into this video... this is art. congratulations.
@intangiblematter_misc2 жыл бұрын
Wow! When I first heard of this challenge, I thought that there was no way to do it in Godot because of the (minimal) boilerplate that would cost at least two lines! Bravo! :)
@PlayWithFurcifer2 жыл бұрын
:)
@_gamma.2 жыл бұрын
What a fun challenge! That animation player use is so hacky, I love it haha
@PlayWithFurcifer2 жыл бұрын
Glad you enjoyed it :D
@PaulVictorey Жыл бұрын
@5:08 You could have also used the walrus operator to both assign to the variable and use the variable as a parameter to add_child. You could even have compressed your entire spawner script to a single line by using a tuple along with the walrus operator, for example add_child((enemy := load(...), enemy.set_position(...))[0]). Tuples are probably your best method to merge multiple expressions into a single line of code without using semicolons.
@QQnowQQlater Жыл бұрын
I love doing challenges like this. The voice overs also trump any asmr, and the two personalities and witty jokes are super fun to listen along with.
@geekworthy79382 жыл бұрын
First time watching this channel! You may have just won me over to Godot! Of course make many more videos like this! It greatly shows how you can do things in more than one way and clean up code!
@PlayWithFurcifer2 жыл бұрын
Amazing :)
@Extrafancytoaster10 ай бұрын
So bigger libraries would just make this "less code" lol seems like we're splitting hairs on semantics but this was a fun watch. The real take away is # of lines of code don't really mean much at all. If you truly needed to worry about how "expensive" a line of code was, you wouldn't touch this game dev kit in the first place lol but its a quirky example for sure
@Hughsie28 Жыл бұрын
Its one thing to write the scripts as 10 lines of script code, but what about the rest of the code generated inside the editors and drag/drop UI's?
@Erkle6410 ай бұрын
And how many lines of code does Godot have?
@JayKay-xz6qg10 ай бұрын
incredible video, this is really inspiring to me! thank you!
@Malcx12 жыл бұрын
That was an outstanding video - very entertaining and informative!
@PlayWithFurcifer2 жыл бұрын
Thank you very much!
@powersave22 жыл бұрын
Really liked this video! I appreciated the explanations for the code shortening as well. Lets get more!
@GameDevJourney2 жыл бұрын
Wow, really impressive guy and gal, well done!
@PlayWithFurcifer2 жыл бұрын
Thank you!
@Epsilon31418 ай бұрын
At my school one of the projects we had to do was to make a game of tic-tac-toe in python, however this was boring as I already knew how to code. A kid named Joshua and I got into a competition to complete the project in the fewest line of code. In the end we had user input and the code printed error statements and continued running properly with false inputs. the code also refreshed infinity meaning you could win one game then instantly roll into the next game. We managed to get it down to 2 lines in total. The first line defined the board and the second line was a very long in line while statement that contained all the code for actually running the game.
@Seestral Жыл бұрын
KZbin just recommended this to me now, sorry for being late :( But, holy! It's actually insane how you guys managed to do this in so little code. This is a super inspirational video
@ltommasini Жыл бұрын
Just got it in the recommendations as well. Holy shit, I'm flabbergasted!
@MankeyMite Жыл бұрын
same!
@tlefevre2918 Жыл бұрын
Its in an engine which means it is actually already using far more than 10 lines of code
@siekensou772 жыл бұрын
player spawns enemies.. Hero: Why do I keep making my own life harder?
@LushieTilde2 жыл бұрын
I actually thought of trying to make a game like it as an exercise so this is pretty helpful!
@PlayWithFurcifer2 жыл бұрын
Amazing :)
@einargs Жыл бұрын
This was extremely cool and impressive. While I program, I've never done game development, so I was really surprised at how much you can do with so little.
@noddle0456 ай бұрын
>make the whole thing with a gui
@mutee3332 жыл бұрын
Thanks to this fantastic video, I was introduced to my new love, Vampire Survivors.
@PlayWithFurcifer2 жыл бұрын
Hey guys, hope you liked the video! Could we have used less lines? By the way, this is how what happens if we actually try to make a *good* Vampire survivors like: kzbin.info/www/bejne/jqHafoiursx9nZY
@benhub2 жыл бұрын
That's maybe cheating but you could use godot's visual scriping
@DevJeremi2 жыл бұрын
2:37 - you can use: Input.get_axis("positive_action", "negative_action") instead
@PlayWithFurcifer2 жыл бұрын
@Karlsson Just try to program without an engine/compiler/interpreter and see how it goes
@sammyt30302 жыл бұрын
You could've used Input.get_vector() for the movement code. It handles both axes.
@Amipotsophspond2 жыл бұрын
you have more then one Script, they all can share one Script a KinematicBody2D. a dictionary can hold many variables in one. not sure if Godot has this but in python dictionaries can even hold functions.
@64bitrobot2 жыл бұрын
Really cool challenge. Great way to push your knowledge of the engine!
@PlayWithFurcifer2 жыл бұрын
Glad you enjoyed it!
@maelstronando1692 жыл бұрын
This was awesome to watch! Great optimization of code!
@PlayWithFurcifer2 жыл бұрын
Glad you enjoyed it! :)
@victor-ling Жыл бұрын
I clicked into this thinking there must be some way it's click bait. I thought for sure I was going to see a bunch of semi-colons ... well color me impressed, I can't believe you actually pulled it off!
@GNPhoque2 жыл бұрын
Loved that you showed the usual way of doing before reducing the number of lines, I'm more of a Unity dev so I don't get everything but really cool!Don't think I could have done it it 10 lines because of the using statements, Unity will require more than this
@itisinickt10 ай бұрын
it still counts as lines of code when your program adds 500 lines to achieve "uh ill just copy and paste the skeletons". yeah thats the program adding in more code behind the scenes
@PlayWithFurcifer10 ай бұрын
It does not count. I decide what counts, and this video is about code WE WRITE. Now touch some grass x)
@Hfhajefhje10 ай бұрын
@@PlayWithFurciferNo wonder your channel died with this shitty attitude xd Perhaps learn to not clickbait?
@itisinickt10 ай бұрын
a nerd telling people to touch grass. you gender bending zoomers are so wacky@@PlayWithFurcifer
@AgodzillaFace98-yj5nq10 ай бұрын
Not bad but let's not forget the "atleast ten thousand engine code lines"
@PlayWithFurcifer10 ай бұрын
Close one, we almost forgot that we opened an engine! Good thing youtube commenters are there to the rescue
@hass892 жыл бұрын
That's genuinely amazing. A suggestion is that "extend node_type" calls shouldn't count towards your LOC.
@PlayWithFurcifer2 жыл бұрын
Thank you! We will think about that :)
@hass892 жыл бұрын
@@PlayWithFurcifer for my own selfish reasons pleaseeeee make another one of these challenges.
@hass892 жыл бұрын
@@BassSpleen I can see that point but I think focusing on 10 user written lines would truly showcase some powerful ideas in Godot.
@nonchip2 жыл бұрын
@@BassSpleen by that logic go ahead and count the kernel too :P `extends` is not `#include`, it's simply saying which class to extend from, not inserting any code. just like calling a file `.png` isn't "relying on hundreds of lines of code" in your image viewer.
@GyroZeppeliUwU2 жыл бұрын
Killjoy programs Vampire Survivors in 10 lines of code
@ShakyDawn2 жыл бұрын
This one was impressive, 10 lines for all that.... WOW
@PlayWithFurcifer2 жыл бұрын
Thanks!
@owenlloyd2528 Жыл бұрын
lol. You are amazing teachers, great tutorials! I am learning how to belly laugh!
@PlayWithFurcifer Жыл бұрын
thank you very much :)
@arakwar Жыл бұрын
it's a nice challenge, but the engine does a lot of heavy lifting for you. So at the end there's a lot more than 10 lines of code :D The exercice is really nice though. I really liked that you clearly showed the thought process of "this is what I think I need, now how can I do it more efficiently". This is something that is often not shown in computer science classes anymore, and we ends up with junior developers who try to argue that a single page website showing one product requires at least 10-15mb of javascript :D
@NonMagical Жыл бұрын
Unless you are coding in assembly, anything you make could be argued as being given heavy assistance by the platform/language.
@tlefevre2918 Жыл бұрын
man I hate the modern internet, literally every website takes so much ram cuz they all use these big ass wasteful frameworks and are not optimized.
@hashkeeper11 ай бұрын
ooooo this is fun gamified coding lesson!!!! great job bridging the gap!
@axerity92122 жыл бұрын
definitely thought there would be 500k+ subscribers for this channel, but when i saw replies on every comment, i knew something was up. extremely well made video, good job
@PlayWithFurcifer2 жыл бұрын
Thank you very much. I guess there still lies a bit ahead of us :D
@richbuilds_com Жыл бұрын
Oh please do more of these! The format is excellent!
@xatex10002 жыл бұрын
it would be cool to se how much of a difference another 10 lines would make. Even if just to really show how many lines go into making a game of any kind.
@rijugas Жыл бұрын
Oh hey this is cool. Much cooler than that one video where a guy made a game in one line of code, but he just pretty much wrote lots of lines without any line breaks.
@nyuh2 жыл бұрын
wow you used the animation player to animate the animation player
@PlayWithFurcifer2 жыл бұрын
And i hope it does not feel weird about that
@cdntl2 жыл бұрын
This video is awesome, would love to see more videos like it.
@PlayWithFurcifer2 жыл бұрын
Thank you, we will keep this in mind :D
@mementomori55802 жыл бұрын
I mean, the whole "in 10 lines" is a little bit cheated considering all the lines of code that godot already provides you with in the background (like, doing basically all the graphics and such). So this is really more of a "Can we do it in Godot with 10 extra lines of code in addition to everything that Godot provides us with already?".
@dandandan012 жыл бұрын
Great video, you got a sub. As someone who's never used Godot before, you've actually got me interested!
@psachickennugget8617 Жыл бұрын
If it works, then it’s not ugly, it’s beautiful.
@lavrijsen110 ай бұрын
PlayWithFurcifer: I can run this game in 10 lines of code. The Engine in the background doing al the work: Wait wut?
@CrushingJosch2 жыл бұрын
That was really entertaining AND also surprisingly educating :D Awesome work and nice video :) Please more of it!
@MattiaPiola2 жыл бұрын
This is great! So creative! 😊
@PlayWithFurcifer2 жыл бұрын
Thank you :)
@ImpscraftАй бұрын
That was freaking awesome.
@David_S_TO Жыл бұрын
I hereby award you this award.
@daywalker3735 Жыл бұрын
this is absolutely crazy....pretty much an entire SIMPLE game with just TEN lines of code WOWWW
@mmxgn2 жыл бұрын
Great video! Enjoyed it!
@PlayWithFurcifer2 жыл бұрын
Thank you very much!
@Trupen2 жыл бұрын
That was a great challenge :D
@PlayWithFurcifer2 жыл бұрын
Thank you very much!
@sheshire632 жыл бұрын
you could use "move_and_slide(Input.get_vector("left", "right", "up", "down")) " for the player movement wouldn't save a line but its better code
@thejaredwilcurt Жыл бұрын
ONE. IDEA. PER. LINE. That is how you measure a line. If you are "compressing" 10 lines into one, you are putting more than one idea on that line, break it up. Vampire survivors in 100 lines is just as good of clickbait, AND your code won't look unreadable, bonus!
@PlayWithFurcifer Жыл бұрын
We just count lines differently :D Happy new year!
@Bauldi Жыл бұрын
youtube threw this to my algo. banger. this was so cool.
@diboxide Жыл бұрын
thanks, you inspired me to download godot and start learning.
@JeremiahNunn10 ай бұрын
"we use Godot" - including an engine immediately puts you a bit over the 10 lines limit
@PlayWithFurcifer10 ай бұрын
My dude, without any engines, libaries etc you cant even draw a sprite to the screen in 10 lines, no way you did expect we do this.
@jeffreystephens2658 Жыл бұрын
lmfao. The Scholar's Make. That is impressive as hell.
@xDuds Жыл бұрын
Awesome video, thank you!
@PlayWithFurcifer Жыл бұрын
@anms_brk2 жыл бұрын
10 lines of code is better than my 6 1/2 months of testing and learning T_T
@theplaymakerno18 ай бұрын
This is seriously impressive stuff. Will be very easy to debug this game.
@andresmc1802 Жыл бұрын
i want to someday make a survivors-like in Godot and this video gave me a lot of useful info, thx!
@danielroden9424 Жыл бұрын
its a great mental exercise (even if its bad coding practice) because it shows a deep knowledge of the game engine / object hierarchy and render / sprite stuff. very fun!
@fockyutuub5193 Жыл бұрын
damn this is really good, keep up the great work!
@rafaellerescapone Жыл бұрын
this reminds me of my aseembly assignments back in uni where it took hundreds and hundreds of lines to make a block move and collide with other blocks
@Speed001 Жыл бұрын
Congratulations on not making each line indefinitely long
@arandomguythatdoesntpost9 ай бұрын
Awesome video! Great job!
@randymartin9040 Жыл бұрын
I only understood about half of this, but very cool concept of a video!
@RNeeko Жыл бұрын
Very impressive. Though I found it somewhat entertaining how fast you don't even have to move anymore. I let it sit for a while to see what would happen. Eventually I started a trek downwards to the point where the game was running at 5 FPS. At this point the orbs were no longer working correctly and this allowed me to walk into an enemy resetting the game. 10/10
@raystudiocreations20432 жыл бұрын
Dude I had to write like 20 lines for the enemy but you just did it in one!!