Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411430 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 19, 2024, 03:51:40 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsRabbit puzzle game thing
Pages: [1]
Print
Author Topic: Rabbit puzzle game thing  (Read 3014 times)
grreuze
Level 0
**



View Profile WWW
« on: September 18, 2018, 03:50:06 AM »

Hello!
My name is Gwendal and this is the start of a devlog on my current puzzle game project: ¿untitled rabbit thing (i don’t have a name for it yet).

I’ve been working on this project on and off on my free time, it is still in early development but I am far enough into it that I’m confident to drive it to completion and eventually release it like grown ups do with their projects.



This is a 3D grid-based puzzle game that takes inspiration from a subgenre of sokoban-like-like games with a meta-level (serving as a level selection screen) that I like to call ‘sokoshima’ (literally ‘warehouse island’). This includes A good Snowman is Hard to Build, Stephen’s Sausage Roll, Pipe Push Paradise, Dis Pontibus and the upcoming Sausage Dog tends to Infinity. I haven’t played all those games but I recommend you do because they all seem great.

What is bunnygamerollthing?

In this game you control a rabbit with no legs who must therefore roll in order to move. Your goal is to eat carrots by aligning your mouth with them. If you eat all the carrots in a level, you win! Most of the time your reward is just harder levels.



The twist is that the rabbit’s ears follow their own rules: they can bend forward and backward, but the rabbit doesn’t like it and will always try to stretch them back.
This leads to a great number of varied interactions, apparently enough to make a whole game. Here are spoiler-less examples:


If you try to stand on them, your ears will keep pushing you, making you roll. Notice the angry eyebrows of the rabbit while its ears are bent (they actually just clip through the floor in the current prototype).


But if there is a wall preventing you from rolling… your ears simply push you up. Allowing you to climb! Because of this, the game can get very vertical in some levels.


And of course plenty of other things, here’s me failing one of the first puzzles of the game. (on purpose)

That’s It?

Yes! My design philosophy is to never add any new elements to the levels. All you’ve seen is what’s in the game from start to finish: the rabbit, the carrots and blocs of level (also fires that you need to stand in to enter levels). There won’t be any new types of floors, ladders, giant carrots or moving blocs, that’s all of it.

I know it may sound boring at first but believe me, these few things are enough to create a ton of unexpected interactions, and therefore plenty of intricate puzzles!

The game also features a fair bit of exploration, as the map is pretty open. That means you can skip most of the puzzles in the game, but also that there are quite a few hidden things.


Here’s the open world map in its current state. When on this map, the carrots are turned to stone and you can’t eat them until you enter their level (it doesn’t show here because this is an in-editor shot and im dumb). Once eaten, they may open some paths or shortcuts in the open world.

Is there a story or something?

The game takes place in the underworld of rabbits, where your goal is to eat the divine carrot, said to be able to grant you ascension. I may make a post about the story and worldbuilding later if people are interested, as it is a fairly big part of the game. You can skip it all if you want though.

How far are you in development?

So far (september 2018):

  • around 50 levels implemented out of what I expect to be around 80.
  • no visuals, just unity cubes and a carrot mesh I made on a whim one day.
  • no sound or music.
  • none of the UI except ‘game over’.
  • no save system.
  • no NPCs (but some dialog written here and there).
  • not satisfied with the camera.
  • a few bugs but not many I swear.

So I've maybe done 10% of the work? I try to avoid counting in percents of the entire thing and tend to look more at what's left to be done in different aspects (code, level design, art, etc). I don't really have experience in 3D modeling / texturing / sound so these will take time.

--

Aaaaand I think that’s it for my first ever devlog post! I’m very excited about the idea of holding a devlog and I hope some of you will be interested in following it!

As I said I’m just working on this on my free time, so don’t expect a very regular upload schedule. See you around in rabbit hell.
« Last Edit: September 18, 2018, 12:40:31 PM by grreuze » Logged
grreuze
Level 0
**



View Profile WWW
« Reply #1 on: September 25, 2018, 03:39:42 AM »

Hey It's me again!

I'm very busy moving out to the UK right now so I don't have much to show, but I still wanted to make an update to get used to the Devlog routine.

I started the week with a ton of tiny bugfixes. I noticed I had a lagspike of around 200ms when entering a level, turns out deactivating every gameobject in the world was a bad idea.
When fixing that, I also decided to test out a new level transition FX, closer to my intentions:



I want it to be quite quick and immediate, but still convey the impression that you're transported into some kind of special single-level dimension and the rest of the world fades out like mist.
The effect is not final but it is much closer to what I want it to be, the smoke texture is probably going to be more stylized depending on the final look of the game.

Continuing on some visual tests, I also started working on the Inside/Outside transitions that can occur in the open world.
This is to me one of the biggest challenges I have to overcome in order to make the open world experience feel nice visually. I went for some ambient light change, darkening the outside and a fun polka dot dither pattern on occluders (I don't want the camera to rotate or move away from the player throughout the game):



Keep in mind this is very early, there's still a ton to work on to make this feel as nice as I want, but I like the direction it's taking.

I wanted to change my mind from Level Design a bit before handling the final areas (and some of the code work that comes with them), but at least it gives me some things to show!

That's it for today, see you in rabbit hell I guess.
Logged
TonyManfredonia
Level 6
*



View Profile WWW
« Reply #2 on: September 25, 2018, 12:08:04 PM »

I've always found these block/rolling/grid puzzle system games quite addicting. I also love the blank stare of the bunny. It's adorable!

I'm eager to see this with all of the art / atmosphere fleshed out. It's a unique look, and has tons of room to grow! Can't wait to see it all unfold Smiley
Logged

Composer | Orchestrator
Website
Twitter

Soundtracks include:
Kharon's Crypt
Call of Saregnar
QOG
Level 3
***



View Profile WWW
« Reply #3 on: September 25, 2018, 04:56:33 PM »

I loved Stephen's Sausage Roll, so this caught my eye. Looks to have a similar feel, but enough of its own mechanics to not just be a rehash, I'll look forward to future updates.
Logged
Devilkay
Level 2
**

Hi! First game-dev experience!


View Profile
« Reply #4 on: September 25, 2018, 11:06:33 PM »

few time ago on the "homepage" of google there was a game like this one XD
Logged
jctwood
Level 10
*****



View Profile WWW
« Reply #5 on: September 26, 2018, 12:22:07 AM »

This is brilliant! The transitions are brilliant! How do you get around the problem of disabling lots of objects? Look forward to seeing more, let me know if you want some playtesting, happy to help out Smiley
Logged

grreuze
Level 0
**



View Profile WWW
« Reply #6 on: September 26, 2018, 01:34:38 AM »

Thanks a lot for all the nice feedback!
I hope everyone will appreciate this devlog and how the game evolves in the future.

Quote from: jctwood
How do you get around the problem of disabling lots of objects?

Simple: don't disable them! haha
I realised It didn't make sense to disable / enable so many objects when most of them are culled out of the view frustum anyway (and none of them have ongoing callbacks), so I ended up simply teleporting the player/camera/current level in a separate area.
It might sound like a cheap solution but in the end I think it's close to the most optimised I can have?

So yes, instead of disabling 50+ levels and growing, I just move one!
(for the sake of discussion, if I *had* to disable them, I would probably just have disabled them over multiple frames, starting by the ones that intersect with the view frustum (each level has its own bounding box which is already used for camera stuff so it wouldn't have required so much more work))


I'll definitely make an announcement when I need playtesters!
Logged
jctwood
Level 10
*****



View Profile WWW
« Reply #7 on: September 26, 2018, 01:43:31 AM »

Thanks for the information!
Logged

a-k-
Level 2
**


View Profile
« Reply #8 on: September 27, 2018, 06:58:18 PM »

I like the minimalism in the rules, if you have achieved that, you're on your way to a promising game...
Logged

grreuze
Level 0
**



View Profile WWW
« Reply #9 on: October 02, 2018, 04:19:41 AM »

Thanks a-k-! I hope you'll like the game!

Just a small update to say I'm in the middle of moving and I don't have access to a computer, so no devlog this week.

Next week will probably be too early to have enough new things to show so I was thinking about showing off some of the tools I made while working on this project. I think that could be interesting for people who are new to Unity, if any ever comes here. We never talk about tools enough.
(Also yes I decided to try and keep this 'one update every tuesday' rhythm going for as long as I can)
Logged
walaber
Level 0
**



View Profile WWW
« Reply #10 on: October 04, 2018, 09:07:11 AM »

you had me from the first GIF of the rabbit eating the carrots!  This looks amazing, and a fantastic unique addition to the pantheon of games you mention as inspiration.  I can't wait to play this and scratch my head at the puzzles Smiley
Logged

Indie developer, especially interested in physics of the human body, currently working on untitled gymnastics/acrobatics game.
grreuze
Level 0
**



View Profile WWW
« Reply #11 on: October 09, 2018, 11:36:26 AM »

Thanks Walaber, that's a very nice comment!

As expected, I had no time to open the project in the last week either.
I finally moved in though, so I'll be able to get back to it from now on!

During the mess however, I had time to think more about some aspects of the lore... and maybe finally a name for the game? (!)
Expect some good news next week!
Logged
grreuze
Level 0
**



View Profile WWW
« Reply #12 on: October 18, 2018, 03:10:51 PM »

So this recent decision to shorten the overall length of weeks caught me off-guard, I don't know who thought that was a good idea.



I wanted to take this update to write down where I am in the development, what's left to do before the first playtest sessions and talk a bit about tools!

So far most of the game is laid out and playable. That means you can start the game, beat a 'realistic amount' of levels in the main areas and reach a point where I can whisper in you ear "that's it, this is where the end is gonna be".
However, this is only a layout, and I'm sure playtests will show me how much every existing level needs to be improved, as well as connections between them in the open world. There are also a lot of secrets that are left to be done, including areas related to the 'true ending', which might become quite significant in size. That means even on level design, which is where nearly all the work has been so far, there is still a lot left to do.
I'm taking my time though and I won't mind the game releasing in a while as long as there are still a few computers left to enjoy it.

I have talked to a few people about individual, live playtests (I want my first playtests to be live for many reasons, there will be more occasions down the line that will require plenty more testers).
Therefore, I am currently working with those live playtests in mind as my next milestone, probably some time in november. For these, I want to improve my 'move history' system, which allows you to cancel moves / restart levels (the classics). I want to expand it in order to use it to record a player's moves and export it as a 'save file' of some sorts, to be able to replay it at home. This will be very useful for me on many occasions and will come in addition to video recording, not as a replacement. This is my biggest task right now as it requires me to change a lot of how the MoveHistory used to work, but it shouldn't take too long.
I'm also aiming to implement a way to replay levels you've already completed. I know how I want it to work and it shouldn't be hard to make, so it's just a matter of doing.

---

Tools!

Every time I work on a game, alone or with others, I make a lot of tools!
I love making new things to turn the process of building games into the most fun experience it can be. However I'm often surprised to see how some devs might have never even conceived the idea of making tools, so I thought I'd just share the love for it and encourage anyone to try, especially if you work in unity as it is very easy to add your own stuff!

The classics for unity are simply fixing the many mild annoyances of the engine, like being able to quickly group objects in your hierarchy or highlighting objects you want to find more easily. I also work with more advanced stuff to allow "nested prefabs" (with quotation marks) and change import options of assets, but I want to focus on things that anyone can do with an idea in mind and a bit of google-fu!



Another classic!
If you have a main character in your game, I heavily suggest you implement a quick shortcut to teleport them wherever you want in the scene. The [MenuItem] attribute in UnityEditor allows you to add neat shortcuts to call your methods. Here I'm simply teleporting my bunny on the selected bloc with a press of Alt+C. For such a simple script, it saves a ton of time which keeps adding up!



I have a test scene in which I build a ton of levels without having to think about the rest of the game.
In there, I implemented a quick checkbox directly in the hierarchy to pick the level I want to test at the moment! (it also teleports the bunny on its entrance just to be sure)



Finally, when moving blocs in the open world, I have to be cautious not to move things that come from the levels themselves. To gain some time and avoid scrolling the hierarchy to check (yes my laptop screen is very small), I simply display the name of the level the bloc(s) belong to in the scene view! (top-left corner).
In addition, I also show the number of selected items. You'd be surprised how often you suddenly want to know how many objects you've selected. I feel like that should be there in the bottom bar of the engine somehow.

I'm getting sleepy so I'll stop there, but if you're new to gamedev/unity, I heavily encourage you to take the time and make some tools for yourself. Whenever something isn't fun to do, you can make it so with a lot less work than you'd think!
Some of my tools are available here if you want to start from somewhere, or if you just want to grab'em!

---

ALSO! Hiding Spot just released?!
It seems to be one of those games... Looks fun! You should play it and tell me. I'll add it to my list of potential references and act as if I remember how to play video games but simply don't have the time.

See you in rabbit hell!!
Logged
grreuze
Level 0
**



View Profile WWW
« Reply #13 on: November 09, 2018, 03:07:20 PM »

Time for another one of those!



As expected I can’t work as much on the project now that I’m working full time on something else (I’m having a great time there though and I do need to eat & pay the bills). I won’t apologize for the lack of regularity as I already talked about it on my first message.

I was so terribly tired last devlog that I completely forgot to showcase the tool I made that started the idea of writing something about tools. So here it is, almost a month later, the ‘mirror level’ shortcut:



It’s pretty self-explanatory. The orientation of levels doesn’t have any gameplay impact so I try to rotate them in a way that makes them easy to read as well as easy and/or interesting to access in the open world (considering the surrounding levels and obstacles that could get in the way of the entrance). Sometimes rotation doesn’t do it though and I need a good old mirroring!

(the rabbit isn’t part of the level, it just snaps to the entrance automatically because the gif was taken in my ‘individual level’ test scene)

That said, it is time to get into the most important part of this devlog:

Playtests!

I’ve dedicated these last weeks to individual playtest sessions using screenshare and live commentary. I’ve had a playtest per day during the first week and then a few more for players who wanted to go further into the game.

These playtests were a way for me to look at the overall structure of the game and see how the beginning sections worked. How fast players learn some of the mechanics and interactions, the difficulty curve, overall understanding of the game, etc.

This was a great experience and the playtests went really well, proving the beginning of the game to be quite solid and the learning process fairly smooth. They helped me fix a few issues here and there as well as get to have a better understanding of the duration of the game.

Most players took from 1h30 to 2h to complete the first area, which means the game might have around 10+ hours of gameplay. This is a lot more than I expected originally and I fear it’s creeping into the “too long” zone, I don’t want playing the game to become some kind of chore. I also have to take in mind that these playtests were exempt of any characters and dialogues, which might extend the playtime even more.

Now let’s talk about one of the most interesting sections of the game to have evolved during these playtests.



This is ‘the escape’, or The Path of the Warrior as some rabbits like to call it. It happens to be the first challenge of the game, linking the player’s very open starting area in the south to the more intricate, level-filled open world. Please ignore the bridge to the right.

The screenshot above shows what the Path looked like during the first few playtests I did. It is not technically the first iteration of it, but we will call it version 1 for the sake of clarity.

As I said, this is the very first challenge of the game. The purpose of this very narrow path is to force the player to think about their movement rather than rotate around randomly. Because of the shape of the path, you have to be wary of your position, or your ears might block you in a certain way or push you down the water.

This first version however was extremely difficult, way too frustrating for players who haven’t even had the chance to really experience the game yet (remember, the levels come after this!). In this version, I essentially ask the player to be in one specific position on their starting spot, any other position will result in falling over or getting stuck, but they have to figure it out for themselves.

Watching players struggle here, I realized that this was way too much to ask of players who are still learning how to move. All I want to do is have the player understand that they must think about how they move, but I shouldn’t place them before such a solid brick wall.

I therefore went and did a revision of this Path for subsequent playtests:



So of course this shape might not mean much to you if you haven’t played the game, but basically it is opening more options to the player. Instead of having to find the one specific position to “solve” the challenge, they now only have to understand the relative way they need to orient their rabbit and can do so from any starting tile.

This proved better, as the openness of the starting zone gives so many options to the player, finding the single solution to a path proved way too demanding.

However, players still had a bit too much trouble for my taste here. You see, in the game the camera in much more zoomed in, so players never see the full path at a time on the screen. This makes predicting your movement very difficult for beginners, and because the path is so narrow, it doesn’t allow for any mistakes, or step-by-step trial and error (which is a big component of this kind of puzzle games).

I therefore went to my third and so far final iteration, which I am quite satisfied with:



This single bloc added in the corner solves a lot of problems!

It actually turns the path in a two steps process. Once you’ve reached this little square, you have room for movement to realign yourself and tackle the second part. You still get to learn the same thing as the previous path, but you’re allowed to get it wrong and not have to restart all over again.

This proved pretty effective among testers, some said they liked how it made them think about their movement, and other barely noticed it was happening. This is exactly the intended kind of reactions for this challenge so I am quite happy with it! Of course that doesn’t mean it’s perfect, and it might get changed multiple times in the future, but it was a good learning and iterating process, that I could hardly have done without playtesters. As the dev, my knowledge of the game makes these kind of beginner challenges extremely trivial;I didn’t realize the actual difficulty of the challenge.

I also removed some of the blocs to the north, as they didn’t serve any purpose, and if a player accidentally rotated on them a bunch of time, it could get hard to enter the first level, which really isn’t supposed to be a challenging part.

***

Now that these first playtests are done, I’ll focus on fixing some of the issues I’ve noticed and implementing a save system. With the save system in, I’ll more easily be able to have ongoing playtests while working on the game. I really value live playtests, and the screenshare format was really effective, but they are hard to organize and I feel like it’s asking a lot from people. I’ll keep them for new playtesters trying the game for the first time, and I’ll simply update builds for others who’ll be able to record themselves playing whenever they feel like it.

I am still not looking for more playtesters though, the bunch I have is already enough that early in development.

That’s it for this small post about playtests. I hope you enjoyed, thank you to everyone who reads these, I’ll see you in rabbit hell!
Logged
Geoff Moore
Level 3
***


Game composer for hire


View Profile WWW
« Reply #14 on: November 09, 2018, 04:04:42 PM »

Stephen's Sausage Roll is awesome, and this looks wonderful in it's own right. Looking forward to seeing more!
Logged

Composer for multiple Steam and Itch-released indie games. Listen/contact: https://geoffmoore.co.uk

grreuze
Level 0
**



View Profile WWW
« Reply #15 on: November 10, 2018, 01:11:00 AM »

Thanks Geoff!

I hope when people play it they realise it's a very different game, but I know I won't escape the comparison.
Logged
MarcosD
TIGBaby
*


View Profile
« Reply #16 on: November 11, 2018, 12:53:53 PM »

This game looks very promising!
Logged
grreuze
Level 0
**



View Profile WWW
« Reply #17 on: November 12, 2018, 01:26:58 AM »

Thanks a lot!!
 
(By the way I'd really recommend Marcos' latest game Trepa for people who are interested in this kind of "rolling" gameplay)
Logged
walaber
Level 0
**



View Profile WWW
« Reply #18 on: November 12, 2018, 11:09:29 PM »

Thanks a lot!!
 
(By the way I'd really recommend Marcos' latest game Trepa for people who are interested in this kind of "rolling" gameplay)
Thanks for this recommendation, Trepa looks amazing (as does your rabbit game!)
Logged

Indie developer, especially interested in physics of the human body, currently working on untitled gymnastics/acrobatics game.
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic