-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Major Redesign #56
Open
jmdiamond3
wants to merge
578
commits into
thejoshwolfe:master
Choose a base branch
from
jmdiamond3:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Major Redesign #56
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Quick link: Snakefall Redesign
I've been working on this redesign for awhile and I don't know what's going to become of it, but I really like the updates and I wanted to share it. Many of the elements could still use some work, namely turnstiles which don't look a lot like the other elements, but rather than keep working privately to shore up details, I thought I'd make it available to everyone.
One feature that is improperly designed is the Standard/Enhanced Level description as it reevaluates the status of the level upon each move, while it should take and analyze the URL directly so the elimination of added elements doesn't change the description of the level. I'm still working on fixing that.
I'm a self-taught coder and so a lot of what I added was only possible because I was able to learn from reading the code others contributed. For that I'm grateful, but I also mean to caution that a lot of what I added is done sloppily and inefficiently. I will clean up what I can eventually, but it's not so bad that it's urgent.
The additions have slowed down the game a bit, but it's only problematic on the largest levels.
EDIT: I hadn't played on the original Snakefall in awhile and my redesign is slower than I realized.
The new index.html page isn't necessary to the gameplay, but I like the added table design flexibility. It contains puzzles I found elsewhere online (all of which are documented in Joel Fox's Snake Puzzle Games article) which are password-protected, though the password is easily viewable in the code and was intended only as a test I wanted to try. Also password-protected are solutions to Joel's puzzles which he requested not be posted to the original Snakefall site.
I added a Solution Verification feature that requires a player to solve the puzzle (and run through the solution to the end). At that point the player may generate a link that will show the level at the start, run through the saved replay, and show the viewer whether the saved replay is in fact a viable solution to the puzzle. The replay is still visible in the URL, however, so it's an imperfect attempt at verifying the solvability of a puzzle without revealing the solution itself.
Talking to some other Snakefall users, it sounds like Snakefall wasn't intended to resemble the original Snakebird graphics too closely, and my redesign definitely gets them closer. However, I wanted to provide the option of updating the original design if not on the canvas then on the editor, which incorporates both experimental puzzle packs into a single, exhaustive editor. Many of the features in my new editor are Patashu-puzzle-pack and Patashu-remix-1 originals with different graphical designs and names, but whose behaviors are unchanged. Some of them I see as improvements while others may not be.
If ultimately it's decided not to borrow any of my updates, that's completely fine with me. I think they add to the gameplay experience so I will continue to use my version when I play Snakefall levels but the original Snakefall is fantastic and perfectly sufficient.
Lastly, I added the latest feature enhancement posted (portal diagrams).
EDIT: The dashed snake outline doesn't work when the snake's head would be moved off of the canvas, but otherwise it works well.