Sine Factory by oxnh
Sine Factory
Sine Factory puzzle game about constructing a goal waveform using basic addition, subtraction, multiplication and division on input waveforms. This game is better experienced fullscreen on the itch.io page because the lines can pop out when the viewport is small.
Controls
- Select building by pressing a hotbar button with the mouse or using number keys
- Place building - left click
- Delete building - right click
- Press escape to enter the pause menu, hints and the level selector can be found here
Music
"Concentration" Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 4.0 License
http://creativecommons.org/licenses/by/4.0/
| Link | https://github.com/Hardware7253/LD59 |
| Itch (play in fullscreen) | https://oxnh.itch.io/sine-factory |
| Original URL | https://ldjam.com/events/ludum-dare/59/sine-factory |
Ratings
| Overall | 191th | 3.9⭐ | 42🧑⚖️ |
| Fun | 232th | 3.675⭐ | 42🧑⚖️ |
| Innovation | 121th | 3.888⭐ | 42🧑⚖️ |
| Theme | 27th | 4.5⭐ | 42🧑⚖️ |
| Graphics | 520th | 3.549⭐ | 43🧑⚖️ |
| Mood | 345th | 3.763⭐ | 42🧑⚖️ |
| Given | 29🗳️ | 57🗨️ |
Also I forgot to add the music is by Kevin Macleod on this page. I'll add that now.
The addition of the oscilloscope is cool but it's so space-constrained that it's hard to use.
I got stuck on the "`sin(x) + 1`" level. I can't figure out what's going wrong and there isn't any room to route the signal to the scope so I can see if I'm wrong or if there's a bug. Here's what I've got:

(Basically `sin(x) + sin(x) / sin(x)`).
- I wish you could rotate pieces.
- I wish the board was a little bigger (or maybe infinite). It's weird that you can zoom in and out even though the board is so limited.
- I wish you could connect an output right next to an input and it would connect without a wire.
With all of those limitations stacking up, I have *just barely* enough room to connect everything up to the output gate, and there is no way I can route the output signal to the oscilloscope to inspect why it isn't working.
As others have said making oscilloscope something "built in" or otherwise free in terms of space would help. If you think about it like an electrical breadboard, the scope is not something you need to fit into the design, it's something you plug in temporarily.
Anyway, great idea and execution, congrats for the game !
I found it quite challenging, and I'll admit I got stuck around level 5. But that's not necessarily a bad thing - some players love that level of difficulty! The puzzle design is genuinely clever and makes you think.
I honestly think there's a real market for this type of game. You should definitely consider developing this further for mobile or web platforms - I could easily see this doing well with puzzle game enthusiasts!
Good luck with future development!
Feel like it would be a good improvement to have a bit of movement going on somewhere, but that's a very minor thing, and I can kind of see that getting the waves to move a bit would potentially just make their readability worse!
Still though, I did really it, and I think the core idea is really strong. I also dug the music and visuals a lot. Good job!
Great job and very nice level design!

I would love to be able to generate the soundwave ingame :heart:
I got stuck on level 11, I might now read up on this interesting topic 😎
As terrible as I was at your game I'm very impressed with the concept and it feels like everything functions (pun intended) smoothly and properly. While I wasn't happy about the theme "Signal" when it was announced this game manages to interpret the theme very literally into an experience where it still feels like a game and not a chore, which can't be said for all the mathematical signal-based puzzles I've been playing lol. Figuring out what I was supposed to do was properly rewarding, and the difficulty curve feels natural and gradual in a way where I don't feel overwhelmed by each new target output. The oscilloscope was a genius addition, ensuring that you can never be totally lost in the wire spaghetti. I feel like this could be a useful tool for teachers as I found myself seriously wanting to figure out how each puzzle was done. Great work
There are many lost or unrealised (I know it's the time limits) opportunities here: You could have introduced single-input-single output components like inverters, or single-output components. These would have made the game more like factorio. But you could also have introduced components like filters: Wavelet filters, gaussian filters, that kind of thing. You know, the kind of filters from **signal processing** that smooth noise or amplify certain frequencies. I was waiting for these, because of the theme.
I think the most important question you should ask yourself, and the question I asked myself, is whether the wires should be on a grid at all. I think the answer is 90% ease of implementation during a game jam. Still, what if you could connect the sources and sinks free-form, like in ShaderForge or simulink? Ministry of Synthesis already did that, so I understand why you wouldn't go down that path again, but puzzle games live and die by the puzzle design, and your game is all tutorial and three good puzzles. That's probably okay for a game jam, but I wish there were more.
I really liked that you picked a straightforward mechanical interpretation of the theme. I respect and appreciate that you didn't twist the theme until it fit the kind of game you wanted to make all along.
I learned how to implement obtaining
- 1 by dividing a function by itself ***f(x) / f(x) = 1***,
- -1 by dividing a function by its complementary ***f(x) / -f(x) = -1***,
- 0 by subtracting a function of itself ***f(x) - f(x) = 0*** and
- -f(x) unary negation by subtracting a function from 0 ***(f(x) - f(x)) - f(x) = 0 - f(x) = -f(x)***.
This is a very clever game and great choice of music to add to the mood. Congrats! You deserve it.
Also it might be useful if the axis might show some values. I was stuck a bit when I had to add 3 to the graph. It seems I was always a bit off, but I couldn't tell how much I was off. But again, great game, I like it!