You are browsing as a guest. Sign up (or log in) to start making projects!

Shreyansh

@Shreyansh

Joined June 1st, 2026

  • 18Devlogs
  • 6Projects
  • 1Ships
  • 0Votes
Random Ohioan who codes and does hardware projects?

Check out Pocket CIty by: @sol4r_on_hackclub

And Check Out The Rover X and The anypad
Open comments for this post
Reposted by @Shreyansh

2h 37m 14s logged

I’m getting new wifi lol, & 150 hours

so yeah i won’t be here and probably will have to post a 10 hour thing

BUT on the plus side, we got a nice death screen that has a bunch of quotes that you can read below

    [SerializeField] private string[] quotes = { 
        "Opportunities multiply as they are seized \n - Sun Tzu",
        "If you are going through hell, keep going \n - Winston Churchill",
        "No empire was built on the first draft",
        "Fall seven times, stand up eight",
        "That which does not kill us, makes us stronger \n - Friedrich Nietzsche",
        "Out of ash, a new foundation",
        "I have not failed. I just found 10,000 ways that don't work \n - Thomas Edison",
        "A man is not finished when he is defeated. He is finished when he quits \n - Richard M. Nixon",
        "It does not matter how slowly you go as long as you do not stop \n - Confucius",
        "Out of difficulties grow miracles \n - Jean de La Bruyère",
        "The greater the obstactle, the more glory in overcoming it \n - Molière",
        "A Pocket Sized City is too small for your ambition. Build again \n - The Dev",
        "Success usually comes to those who are too busy to be looking for it \n - Henry David Thoreau",
        "Go big or go home",
        "You can't give up just yet. Stay determined... \n - Undertale"
    };

Maybe you’ll catch the little easter egg there as well ;)

Working on adding game audio!!

and probably finally enough hours to get the framework 12 (btw I wouldn’t recommend this as a daily laptop (f13 better), I just want something I can write on lol)

7
2
616
Open comments for this post
Reposted by @Shreyansh

2h 11m 50s logged

Devlog - 4

I know I took a bit long this time too to post a devlog but I am here. I was mainly searching for APIs and all but there are many out there but with too many restrictions or has less rate limits for the free tier. I have stumbled upon one adsb.lol but that gives me a CORS error and I have thought to build a proxy to bypass that and all but before that I have emailed them regarding if it is fine If I do it that way. If you guys have suggestions about it then I will happily accept those. But then I wans’t going to just sit so I coded a hard coded flight details but in a way so that even after I plug in the API link it will still work so my work would not go down the drain. I have coded a panel where it lets you know about flight details and all. I have coded a function which can handle multiple aircrafts by placing the markers where they suppose to be. I will be working on making the information panel a bit better and will make it look professional and all. This is the work I have done till now. Thank you and stay tuned!

5
3
280
Open comments for this post
Reposted by @Shreyansh

8h 48m 12s logged

Final DevLog before First Ship - Boss Battle

I don’t think words can explain what I made so click here to watch a video on my probably final major addition (no pressure)
& also help with a small dilemma I have.

NO!! that does not mean this game will stop development, but i think i finally have enough hours (+10-15 more safety) to get a Framework 12! (and then i will be able to crack on with entrance exams - so i guess development will slow a touch).

Of course I’ll ship once the game is polished enough.

You might see a devlog or two from the “Capital Chaos Website” - follow me ;)

I really hope you guys all enjoy it and now I need to do the readme and stuff. I also realised I was one of the most viewed on Stardance which is honestly amazing and I appreciate all of the support :)

And thank you to all the new friends I’ve made and all the followers and commenters. It’s honestly been insane.

8
3
532
Open comments for this post
Reposted by @Shreyansh

2h 48m 28s logged

Quiescent search is amazing! After adding it my bot instantly became better. A quiescent search just means that when evaluating a board state to a certain depth even if you reach that depth you need to evaluate until a quiet move (a move that isn’t a capture). This means that even if the bot reaches the max depth in the middle of a piece trade it won’t just think the move is amazing since all it can see it won a piece. Since I added the bot, when tested against other bots it has made 0 blunders! In fact it beat Li, a bot rated 2000 on chess.com ! I’m really proud of this and think it is really cool to say that my bot has beaten a 2000 rated bot. However, it only beat the bot once and so it could just be lucky. I was going to test it in 2 more games against the same bot but found myself getting bored of manually inputting moves into chess.com and my bot to get them to play each other. Therefore, I’m planning on making my bot able to play other bots on its own. To do this I will need to download the other bots and make my bot give properly formatted inputs and outputs.

0
1
93
Open comments for this post
Reposted by @Shreyansh

1h 56m 39s logged

Music handler + system metrics idle screen

  • Time to make Tiny_Jarvis a little more like the real Jarvis….
    SYSTEM METRICS SCREEN!

  • Displays in real time: battery life, cpu temperature, current time on the OLED screen.

  • Finished up the Mopidy part of the music player, can’t test it yet sadly (i don’t have access to my rpi5 right now) it was way more difficult than I thought

  • AIM: “Play …” -> searches through free music online database like Youtube music for query and plays the music if it finds it.

  • Added another quirky feature: flip a coin

  • Tell me if you have ideas of other new useful features

2
2
453
Open comments for this post
Reposted by @Shreyansh

2h 30m 8s logged

“Hey Tiny Jarvis, play Smooth Criminal”

  • mopidy-youtube integrated! and it works! All you have to do is press the button, say out loud “Play (song) …” and it will search for it in Youtube music (FREE MUSIC!!!) and play it.
  • You can then adjust the volume with the rotary encoder, which is satisfying asf.
  • This was one hell of a debugging session, holy
  • I had to search for forked repos on Github that fixed a obscure yt-dlp issue, and somehow it works.
  • Anyways apart from that, i restructured the project code repo entirely, everything is now separated into different sections like firmware and pcb to distinguish hardware from software.
  • New: the install.sh was finally tested and it works perfectly after a few tweaks! woohoo!
  • Oh and finally: rewrote my README.md as recommended by the Stardance guides, and yh I agree it looks better
  • Tell me if you have any other ideas of features to implement
7
3
777
Open comments for this post
Reposted by @Shreyansh

2h 48m 24s logged

“Hey Tiny Jarvis, what’s going on in the world?”

  • New feature: Tiny Jarvis automatically fetches the news from BBC World, chooses the most impactful headline, reads the articles and generates a summary!
  • This happens in the background, every hour, to ensure that the news is recent.
  • I discovered smth called RSS feeds, which is basically a tool that feeds website updates back to you in the form of XML files.
  • Then I learnt about the feedparser python library, as well as trafilatura, for extracting text from HTML (for getting the text from the articles), which made the job ten times easier.
  • However, this process does take some time:
    • Step 1: script parses the BBC World feed
    • Step 2: local AI chooses between the thirteen daily headlines
    • Step 3: script fetches the associated articles text
    • Step 4: local AI summarizes ALL THREE articles.
  • On a Raspberry Pi 5, obviously, this can take at least 5 minutes.
  • Now for the moment this is a bit biased, because I chose the “Technology” category for the RSS feed 😅 but i’ll add the option to change it later
  • Is this a good feature? Please tell me
4
2
780
Open comments for this post
Reposted by @Shreyansh

33m 54s logged

#Devlog 3

I have just finished a full remodel of all the UI for the home and lock screen with full custom logos and wallpapers (I used comfy UI for it). I have just published it on github so you can see all the code and files their now. I am currently working on making a AI for it called Kraken it has 4 models each built for certain things. 1st model a coding model, 2nd model and writing model for documents, 3rd model a image/video model and 4th a pentesting check for any errors in my codes that would lead to attacks.

6
3
1428
Open comments for this post
Reposted by @Shreyansh

7h 47m 23s logged

Devlog 3: Buddy Pre-release is still a pre-release.

I am so close to getting this available for all hack clubbers !?!?!

But the problem is it isnt polished yet…

😢

Recap for New comers - Skip this if you read the last 2 devlogs
Buddy is a Desktop AI assistant/agent that fetches info and runs commands on your computer (Mac specifically, others will come soon). But at first it was just a terminal assistant but one of you guys in slack said i should make a good gui for it like a nice cool user interface for it. and i did and then i go the idea of making this like something all hack clubbers can use and enjoy so now im stuck making a polished app for all hack clubbers

and so…

Warning Extremly long and descriptive devlog ahead

⚠️⚠️⚠️

What i did so far…

Basically I added..

  • Tuff bear logo for the menubar icon
  • Settings page - manage instructions, your info, links, api’s etc (not finished yet )
  • Actually working chat history - You can access previous chats youve had with it
  • Library Page - Lists every single chat youve ever had with it chronologically
  • Attach files - you can add any files you would like to it (almost done)
  • A base version of a long term memory - This is what bridges it from being a mindless ai robot to someone who can work alongside you and actually remember projects you have collaborated on with it. (very small thing using an offbrand RAG system)

In short i realized im gonna have to do a lot more to make this in good shape maybe at least 2 or 3 devlogs before i can send out a Buddy Beta for Mac and then windows and linux

Not much has changed in UI. just the different pages and soon i will add a way to change theme color

Next?

this is gonna be a long sequence but here we go

  1. finish attach files update
  2. Extensions page - allow user to add different extensions such as access to github or access to messages etc
  3. finish settings
  4. add different thinking modes
  5. Long-term memory v2
  6. polish UI further
  7. Find UI bugs - debugging
  8. make into an app and test on my mac
  9. start making windows and linux versions
  • this shouldnt be that hard because there are 3 parts of my code base,

The UI, The Model, and the backend.

The model is universal and my UI is too.

for the backend python is also mostly universal, what isnt universal is tool calls rn it uses applescript and other mac only commands. im gonna have to recreate that for the other systems.

I dont know why it says 8 hours i swear it should be a bit more and i dont know why i took so long to post.

Stay tuned in Devlog 5 or 6 i should release a beta for mac and next devlog should be linux and windows.

P.S Comment a cool thing i should add (I honestly have no ideas)
P.P.S Repost If You this is cool and you want more people to see this and have access to this tool

1
2
300
Open comments for this post

7h 47m 23s logged

Devlog 3: Buddy Pre-release is still a pre-release.

I am so close to getting this available for all hack clubbers !?!?!

But the problem is it isnt polished yet…

😢

Recap for New comers - Skip this if you read the last 2 devlogs
Buddy is a Desktop AI assistant/agent that fetches info and runs commands on your computer (Mac specifically, others will come soon). But at first it was just a terminal assistant but one of you guys in slack said i should make a good gui for it like a nice cool user interface for it. and i did and then i go the idea of making this like something all hack clubbers can use and enjoy so now im stuck making a polished app for all hack clubbers

and so…

Warning Extremly long and descriptive devlog ahead

⚠️⚠️⚠️

What i did so far…

Basically I added..

  • Tuff bear logo for the menubar icon
  • Settings page - manage instructions, your info, links, api’s etc (not finished yet )
  • Actually working chat history - You can access previous chats youve had with it
  • Library Page - Lists every single chat youve ever had with it chronologically
  • Attach files - you can add any files you would like to it (almost done)
  • A base version of a long term memory - This is what bridges it from being a mindless ai robot to someone who can work alongside you and actually remember projects you have collaborated on with it. (very small thing using an offbrand RAG system)

In short i realized im gonna have to do a lot more to make this in good shape maybe at least 2 or 3 devlogs before i can send out a Buddy Beta for Mac and then windows and linux

Not much has changed in UI. just the different pages and soon i will add a way to change theme color

Next?

this is gonna be a long sequence but here we go

  1. finish attach files update
  2. Extensions page - allow user to add different extensions such as access to github or access to messages etc
  3. finish settings
  4. add different thinking modes
  5. Long-term memory v2
  6. polish UI further
  7. Find UI bugs - debugging
  8. make into an app and test on my mac
  9. start making windows and linux versions
  • this shouldnt be that hard because there are 3 parts of my code base,

The UI, The Model, and the backend.

The model is universal and my UI is too.

for the backend python is also mostly universal, what isnt universal is tool calls rn it uses applescript and other mac only commands. im gonna have to recreate that for the other systems.

I dont know why it says 8 hours i swear it should be a bit more and i dont know why i took so long to post.

Stay tuned in Devlog 5 or 6 i should release a beta for mac and next devlog should be linux and windows.

P.S Comment a cool thing i should add (I honestly have no ideas)
P.P.S Repost If You this is cool and you want more people to see this and have access to this tool

1
2
300
Open comments for this post
Reposted by @Shreyansh

3h 50m 50s logged

Game Sountrack?

But before I talk about that, lemme just say the game audio is almost finished, we have menu sounds for clicks and stuff, and i added support for main menu music. The firetruck hoses actually do stuff, floods sound like floods, theres some peaceful background nature sounds and yeah it makes the game feel so much nicer.

although i forgot place sounds which was a massive oversight.

also my wifi is still working. no idea why, but not complaining.

and i’m cooking on a soundtrack lowk
although none of it seems correlated in any way and idk how i’ll make it fit into this game but you know what maybe it’ll just all go into some random album. None of the hours put into these songs count but its okay. i’m no pro tho so. all i’ll say is i love some bass

4
2
557
Open comments for this post
Reposted by @Shreyansh

7h 36m 10s logged

Stardance Stats dev log #7

Projects page is done.

Same podium as People but with the banners behind the top three. The list under it includes a thumbnail, the owner, and hours and devlogs in a single row. Buttons to filter to Super Stars or hardware.

Click one, and you get everything about a project. Banner, tiles, a chart from 1 to 30 days, every ship, and all the devlogs. Sort them by newest, longest, most liked, most discussed, or most viewed.

1
1
69
Open comments for this post
Reposted by @Shreyansh

3h 52m 46s logged

INSANE tree optimisations

Went from 60-80 fps @ 4K to 400-450 (in game). Yes a 6 to 7x increase.

How you ask?

GPU Mesh Instance drawing offloading the CPU work of handling thousands of game objects.

In English, I’m no longer spawning thousands of tree objects, but instead telling the GPU to draw the tree instances every frame. This seems quite unintuitive because you’re now drawing thousands of things every second. BUT this means that there are no game objects, so the CPU doesn’t even know that these exist. Also the GPU draws it thousands of times anyways.

A game object handles transforms, rotations, etc. that the CPU has to keep track of whether it is active or not. This had the added benefit of the trees having no overhead when the trees are disabled, so you regain all of your framerate!

Also I used some neat little script that combined the meshes all together in the GameObject prefab.

Now it really should be able to run on your potato PC/Laptop.

Combine script

using UnityEngine;

public class MeshCombineUtility : MonoBehaviour
{
    [ContextMenu("Combine Children Meshes")]
    public void Combine()
    {
        MeshFilter[] meshFilters = GetComponentsInChildren<MeshFilter>();
        CombineInstance[] combine = new CombineInstance[meshFilters.Length];

        Matrix4x4 matrix = transform.worldToLocalMatrix;

        for (int i = 0; i < meshFilters.Length; i++)
        {
            if (meshFilters[i].gameObject == gameObject) continue;
            combine[i].mesh = meshFilters[i].sharedMesh;
            combine[i].transform = matrix * meshFilters[i].transform.localToWorldMatrix;
        }

        Mesh combinedMesh = new Mesh();
        combinedMesh.CombineMeshes(combine, true, true);

        #if UNITY_EDITOR
        string directory = $"Assets/Assets/Mesh/Tree/{gameObject.name}.asset";
        UnityEditor.AssetDatabase.CreateAsset(combinedMesh, directory);
        UnityEditor.AssetDatabase.SaveAssets();
        Debug.Log($"Combined mesh saved to {directory}");
        #endif
    }
}

Draw section of GPU Mesh Instancing

    private void DrawTreeMeshes()
    {
        if (treeMesh == null || treeMaterial == null) return;

        foreach (var kvp in generatedChunks)
        {
            ChunkData chunk = kvp.Value;
            if (chunk.spawnedTrees == null || chunk.spawnedTrees.Count == 0) continue;

            int batchSize = 1023;
            int totalTrees = chunk.spawnedTrees.Count;

            for(int i = 0; i < totalTrees; i+=batchSize)
            {
                int length = Mathf.Min(batchSize, totalTrees - i);
                Matrix4x4[] subMatrices = new Matrix4x4[length];

                for (int j = 0; j < length; j++)
                {
                    subMatrices[j] = chunk.spawnedTrees[i + j].matrix;
                }

                int meshIndex = Mathf.Abs(chunk.chunkCord.GetHashCode() + i) % treeMesh.Length;

                Graphics.DrawMeshInstanced(treeMesh[meshIndex], 0, treeMaterial, subMatrices, length);
            }
        }
    }
9
4
1189
Open comments for this post
Reposted by @Shreyansh

1h 28m 32s logged

You won’t believe it. I got it working FIRST TRY

That’s actually crazy to be honest. Tells you how much expirience those 8 hours of menu development have given me.

Someone give me a Unity menu doctorate or sum

But on a serious note, we have game difficulty selection and its all nice and self contained. With controller support of course.

You can see we have Previous Saves but that isn’t really functional yet.

One of the things I learnt is to never rely on the UI giving you the data, only the click, so you’d manually add the elements and then call .value or .isOn respective to the component, and the same goes for dropdowns although I didn’t use one here.

Let me know if you think it looks clean or any improvements to the UI readability, etc.

4
2
320
Open comments for this post
Reposted by @Shreyansh

10h 15m 15s logged

I’ve added position bonuses! I created a new file which rewards moves which place certain pieces in certain areas. For example pawns are rewarded for controlling the centre and pushing to the 7th rank (so that they can promote). The bot now tries to control squares and this means it now has proper openings. I also completely updated the file structure to split the responsibilities more clearly. I also updated main.py and logic.py and made them classes. Making logic.py a class means that I can use it for both the player actions and bot actions without them interfering. This also makes my previousMove() much cleaner as it means when the bot uses it, it doesn’t interfere with when the player uses it. Due to the new file structure it means that I can easily change the weights of each of the different modules to change how the bot plays easily. Later I will add a slider or at least a setting that lets the player control these modules. As well as this I also changed it so that drawing the same arrow again removes the arrow. Next I am going to try add another module that rewards moves which keep the king safe.

0
1
15
Open comments for this post
Reposted by @Shreyansh

3h 5m 5s logged

Dev Log 2 - done

Okay I spent about 30 minutes developing a simple system where I can just display all of my work and stuff. That’s kind of it. There are project cards which are really simple to use. There’s a class and a box and then that’s kind of it. I just copy and pasted them for all of my achievements and stuff and then just rearranged them and stuff. I added different texts in all of them. On top of that I also made a dedicated page which just shows all my projects. There are images which I put in Hack Club CBN and I got them that way.

3
2
400
Open comments for this post
Reposted by @Shreyansh

9h 25m 38s logged

Improved efficiency! I’ve improved the efficiency of the bot by sorting the possible moves better. This is useful as it means when the alpha beta pruning goes over everything it searches the best trees first. This means that it can prune more branches. I also removed some random integer conversions on my bitboards as they did nothing, since the bitboards are already integers. I also removed a restriction that didn’t let the player do anything on the bot’s turn. Now the player can draw during the bot’s turn. I also went across all of my code and changed it to use (row, column) instead of (column, row). This helps keep things cleaner. I then also changed the bot calculations from from using the fullyLegalMoves() function to the movementLegalMoves function(). fullyLegalMoves() just makes sure that the king isnt in check after the move. If it is then it undoes the move. By insteading doing this in my bot.py it means I can just not undo the move and immediately remove that move. This means that I don’t need to undo the move more times than needed. This is very helful as undoing a move takes up computing power. I also completely replaced the piece names with integers as this would be slightly better and I could use bit operations with integers. As well as this I also added a timer that shows how long the bot took to make its move. By adding all of these changes the bot reduced its time on the first move as white from ~4 seconds (with depth 4) to 3 seconds (with depth 5). This shows that it is much more efficient as, time taken increases exponentially as depth increases. As well as this 3 seconds is the earliest the bot can move and so the true speed is likely much less.

0
1
20
Open comments for this post
Reposted by @Shreyansh

7h 53m 47s logged

Transposition tables! I’ve added zobrist hashing so that I can create a dictionary that contains all of the board states I have already evaluated. Since many different moves can lead to the same position it means that I can save computing power by just getting the score of that board state instead of having to re-evaluate the board again. Zobrist hashes are just a way to represent the board in hash. This is useful as I can use them as the keys in my dictionary and quickly see if the current board state has been evaluated yet. I also fixed a bug that let the bot play illegal moves as there wasn’t a legality check after the aspiration window failed. An abort flag was also added that is set to True when the user undos or redos a move. This lets me instantly stop that thread’s search for the best move ensuring it doesn’t use unneccessary computing power. Next I am going to try and implement iterative deepening so that I can force the bot to move within a certain amount of time. This would let me make the bot play different ‘time controls’ by altering how long it has to think about what move it should play.

I tested it against some bots from chess.com and it managed to beat Wally (a 1800 bot) but lost to Li (a 2000 bot)

0
1
7
Open comments for this post
Reposted by @Shreyansh

1h 17m logged

THE FINAL BODY DESIGN FOR MORE TORQUE LEG HEXAPOD/SPIDER ROBOT 2.0!

So, the first one was too wide then tried making it less wider but then thought there should be more space for wires and maybe air flow also for those converters.

So, in the 3rd one increased a few 2-3centemeters and its all good now and have space for other small things also if needed.

And do we need to record timelapse when we post the ship?

Subscribe YouTube

Instagram

0
1
72
Open comments for this post
Reposted by @Shreyansh

5h 55m 56s logged

NEW NAME!!! Flash Floods + Main Menu

If you remember, Pocket City is a game that already exists so now it’s called Capital Chaos. Thank you YouTube comments! And all of you as well, for the suggestions.

Ofc new video to go with it: watch by clicking here!

I created flash floods that.. well flood the entire map. It’s meant to be a little toned down of a disaster, thats more survivable because it gives the game a touch more balance. It stops all services from working, so that could be detrimental during a virus attack. But on the other hand, it stops every single fire and prevents new ones and explosions.

A lifesaver if theres a nuke, it gets completely nullified.

Also new main menu, I think it looks pretty neat. Especially compared to the old one.

9
3
279
Loading more…

Followers

Loading…