Devlog #2 | Paint Punks

You can find the first devlog here!


Paint Punks is a character-based first-person shooter I am working on inspired by some old-school games like Mad Paintball and daxter33’s Paintball! In the previous devlog I shared how I implemented some of the game’s core features. In this devlog I will continue working on some core features and also upgrading some features from the previous devlog!

Abilities

The main draw of Paint Punks is that players can choose from a cast of characters - each with their own unique ability. After designing the gameplay HUD for my game in the previous devlog I was finally able to program and hook up an abilities system to the UI. Here is a simple ability that places a shield in front of the player which temporarily blocks enemy bullets.

Mobile controls

Given that my game uses custom character and camera controls I had to rewrite mobile controls from scratch. I ended up with controls that are similar to Roblox’s default controls, but I also programmed draggable buttons for mobile interfaces. These buttons control certain actions (like shooting or sprinting) but will also move the camera around at the same time.

New interfaces

I also spent some time adding new UI and improving some previous designs. The first new UI is a ‘map vote’ interface to vote on the next map. When a player clicks on a map their vote will also show up for other players.

Next I worked on some UI for coin & gem purchases. Although these interfaces aren’t working yet I figured I might as well design them in advance.

The rendered images are some assets I reused from my previous project, Pitfall Peril, and were created with the help of my friend maplestick.

Improved character models

So far I had been using an unfinished character model I created with my limited character modelling skills. I wanted to change this and took two weeks to improve my modelling skills through lots of practice and reading up on how to improve at topology and rigging characters. I ended up creating a new male and female character (both with clothing and textures that will be replaced in the future)

While working on these characters I realized I should also add bones to their faces to support basic expressions. Without those bones the characters will feel uncanny and lifeless. And so I spent an additional couple days rigging up the face, but the result was worth it!

And here’s a quick gameplay clip with the new character added to the game! (Facial expressions are still being worked on)

Reload animations

When working on weapon controls I postponed adding a reload animation because I didn’t know how to approach it. There were a few restrictions I had to find a way around, namely that I want the paintball guns to be a single MeshPart and that I don’t want to show any arms in the viewport model. Eventually I realized a simple yet silly compromise for the reload animations; Just make the MeshPart spin!

What’s next?

There are still a couple points from the previous devlog that I need to work on, but I am now also at a point where I can start adding more content to the game. So my to-do list right now is:

  • Better crosshairs: Based on feedback from my previous devlog I will be designing a better crosshair for the weapons.
  • Character unlocking: Right now there is no way to unlock new characters in the game yet. Characters can gain experience points, but you are not awarded any coins yet and there is no way yet to unlock new characters to play as.
  • Character details: There is no good way yet to see what the stats are of each character. The goal is to add another interface inside the main menu to show all this information.
  • Character designs: Now that I finalized the base character mesh I will need to start designing actual paintball outfits for my characters to wear.
  • New weapon models: Right now I only have one untextured paintball gun. For the next milestone I want to add at least 3 or 4 weapon models that are textured.
  • More abilities: So far only one ability exists in the game. I will need to program more abilities so that every character can have an ability that is unique to them.

After these points are done I want to work on adding more maps and game modes as well.

Thanks for reading this devlog. If you have any thoughts feel free to share them!

7 Likes

Really looking forward to that game!

The reloading animation is really not good though. Maybe make a magazine (or whatever they call it in paintball) fall out and then simulate a movement animation as if the player has pushed in a new magazine combined with a cool reloading sound effect. It does neither have to look very realistic, nor does it need to show arms, the player will understand what’s going on and it will look better :sweat_smile:

2 Likes