FoonLudum Dare ExplorerLD48 → Deeper Bros. Digital Computer

Deeper Bros. Digital Computer

By adam-selker

View on ldjam.com

CategoryRankScoreCount
Overall624.0624
Fun1223.8823
Innovation524.1824
Theme3843.6925
Graphics5363.2924
Audio6911.9017
Humor3002.8519
Mood3223.4522

Comments

scidev 2021-04-26 02:04

As a programmer, I enjoy these sorts of things, I would not have thought of deep as in deep down in the software, nice idea. This is a very clever game and probably the only python entry I have ever seen in ludum dare before. Nice job!

tezza48 2021-04-26 14:51

It's super risky making a programming game. You did it anyway and it's great!

I'm gonna be diving into the rest of the levels for sure! Though i might need my ortho keyboard that's got arrow keys instead of the 60% i'm on right now!

OOps, just got rid of that solution screenshot, realize it's not good to share the answer.

I managed to get down from 67 ops to 45 :D

gorialis 2021-04-26 16:34

Very interesting. I hadn't even considered command line games for Ludum Dare submissions before this, but this plays excellently. It has a SHENZHEN I/O-kinda vibe to it, and some intriguing challenges.

lighty-the-light 2021-04-27 04:03

Pretty hard for non-programmers to understand. But I'm a programmer so I just love it! A inspiring idea of the theme 'deeper and deeper'. Good work.

greg-the-egg 2021-04-27 07:25

This brings me back to middle school. Classmate made an even/odd function that was 10,000 lines of if statements

Smart.png

Creating a programming language for a game jam is pretty sweet. I love the TIS80 and Shenzhen I/O style puzzle games.

The experience on Windows is pretty rough, lots of stuttering. A proper Windows release would be sweet, and hopefully get more people would try this game, because it's pretty cool!

sirfist19 2021-04-27 08:49

I really want to play this game cause I'm currently taking a class in low level CS stuff including assembly language. But I can't figure out how to download the game on Windows. I downloaded Python 3 and Blessed, but where do I type the "python3 game.py" command?

axeltherabbit 2021-04-27 09:52

@sirfist19 in the cmd/powershell, you also have to add python to your PATH

jesus-gonzalez 2021-04-27 13:43

I'll save this for later to try on a Mac system, I think it should just work. In the meanwhile, I'm just glad I discovered this Blessed library, looks really fun to tinker with.

tezza48 2021-04-27 21:17

@greg-the-egg Unroll the loops! That's brilliant :D

adam-selker 2021-04-28 06:05

@greg-the-egg: Sorry about the stuttering! I'll add a warning about that. I wonder if it would run smoother in PowerShell?

@sirfist19: First, add Python to your PATH. After you do that, in a command prompt or PowerShell, the command `python` should do something, rather than saying "command not found". Then, in the cmd prompt, go to wherever you downloaded the game code, and run `python3 game.py`. As Greg the Egg said, you might get some stuttering.

temulgeh 2021-04-28 13:48

I'm running it in PowerShell, and in the new Windows terminal and it's stuttering yeah Might install Ubuntu just to play this game lmao, it's really fun so far

EDIT: just remembered i installed it on a small laptop so i'll use that instead

temulgeh 2021-04-28 16:10

Heyy i'm really having a lot of fun with this, but a few things did bother me so here are a few suggestions: - add in the tutorial that bits are ordered from most significant to least significant - if you press right arrow at the end a line it should probably move the cursor to the next line, same thing for left at the beginning of a line - ~~if you have a line, a blank line and a line, you can't erase the blank line, bug?~~ (edit: i was wrong)

space-man 2021-04-29 04:57

Fun game, reminds me of TIS-100. I'll have to come back to it to try more of the levels, and optimize my solutions. Great job!

adam-selker 2021-04-29 05:37

@temulgeh : Yeah, the editor has a lot of edge cases and almost-bugs... at least I have the excuse that I'm pretending to be a really simple computer! =P Unfortunately, I don't think I can fix this one, that would be adding a feature after the fact.

There's a brief mention of "big-endian" in the documentation, I figured folks would mostly figure it out by trial an error. This game already has a four-page manual _instead of_ a tutorial, lol.

Thanks for playing!

vknauss 2021-04-29 09:24

Wow this is really cool! I the only bit of feedback I can give is it wasn't clear at first how the (up to) 2 commands in one pipe section would both take the same 2 inputs, and would constitute all the inputs for the following command(s). The wording of the manual made me unsure if it was like a post-fix ordering with implicit nesting, or if each pipe section was one input, or what. I did figure it out though. Really nice work on this one I plan to play all the puzzles!

bloodycoin 2021-04-29 20:41

Wow, a stack based programing puzzle game for a Compo. Just wow. And also python based :heart_eyes: . Only thing missing thing for full Zachtronics-like experience is a printable PDF manual :)

Great idea to add `Deeper` custom user code functions.

To be fair, I had struggled quite a bit to get down to it, as I had wrap my head again (read - remember) stack based programming. What would really have helped is an ability to `debug` step through my code rather than executing everything at once. I think it would make the game a lot more accessible to wider audience, as it would make it easier to see, understand and learn how it's working. Would love to see a bit improved navigation, debug-stepping and more puzzles, but overall it's already very impressive. P.S. Thanks for showing Blessed, time to go make `Space DwarfFortress | ADD|OUTPUT` => SpaceFortress.

bloodycoin 2021-04-29 20:43

Oh, and since I am on mainly work on windows, I took the easy way out, by firing up VirtualBox with linux :thumbsup:

vknauss 2021-04-29 22:26

It would be nice if there were a way to copy "Deeper" code between puzzles. I spent a lot of time just reimplementing my custom "Less than" operation. Done 7/9 puzzles. Love this, the most time I've spent in a LD game by far

vknauss 2021-04-29 23:38

I think I may have found a bug. In the sorting program, it looks like the first test input is missing "0" in the expected output. https://github.com/aselker/ld48_computer_1/blob/main/puzzle_list.py line 48 (forgive me for digging into the source). My program outputs 0 1 2 3 4 5 6 7 8 9, but it never enters the second test case.

adam-selker 2021-05-01 01:21

@vknauss : Right you are! Fixed, thank you!

robinfaury 2021-05-01 18:28

What a game! Congratulation! By far my favorite game for this LD!! It looks like a Zachtronics game.

jeremy-ryan 2021-05-04 00:16

Nice entry!

Despite being a game about low-level programming languages, it's remarkably accessible; the on-screen documentation and stack/output information was surprisingly smooth for a 48-hour game. In terms of the IDE, the only thing I would have added would be a debug mode or at least a way to "underclock" to follow execution more easily (although I'm not surprised you didn't have time for it).

The puzzles were well-constructed and force you to tackle them in different ways, between the deep assembly language and the deep deep microcode. The language itself made enough sense, but the additional restrictions --- mostly memory-related --- made you have to think really carefully. It would have been nice to have a couple more ways to interact with memory, like maybe a separate stack for the inputs and general use, or a couple registers to store values. That said, just the stack was technically enough and certainly made the earlier puzzles more interesting.

Performance on Windows wasn't the best, and it took a couple seconds holding down delete to clear a line. I never expect great optimization for a game jam game though.

I still haven't beaten all the puzzles but I'll probably come back to it! Great work and creative use of the theme.

gnevesdev 2021-05-04 19:09

It's a masterpiece! I've spent an hour playing it so far, and I LOVE it! Just one thing: when I JMP, the stack disappears :thinking: is that supposed to be?

homlet 2021-05-05 10:25

Great entry! I solved the first three, but I'll definitely be coming back to look at the rest when I have time. Would be nice to have a confirm dialog before quitting, as a couple of times I instinctively went for the VIM command to save my code, and instead quit the entire program from pressing escape.

adam-selker 2021-05-06 05:52

@gnevesdev : That's not supposed to happen! Mind sending a screenshot of the code that causes it? Can you tell if it's a graphical artifact or if the stack is actually gone?

@Homlet : Haha, I've left so many accidental ":w"'s in the code =) Really, your code should be autosaved, but I didn't have time during the jam, so now it's on the Post-Jam Improvement List. Hope you didn't lose too much time!

gnevesdev 2021-05-06 18:49

@adam-selker here you go:

bug_report.png

I thought this was gonna work, but it didn't :(

adam-selker 2021-05-08 21:31

@gnevesdev : I can't seem to reproduce the problem. Here's a clip of your code running in the "Powers of Two" puzzle:

https://imgur.com/a/1tqGbDv

It looks like the code consumes three stack elements each loop, which makes sense since there are three POP instructions.

Do you see something different?

Thanks!

gnevesdev 2021-05-09 17:33

@adam-selker in my game, there was no output. And the code was for the first puzzle btw. I can see it does not actually print numbers from 0 to 10 lol :P

udo 2021-05-12 10:00

An actual console game I can run natively on Linux, very nice! I did enjoy playing Shenzhen I/O a lot :slight_smile:

First of all, congratz on making this within 48 hours! There are some things I would change though: - While in general the UI works fine, the code editor itself is kind of obstinate, especially when it comes to inserting or removing lines. - Despite the "levels" having a didactic progression, I still think the learning curve might be too steep. It might be worth considering to start out with 2 or 3 instructions, and then getting to know the other ones later. - There is some weirdness with the interpreter, I was often not sure whether this was my fault (probably) or bugs manifesting. This was especially tough in the beginning, where the example program wouldn't even run: no feedback, no stack action, no output.

I did like the fact that the editor does input checking in real time. The weird machine language kind of reminded me of some of the Advent of Code ones :laughing:

Oh by the way, if there was audio, it wasn't playing on my machine, don't know :shrug:

sentmoraap 2021-05-13 18:26

Nice programming game! I have not seen language in which you pipe pairs of values so that's something novel. I wonder how it compares with Forth. The custom instructions is cool too.

It's hard to debug. Step by step execution would have been nice.

I have found a bug: this code should return 1 when the second input is greater than the first. It works when I test values in the editor, but not in the main program.

bug_deeper_bros.png

blubberquark 2021-05-16 09:54

I really wanted to like this, and I realise what I think is wrong with this game is exactly the same thing I found wrong with Human Resource Machine: The assembly is too low-level and the machine is limited in a deliberate attempt to make programming into more of a puzzle, which makes it more cumbersome than a puzzle game and less fun than coding for a real computer.

I just won't rate on fun, or innovation, or graphics I guess. I am just really conflicted.

Reminds me of the Dijkstra quote: APL is a mistake, carried through to perfection.

adam-selker 2021-05-24 00:16

@blubberquark : If you want less-restricted coding puzzles, check out Project Euler! They're a bunch of mathy code challenges / logic puzzles, and a great way to learn a new language. For extra mathiness, try them in Haskell!

2023-01-17 09:20

When working with PDF documents, I often convert them to other extensions to make it easier for me to edit information. It's not really difficult, but it's still cool that you can read articles like https://www.pdfplatform.com/blog/how-to-convert-heic-to-pdf-on-mac/ to find a better solution for converting PDF documents.