Immersive Vehicles (Formerly Transport Simulator)

Immersive Vehicles (Formerly Transport Simulator)

4M Downloads

[Suggestion] mtsConfig.json list of 'dust generating blocks'

DrprofLuigi opened this issue ยท 1 comments

commented

Basically there would be a section in the MTS config file where people could define particles to spawn when a wheel rolls over the block. The initialVelocity would be in the vehicle's coordinate system, and maybe active animations could define how fast the wheel should be spinning or slipping to generate the particle. Making this configurable in the json allows modded blocks to be used.

Here's an example where each block is individually defined:

		"minecraft:dirt:0": [
			{
				"type": "smoke",
				"color": "#964B00",
				"transparency": 0.25,
				"toTransparency": 0.25,
				"scale": 1,
				"initialVelocity": [0, 0, -1]
			}
		],
		"minecraft:gravel:0": [
			{
				"type": "smoke",
				"color": "#964B00",
				"transparency": 0.25,
				"toTransparency": 0.25,
				"scale": 1,
				"initialVelocity": [0, 0.25, -0.5]
			},
			{
				"type": "generic",
				"color": "#808080",
				"transparency": 0.25,
				"toTransparency": 0.25,
				"scale": 1,
				"initialVelocity": [0, 0.25, -0.5]
			}
		]
	]```
	
Or where the blocks can be defined in groups (good if this is used to define what blocks cars can burnout on with tire smoke like concrete)

```	"blockWheelParticles": [
		{
			"blocks": "minecraft:dirt:0",
			"particles": [
				{
					"blocks": "minecraft:dirt:0",
					"type": "smoke",
					"color": "#964B00",
					"transparency": 0.25,
					"toTransparency": 0.25,
					"scale": 1,
					"initialVelocity": [0, 0, -1]
				}
			]
		},
		{
			"blocks": "minecraft:dravel:0",
			"particles": [
				{
					"type": "smoke",
					"color": "#964B00",
					"transparency": 0.25,
					"toTransparency": 0.25,
					"scale": 1,
					"initialVelocity": [0, 0.25, -0.5]
				},
				{
					"type": "generic",
					"color": "#808080",
					"transparency": 0.25,
					"toTransparency": 0.25,
					"scale": 1,
					"initialVelocity": [0, 0.25, -0.5]
				}
			]
		}
	]```

If this gets implemented, I'd be happy to make the json definitions. I would suggest having the ability to define blocks that aren't present (like IE or Fureniko blocks) so there are some mod blocks included by default.
commented

So, I'm going to wontdo this, but for the reason that what you want is pretty much possible now, just in a slightly different way.

To handle which blocks you can do burnouts on, you should adjust the wheel friction on those blocks via the wheel friction parameters.

To handle spawning of particles, you can use the JSON-based particle system to spawn block-breaking particles. The LCs already put this in automatically for wheels for the block-colored particles and the smoke. You can adjust them if you prefer them to be different. They were just straight LCs from the old hard-coded stuff.

Now, if you wanna know what blocks you're over so you can spawn some dirt-dust particles during normal driving, that's different. That's adding new variables for use in particle animations.