Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
A jam submission

modular player controllerView project page

A modular and scalable foundation for player controller systems.
Submitted by evengy (@theevengy) — 6 hours, 2 minutes before the deadline
Add to collection

Play tool

modular player controller's itch.io page

Results

CriteriaRankScore*Raw Score
Was the improvement free from bugs#63.1673.167
Was the improvement accomplished#83.8333.833
Does the improvement move game in the right direction#83.6673.667
Overall#93.4003.400
How sufficient was the improvement#93.3333.333
How creative was the improvement#103.0003.000

Ranked from 6 ratings. Score is adjusted from raw score by the median number of ratings per game in the jam.

Describe the improvement that you have been working for this jam
mount system, weapon system, saving snapshot of all currently registered modules and restore from snapshot (good for swaps such as mount/dismount) most of changes are just in the framework itself rather than on the demo scene

Describe your game in one sentence
modular player controller with hot reload of movement/feature modules

What feedback are you looking for
what should be in the core system? should I add more FPS modules or different movement styles? I am thinking to keep it scalable so batches of new controllers can be added as packs - "FPS pack", "Horror pack", "Top down pack" and wonder what should stay in the core library

Leave a comment

Log in with itch.io to leave a comment.

Comments

Submitted (1 edit) (+1)

Hey, I tried this out.

Main thing I found was that my head kept getting tilted forward (camera rotation x), as if the character was falling asleep -not sure if this was due to me being on firefox?

I think really what would be good is adding more shooting stuff and maybe more driving since at the moment it doesn't look like you can fire the gun, but as far as I am aware most FPS controllers do not add vehicular stuff so that could be a unique direction to take the controller.

Submitted

This seems like a great starting point. If I were to add this to my game, I'd feel confident adding everything else I need from here. I agree that the jump at runtime stuff is a good idea. That makes other modular kinds of movement really easy to plug in when necessary.

As far as "what should be included in core", I think anything related to movement is a good idea. Sprinting, jumping, crouching, interacting, state machine maybe? (can't tell if that's already in there) is everything I think of as "core" to an FPS controller. Everything else like shooting, flashlight, headbob, climbing are a bit more niche to certain genres. I do think that there's probably a person out there that would want everything out the box, so I think it would be prudent to add an "everything" pack similar to how the kenney asset store does it.

All in all, a pretty satisfying start! Well done!

Submitted(+1)

The Press E messages feel a bit large dominating the screen, especially if it is something that might be optional, such as if the player may not want to get in the car. The car driving was a bit odd. When going at an angle and reaching an edge the car turned into the side, even if it was mostly angled away.

I like the idea of having packs, with only the basics in the core. It allows for using what you need, but not being overwhelmed with lots of extra you don't. Movement, at least for controlling a person, should probably stay in core, though possibly having some packs for specialized movement options, such as when using air or space vehicles.

Developer(+1)

hey thank you so much for giving it a go 🙂

ye, I think i might expand more on simple FPS and vehicles. 

Submitted(+1)

Hey, I gave this a try.  

Overall everything seemed to work as expected.  One big thing would be to add a "run" option by holding shift. 

One question, I wasn't sure what the "Press e to learn to jump" thing was.

Here are a few other thoughts for additions

--Add UI for parameter sliding:  Player speed, jump height, things like that.

--For the car driving controller, would it make sense to let the person still look around with mouse, even if the car is going a different direction?

--You could get really out there with abilities and modules, like double jump, grappling hook, jet pack, wall running/parkour

Developer

Thank you so much for the feedback 🙂

The "learn to jump" injects ability to jump at runtime. I should've done same with "run" both abilities are available in the system, but they are not in use until injected. This architecture allows to have virtually infinite different movement styles or camera perspectives or abilities without the need to carry them in memory from the beginning. 

Its quite raw though 😅 

The UI is a disaster at the moment ye 😂

Submitted(+1)

I like the idea, as I'm definitely a systems guy, so the framework sounds appealing.  I could see it being really cool for building some sort of mech game where you're constantly getting different augments that have different control and movement types.

Submitted(+1)

Hi, find this hard to test but from the demo I've noticed when you look at the car and then just look away the e to mount stays visible,does unity have something to just show the UI on the car instead of having it as an overlay cus that could be annoying imo. Other then that it controls good, you do spawn into the car when exiting the vehicle but that all I could find.
Good luck!