CHECK OUT DESKTOP POKEDEX ON ITCH.IO :)

Heeeey! Long time since last one (yikes!) Fortunately Iāve a LOT to share!
I created an entire itch.io page for it⦠ahhh, finally, I get to make an itch.io page for something after a LOOONG time! It looks pretty comfy!
Itās been one hell of a journey just to ship a small godot project on floaty pokedex on your desktopā¦infact, isnāt it bit too much of an effort for a small project like thisā¦?
But whatever, ITāS (almost barely) DONE!!! Iām still planning to bring new updates and patches whenever I get time, and also thereās still a LOT of stuff I can implement to make this even DOPER than an IRL pokedexes. (see my first ever devblog to see what I mean, I dropped my big plans in there)
In the pokedex, earlier you couldnāt search nidoran or any pokemon with seperate male-female entries because they were under a special naming convention inside PokeAPI; I FIXED IT! Now my pokedex shows a cool looking āChoose Genderā Panel on top of the Search Bar and now you get to choose red pill or blue pill
(or should I say, blue pill or pink pill? TADUMTISHHH
)
Thx to my friend, who wants to say that;
without it, my soul punched outta my body like how doctor strange punched spidey's when I heard pikachu's cry
You can hit up settings from the Side Panel popup > Pokeball Icon > Right-Click > Settings > Cry SFX Volume
Yes, the title says it all. Idiot 
When I shipped the project, I was in bit of a hurry due to IRL stuff, so hereās the list of gratitude that I forgot to drop in 
Godot Engine
: This is the game engine that helped me shape my ideas throughout my game-dev journey; it took me nearly 5 years to realize that THIS is my perfect tool to make games (and more), and I was almost too late, but all the time I spent here is sooo EPIC! I virtually (and actually rn) bow before the community that shaped the engine what it is now 
Hammy
: The person who told me a program called something like āStardance Challengeā exists, and her friend is in it, so maybe I could try it too. And I was just starting to talk to her back then, but working on this project and helping me test it really helped me build a strong bond between us, so I owe this project that :) (Sheās also the one who helped me work on the volume slider btw)
Stardance and Hack Club: For organizing such a program like this; letās be honest, as much as a pokedex floating around our desktop for no reason sounds a liāl bit stupid, itās something that I ALWAYS want to build. And without yāall, I wouldnāt have tried to make it. So thank you SOOOOOOOO MUCHHH for building up this opportunity (yes, yāall get the most gratitude of all, youāre welcome
)
If Iām ever working on this project again after this, Iāll try to create a whole new blog page somewhere else, HECK, IāLL MAKE AN ENTIRE VIDEO ABOUT THIS ON YOUTUBE, but until then, this is prolly the end (aside from fixing bugs and stuff)
Sooo, yeah⦠thatās it!
Toodles 
I realized my dex used internet, and all this time I never checked if it was connected to the internet or not
So I fixed it!!!
Also, I added a Pokedex scan complete sfx too! Classic
And the settings has new options: Show Shiny Sprites or Legacy Cry!!!
Small updates, but weāre wrapping it up!!! Time to ship ship ship!
Sooo⦠yeah, thatās it!
Toodles!
Alright alright, weāre so back, I guessā¦progress it bit slow, but Iām trying my best too!
A new section is finally unlocked in the dex; MOVES! Check out all the movesets and its description entries in the dex!!!
Weāre so close, yet so farā¦dang
Sooo⦠yeah, thatās it!
Toodles

I donāt believe itā¦but within 1 hourā¦I think I achieved the most difficult task of this project; the PASSTHROUGH HANDLER 
Basically, all this time, the passthrough wasnāt being handled, and so the desktop interactions were blockedā¦thatās why I was trying to close the program by Alt+F4 or by switching desktops. But now? Since now weāve a separate passthrough handler, we can use our dex, while we use our desktop for daily use!!! š„
Obviously, itās little bit glitchyā¦and Iām trying to understand the flow chart of the program so I can tackle this, until then, bear with it. But WE DID ITTTT!!! THATāS WHAT MATTERS
!

The Pokedex is 90% completeā¦and right now it is technically testableā¦however though, thereās still the 10% that I personally want in V1 (excluding fixing the glitchy passthrough handler). All such changes are probably implemented by the next (and maybe the final) devblog. But for now, I need a break. So again, devblogs will be non regular as usual 
And I need to probably update the github page furtherā¦add some cool banner and logo and stuffā¦but thatās prolly for later! 
Sooo⦠yeah, thatās it!
Toodles
One of the things that inspired me to make my pokedex a floating desktop application is those āWindows 7 Gadgetsā;
these tiny floating applications, similar to how my pokedex worked. I especially loved the āPicture Puzzleā gadget, which is basically a mini game itself! 
And so, one of the main objectives in this project was definitely making it AS MUCH AS CLOSE to the original gadget feel, and it being part of the hidden icon tray was very crucial. 
As always, Godot Engine makes me speechless yet again, because would you believe that thereās ACTUALLY a seperate node just for this
? Introducing⦠StatusIndicator
Basically this creates that tiny hidden icon for your Godot application on both Windows and MacOS (idk about mac, but it definitely is the case for Windows
)
And this allowed me cool stuff like;
)Q: Oh wait...there's settings?
A: Yes.
As you can see, we made a settings menuā¦but letās be honest, I forgot why do we even need settings for 
Sooo, until I remember, let it exist 
Now Iām gonna work on the passthrough handler, so we can actually use both the dex and desktop at the same timeā¦infact, thatās another IMPORTANT aspect of the program. But itās complicated, soooā¦idk.
Sooo⦠yeah, thatās it!
Toodles

I thought of adding stuff like progress bars to make it look coolerā¦.but itās bit too hard. Again, I suck at Control nodes a bit. But Iām happy I did pulled this off!!!
As a tiny fix, if a data is still loading, unless itās complete fetching, you canāt search the next one, orelse it might break the program
Soooā¦yeah, thatās it!
Toodles
Pretty much nothing elseā¦unfortunately, for reasons that cannot be explained, my time to keep on working on this project is looking REALLY dim, so I have to wind it up. FAST
So devblogs from now on are short and effective 
Now you can see the rear of your pokemonā¦? (weirdā¦)
You know how Pikachu is a Mouse Pokemon, and Jynx is a Human Shaped Pokemon? Yeah, that.
Yippee! They got a new home! 
With an all new and working navigation button 
Sooo, yeah thatās it!
Toodles
(not really, but listen)
After the last blog, I decided to add passthrough desktop mechanic⦠only for that to actually not work. I realized that I have to set the passthrough regions AFTER building the entire pokedex, or else if unexpectedly I need to extend the search bar panel (which I did), I need to edit the polygon and reincorporate it in almost every single line of code 
And another thing I realized is that since the Kanto pokedex is a fictional device, THE BUTTONS DOESNāT MAKE SENSE AT ALL, LIKE, THEY DO NOT SERVE ANY PURPOSE
So I realized that Iāve to redesign the dex inbetween the process.
Plus, in doing so;
1. We gave pokedex a new and cool closing button
2. We added the PokƩmon Type(s) Icon
3. Sickass shiny effect on the big blue button
š¤
4. Added a work in progress option button for each information
5. Extended the screen size for both the pokemon image screen and the entry screen (RIP, sickass scrolling marquee effect
š¹ )ā¦
(A totally accurate graphical representation attached below)
Remember when I said the search bar extended a bit? Wondered why though?
INTRODUCING⦠SNAP TO SEARCH
(Itās not implemented yet though)
One of the things that makes the pokedexā¦a pokedex, is image recognition of a pokemon! However, since this is an app, the only way of getting an image is through something like screenshotā¦soooā¦
ā¦what if you CAN screenshot the desktop via the app, and send it to a Computer Vision based AI model (like Gemini) to identify the name of the pokemon, and search the information about it?
For safety reasons, the user has to provide the AI modelās API key in the settings panel (which rn does not exist) to try this themselves, so for now, itās locked.
And finallyā¦the biggest, simplest (and probably the dumbest) quality updateā¦
ā¦I changed the screen stretch mode from canvas to viewport (which, in simple terms, means the setting in godot that changed the screen quality of my app 100x better) so yippee!!!
As you can see, though it seems a huge makeover, itās still incomplete, and Iām still incorporating more features and stuff⦠so patience is the key I guess⦠šš„
Soooā¦yeah, thatās it!
Toodles
DEVBLOG #4: Addressing the Snorlax in the Room š
As the development for the pokdex progresses, itās pretty obvious from the start that issues are about to rise, especially on a project that actually break traditional window-based programsā¦
In the last DEVBLOG, I mentioned about creating a GitHub repository for the projectā¦however though, hours later, I realised in doing so, I accidentally created a new copy of the current project, and Hackatime considered this as a NEW PROJECT, meaning my project in Stardance is stuck with the initial 6 hours of progress before creating the repoā¦it was an easy fix though; adding the NEW project along with the old one in the project settings over here.
As for the pokedex, the codebase is getting larger, and we are almost 40% closer to finishing V1ā¦Iāve sooo many of these cool ideas that makes this project (and me) stand onā¦.however, due to time constrains and other issuesā¦maybe it might be postponed for a veeeerry long timeā¦Iām even skeptical of finishing the V1 too, at least, the way I want it to be. But as Toby Fox says, āDespite everything, youāre filled with DETERMINATIONā šŖā¤ļø
By the next devblog, probably Iāll be finished integrating every single collected data onto the pokedex, and (or by next devblog after that), the pokedex would be handling passthrough stuff, and THEN, it might be safe to say V1 is available to test⦠š¤
Hereās the last video I recorded of the current working dex. As you can see, Iāve officially hidden the placeholder search bar, so thatās a start!
Soooā¦.yeah, thatās it!
Toodles
As the name suggest, I finally created a GitHub repo for the project, and all the current progress is in the repo rn!!! I would not suggest you to check the project nowā¦since Iāve uploaded the janky versionā¦Iāll update it before the next devblog is outā¦
Today I had waaay to much free time, and I woke up early in the morning just so I can work more on thisā¦because I believe weāre almost reaching the end of VERSION 1!!! That is, a working pokedex thatās worth showing othersā¦the āVERSION 2ā is supposed to contain stuff like Search by Snippet, Pokemon based desktop pets (which sounds bit complicated rnā¦so maybe nope), and text to speech.
The Pokedex officially collects šÆ% of all the data we need! And I made it to show the description of the pokemon, and show it in the screen, while it scrolls slowly like a marquee!!!!!!!! And itās sooooooooooooooo smooth!!!
And I worked on the banner too for the repo.
Now before I end the day, Iāll probably integrate the pokedex with transparent dragging feature we did on the first ever devblog⦠and also add some sound effects, so the JUICY opening of pokedex is EVEN JUICIER šš¤
So⦠yeah, thatās it
Toodles
Alright! Like any day 2 of any project, progress is going prettyā¦wellā¦progressive. š«”
For starters, I started shifting my focus from transparent movable objects in desktop to the thing we actually wanna move; the pokedex itself.
I started thinking about how to receive inputs and search the pokemon for its data from PokeAPI, so for the sake of it, I created a placeholder field where we can search in the name of pokemon and get the id and name (and also other stats, but thatās in the output field). Again, this is a placeholder, and Iāll scrap it out once the dex is complete!
I created a placeholder pokedex sprites based on the original kanto pokedex (see below), and chucked it into the editor.
Secondly, I started finding the datas we need from PokeAPI and started storing it inside variables dedicated for it, so we can show these values once we finish the pokedex! For now, itās printed out on the output field.
I would say about 80% of datas are only collected; ID, Name, Height, Weight, Types, Abilities, Moves, Base Stats like SPEED, DEFENCE, ATTACK, HP, SPECIAL ATTACK AND DEFENCE. The other 20% includes the image, cry and description of the pokemonā¦
And as for the pokedexā¦well, I made some quick open and closing animationsā¦which works for now. š
Soooā¦yeah, thatās it!
Toodles
Owning your own complete pokedex is a dream of any child as well as of any Pokemon geeks, and Iāve been both once. However though, spending money on a toy-pokedex is not something wise š. So why not build one?
But I suck at anything electronics⦠so I decided to make a virtual pokedex for my desktop, inspired by those cool widgets we had in olā Windows 7! š
I started off by planning how the final project must look like (check it below), though Iām pretty sure itās a bit over-ambitious, but itās worth a shot! šš
Then I opened Godot 4 (yes, you can make non-game applications in it, its bit popular for that) and started working on the first thing; TRANSPARENT INTERACTIBLE WINDOWS.
It wasnāt a huge hassle, since Godot offers transparent, borderless window settings out of the box, and takes up 50% of the work⦠but thereās still the other 50%; handling interactions of both the desktop and the pokedex.
See, either your Godot game must be opaque and clickable or, it must be transparent and clickthrough-able. Itās possible to make the window transparent and clickthrough-able, while making the pokedex interactable, thanks to āpassthrough polygonsā: these are areas where the game window can detect interactions and inputs, instead of ignoring it.
By setting a demo spriteās area passthrough and making it draggable, I accomplished my first step of the pokedex; making sure that a transparent floating pokedex is actually possible in Godot (hereās a demo of how it looks like!). And Godot never fails to baffle me. ššš
I donāt get much time to work on this, and I might give up after making a barely working prototype⦠but letās see how long I would work on it until I do so.
Sooo⦠yeah thatās it!
Toodles