proceed by anchorlight
Disclaimer: Uses Liberation Sans font.
A simple one-level game. Just exit on your right...
Appease the petty and cryptic Manager by learning from every past attempt. Learn the mechanics, learn the level, and piece together what is being asked of you so that you may complete the stage as intended.
- A/D - Roll Left and Right
- Cursor/Left Mouse Button - Interact
- Space - Jump
- Alt-F4 - Quit Application
- Esc - Quit Application (v0.12/v0.13)

Note: Directions are provided in-game at certain loop milestones.


Tools Used
- Blender 2.81 https://www.blender.org/
- Unity 2019 with Unity Hub https://store.unity.com/#plans-individual
- Unity Post Processing Package (installed via Package Manager in Unity)
- Paint dot NET https://www.getpaint.net/
- Atom Text Editor https://atom.io/
- MAGIX Music Maker https://www.magix.com/us/music/music-maker/
Known Issues: (thank you @ale and @undefinist !)
- Signposting and progression can be unclear
- Looping visual is unskippable
- Falling Loops and Level Incomplete Loops re-use the same animation
- No custom cursor
Known Bugs:
- ~~ESC key not quitting game~~ Fixed in 0.12 / Patch One
- ~~"Red" AI is unreliable~~ Fixed in 0.12 / Patch One
- ~~"Red" AI disappears without sound or particles~~ Fixed in 0.12 / Patch One
- "Red" win conditions behaving strangely -- Possibly fixed in Patch One?
- ~~Player moves slightly on respawn~~ Fixed in 0.135 / Patch Three
- ~~Soft crash while resetting~~ Fixed in 0.13 / Patch Two
- ~~Auto-quit on victory behaving incorrectly~~ Fixed in 0.13 / Patch Two
- ~~Warehouse box cleanup system causes clutter~~ Fixed in 0.135 / Patch Three
- Intermission Screen does not display in WebGL -- Under Investigation
- ~~Red despawns if left after f.light~~ Fixed in 0.14 / Patch Four
Brief Patch Notes (Full notes available on ItchIO)
Patch One: "I feel bad for the guy"
- Fixes Red death animation and AI
- Fixes ESC button functionality
- Soft crash fix (infinitely looping video if looping after Red)
- Potential performance improvements
https://duperroexp.itch.io/proceed/devlog/184137/patch-1-version-012
Patch Two: "Less Talkey, More Walkey"
* Game quits on ending automatically
* f.light black screen fix
* Removed cut fade-to-black feature that was slowing down intermission
* Slight timing tweaks for final screen
* Fixed warehouse scene collision and loop cleanup code
https://duperroexp.itch.io/proceed/devlog/184502/ld47proceed-patch-2-version-013
Patch Three: "Anybody Ask for More Boxes?"
* Player movement properly resets on respawn (no longer falls off edge on respawn)
* Fixes infinite box spawning on sequence break (introduced in v0.13)
https://duperroexp.itch.io/proceed/devlog/185163/ld47proceed-patch-3-version-0135
Patch Four: "We Gotta Talk About Red"
* Red no longer despawns on warehouse cleaning
* 0.135 Respawn Movement fix applied to Red as well
* Red no longer causes an additional loop if animated but still present
* f.light area no longer causes collision with player
* Accidental improvement: File size heavily reduced
https://duperroexp.itch.io/proceed/devlog/185447/ld47proceed-patch-4-version-014
An experimental WebGL version is available at https://duperroexp.itch.io/proceed-webgl , but video playback is not working. I strongly recommend the downloadable version.
| Youtube | https://anchorlightforge.itch.io/proceed |
| Youtube | https://anchorlightforge.itch.io/proceed |
| Original URL | https://ldjam.com/events/ludum-dare/47/proceed |
Ratings
| Overall | 418th | 3.224⭐ | 31🧑⚖️ |
| Fun | 530th | 2.707⭐ | 31🧑⚖️ |
| Innovation | 352th | 3.207⭐ | 31🧑⚖️ |
| Theme | 402th | 3.379⭐ | 31🧑⚖️ |
| Graphics | 234th | 3.583⭐ | 32🧑⚖️ |
| Audio | 120th | 3.603⭐ | 31🧑⚖️ |
| Humor | 410th | 2.12⭐ | 27🧑⚖️ |
| Mood | 37th | 3.983⭐ | 32🧑⚖️ |
| Given | 27🗳️ | 34🗨️ |
I liked the mood/ambiance of the game a lot (especially that vaporwavey game over screen), but the game could use some more directions. The first jump I only found to be possible by first carefully knocking down the box, then going back to the beginning to get a running start. Only running at full speed is it possible to make it, and even then you just barely do. Maybe tweak the ball's jump strength a little bit so that it rises more than just a handful of pixels off the ground?
The area where you went forward to is actually the end of the game, except that if you didn't please the GM, you are looped back to the start. Go back to that area, and it'll say something else.
To complete the game, you need to also use the mouse cursor. I believe this is first mentioned on your fifth loop. Click on red interactibles to... interact. You also get an upgraded jump height after two loops! The text at the spawn will change to "spacebar" then "spacebar+".
In testing, I assumed that the player would decide to push the box away, but I neglected the fact that someone might consider it a part of the jump-- rather silly on my part. :grimacing:
One of the deep cuts I made to ship this was that originally, the pyramid taunted you in the loop screen. I wish I'd gotten this into the game, because you are "granted" the ability to jump, and unfortunately I ended up moving these hints into the game world on the far end.
Sorry for all the trouble, I definitely learned from a few mistakes here. Thanks for giving my game a go, and I definitely feel the same way about your questions! :smile:
EDIT:
I went through the code for a little refresher. Any falling death after your third loop will switch the text to "spacebar - red click". It's... still not great, but it's something.
I did another playthrough, and got further. Not sure if I won, but there was one time where I died and instead of restarting I got a black screen. The game got angry at me because I disrespected its box :P
The animation is actually NOT playing out for its full duration, and I may shorten it in a patch. I was... really proud of it, and it also served a gameplay purpose at one point. So, yeah. Chalk that one up to amateur hour as well. :laughing:
I intentionally wanted to keep the movement a little bit stiff, but I could probably fine tune the handling a little bit without too much trouble. More on that tomorrow.
Some actions reset, some don't-- that said, I don't know of any situations where the game is actually unwinnable. Just try to think about which parts of the environment you've interacted with, and which parts you've explored.
Thanks for all your comments and giving the game a go! I've definitely learned a lot from this run. I plan on putting out a day-one postmortem on the ItchIO and dropping version 0.13 with a few allowed QoL tweaks as soon as I can.
The only one thing that I can complain is that when I played the first time, I didn't noticed that the game was started and the ball fall back to the death.
But really a 5/5 game!
That said, as @Ale mentioned, there is definitely a black screen issue that can happen. I believe it's a very specific set of circumstances, and I'm looking for it in my free time. I'll probably leave out any gameplay improvements for the sake of complying with LD rules, but if anyone is able to find that blackscreen bug, please let me know with a description of how you were doing (how many times you looped, what you had moved, etc.) so I can finally find out where the point of failure is. I'm hoping to release a v 0.13 as soon as I can while I work on a postmortem and some other boring life-related things.
It's honestly hard to say why the ball continues to move at startup, and I'm frustrated by that too. I *swear* I keep zeroing out force and velocity in the transition screens, but there's a lot of spaghetti in the codebase that I'm not exactly proud of. Just something to consider for a patch, I guess.
PS: I may include the original Blender AVIs that I produced for this as a separate download, make a 4K render of it, or go back and render it without the "rest" text. More on that another time.
Now, some good news: I'm happy to report that I've actually found and [potentially] squashed the black screen bug! As with all of my problems, it's Red/evilBall's fault. I have a full breakdown of what was happening in the patchnotes for when I put this out.
@diefleder Thanks for giving the game a look! Can you describe what you mean by freezing? One involves a black screen-- this is a bug, and I'm 99% sure it's fixed in the upcoming patch. The other has the video slowly come to a stop with a special ending song and disembodied voice-- this is the actual ending, but the game doesn't auto-close on its own. I'm not aware of any other bugs at the moment.
In the post-LD releases, I'll include my alternative video for this ending to set it apart. It has a brighter palette and was rendered out at 60 FPS, but while this video was actually made before the one that shipped, I didn't end up sending it in the final game.
Great music!
Interesting visuals!
Fascinating concept!
Fantastic Ambiance!
Gameplay.
Really solid dialogue!
Pretty good project. I look forward to seeing more.
I got unlucky with the black screen issue and had it 2 times in quick succession, which was annoying but luckily didn't take up too much of the time I spent working out the solution. It is definitely related to the red "flight" button, both times it would happen the loop after I clicked it. I didn't mind how long the loop animation lasted, although it did get a little repetitive after a while especially when I would have trouble figuring out what to do next, it's a nice animation though. I really liked the hidden red ball behind the boxes, I was hoping the "There may be something left" was referring to another hidden object, as I liked that aspect. Overall this is a solid entry, with an unique art style and fun loop, even if the instructions may be a little vague at times. Nothing wrong with this that some good polish can't fix.
The original idea behind f/light was that you had to close the curtains. The "maybe there's something left?" message was truncated; originally, it complained that it "felt drafty" as well. When you toggled the curtains, the red ball would attack you from your normal spawn point. The warehouse tweak was done to prevent it from falling down and add a little bit of a jump scare when it came crashing through the boxes. ...well, in theory. Everything about the red ball was rushed and could have been done better with just an hour or two more.
As for sound, I recorded a whole lot more than what shipped, and I was disappointed as well in the lack of it. Originally, the box was supposed to make a loud reverb-heavy THUD when it despawned, and it was meant to signal the fact that it was pretty dang important. The actual death sound is a random note I pulled from my first LD47 idea that I scrapped at the 18 hour mark. You do get a few extra ambience sounds based on the number of loops you've been through, all the same file but slowed down.
There's a lot to unpack about what could have been, and I can't wait to share more of it in a postmortem. For now, I've got a little bit of QA to do to make sure the auto-quit is working correctly.
As for your questions CosmicPickle, you did in fact beat the game. You did sequence break a bit by clicking on Red; I thought it would be neat to let the player peek behind the box a bit, but Red is more or less the end-game state of the level and is inactive until meeting all conditions. The text in that room only updates on intermission loop (when you exit the warehouse), so this definitely could have been improved.
As for why Red didn't come back-- believe it or not, it's not a bug. I thought it was a smart and clever thing when I originally did this, unaware that the lack of communication made it seem like a bug. I would definitely love to go back and add text to the intermission screen as well as tweak the behavior of the final instructions room to allow for more states.
The video itself cuts off after a few seconds (and due to a few leftover functions it was much longer in the first two builds!), but when it is allowed to complete the game also calls a special ending tune. I wish I had implemented an alternative video with a brighter palette that I made **before** the one you see, but it never shipped. More post-LD things, I suppose.
So, two things on that matter. You're far from the first to get frustrated by the movespeed. I considered tweaking it, but as a design choice (no matter how questionable) I've decided to leave it intact for now. If I ever get a stronger prototype off of the ground, I'll most likely throw away the ball entirely; I mostly did it because a ball rolling game just used the rigidbody tools I was used to with minimal hassle. I've also never made a 2D game outside of Unity tutorials, and my point of reference was actually games like Flashback, Inside, and Oxenfree where the gameplay is a little more subdued. I originally planned on making a character out of primitives and animating it through Unity, and had this been my project idea from Friday that's probably how I would have handled it from the start.
The latter part about rolling off the platform... yeah, that's a bug. There is a fix in place where the game learns to zero out velocity, but it's not working correctly. The entire cutscene transition script is kind of like walking on eggshells. I was close to fixing this in my second hotfix for the game, but the patch got rushed a bit to clean up some serious gamebreaking bugs. I do believe I have it fixed on my end now, but I'll need to fire up the project and give it a test run before building it one more time for Linux/Windows.
Oh, so I beat it? That was... Something! Thank you for visual experience! That was the most beautiful death scene I ever seen! Very stylish and cryptic game, everything in this works to set the right mood. I wish it had more gameplay to it. I easily see myself spending hours going through puzzled levels in this setting!
I'm also happy to say that I've finally figured out what was causing the movement bug on respawn. It turns out that I wasn't accounting for angular velocity, so the ball would touch the ground and begin spinning again despite zeroing the velocity. Long story short, it's finally fixed, and I'm releasing one more mini-patch that fixes the infinite box bug that @blue-pin-studio drew my attention to as well as this dreaded respawn momentum boogeyman that I've been chasing since before the game shipped.
With that, I think proceed in LD form is in a finalized state; bugfixes released, technical isusues resolved, and ports created. After the upload of v0.135, I'll be focusing on the post-jam version unless anything crazy pops up.
Thank every single one of you for making my first shipped LD47 an incredible occasion! I've checked out a number of your games and came away quite impressed, and I can't wait to try more of these.
All in all the mood was well done and the music certainly added to it, my only suggestion would be something to let the player know they had completed the game. I originally thought the game crashed and was confused, again until I read the comments section then it cleared it all up.
With the changes you've said you would like to do in a post-jam version and some additional levels this would become a game I will be sinking quite a bit of time into.
---
Okay, much better. Where was I...
@jammygunns Thank you for giving it a go! You're definitely right about the ending, and I already have a plan in place for a better ending scenario.
Many of the issues from the game definitely came from sequence breaking with Red, including a rather hilarious infinite box spawning bug that @blue-pin-studio showed me a few hours ago.
It would have honestly been smarter just to end the game when Red is destroyed or change the text to reaffirm that you succeeded after destroying it in retrospect. I also would have made sure that you had to trigger the red ball's "disturbed" status before clicking would actually work, a one line tweak. (when you complete all objectives, the ball will come bursting through the crates) The ability to sequence break this was a foolish part of my design, however, so I'll leave it intact for the compo build. I honestly thought I was being clever! :laughing:
I'm hoping that tonight's 0.135 will finally resolve the last LD-friendly issues so that I can focus my efforts on a new fork that can properly rework the game.
From what I understood, death is a fundamental mechanic on your game, but the death animations took a long time: it was several seconds waiting on the loading screen each time I died. And I died several times, because I fell into holes that I wasn't even seeing. I think the idea of using death as a mechanic is interesting and matches the theme, but it is only reasonable to be implemented if the respawn is fast, otherwise it becomes frustrating for the player.
Despite this, I think this game has a lot of potential, especially in the mood category, good job on that!
On the topic of "death" as a fundamental mechanic... this is a massive telegraphing problem and probably the biggest failure of proceed's compo form. I do have a solution for this lack of communication. that I will ship in any later versions. This is something you'll see a lot in the comments: "I went into the room on the right and died," and so on. This is NOT a death-- it's looping you back because there was more to do. You actually NEED to use this room on the right to advance the game because this is how you reload the warehouse hint box. Sadly, the fact that I used the same cutscene instead of plugging in one of my variants, followed by the fact that I removed the text that was supposed to come on screen at this time, ended up completely destroying anything good about this mechanic.
I fully intend for these video failstates to return in the next version of the game, and without getting into the fine details, I have some ideas for keeping each stage mechanically fresh. The intermission-loop mechanic is actually something I'm quite proud of, as since I am running a script to alter the game back to a previous state as opposed to just reloading the level, it can potentially send you right back into the stage with no loading screen. This does mean that once my code is a bit cleaned up, I'll be able to carry these benefits into the actual gameflow somehow.
Thank you for giving proceed a look!
Other than that i loved the atmosphere and concept for the puzzle, the instructions could have been a bit clearer though.
You ran past the warehouse after turning on the lights _multiple_ times... a red ball should have come at you. This is a new bug, I've got no idea what could possibly be causing it, and I'll get back to you ASAP on what happened by copying your VOD actions. Hoping to repro and patch soon!
EDIT: I found the bug. I updated the game to clean up anything with the Warehouse tag for respawns. As it turns out... Red had this tag, and I threw Red out with the bathwater while cleaning up the game assets. ...oops.
As for the "instructions..." you're being far too kind. :laughing: I've already got some much better instructions for this stage that I will implement for post-jam builds, earlier if I'm sure that it's acceptable for the build. (e.g. "right" instead of "flight")
Fifty five bug reports on the wall, fifty five bug reports... track one down, pass new builds 'round, fifty six reported bugs!
By the way, _fantastic_ work on your WarioWare style game. I might need to inquire further on how you put together the art for that, becuase that chunky 90s prerendered CG just speaks to me.