January 2024 Game Development
The past months work focuses on weapon implementations for the sniper and gunner class. Each class holds the standard blaster and shotgun, but with 2 weapons crafted just for the sniper and 3 weapons crafted just for the gunner. These weapons make them unique to their designed strategy of a team in weapons factory when capturing the flag, defending the flag, or simply fragging the other team.
In addition to the weapons for the next 2 classes in the first release of WFR, you'll notice updates to the player movement, custom camera shake and muzzle flashes across weapons when firing. This means I'll likely do a polish pass to ensure they each feel right for the type of weapon later on.
Sliding on Angled Surfaces Demo
I also spent most of this months time polishing the player movement system to be more accurate to Quake 2 including small yet noticeable details, and most importantly.. sliding on angled surfaces. And boy is it fun to do as a monkey grappler!
How was this achieved?
Developed a completely custom velocity output based on the players keyboard input. There is a moduleScript that calculates everything from acceleration, to strafeJumping, to slideMove, to grappleMove, to friction based on custom player states and humanoid states. Among usage of Humanoid.WalkSpeed for speed scaling when strafe jumping and humanoidRootPart.AssemblyLinearVelocity for speed boosts, the final output velocity value is fed into Players.LocalPlayer.Move in the end so that we get free client/server replication.
Sniper Class Weapons Demo
Sniper Wars? Rail Wars? Hell ya. Why cap the flag at all? It's up to you.
The two new weapons showcased in this video demo are the Sniper Rifle and the Railgun.
Since the implementation of the rail fx shot was already done for the turret grenade thrown by the marine, this implementation only consisted of extracting out that code into a re-usable moduleScript, so that both the turret and the railgun could use the same function and setup to maintain consistency.
The other addition to this was adding the idle sound, which was easily integrated with the current weapon system to support idle sounds on other weapons if needed.
Gunner Class Weapons Demo
Did someone say defense? Next up, You are looking at one of the strongest defense classes in weapons factory.
The gunner has a range of powerful automatic weapons, including the machine gun, chaingun and megachaingun. Between the three of these weapons, you'll have enough ammo and gun power to shred the enemy before they get to your flag. What's the difference between the three?
The Machinegun has the slowest firing rate and you can move while shooting.
This is typically a fallback if you run out of the other chaingun bullets.
The Chaingun has a faster firing rate and you can move while shooting.
You'll want to chase the flag carrier with this one if they snuck by you and stole it!
The Megachaingun has the fastest firing rate repelling players away, but you can't move while shooting.
This is likely your main go-to weapon when guarding the flag.
What's to come in February
For Quake 2 Weapons Factory in Roblox I'm going to set aside the lobby/user experience idea for now and focus on other aspects that should get done first.
I'll spend a week on the last 4 Tasks required for Classes.
Sniper Flare Grenade
Sniper Laser Special
Gunner Shrapnel Grenade
Gunner Laser Defense Special
I'll spend a week ensuring all aspects of each weapon, grenade and special are working for a multiplayer environment across clients and fix up any discrepancies.
Player damage must affects other teams.
Points added when kills occur.
Kill assist points if other player kills someone you've shot
Players must see other player animations when using weapons.
Confirm hit sound or graphic like Q2 Remastered or Q3
Next, I'll need to update the core game loop with:
Proper intermission
Game Statistics for each team UI, and end game statistics
Rotating Map cycle with Map Voting UI
It's going to be a busy month and I don't think I'll fit all of it through February, but I'll certainly try!
March is incoming and I'd like to have a private Alpha Release by then to begin ironing out all the quirks.
See you soon.
Comments