Support the channel and get access to project source code here: patreon.com/RachelfTech 🙌
@TheShelfman7 ай бұрын
I love how coding became difficult because of the pet constantly walking over. Made me laugh out loud. Such an awesome idea, great video!😁
@Pallerim7 ай бұрын
When TheShelfman is in the comments, you know you've stumbled upon an awesome channel
@Blackbirdone116 ай бұрын
My cat does the same. On the keyboard
@lipasfriends4 ай бұрын
The pet is completed at that point xD
@loupax5 ай бұрын
I'll create a pet collective for my work station. One pet will create the tasks I tell it to, another one will complete them. And another one will keep an eye on my Git status. And another one will alert me of meetings. That's absolutely going to boost my productivity.
@MoonGameDev5 ай бұрын
There is a hidden gem in your videos especially this one. It's your method of working. You tend to reach a stopping point when it becomes too challenging. What's extremely useful is when you come back the next day. You choose a fun task you feel comfortable with such as pixel art, instead of going directly into the complex problem again. Getting this early win for the day helps ease back into the project.
@shekharchaurasiya52365 ай бұрын
Great point
@guidoferri86836 ай бұрын
I'm kinda jealous that you can: 1. Find a project to work on 2. Stick to it 3. Carrying it to completion 4. Draw Great job!
@6IGNITION96 ай бұрын
You can also do these things. Working on a project consistently is actually a skill you can teach yourself.
@guidoferri86836 ай бұрын
@@6IGNITION9 Believe me, I tried
@SaraSketches6 ай бұрын
real i quit all my projects that I start eventually
@Nae_Ayy5 ай бұрын
@@6IGNITION9 My ADHD begs to differ
@RussellFlowers6 ай бұрын
Most dreaded phrase after a programming project: "I'm still not *entirely* sure..."
@MarijnStevens6 ай бұрын
Correction: Most common phrase.
@FunbobbyJ6 ай бұрын
@@MarijnStevens You beat me to it!
@mikemhz6 ай бұрын
With ChatGPT there are an awful lot of coders saying that, myself included 😬 Couldn't be bothered to write it, can't be bothered read it...
@Poisoneer36773 ай бұрын
@@FunbobbyJ*Oof*
@Pallerim7 ай бұрын
You may actually have found the only use-case where pygame would've been easier than Godot. Super impressive how well you got it to work!
@Redstoner237Channel7 ай бұрын
I’ve been working on a desktop pet recently but have actually switched from pygame to godot. It’s a lot easier in pygame to get the transparent window things working, but I’ve found that godot just has better support for everything else that you want the pet to do (animations, collisions, menus, etc) compared to pygame
@Kaouzie6 ай бұрын
@@Redstoner237Channeland godot is a super imptessive Game engine so pls learn it!!!
@qdaniele976 ай бұрын
Python would've probably also made easier to get windows positions and things like that, possibly with cross-platform abstractions instead of having to directly interact with OS specific APIs.
@unstablecoding6 ай бұрын
Once you've played around with it a bit, you realize pygame can do all that stuff tho. Checkout awesome librarys like Pygame-Gui if you don't want to code it yourself.
@63557425 күн бұрын
I was looking for something simpler than Godot where it just renders overlay and moves mouse with keyboard inputs, could give pygame a try see if it works in 1 day or I shelf this because they guy who made the Mac software(mouseless) I wanna dupe said he's working on win and Linux version too when there's enough interest.
@cerberusmutt42527 ай бұрын
I loved Desktop Pets!! I've missed that trend so much, I'm glad you've made a way to bring them back!
@ethanbuttazzi26027 ай бұрын
well they were mostly viruses and trojans, but i also been waiting for someone to do it without bad intentions.
@jacquesprosekticus13324 ай бұрын
I like your energy... how you're always on the verge of laughter. Makes the video 100× more fun
@benrex77757 ай бұрын
I have the desktop pet sheep on my laptop. My father had one all the way back in the XP days and my sister asked me a few years ago if she can have it. So I found some guy who remade the old one but in a way that it is compatible with current windows. Now I have it constantly running since my sister asked me about it.
@fargopolo6 ай бұрын
eSheep 64bit
@artieschmidt30394 ай бұрын
@@fargopolo omg that's so much nostalgia!! :)
@corbiss7 ай бұрын
The bird turned out so cute! I loved watching your process! 🕊️
@RachelfTech7 ай бұрын
Thanks so much!
@nick-brooking6 ай бұрын
This is so cute! I really liked seeing the bird land on the window after it was moved. You make an interesting point at the end that you'd rather have more of a plan going into projects. I feel like having a plan is the best way to finish something in a particular time frame but when there are no external deadlines it can be nice just to explore and see what happens. If you aren't struggling with actually finishing - and it looks like you aren't - I think it's fun to allow creativity the space it needs to flourish. Thanks for the vid!
@aboyer98286 ай бұрын
As a corporate IT developer of almost 30 years, I can’t tell you how many times I’ve either heard or said, “You know, this would have been easier and faster if we would have flowed this all the way out.” But when you’re eager to get into something, sometimes the temptation to just dive into the code is irresistible. Rachel you are truly an inspiration! Keep following your passions!
@pr0tux6 ай бұрын
That combined with something like Pomodoro. :D Every time you need to take a break the bird needs to be fed or follows your cursor to make to stop working.
@pete2757 ай бұрын
Yeah mouse passthrough only refers to other controls within your Godot application, it can't send the events through the app window back to the OS, I don't think it's a bug, it's just how it works. If you think about it it's a big security risk if you can make a fullscreen window transparent and filter all the input through it, and the user doesn't even realize it's there, you could catch all their passwords as they type them through your window and into other apps
@RachelfTech7 ай бұрын
Ah yeah, somehow misread the docs for mouse_passthrough, it does indeed say it is only for same application windows!
@not_ever7 ай бұрын
This isn't true. It is a limitation of Windows with Godot greater than 3.2. If you use Godot 3.2 you should be able to get this to work. Some other people have this working by making calls to the Windos API with C# in other versions of Godot. Search " Had to go back to 3.2 for this but it was extremely worth it " with google and you will see someone has made a desktop assistant already like this but they had to use Godot 3.2
@penewoldahh7 ай бұрын
So basically... a keylogger
@WitchDimension7 ай бұрын
applications don't work that way, and you already can take password information in some pretty simple ways. Like setting someone's pc to log all their inputs, then take that log, and look for when they typed passwords.
@penewoldahh7 ай бұрын
@@WitchDimension what are you talking about
@LandonEmma7 ай бұрын
Desktop pets are so hard to make nowadays and I still don’t understand how people make them since it’s not a window
@vgglv7 ай бұрын
old ass win32 api lets you do that in c++
@Adrian002136 ай бұрын
How are they hard to make? you can do it using multiple ways. like @vgglv mentioned you can do it with win32 api. you can use pygame as well> Electron with js as well. there are many ways you can tackle this topic :) Actually the way the video owner made it seems like a overkill to use game engine. :D at least its light compared to unity :P
@phutureproof6 ай бұрын
When you don't know how to a thing that thing is hard right, smartarse @@Adrian00213
@d.-_-b6 ай бұрын
the pet is a window its just transparent and inputs pass-through it except in parts you want. positions of desktop things are just gathered from the display server/DE/windows api. Not very difficult at all.
@LandonEmma6 ай бұрын
@@d.-_-b Well it’s just so seamless I never thought it was a window.
@mme7257 ай бұрын
I think the current state of desktop pets is Shimeji. It's good to see someone making something new! It's fun to see this work, was wondering how to make it appear at all. The single character limit is interesting, i wonder how Shimeji (which the version i used runs on Java) handled it. Side note, love the dove ❤️ 5he perch was a great idea too But it leaves me imagining multiple birds and perch interactions lol Play musical perch's😂
@evertonshorts93767 ай бұрын
With those hearts coming out of it, it's clearly a lovebird...
@Rohtie7 ай бұрын
Really awesome! Love how the bird lands on the windows, it turned out super nice I remember playing with the sheep desktop pets when I was little, and recently tried to figure out what they were called without success so thanks for showing them :)
@abblesleet41583 ай бұрын
something similar to what you described is on Steam from wallpaper engine you can move around and mess with sheep on the desktop
@WitchDimension7 ай бұрын
It's pretty nice flys around the screen, lands on the windows and all that stuff without any lag or anything.
@aneesh.videos7 ай бұрын
This is so cool I love it when developers create funny dream projects to learn:)
@TheStrokeForge7 ай бұрын
Maaaaaaaaannnnnnnn this new birdie works so well love it
@RachelfTech7 ай бұрын
Glad to hear, thank you!
@gdoggcasey7 ай бұрын
This was awesome and very fun to watch. I'll let this bird fly around my screens and perch on my windows for a while!
@dhairyapatel38806 ай бұрын
A step-by-step tutorial for this would be great.
@htspencer90847 ай бұрын
8:57 literally "have you tried turning it off and on again" 😂
@Derjyn6 күн бұрын
I'm old. And I still love desktop pets. Great job reviving the love of the pets 👻
@pv86856 ай бұрын
your bird is flying right now across this video... what an awesome idea! i absolutly love it. reminds me of clippy. clippy dude, you will never be forgotten!
@melkeilwert42237 ай бұрын
I keep putting off learning Godot, your videos are great and make me want to try. Keep it up!
@RachelfTech7 ай бұрын
Thanks so much! Definitely recommend trying it out :)
@LewisCowles6 ай бұрын
I've never heard of a desktop pet before, but for some reason, I love this idea; especially the one where you have to code it yourself.
@thegrimspartan28067 ай бұрын
i absolutely love this! i am currently learning godot, and i want to make a duck desktop pet, but i have no clue where to start if anyone reading has any good videos that might help point me in any direction, i would very much appreciate it. the idea of something interacting with the desktop seems so complicated, i would have no idea where to even look to learn how to code that.
@NateDohDoubleGee7 ай бұрын
I remember these!! Fantastic work -- I didn't even know this would be possible with Godot. Great video!
@fishnpotatoes7 ай бұрын
7:53 to get physicsbodies to receive input events you have to turn on `object_picking` on the window nodes (I don't know why on is not the default but it isn't)
@RachelfTech7 ай бұрын
Yikes, I wish I had known about that property, it does look like it would have solved at least some of my issues. Thanks for the reference!
@luvgoat1477 ай бұрын
I legit have been wanting a desktop pet for YEARS. Somebody please recommend me some safe ones
@jordanettinger6 ай бұрын
Watching this gave me an interesting idea, since I have zero dev skills someone else could gladly take the idea and roll with it. A desktop productivity pet, where its health is determined by your productivity. Spend too much time on youtube or playing games, and the pet starts to get sick.
@reyariass6 ай бұрын
The issue with this is knowing what would be considered “productive” and also allowing a game to view the entire content of your browser
@robinweiland75335 ай бұрын
Maybe you could do this with a browser extension that connects to the pet. I don't know if extensions are allowed to do something like ipc sockets to anything running on your pc though. The extension could also "learn" what you consider productive, by letting you tell it directly. Maybe with some kind of pop-up "Hey you spend the last 15 minutes here! Is this productive?"
@Yosory3 ай бұрын
It's fun watching you on this journey. Thank you, for brightening my day
@gitishsandhu7 ай бұрын
Oh it looks great! I remember making a simple window without borders that activates on a shortcut key with the win32 api, and it was a lot of mess! And you went way far than that! Great Work
@AzoTheRed6 ай бұрын
This is super cool. I enjoy these weird corners of the godot community because it gives light to techniques not typically used.
@htspencer90847 ай бұрын
Thank you so much for including the multiple window github link!
@AngelCnderDreamerАй бұрын
Awe man, I litterally thought the code was small or not too hard, but seeing this looks so complicated just to make this. XD Im glad to see you were able to make the desktop to work well in the end. Also I thought you were making a parakeet, dove or a white pigeon. XD It's really cute!
@Itakio7 ай бұрын
Super creative idea, and the final result is awesome. Love it!
@RachelfTech7 ай бұрын
Thanks so much!
@germandkdev6 ай бұрын
Instead of using windows api to get the windows position, you could take a screenshot and pass it through a horizontal edge filter (convolutional filter) that way it works on any platform and could land on any edge having a sufficient size
@TheiLame6 ай бұрын
That filtering thing works in godot or some other programs as well?
@germandkdev6 ай бұрын
@@TheiLame Convolutional filters are a general image processing concept, not specific to Godot. I don't even think that Godot provides an implementation, but it's really simple to do as it's just 1/2 for-loops
@elxero21896 ай бұрын
Came together beautifully id say. Good job
@calicow7 ай бұрын
That's a blast from the past! Pretty sure I had a desktop pet on my PC in middle school, and I remember getting up and sneaking into the living room in the middle of the night at my grandparents' house to install one on theirs. 😂 they were not amused
@RachelfTech7 ай бұрын
That's great 😂
@humble-hedgehog6 ай бұрын
I've been waiting for a spark of inspiration for a new personal project, and this was it! Thanks for sharing your process, super entertaining and informative devlog :D
@SazianNULL7 ай бұрын
Fun fact, this "Scmpoo sheep" from beginning of video has about 300 KB size. Your bird has 140 MB. No, this isn't meant to be a "disclaimer" but this show how impressive is original project. I had this sheep on a floppy disk back in the days of Windows 98 and it held many other files. To save your project would need almost 100 floppy disks 😅
@TheiLame6 ай бұрын
Godot probably takes some unnecssary files to the build. Or uses large libraries.
@HansMilling6 ай бұрын
Awesome project, and cool that you are not giving up. A true software developer. I remember Screen Mate Poo, so this is so cool that you can still do this. I would make a bat. It can hang from full screen windows and find a new place to hang around if you click it
@RenderingUser7 ай бұрын
ive actually wanted to do this in godot ages ago. back when click through screen was a --feature-- bug by defualt. cant believe they removed it thanks for making a quick tutorial on how to achieve that effect now
@miked947 ай бұрын
If you do end up making this, could you do a cat version where it tries to swat at your cursor when you move it around the cat a lot? Maybe it tracks a buffer of positions on screen when the mouse moves a certain distance from the last point, and when those points are near the cat, but there's a lot of points, it implies the user waved/jiggled their mouse near the cat. That should allow you to still be able to click on the cat without it swatting the mouse constantly.
@sebastianramirez57816 ай бұрын
I love seeing that bird land on a window so much
@thedeadman61717 күн бұрын
Omg this is sooo helpfull i thank you with the bottom of my heart, i always wanted to know how this was made, thank you sooo much
@iPruch6 ай бұрын
I wish I found this video two weeks ago! I also developed a desktop pet in Godot as my entry for a game jam and I went through almost the same process (one window, then multiple window, then assign them the same World2D, same issues with input...) so it would've saved me a ton of time and frustration :_) Very cute bird, btw!
@theblindbandit_767 ай бұрын
I think the glitching is due to the window being updated very fast due to _process updating every frame, and it lessening because of using physics process as by default it goes through 60 updates per second at 2:27.
@richardbloemenkamp85326 ай бұрын
Good job. You moved really outside of what Godot was designed for. Usually things become hard when you do that. Good perseverance and result.
@amund88217 ай бұрын
It would probably have been easier to just use C/C++ with the windows api, then you could just draw directly on the screen without any windows.
@RachelfTech7 ай бұрын
I agree it would have likely been easier using something lower level, I'm just trying to learn Godot at the moment so wanted to see if I could get it working! 😁
@mbovingfredy51147 ай бұрын
This project is gonna blow up.
@iammichaeldavis6 ай бұрын
I got genuinely excited to see it land on the top of a window for the very first time. Like I was psyched 😂 what a fun idea for a project. I want to make a desktop buddy now
@TheSpidermint6 ай бұрын
Reminded me of a virtual vet I made in Flash about 20 years ago! I might dig it out, but it deffo doesn't look straightforward in to get this working in Godot! Great job though, glad you stuck with it! 😁
@darknetworld6 ай бұрын
Well it everyone has choice to what to build. But it learning. It good to know someone was working on this project as I was thinking to keep it simple.
@JiKayPh7 ай бұрын
Your channel is the best I've seen on KZbin on godot
@Ucicke7 ай бұрын
Your channel is the best I've seen on KZbin on godot. Your focus when you write code and your smile when you succeed... It's very inspiring, thank you!
@RachelfTech7 ай бұрын
I really appreciate that, thank you!
@VforVictorYT6 ай бұрын
This was so good, very well put together video and the end product is super fun, installed it and I really like it.
@RachelfTech6 ай бұрын
Thanks so much!
@AntonioRColon7 ай бұрын
This is awesome and creative! I miss Desktop pets. A very awesome job well done! I hope to see how this project can expand into the future. I have so many ideas brewing for fun interactive uses with this type of project.
@CodingQuests7 ай бұрын
ohh this is actually rlly cool! maybe ill make a tutorial on smt similar haha
@RachelfTech7 ай бұрын
That would be cool! Definitely lots of fun things you could do with things like this :)
@driann_yea7 ай бұрын
Please do, that would be amazing :)
@seneketh7 ай бұрын
Very cool project. Thanks for sharing your process!
@call_me_maple6 ай бұрын
I didn't know you were doing tech video now. Go you! I loved watching your guitar videos :)
@RachelfTech6 ай бұрын
Just started focusing on it more recently! Thank you :)
@crshrson6 ай бұрын
its funny to me that i discovered your guitar channel first time i started out playing the guitar... now, some years later, i find your tech channel like 4 or 5 months after i started to learn coding ^^
@joshoshoshoshosh7 ай бұрын
Great work! There's something really interesting about crossing system boundaries to interface with lower level APIs in another language.
@thisisgod26397 ай бұрын
That was brilliant and sets precedents for many other ideas of this kind 💯👌
@RachelfTech7 ай бұрын
Thanks so much! I do hope it's helpful :)
@b3agz6 ай бұрын
"I decided to do ... which may have made things more difficult than they needed to be". Relatable.
@verletzt5466 ай бұрын
This is such a cute pet, and it works great on mac too. Great job!!
@remotefarm45777 ай бұрын
awesome project, well documented. your enthousiam for problem solving is very contagious
@totallynuts75956 ай бұрын
I played this video and I had this vague feeling I'd seen other videos from you. Turns out I used to watch your guitar stuff from 7 years ago, we happened to start playing guitar around the same time. I feel old now. I was in highschool back then and will be finishing uni in less than a month.
@McGuire406956 ай бұрын
Just had this pop up in my feed, and it looks like such a fun project that you did!
@YKSGuy4 ай бұрын
I miss the good old esheep I used it to prank people a few times.. Nothing like hiding it in peoples startup folders or setting a scheduled task to pop one up randomly.. The best part was you could spawn many of them.
@CreativeSteve696 ай бұрын
I just discovered your channel today Rachel. As a solo learning coder/gamedev. I always had a thought on making a fun simplified pet app as well. This took me back to my early computer era of windows 96. It was fun watching the process as well. Also for your first time using godot, overall i thought you did really well. For a future project how about re-create a interactive chips challenge style game.
@mitchell_codes6 ай бұрын
Implementing class-driven state early has been a huge timesave for me in Godot. I feel like "State Machine" sounds big and scary, but all you really need is to define a set of classes that, at minimum, contain a method that implement various behaviors depending on current state. Most often, this will be a `_process` function so that your program main can just call e.g. `curr_state._process`, then each state's `_process` doesn't have to worry about state at all! There is of course more that you would eventually run into: handling state transitions including automatic (e.g. detecting when bird has landed on window to transition to idle state), accessing level data from within each state, etc. But once you have it frameworked well, it is much easier to understand "what my code does"!
@GameOn08276 ай бұрын
Heck yeah, what an awesome idea. Downloaded it, had to append "--rendering-driver opengl3" like a comment suggested but it works great. Now I need to learn Godot and figure out how to change bird/pirch to pokemon/pokeball. I hope you continue to expand on this project. Subscribed.
@RachelfTech6 ай бұрын
Glad that worked! I think I could switch to the older version of Godot's rendering engine to have that be the default, but it seemed to be causing some other issues with moving windows for me. Will eventually try to look into it!
@GameOn08276 ай бұрын
@@RachelfTech Confession: Updating the driver did indeed fix it. Windows Device Manager told me the driver was up to date but when I went to the NVIDIA website to check for myself, turns out I was actually one update behind.
@STaSHZILLA4207 ай бұрын
Wow. That's pretty cool. You always neat projects. Have you ever tried making a guitar tuner? it would be a nice way to sort of merge the channels. With your pixel art skills, you could even make vibrating string animations based on sound input. I look forward to your next video.
@wukerplank7 ай бұрын
Very information dense - I learned so much in this video!
@RachelfTech7 ай бұрын
So glad to hear that!
@EsteAkaCrownie5 ай бұрын
Such a cool and cute project ! Congrats 🥹💅🏻
@HuffGLaDTem6 ай бұрын
just downloaded it and its working well on my laptop! so cute and its another push in the direction of me wanting to learn godot!
@blackwolf77775 ай бұрын
"But that wasn't working" I felt that.
@HazelRoseWebs7 ай бұрын
wake up babe, new programming challenge just dropped
@TaLila3605 ай бұрын
Desktop pet is the best idea ever!
@Matt-so3nm6 ай бұрын
I thought I recognised you then realised I recognised you from your guitar videos I had watched 4-5 years ago! Haha. Good to see you again.
@mattiasprieto72876 ай бұрын
This project is so cute, new fan
@Johnny313237 ай бұрын
I forgot which exactly Windows API has translucency and transparency support, whether it be Gdi or Gdi+, anyhow, even on older systems all the way back to windows XP, transparency will work, as long as you copy and paste that DLL along with your game's directory, and use that one instead of the one from System32, basically redirect the directory for the GDI or GDI+.dll, i learned this from Autohotkey v1, since that language which is made using C, is the language that uses the Windows's own call functions the most. It has almost every feature for detecting windows, calling certain Windows only functions that aren't readily built-in into other Programming languages. PS: I made flappy bird using it called Bad Bird on the autohotkey website. So there ya go, new info.
@tile-maker49627 ай бұрын
I use to like the after dark screen savers. my favorite was "bad dog" because he grabbed your icons and dug holes in the yard/screen.
@mclurr31976 ай бұрын
Amazing job! Congrads dude!
@kegeramanyanghakiki95766 ай бұрын
WOW!!! Something to distract me from work i have been procrastinating for the past week?! Perfect for my need 😊
@ZanyCat6 ай бұрын
Your pixel art is super cute honestly! I really liked the cat bear rabbit thing lol.
@RachelfTech6 ай бұрын
Thank you 😁
@seanschelin2436 ай бұрын
I'm a rock and metal guitar player who last year started to get into coding and I just finished my first year at a IT program! I've seen lots of your guitar content over the years but totally missed your coding stuff. I saw the thumbnail of this video and thought I was hallucinating. "Wasn't she a guitar player?? Did she switch to doing something else?? Was she always a programmer? WHAT'S GOING ON??" 😆 Very cool to see you excel at other things! Subscribed here and the guitar channel!
@oliverdive97597 ай бұрын
It's amazing to see ideas like this❤❤❤, there's a project with the same idea. It's called Desktop Goose and it's pretty good but it could be considered a prank instead of a pet because it's kind of annoying 😂... I've always been curious to see how apps like this could be made because if possible I'd like to make one with stick figures like Alan Becker✨.
@omerkaragoz7 ай бұрын
You missed an opportunity not making the bird poop on windows ^_^
@Kientero6 ай бұрын
My old favorite, also my first desktop pet was Neko, all it did was chasing the mouse pointer when i moved the mouse, and slept when nothin happened or scratched the side window if i ran it in window mode as the mouse pointer was outside it’s area it could chase after the mouse pointer. ☺️
@abberistired6 ай бұрын
this was so cute and inspiring 😭if I ever actually get into coding I would 100% make a desktop pet
@arbolfest2 ай бұрын
Found this extremely fun and inspiring, thank you!!
@elcio-dalosto6 ай бұрын
What an amazing idea! Loved it!
@GTKSM95218 күн бұрын
**Desktop Goose**: Finally, a worthy opponent, our battle will be legendary!
@jumpsneak7 ай бұрын
Such a cool project with an even better result
@officialcbyt7 ай бұрын
I've been working on a simple desktop pet for a bit and this kinda made me wanna get back into working on it
@Itsa_Me_Jay7 ай бұрын
i love this video, your videos are actually sick! something about the way you do these makes me happy.
@RachelfTech7 ай бұрын
Thanks so much! Planning to do more in this format :)
@Itsa_Me_Jay7 ай бұрын
@@RachelfTech Yay!!! I'm excited for more content from you 🙏