Congratulations to that very nice and useful game! I loved to play around with the first 2 levels.
It's a pity that the project's state is totally unclear (at least to me, a casual visitor). Is it meant to become a community project? Is it a demo of something that will be sold in the future? The explaining text behind the "Unlock Levels" button adds even more confusion:
> Additional levels are currently being developed for you to play and enjoy. The 3rd level will be available for FREE only for players who sign up for my email list. Sign up now! You'll be notified as soon as the level is up. The level won't be available for unregistered users.
On the one hand, it sounds as if it is free, with some "forcing" to make more users join the project mailing list. On the other hand, this is totally discouraging contributions (because you aren't allowed to see the work-in-progress version), so maybe it's meant to become for-sale in the future.
I'd love to see it developing either way (although I think the community way is the more appropriate for this project). But as of now, it seems to unify the disadvantages of both worlds: Advertising the mailing list in a way that appeals neither to people who are willing to pay (as there's no clear pricing plan), nor to people interested in contributing (as it seems to more about announcements/"newsletters" than about how to improve and to help).
I'm happy that you loved the game and finished the first two levels! Thank you for your feedback. That kind of feedback is what I'm looking for in this stage. The project is intended as an educational game, but for a price. The first stages and the email list was meant for me to get a better understanding if there is a demand for such a game (as I hoped, since I would like to play it :) ) The reason that it's not clear yet is that I didn't finish enough levels and didn't set the price yet - so there is no "Buy License" button, only the mention in the end of the second level. I'm not trying to force anybody, just trying to get a feeling if it's a good thing to invest time and money in, besides love. I hope to have enough levels soon and a clear pricing plan will follow. Thanks again for your comment.
Right when the second level ends, it says "You learned some word navigation and managed to get here. But you have to buy a license to unlock the rest of the game and continue learning VIM!"
Instruction and service are some of the cornerstones of mainstream open source. No, it's not something RMS is a fan of, I believe, but it's what has allowed companies like Red Hat, and Canonical to stay alive, and to employ a large number of open source contributors.
Although I agree that both terms are not exactly equal as they emphasize different aspects, those differences are totally irrelevant to the argument at hand:
If you advertise your project by stating you are convinced of the "power of Open Source", but don't make use of that "power", how much credible is that?
No matter if you find this argument convincing or not, it has nothing to do with the difference between Open Source and Free Software. It's just about adverticing a proprietary project with "power of Open Source" versus advertising it with, say, "power of Vim".
You are confusing Free Software [1] with Gratis Software. Free Software usually does have a price, although not a price per license. Here's an official statement [2] from the GNU project:
Many people believe [...] that you should not charge money for distributing copies of software, or that you should charge as little as possible — just enough to cover the cost. This is a misunderstanding. Actually, we encourage people who redistribute free software to charge as much as they wish or can.
In other words, it is important to distinguish paid software from proprietary software, otherwise the situation and arguments become confusing, indeed.
There's a nasty double standard here - just because it's "software", people seem to be complaining that it's not free.
However, I'm sure the same people will happily spend $100 for a book that teaches some open-source tool. Or at least they would never complain that there's a price for it.
If I had the choice I'd rather spend $20 bucks on a wiki or website that was CC licensed so that it could be updated and improved without reliance on one individual. Same for software.
At the moment we seem stuck in the middle of this transition and you either pay for a locked down copy or you get the Free copy for free. But Kickstarter seems like it's getting mainstream so the concept of paying in advance for something that is built to the specifications of the user may at last become common in software.
Books are physical things, programs are not. Physical things are often thought to have more intrinsic value than virtual things because the money was transformed into something you can touch and feel versus a vague collection of bits somewhere on your gargantuan hard drive.
Very interesting idea, but something seems to be off with the email signup - it reports "Error: SMTP Error: Data not accepted. Mail could not be sent." for two addresses I tried, one of them @gmail.com.
However when I try to sign up a second time a minute later with the same address, it reports "Email address is already on the list".
Thank you very much for mentioning my site here!
The problem with the email signup is that I exceeded the maximum 500 mails that google outgoing mail server allows per day (500). All emails are entered to the list first, even if the confirmation mail isn't sent. I'm working on setting up an outgoing smtp server so I'll be able to send more mails. At this point gmail won't even allow me to email from my account. As soon as I have an outgoing mail server I'll send the mail again for anyone who subscribed.
So if you get a message that your email is already on the list, everything is ok and I'll send you the thank you email in the next couple of days. The third level, once it's up, will be open to you. Thanks for everyone who pointed that up and sent me emails about that.
Cute, but the inability to use keys before "collecting" them makes it painful to use as an experienced vim user. I'd love to have a mode that just unlocks all the navigation keys immediately. That would allow users to fly through the early levels, and then get slowed down by the first thing they don't know.
I found it particularly clever how the game forces you to use better navigation, by allowing you to skip over rocks that way.
Also, teaching capital HJKL early on seems like a good way to make it through the maze more easily; hitting the same key repeatedly (or rather, leaning on it until hitting a wall) seems like a bad habit to teach.
I learned how to use the controls of VI decades before I actually learned that VIM existed, through Hack/Nethack. I thought the controls were ridiculous, but I was a kid, so I just accepted it and learned them, little did I know how useful they would become later on in life.
Wow. This is absolutely genius. You want to be more productive with vim, but this is generally due to the fact that you have little time as it is. Learning vim hasn't always been in the best interests of my current task. Then there is this game. Brilliant.
I've gotten to the end of the level. Then I remembered that in the top corner of the Maze is another treasure chest. I go back there to the !! marks and type b but cannot enter that area.
The message reads "Remember: these are not words"... so how do I get in there? Can that part of the game not be solved?
I've tried Shift-B, ^ etc. Is anyone else able to get into there?
Nice! I got bored before I finished the first level, but not before I was trying to use stuff like ^,$ and ctrl+f, ctrl+b, 5l to get to the end of the tunnels faster and those didn't work. Is more advanced editing unlocked in later levels? or is this just for getting off the arrow keys? I can imagine some cool things in a more advanced vim game like * for teleporting between words, mm to drop a bookmark, :badd to get to a new level ...
The target of the first level was to cover hjkl. I know it's a pain and when you're proficient enough you usually don't use them but use tf*#/ and such, but it's the basics... The motions are working only on text areas (There are some on the 2nd level). Bookmarks are indeed planned for teleporting back to places, and I have plans for /Hello if you look at the first screen ;)
It keeps crashing Firefox. I am sort of wondering what in the world it is doing to manage to kill both Firefox and Chrome!
Aside from that, it was not immediately obvious what W and B did, though a few seconds of playing around and it made sense. (That is about how far I got before it died the second time)
I managed to crash chrome once, but couldn't reproduce it. I'm an indie developer so I don't have enough people QAing the product yet :/ My first gut feeling is the audio, but didn't have a chance to prove it yet. It would be great if you'll be able to send me more info on when exactly it crashed to my mail doron ( at ) vim - adventures . com . Other than audio, I really don't do anything out of the ordinary - all javascript and canvas.
Regarding the w and b (and e), I left out the exact explanation since I believe that the self exploring and understanding contributes to the learning process. That part was intentional. Thanks for your feedback! I'll make another effort to reproduce the crashes.
I fixed the 30 characters issue to allow up to 70 characters. And you may also use + signs in emails. The SMTP error doesn't occur anymore, and even when there was an error the email was still subscribed so no need to resubscribe again.
I've had this idea forever, but wanted to make it work in the as a terminal-based application. Being a noob a systems programming, I got stuck at getting a PTY working in C that would properly forward the escape sequences from vim to the player's terminal.
I wanted to just create a program that was simply a layer between the terminal and vim, so all the power of vim was automatically available. The game was going to involve manipulating the environment (made of text) to different goals. I had all sorts of minigames in my head. Unfortunately, way too ambitious, and I never even properly started it. This makes me really want to though, if only I had more time..
I really like this, and if the price isn't too bad I'll pay to keep going as I've learn't more from this than when I've sat down to try to 'learn to do VIM'.
I guess there's only so much you can cover in this sort of game format (I'm doubting there will be a .vimrc level), but if it goes far enough to teach me to take all the lag out of navigating and editing, I'll be a happy bunny.
Thanks. I agree that a .vimrc level will be a stretch. I had some ideas on how to incorporate that to, but I think I'll leave it out. Once you get modal editing and know all necessary commands, motions, and operators to use, tweaking your .vimrc is a walk in the park (with a left turn on google street :) )
Just wanted to express my gratitude for creating such a game. It was a little saddening when I completed it though, as I really wanted to play more of it. Good job! I'm really looking forward to playing more levels. Do you have any plans for allowing others to contribute to level design or game mechanics?
Great little game! I never imagined a game would be so effective to get you to learn hjkl, but makes sense, most people learn wasd by playing games too.
I'm using a Macbook Air with Mac OS X Lion and Google Chrome and the gameplay is very smooth.
Wow. I've been aching to learn Vim for years, struggling through the rare occasions I have to use it while SSHing in to a machine. I've picked up more in 5 minutes with this game then I have in all that time. Very impressive!
After finishing the maze there is a roadblock at the bottom of the screen after talking to the girl who tells me about what happens if I step into water and there is no column above me... Is there a game beyond there?
I already know vim keybindings and this part stumped me for a little bit. I think that, while the rest of the tutorial makes sense without listening to the people, this is the only part where it isn't obvious from the environment what you're supposed to do. Just a thought.
The only reason I can think of is that the browser didn't download the images from the server due to extream load on the server. I'm experiencing some server problems and opened a support ticket with my hosting company. If the problem persists, please contact me at doron ( at ) vim - adventures. com and I'd try to get to the bottom of it. Thanks.
has a bug with option "start searching when I start" enabled on firefox, clicking cursor keys makes firefox open up quick search and the game becomes unplayable unless you keep clicking escape after every other button click.
The game looks fine! I already see how my kids will learn vim :)
This is core problem with learning VIM, many people are off-put by VIMs complexity.
I think this game does a great job of letting the player explore vim commands, while complete objectives that are common to many video games.
What makes this game great isn't the fact that it's a video game that lets you learn VIM as you play. It's that it simply incorporates VIM commands into a game that could appear on any popular flash game site.
I use it for grading assignments (reading a .lisp file and writing a grade.txt file), as well as taking class notes. I also use it for editing config files (like for nginx) and dotfiles.
Taking class notes sound interesting. I want to move some of my stuff over to command-line like TODO and simple writing for distraction free environment. I am using Google Docs and Evernote at the moment but a combination of vim/terminal and Dropbox would be great.
great! i can move around with h, j, k, l ..... so what now? nothing happens then i time out and get sent back to little person blocking the bridge. is it my browser, ie firefox?
Congratulations !
it was a very cool game.. hope we see the next levels soon and I also hope you'd open all the game levels even to unregistered users later. :D
That'd be considered 'wrong' or missing out. Which the game tries to correct. Supposedly later levels will teach you about vim 'words' and you'll combine hjkl with lots of other commands. You cannot do that the way you use the software. How's that 'lame'?
And what kind of an attitude is this if you click on a game that is supposed to teach you about vim and complain that it's forcing you to learn something right afterwards?
"Cursor keys are not the way to move around in VIM"
That's why it's lame. You most certainly CAN. I don't care that other functions combine with hjkl in vim. They're useful but using hjkl for left/right/up/down is annoying and the restriction in this "tutorial" makes it that much worse.
Yes, you can, but there is a benefit to maintaining your fingers on the home row and not requiring a shift elsewhere. So while it might be an annoyance to you, other people disagree.
You're better off going through the pain of learning the hard way.
It's like cheating and looking at your hands when learning to type. You'll never really learn to type properly and it slows you down a lot. Sometimes you just have to bite the bullet and do it right. I wouldn't be able to hit 80 WPM if I had to stare at my hands.
It wasn't meant to work on mobile devices. It can and everything work as expected besides the fact that you must have a fully functional keyboard to use it and learn VIM.
On a side note, several times when playing through the game I noticed that my motions weren't working, and traced it back to this: that for me, the home row is jkl; and not hjkl. I don't know very much about vim -- is there a reason that you have to put your hand in the "wrong place" on the keyboard?
Ah. So it's a sort of Big Software Syndrome type thing -- "we could do it in a more intuitive way for new people, but it would break all of these existing programmers who learned it the less intuitive way, so let's leave it the original way" -- or am I missing something?
That may have something to do with it, but in practice, I find myself moving up/down (j/k) files far more often than I need to backtrack by a single character, and when I do, as often as not my pinky flies up to backspace (note this works by default only in Vim). It ends up being the most natural to keep your hands on the home row anyway.
This is also an important point because it strikes me that as I play this game I am learning that as an antipattern. Perhaps I should just stick with not-vim.
Your fingers should stay on JKL;. Going left involves lifting your index finger and moving it the the left, pressing H, and returning it back to J. When you're more proficient in VIM, you usually don't use h much, but ^ or 0 or T or F or b, lots to choose from :)
It's a pity that the project's state is totally unclear (at least to me, a casual visitor). Is it meant to become a community project? Is it a demo of something that will be sold in the future? The explaining text behind the "Unlock Levels" button adds even more confusion:
> Additional levels are currently being developed for you to play and enjoy. The 3rd level will be available for FREE only for players who sign up for my email list. Sign up now! You'll be notified as soon as the level is up. The level won't be available for unregistered users.
On the one hand, it sounds as if it is free, with some "forcing" to make more users join the project mailing list. On the other hand, this is totally discouraging contributions (because you aren't allowed to see the work-in-progress version), so maybe it's meant to become for-sale in the future.
I'd love to see it developing either way (although I think the community way is the more appropriate for this project). But as of now, it seems to unify the disadvantages of both worlds: Advertising the mailing list in a way that appeals neither to people who are willing to pay (as there's no clear pricing plan), nor to people interested in contributing (as it seems to more about announcements/"newsletters" than about how to improve and to help).