Cities: Skylines

Cities: Skylines

159 rating
MARS Helicopter - Passenger Transport
2
   
Penghargaan
Favorit
Difavoritkan
Batalkan favorit
Ukuran File
Diposting
9.097 MB
4 Apr 2020 @ 11:36pm
1 Catatan Perubahan ( lihat )
Kamu perlu DLC untuk menggunakan item ini.

Berlangganan untuk mengunduh
MARS Helicopter - Passenger Transport

Dalam koleksi 2 dari citywokcitywall
CityWokCityWall's MARS Assets
Item 948
CityWokCityWall's Airport Assets
Item 167
Deskripsi
Welcome to Cities Skylines: MARS!

This is a Blimp Vehicle, a Passenger Helicopter Vehicle, and Prop. It's used transport citizens through the air in CityWokCityWall's MARS YouTube series. As an added bonus, there is also an semi-invisible blimp stop building - a modified version of ViniciusM's wonderful creation. Unfortunately I've been unable to get a passenger helicopter stop building working, so if anyone can figure out how to make one that's able to be raised up into the air, let me know!

Asset Info

Body (No Rotors)
Name: cwcw-transportHeli
Tris: 772 MAIN || 131 LOD
Textures: 1024x1024 D/S/N/I/C MAIN || 128x128 D/S/N/I/C LOD
Vertex Color:
Red: 0
Green: 0
Blue: 255
Hex: #0000FF

Transport Heli Prop (Body + Rotor)
Name: cwcw-MARSHelicopter-Prop
Tris: 932 MAIN || 143 LOD
Textures: 1024x1024 D/S/N/I MAIN || 124 D/S/N/I LOD

Rotor Models
Tris: 80 MAIN || 6 LOD
Textures: 64x64 D/S/C MAIN || 64x64 D/C LOD

Rotor1Spinning (left rotor)
Name: cwcw-transportHeliRotor1Spinning
Vertex Color:
Red (visibility): 85 (66% visibility when spinning, 33% visibility when stationary)
Green (tire peram): 0 (indicates this is the first submesh 0x8=0)
Blue (axis): 0
Hex: #550000

Rotor1Stationary (left rotor)
Name: cwcw-transportHeliRotor1Stationary
Vertex Color:
Red (visibility): 255 (0% visibility when moving, 100% visibility when stationary)
Green (tire peram): 8 (indicates this is the second submesh 1x8=8)
Blue (axis): 0 (if you want this prop facing sideways, use 255)
Hex: #FF0800

Rotor2Spinning (right rotor)
Name: cwcw-transportHeliRotor2Spinning
Vertex Color:
Red (visibility): 85 (66% visibility when spinning, 33% visibility when stationary)
Green (tire peram): 16 (indicates this is the third submesh 2x8=16)
Blue (axis): 0 (if you want this prop facing sideways, use 255)
Hex: #551000

Rotor2Stationary (right rotor)
Name: cwcw-transportHeliRotor2Stationary
Vertex Color:
Red (visibility): 255 (0% visibility when moving, 100% visibility when stationary)
Green (tire peram): 24 (indicates this is the fourth submesh 3x8=24)
Blue (axis): 0 (if you want this prop facing sideways, use 255)
Hex: #FF1800

How to Make a Custom Helicopter

1. Make a new PROP using the MAIN BODY model. Name it something short and easy (but unique) because you'll be needing this model to make rotors spin, but then at the end you'll want to delete it. I'm naming mine "body". Name the Asset and the file the same thing.
2. Go in game and make sure the import size is OK so you can use it on all other pieces you have to make and not re-do everything because it's the wrong size and you only realized at the very end.
3. Make a new PROP using the Rotor1Spinning model. Make it the same scale as the body when u import it. Same naming suggestion as body. I'm calling mine "R1spin".
4. Make a new PROP using the Rotor1Stationary model. I'm calling mine "R1station".
5. Make a new PROP using the Rotor2Spinning model. I'm calling mine "R2spin".
6. Make a new PROP using the Rotor2Stationary model. I'm calling mine "R2station".
7. Make a new PROP using the Actual Transport Heli Prop
8. Quit to desktop (important)
9. Make a new VEHICLE using the MAIN BODY model. Make it the same scale as the body when u import it.
10. Apply the vertex paint from the prop created in step 1
  • Take the name used in Step 1 and paste it twice into the first line of the code below instead of "body" (don't accidentally delete the "_Data"):
var asset2 = PrefabCollection<PropInfo>.FindLoaded("body.body_Data");
Vector4[] tyres = new Vector4[] {
new Vector4(-0.739f, 0.328f, 1.421f, 0.328f),
new Vector4(0.739f, 0.328f, 1.421f, 0.328f),
new Vector4(-0.739f, 0.331f, -1.93f, 0.331f),
new Vector4(0.739f, 0.331f, -1.93f, 0.331f)
};
var asset = ToolsModifierControl.toolController.m_editPrefabInfo as VehicleInfo;
Color[] colors = new Color[asset2.m_mesh.vertices.Length];
for (int i = 0; i < asset2.m_mesh.vertices.Length; i++) colors[i] = asset2.m_mesh.colors[i];
asset.m_mesh.colors = colors; asset.m_generatedInfo.m_tyres = tyres;
  • Open Mod Tools Debug Window
  • Copy / paste the code above (with your name replaced) into Mod Tools and hit run.
11. Delete the default submesh and add your rotors. You're going to need to do the following steps four times (once for each of the props created in steps 3-6)
  • Add a new submesh.
  • Import your Rotor1Spinning model.
  • edit the below script so that the submesh number matches the submesh you are working on, and so that the two names in line 2 match the name you chose in step 3. For me, it was "R1spin". Make sure not to accidentally delete the "_Data" at the end.
var subMesh = 1; // vehicle sub mesh id, starting from 1
var asset2 = PrefabCollection<PropInfo>.FindLoaded("R1spin.R1spin_Data");
var asset = ToolsModifierControl.toolController.m_editPrefabInfo as VehicleInfo;
Color[] colors = new Color[asset2.m_mesh.vertices.Length];
for (int i = 0; i < asset2.m_mesh.vertices.Length; i++) colors[i] = asset2.m_mesh.colors[i];
asset.m_subMeshes[subMesh].m_subInfo.m_mesh.colors = colors;
  • Copy the above code into Mod Tools and run in order to import the vertex paint data from the prop rotor to the vehicle submesh rotor.
  • Don't change any of the submesh conditions
  • Repeat this step 11 three more times. make sure to change the script accordingly.
12. Find the center of the rotors by taking two of the lights and change their coordinates so that it's at the exact position where you want the rotors to rotate / pivot from. Mark those coordinates. For me it's:
Rotor1: (5.640, 2.880, 3.310)
Rotor2: (-5.640, 2.880, 3.310)
13. Set the rotors to actually spin by running the rotor spin script
  • Enter the rotor coordinates from the previous step into the following scripts in the tireParams lines. 0 & 1 are your Rotor 1 coordinates, 2 & 3 are your Rotor 2 coordinates
  • Run the script four times in Mod Tools. Each time change the subMesh number to 1, 2, 3, 4.
var subMesh = 1; // change this to 2 for the second time running this script, etc. var FlipXZ = false; // set to true to allow spinning around z axis var tires = 4; Vector4[] tireParams = new Vector4[tires]; tireParams[0] = new Vector4(5.640f, 2.880f, 3.310f, 0.0f); // leave last number as 0.0 tireParams[1] = new Vector4(5.640f, 2.880f, 3.310f, 0.0f); // leave last number as 0.0 tireParams[2] = new Vector4(-5.640f, 2.880f, 3.310f, 0.0f); // leave last number as 0.0 tireParams[3] = new Vector4(-5.640f, 2.880f, 3.310f, 0.0f); // leave last number as 0.0 var fxz = 0.0f; if(FlipXZ) fxz = 1.0f; var shader = Shader.Find("Custom/Vehicles/Vehicle/Rotors"); var asset = ToolsModifierControl.toolController.m_editPrefabInfo as VehicleInfo; if(asset.m_subMeshes[subMesh].m_subInfo.m_material != null) asset.m_subMeshes[subMesh].m_subInfo.m_material.shader = shader; if(asset.m_subMeshes[subMesh].m_subInfo.m_lodMaterial != null) asset.m_subMeshes[subMesh].m_subInfo.m_lodMaterial.shader = shader; asset.m_subMeshes[subMesh].m_subInfo.m_material.SetFloat("_FlipTyreRotationXZ", fxz); asset.m_subMeshes[subMesh].m_subInfo.m_generatedInfo.m_tyres = tireParams; if(FlipXZ) asset.m_subMeshes[subMesh].m_subInfo.m_UIPriority = 120122;
14. Change light positions to how you want them, set vehicle capacity, etc. for me it was...
Light 1: -5.99, 1.96, 3.08
Light 2: 5.99, 1.96, 3.08
Light 3: 0, 1.93, -8.23
Light 4: -5.59, 0.38, 1.99
Light 5: 5.59, 0.38, 1.99
Light 6: 0, 0, 0
Use Color Variations: Off
Max Speed: 6
Passenger Capacity: 25
15. Save!
16 Komentar
DTOX 15 Des 2022 @ 9:04pm 
I followed this write up and the clsmodding site, but am still struggling with helicopter rotors. Is there a video tutorial out there somewhere? Any help is appreciated. (great asset btw)
Blue Monkey 25 Sep 2022 @ 6:42pm 
Way too slow. 35 km/h at 25 capacity is a joke.
eons Luna 15 Sep 2022 @ 7:28am 
Is there a generic medical version of this? I know there's already the MARS Helicopter but I want something that looks more "civilian"; the MARS Helicopter looks more like a helicopter gunship.
m4gic 7 Jul 2022 @ 7:38am 
Thank you!
m4gic 7 Jul 2022 @ 7:38am 
Tags: Cities Skylines vehicle rotor, spinning rotor, helicopter, make rotors spin
TortoTheConqueror 16 Agu 2021 @ 10:35am 
Would it be easy to turn this into a police helicopter?
smith994 12 Jul 2020 @ 11:22am 
Somehow this is now working as a blimp without Sunset Harbor.
CaddyShack 26 Mei 2020 @ 6:22pm 
One of the only few working custom passenger helis on the Workshop! I love your work! :steamhappy:
Dolomite13 7 Mei 2020 @ 5:29pm 
Oh well I guess I need to make everything in my city just a bit lower then ;) ... looking forward to that next episode of Mars
citywokcitywall  [pembuat] 7 Mei 2020 @ 4:39pm 
@Dolomite13 as far as i know, no