Just Tanks Daily Devlog #1

Just Tanks

A simple tank game for people who love tanks and fast paced gameplay.

Step 0 - Setting up in Linux

Because I switched over to Linux from Windows (I use Lubuntu btw.), I needed to find a way to use Roblox Studio without a virtual machine. It took awhile to get Wine to work, because I skipped a crucial error during installation, but it worked out in the end.

In the meantime I was setting up my GitHub repository with VS Code, Rojo, and roblox-ts. These are amazing tools, and I recommend learning them if you are considering improving your scripting skill set.

Step 1 - How do I tank?

I REALLY wanted to make a good tank, so I stole like an artist, took a look at this script, and made it my own. I couldn’t get roblox’s built in screen recorder to work on Linux, so I installed OBS.

I disabled players’ characters from loading in through Players.CharacterAutoLoads = false; in my server script and linked player controls and camera to the tank spawned in whenever a player is added.

Using Rojo for Remotes

I created a remotes.model.json file in my rojo project and linked it in my default.project.json with the following:

default.project.json

	"ReplicatedStorage": {
		"$className": "ReplicatedStorage",
		"rbxts_include": {
			"$path": "include",
			"node_modules": {
				"$path": "node_modules/@rbxts"
			}
		},
		"Remotes": {
			"$path": "remotes.model.json"
		},
		"TS": {
			"$path": "out/shared"
		}
	},

remotes.model.json

{
    "ClassName": "Folder",
    "Children": [
        {
            "Name": "LinkTank",
            "ClassName": "RemoteEvent"
        }
    ]
}

Controls

After linking the player and tank, I created a third person camera and added some simple controls.

Improving the Model

I added more wheels and added a turrent on top. I kept this turrent in place by adjusting its CFrame every frame, but because the client lags behind when syncing physical bodies, I get this effect.

I decided to weld it instead, but due to the laws of physics. The tank is now unbalanced.


But if I make the turret mass-less, it’s fixed.

Here’s another video, running out of time :slight_smile:

Try It!

I’m open to critiques, not dislikes, and want to know how you feel about this game.
I’ll post daily devlogs @ 9 EST here on devforum.
Thanks for reading (or skipping).

Oh, if your tank flips exit and join back in. I ran out of time to implement a respawn / flip system.

2 Likes

why does it use JSON? its just a tank you can use same code as roblox cars to make it move and some extra bit to aim with the turret

I use Json with Rojo which syncs remote events from a Json file as well as lua files generated with roblox-ts to Roblox studio.

Hey, game looks like it could turn out awesome.
One thing I’d say though, I’m guessing there will be a Sensitivity Slider in the final product, but for the default Sensitivity, in my opinion it could be slower, it’s pretty fast at the moment, so it makes it super hard to really look around and what not

Yes, most definitely! I planned on adding it today but ran out of time.

Alright I gotcha, awesome! I’ll keep up-to-date with the game

Bro is gone…