Flexible Movement, where to go?


Hello everyone.

After the player was made and the Field of vision working I didn't know where to go next. Should I do more art and add shaders to have a more visual appealing scene or should I implement entities, but then which one. Enemies? What kind of game should this be, or wants this to be?
After showing this to my roommates and some friends I found out that there's no purpose yet. What could it be?
To maneuver through the dark with a torch, in the need to find resources to not be stuck in the dark? Are there enemies and what do they look like and most importantly, how do they behave? Are there any other kind of entities that could bring another game-play?

So many questions, but there are two things I think are really interesting. First batteries as collectible to charge the torch, because the energy of the torch will drop by usage and if there is no energy left, well the player sits in the dark. This leads to another idea, to have different types of torches and light-sources that that could be available later in the game and give more accessibility to already visited areas (Metroidian?)

Following entity
A NPC (Looks the same as Fiona) is following the Player

About the entities I had the idea that there could be some living in the dark and they don't like light, so they will be found in the darkest place of a level and they will run away from the player while holding a torch. So maybe this is a goal for fun part of the game to catch these "shadow bunnies".

When I am thinking of all these ideas there are so many more popping up in my head, what would be possible with setup i have in mind. But to achieve this we need some code work done first. I really like get my hands dirty on code and learning new programing concepts. C#, which Unity uses, is relatively new to me so I am still discovering so many things thanks to so many awesome people that gave their knowledge about GameDev and programming. I think finding the ones that math up your learning style can boost your learning curve a lot.

So what I actually did is breaking the MovementController I had apart and creating one that is more flexible. So instead of one class I have now three that are together responsible to move a character. I went for a component appraoch with interfaces, where the different parts know about the Interface they are using, but not about what they are doing so this gives a lot of flexibility. I could just swap out my keyboard input with a mouse input or an AI-input and I would need to touch my movement code at all.

Like this I can have an entity with the same movement as the player but a different input.

The player Components
3 Components for 3 tasks, a lot more flexibility

With that I can say PlayerMovement: done.
Feels good, so what is next?

After I had my character movement working with component-system I wanted to do the same with the Field of vision, so that I could be easily adaptable to any scenario I would like.
I am currently stuck in this process and need to refactor lots of code and test around to see what is working and what not. I didn't figured out what would be the right approach to achieve the result I want, where a field of vision could have (as the movement) many ways to receive input and many ways to behave without touching any more code. So this comes to the ToDo-list.

Leave a comment

Log in with itch.io to leave a comment.