SR3 zone file format

There are nav points out there now to copy. We just need to find one I'm sure. I believe they are used for all the mission start nodes...or maybe that is actually a mission start node? As for what you need to do to custom build one, you would need the hash which I would grab from another object. If you guys can find one I can try to step through the creation to see just what is used for what.
I looked through the mission 1 Lua code "m01.lua" for nav points, and I see this:
Code:
-- Checkpoints --
    M01_checkpoint = {
        start = {
            name = MISSION_START_CHECKPOINT,
            nav1 = "Start_player_nav<001>",
            nav2 = "Start_player_nav<002>"
        },

        plant_bombs = {
            name = "m01_checkpoint_plant_bombs",
            nav1 = "Vault_player_nav",
            nav2 = "Vault_player_nav<001>"
        },

        survive = {
            name = "m01_checkpoint_survive",
            nav1 = "player1_swat",
            nav2 = "player2_swat"
        },

        ride_vault = {
            name = "m01_checkpoint_ride_vault",
            nav1 = "player1_vault",
            nav2 = "player2_vault"
        },

        debug_swaps = {
            name = "m01_just_swap",
            nav1 = "debug_nav",
            nav2 = "debug_nav"
        },
    }
Then I looked in the parsed "sr3_city~fm01`.czn_pc" objects for "Start_player_nav<001>" and I found this (parsed output from my SRZoneTool):
Code:
<object index="48">
  <name>Start_player_nav&lt;001&gt;</name>
  <handle_offset>0x012480CF0347AD87</handle_offset>
  <parent_handle_offset>0x0000000000000000</parent_handle_offset>
  <object_type_hash>0x445C1F3D</object_type_hash>
  <padding>0</padding>
  <properties>
    <property index="1">
      <type>3</type>
      <type_description>compressed transform with quaternion orientation</type_description>
      <name_crc>0xC8BEEEC5</name_crc>
      <transform>
        <x>2238.34985351563</x>
        <y>176.051956176758</y>
        <z>2728.2109375</z>
      </transform>
      <orientation>
        <x>-0</x>
        <y>-1</y>
        <z>-0</z>
        <w>-2.63751335296547E-05</w>
      </orientation>
    </property>
    <property index="2">
      <type>0</type>
      <type_description>string</type_description>
      <name_crc>0x355EF946</name_crc>
      <string>Start_player_nav&lt;001&gt;</string>
      <padding>
        <rawdata format="hex">00 80</rawdata>
      </padding>
    </property>
    <property index="3">
      <type>0</type>
      <type_description>string</type_description>
      <name_crc>0xB7A1B604</name_crc>
      <string>Floating</string>
      <padding>
        <rawdata format="hex">6C 65 20</rawdata>
      </padding>
    </property>
  </properties>
</object>
I'm not really sure if these are the nav points you're talking about. If I could use the nav point to invoke a Lua script, that would be very useful, but I haven't figured that out yet.

But it should be possible to simply add an object like this to the XML created by my SRZoneTool, then convert it back to a zone file and it should work! I haven't had time to test it yet, but if someone wants to try it please let me know if it works. :)

EDIT: I see you can use the nav points for teleporting:
Code:
teleport_coop(M01_checkpoint.start.nav1, M01_checkpoint.start.nav2, true)
 
Last edited:
Yes, you can use them for teleports and also I believe the world map markers are nav points as well. Something like "Go here and press Y to start the mission" type of indicators. The idea would be that you could drop a navpoint somewhere interesting in the world for your mission and then use that navpoint with your mission lua to do ...things.
 
I think what I need to do is make a tutorial on how to add or change a nav point using my Zone File Tools. I can see a lot of Lua functions that use nav points, so I'm going to experiment with moving/adding nav points. As usual, finding time to do all this is always a problem, but I'll let you know as soon as I post it. Thanks again! :)

UPDATE [2015-09-25]: I have successfully moved an existing nav point, and I created a tutorial for moving nav points here:
https://www.saintsrowmods.com/forum/threads/how-to-move-a-nav-point.13341/
 
Last edited:
Back
Top