UPDATE:
06.26. I added a winners section! :)
07.01. You can now specify the level of your maze (BEGINNER - 7, ADVANCED - 15, EXPERT - 31)
Last week I had an idea and today it became reality.
It is a "game" in which you are in a maze and you have to get out of it. I know it sounds simple, so to be able to see the exit, first, you have to collect 3 golden coins. Is it still easy? You control the game through a REST API.
So your job is to write a program that gets out of the maze. Simple, huh? :)
I was so excited that today I had time to make some progress, and I guess it is in a really good shape now. There are a lot of missing features I dreamt of for the first time, but I think it's time to go live.
Expect some bugs... but I hope you will still find it interesting and fun! :)
Here you can find the details: cretan maze
You can check the code here: git repository
Planned features:
- winners
- levels
- moving walls
I used Spring Boot and Thymeleaf and I published on Heroku so I use PostgreSQL.
Please feel free to contact me! :)
One more thing: I would love to hear your thoughts about it! :)
Top comments (22)
Hello Leonora!
Thanks for that game, it's really great!
I'm going to try it out;
Is it allowed to get old mazed and play there?
hi, thanks! :)
if i understand your question right, at the moment it has only one mode, so there is not any 'sandbox' like environment where you can try out stuff, but you are allowed to create as many mazes as you like! :)
Thanks!
I've explored little bit, really nice!
Would it be possible in the nearest future to generate non only 15X15 mazes?
Like
POST /api/mazes
with parameter likesize
Yes, it is planned, just the way you said! I'm having exams in the next 2 days, but after that I will have time again to work on it! :) I promise, I will let you know! :)
I've started already python client implementation for that, haha! Looking forward for the updates!
Thank you for game and wish you luck with your exams!
Hi again! I do have some time to make some updates now. I planning the following levels: BEGINNER(7), ADVANCED(15) and EXPERT(31). What do you think?
Yeah, different levels are great! Also I'm thinking about custom one, to let user specify size explicitly (if server allows users to)
I updated the challenge so one can choose from those levels. I thought that you might be interested where the user could specify the size, but I do not really feel like it would be great. I mean it would need validations, also if there would be a very big maze like 250 x 250, 3 coins would be too few I think... :)
I didn't think about number of coins vs size. You're right
I just love the idea. Thanks for creating it!
If I may suggest something, it would be nice to have some example responses in the documentation of the API. Unless, of course, you think that figuring that our it a part of the game too. Then that's ok, I think ;)
I hope I will have some time to play with it in near future.
haha! :) i will think about it! :) but thanks a lot! :) hoping you will enjoy it! :)
Now I noticed there is a link to swagger docs, however it asks me for password...
Yes, the same user/pass you registered with! :)
Hi Leonora!
Here is the first post from series on exploring your maze!
Going to make it fun soon.
Thanks!
Thanks for your effort and time! :) I'm looking forward to the upcoming posts in the series! :) I am not a Python developer myself, but I like to play with Python code, but mainly on the domain of data science. Go on, I will stay tuned! :)
Thanks!
Really coming sooon!
Actually, there was a Cretan Labyrinth which is not the same as the maze.
See the difference here:
english.stackexchange.com/question...
Yeah, I know that! :) But I was about the create a maze and I wanted to give it some context, a good story... and I guess it would have been too easy if I made a lot simpler labyrinth.... what do you think? :)
This is nice.
One question: if I make a step, what's the "ON" direction?
And another: are coins automatically collected as I step on a cell?
hi, thanks! :)
ON is what you are standing on so for example you can see that you are standing on a coin... and no not automatically collected, there is a 'pick up a coin' endpoint working only if you are standing on one! :)
It is great, I had a lot of fun with it. and I already have let it solve by one of our interns, so he has a cool task and learning python.
thanks
Nice to hear! :)