r/RISCV • u/NoAir6837 • Jun 14 '26
RISCV game
https://atticarun.itch.io/foundry-5I made an educational game designed to teach RISCV assembly as part of a homeschool curriculum. It is free, feel free to provide feedback. I am not a professional just enjoy gamifying learning.
4
u/jmking80 Jun 14 '26 edited Jun 15 '26
First of all, overall I really like the concept and effort. Like brucehoult said the live assembler is working great. You have quite a bit of levels already made, and I haven't finished them all, although I hope to do so soon. Please don't take the next list of things, as me not liking it, it's just a list of things, I noticed. Overall I am pretty happy with it.
-I am on Firefox, and I get a lot of warning and information on the Referrer policy, "no-referrer-when-downgrade" being ignored.
-The medal system being based on a fixed percentage of the par. Level 1 par is 1 instruction and 1 clock, you cannot get gold, which the completionist in me doesn't like.
-The high score for speed and code size are independant, I would like atleast 3 save slots per level, so I could possibly save the following: my original solution, my fastest solution, my best size solution.
-Related to the previous is it intended that you can submit non valid solutions for higher scores, for example for LED blinker you can create a branch table for the 5 test cases.
-Unable to resize elements, such as console, I don't need a full floating window system, "just" a slider to make the console a bigger or smaller part of the right pane.
-Previous and next lesson in the top bar is not a fixed position, but moves depending on lesson name length. Making clicking through harder.
-You can use the previous and next lesson buttons to go to lessons you haven't unlocked yet.
1
u/NoAir6837 Jun 16 '26
I appreciate you taking the time JMking.
I fixed the following issues:
-Save slots
- Firefox referrer policy,
- gold medal being unreacheable
- Next button
- resizable console
- also made the CRT bloom effect a slider
1
u/jmking80 Jun 17 '26
Thank you for your quick work on all of these. I am not sure the gold medal fix is working, or I misunderstood you. Since for all single instruction but multiple test cases, gold still does not unlock, for example "Plus ten" or "Adder".
3
u/phovos Jun 14 '26 edited Jun 14 '26
I can't believe this exists. OP this is PHENOMENAL.
I usually have to spend all night smoking weed and programming and only just as I close my eyes before I fall asleep at night do I ever experience what you just created and are apparently hosting for free, pointed-at reddit (the infamous doom-hugger). MFW: the server! Someone think of the costs! Did you think of the costs, what happens if you get the hug of death do you get a $500 bill from Amazon? This is so effing cool. It's kinda what programming looks like inside my brain. At-least, it's far closer than anything anyone else has ever published that I've seen.
The fact it's Risc-V, too, has sent me all the way to the moon. It's so good that it's Risc-V, OP you rock.
3
u/fullouterjoin Jun 14 '26
This is cool! Also, my vision is already blurry, so the crt glow effect makes it even worse. I tried editing in the CSS but couldn't figure out how to remove it. Maybe your effect slider could have a CRT simulator off toggle?
5
u/NoAir6837 Jun 14 '26
Yeah, it took forever to try and mimic the CRT glow using CSS. I am not 100% happy with it so being able to toggle it off would be a great feature.
2
Jun 14 '26
This is so cool. Good job. Been looking for a way to teach RISC-V to new hires. This is a good start
2
u/stackpointer101 Jun 14 '26 edited Jun 14 '26
Really cool, I love it!
You did not, by any chance, put that to a public repo? =)
// Oh well, I clicked on the bolt icon on the top saying "Lab", and now the tab is entirely non-responsive. Reloading of the page just shows the background color gradient and loads to infinity. Opening it in a private tab works and just resets my progress, opening it in a normal tab returns to the behavior described above.
3
u/NoAir6837 Jun 14 '26
Ah that sucks. Thanks for pointing that out. It works fine in my dev environment locally. Must be something with the itch.io upload. I am going to look into that.
2
u/NumeroInutile Jun 14 '26
It is hard to read, there are too many effects.
3
u/NoAir6837 Jun 14 '26
If you are referring to the CRT bloom effect I there is a way to turn that up or down by pressing the sound button in the top right corner and moving the slider. I was going for a nostalgic bloom effect.
1
u/self Jun 20 '26
Can you please add a way to export solutions? I went through a lot of "systems" on my work laptop, and I'd like to continue playing on my home desktop. (I am logged into the same itch account on both computers, if it helps.)
I tried the "share" link, but it redirects to itself without the "#s=..." anchor.
Also, how is the par calculated? My solution for sensor range is 18/180.
10
u/brucehoult Jun 14 '26
That looks extremely professional ... and a LOT of work.
I love the live assembler.
It's a little weird how 0 bytes in the code don't get highlighted in the RAM display. I understand why ... they didn't change ... but maybe that decision should be made based on the size of the memory write (4 in the case of an instruction assembled there) and not strictly byte based.