lfnetwork.com mark read register faq members calendar

Thread: Rapid Transit System on custom made planets
Thread Tools Display Modes
Post a new thread. Add a reply to this thread. Indicate all threads in this forum as read. Subscribe to this forum. RSS feed: this forum RSS feed: all forums
Old 11-17-2004, 02:15 AM   #1
Kaspian
Rookie
 
Kaspian's Avatar
 
Join Date: Oct 2004
Location: Europe
Posts: 50
Rapid Transit System on custom made planets

RAPID TRANSIT SYSTEM (RTS) for Live Planets
v0.1 Download
-----------------------------------------------

Live Planets were intended to be downloadable addition to the game. These
new planets appear on Ebon Hawk's galaxy map as selectable locations for your space travels. There was only one planet released so far - Yavin Station, which is already included in PC version of the game.

I found that RAPID TRANSIT SYSTEM doesn't work at custom made planets (substituted for Live Planets) so I modified some scripts to correct it. I thrived
for future compatibility. If there would be any other custom planets created, scripts will remain unchanged. What has to be done is controled by waypoints.

-----------------------------------------------
Files modified: k_sup_gohawk.ncs, k_sup_guiopen.ncs

NSS files icnluded
-----------------------------------------------

Usage:
[list=1][*] Copy NCS files to OVERRIDE folder
[*] Give your starting module name liv_m99a# where # stands for:

a - Live Planet 1 (K_CURRENT_PLANET = 55) Yavin Station (N/A)
b - Live Planet 2 (K_CURRENT_PLANET = 60)
c - Live Planet 3 (K_CURRENT_PLANET = 65)
d - Live Planet 4 (K_CURRENT_PLANET = 70)
e - Live Planet 5 (K_CURRENT_PLANET = 75)
f - Live Planet 6 (K_CURRENT_PLANET = 80)

# - Live Planet number according to planetary.2da
(global variable K_CURRENT_PLANET)

IMPORTANT NOTE: Yavin Station is not usable as the starting module so DON'T USE IT. I added Yavin RTS option to scripts to allow people to use
the system with new custom content related to the station.

See "How to add custom loadscreens" at the end of this post please, before naming your files
[*] Waypoints

3a. Add Waypoint file (see directory Waypoints) of your chosen planet
to your starting module

Example: Your module's name is liv_m99af (Live Planet 6), included waypoint should be k_lp6_ebon_hawk_.utw

GFF NOTE: Tag [CexoString] of Waypoint must be in format K_LP6_EBON_HAWK_TRANSITION where 6 is number of planet (1-6).
I think name of *.utw file can be different, but TemplateResRef [CResRef]
of Waypoint still have to be same as Waypoint's filename.

3b. I assume your starting module will be an existing area with Ebon Hawk's SpacePort so now you have to modify one exact waypoint by modifiyng
the area's *.git file using GFF editor or whatever tool you prefer

Under WaypointList find waypoint with Tag K_###_EBON_HAWK_TRANSITION (where ### stands for DAN, KAS, MAN, KOR, TAT, UNK) and substitut it
for K_LP#_EBON_HAWK_TRANSITION where # is number of your planet (1-6)

Next alter Waypoint's TemplateResRef to name of your waypoint file
and you're done here (in my example it will be k_lp6_ebon_hawk_)

IMPORTANT NOTE: Tag and TemplateResRef of Waypoint in *.git and *.utw have to match each other. If you want you can also alter XYZ position and XY orientation of the Waypoint
[*] You are almost done with it. One last thing remains to have working RTS
at your custom planet

Name your other modules liv_anythingyouwant, when creating custom made planet.

Example: I arrive in liv_m99af. Through door in liv_m99af I enter liv_mymodule01 from which I enter liv_mymodule02. It's simple and really important. Scripts and Waypoints have the power to transport you to Ebon Hawk. Corerct format of names will get you back to last location.
[*] To disable RTS in desired area, edit *.are file nad change boolean unescapable to 1
(1-RTS disabled, 0-RTS enabled). It also applies on party selection.[/list=1]
-----------------------------------------------

How it works?

You arrive on planet (in module), K_CURRENT_PLANET global variable is set
(see point 2). When exiting Ebon Hawk, K_CURRENT_PLANET is checked by k_pebn_exithwak.ncs script and according to it you are transported to module
(60 = liv_m99ab and so on). In module where is Ebon Hawk docked (SpacePort)
is RTS disabled by default. In any other module is unescapable boolean of *.are file checked for accessibility of RTS. In case the system is available (unescapable 0), PC can travel back to the ship or select party members.

When writing "in any other module" I thought that conditional:
if(!GetIsObjectValid(oEbonHawk) && !GetIsObjectValid(oSpacePort)
&& !GetIsObjectValid(oTarisApt)) is true

When travelling to Ebon Hawk, first of all is the current area sweeped and all "g_lastlocal" waypoints are deleted by function CleanUpWays(). Then is your party healed by function HealParty() and new "g_lastlocal" waypoint is created storing your last location. Next is set global string K_LAST_MODULE to value of the module filename by SetGlobalString("K_LAST_MODULE", GetModuleFileName()). And finaly
is integer nPlanet [int nPlanet = GetGlobalNumber("K_CURRENT_PLANET")] checked and you are transfered into module (where's SpacePort) at K_###_EBON_HAWK_TRANSITION waypoint.

To travel back you have to be at the SpacePort. String sMod is created
[string sMod = GetGlobalString("K_LAST_MODULE")] and checked for its value (values empty or NO_MODULE disable transit). At the same time function UT_ValidateJump looks if you are worthy to jump anywhere [UT_ValidateJump(sMod)]. If all conditionals are true, you are transfered to K_LAST_LOCATION.
I had some problems with "Transit back" when filenames of other mods weren't
in format liv_anything.

If you look into *.nss you can find entries like Xor Ambush or what GUI buttons
are displayed.

I hope you'll find this useful and also I didn't forget anything.


How to add custom loadscreens

- extract any of them from ERFs / TexturePacks / L
- name it after your module and place it in OVERRIDE folder

Example: My module is liv_m99ae01.mod, the screen's name will be load_liv_m99ae01.tga

This works only in case, your module's filename is NOT LONGER than 11 characters (including liv_ preffix)! So think twice about your module's filename. I don't really know, why is such limitation here

It's up to you. When module's filename is longer than 11 chars, the game will use default loadscreen. In this case DON'T put into OVERRIDE folder any loadscreen with the same name as your module's.

Btw I think, that we could use LoadScreenID indexes in *.are files, if anyone
fills up loadscreens.2da

I wish to thank Fred Tetra for his KOTOR TOOL. It's really great util and must
have for any modder out there.

Last edited by Kaspian; 11-17-2004 at 10:23 PM.
Kaspian is offline   you may: quote & reply,
Old 11-17-2004, 06:28 AM   #2
*Yoinked*
Junior Member
 
*Yoinked*'s Avatar
 
Join Date: Aug 2004
Location: foster kid in Alabama
Posts: 380
Dude, sweet, very sweet!

-Yoink


"Live is about taking risks: place your bet!"

350+ posts yay!!
*Yoinked* is offline   you may: quote & reply,
Old 11-17-2004, 07:10 AM   #3
Darth333
Administraterror
 
Darth333's Avatar
 
Status: Administrator
Join Date: Feb 2004
Location: In my secret dungeon...
Posts: 8,292
That a useful thread! thanks ( A link to this thread will probably be added in the stickies )

..and just to complete the topic, I would add a link to this thread: http://www.lucasforums.com/showthrea...hreadid=127001 so people can have the "complete new planet kit"
Darth333 is offline   you may: quote & reply,
Old 11-17-2004, 07:17 AM   #4
Darkkender
Knight of Holowan
 
Darkkender's Avatar
 
Join Date: Aug 2004
Location: In the mountains of Oregon
Posts: 2,953
Current Game: Star Wars The Old Republic
Veteran Modder 
I must say this is going to be very handy. thank you very much.

Quote:
That a useful thread! thanks ( A link to this thread will probably be added in the stickies
would you please Darth333 this is perfect for that


Working so, we will learn history as a tree knows it; we will climb into shapes printed in the seed; we will become time made visible, years made fragrant; we will make of concentric memory a stem of praise; we will inhabit daylight at a trees own speed; we will be travelers who remain, patriots to this ground.
OMG I only rank 62.13018% geek or a Extreme Geek as it is referred to on the geektest at Geektest
[TSL]Holowan Plugin
Darkkender is offline   you may: quote & reply,
Old 11-17-2004, 09:12 AM   #5
Kaspian
Rookie
 
Kaspian's Avatar
 
Join Date: Oct 2004
Location: Europe
Posts: 50
Thanks everybody for feedback. I apologize if there are any grammar or spelling mistakes, I am still having problems writing in English. If you find something wrong, let me know. I will correct it. This apply to Live Planets info too.

Thank you Darth333, it will be a honor

There are some things missing to have complete new planet kit. Here is one
of them.


Custom names for custom modules (as seen on map and load game GUIs)

Problem: Custom made modules were so far completed using an existing areas
and modules. These have their specific names. For an example you can take Korriban's Dreshdae module and attach it to any new planet (RedHawke already
did it with his great ORD Mandell mod). We desire better name for this module.
Let it be Planet - Location. Check the map (pressing M?) after exiting Ebon Hawk.
There should be sign Korriban - Dreshdae. The same text is displayed when
loading previously saved game (top right of GUI). What to do to change the sign?

There are 4 solutions.

Let it be. Make it blank. Make custom talktable (I tried that trick from NWN
- custom.tlk starts at string 16777216 - it didn't work, strings were still
taken from the beginning of dialog.tlk ) or patch somehow dialog.tlk file.
And finaly add local string to *.are file.

Well, it is against entire dialog.tlk system philosophy (other languages)
but local strings can do the job.

Solution: Load *.are file of your module into GFF Editor and find entry NAME [CExoLocString]. To make it blank change its STRREF to -1 (no reference to dialog.tlk). Then move cursor to Language ID input filed, left click in it and hit enter. You should be able to write there now. My string will be Planet - Location. Name will state = 1 strings. Save GFF, import *.are to module and
test it.

On map GUI should be Planet - Location. On Load Game GUI should be Planet
in the upper field and Location in the lower one.


How to add custom maps

Here is what I did. I exported map of Naga Sadow Tomb "lbl_mapm39aa.tga",
made one red square in the middle of the map in Photoshop and saved it to Override as "lbl_mapm50ab.tga" My module's name is abc_m60ab BUT it contains *.are and *.git files by name of m50ab. So we have m50ab.are,m50ab.git and lbl_mapm50ab.tga

Now the harder part. You should rename *.are and *.git files in case to have custom map without overwriting original map of Naga Sadow Tomb right?
Open module.ifo file with GFF Editor and navigate to Mod Area List[List] / 0
[User-defined struct: 6] / Area Name [CResRef]. Change Area Name to m50ab.
Save the file. Finaly take *.lyt of Naga Sadow's Tomb from Layouts, rename it
to m50ab.lyt and place it to Override. Everything should be OK and custom map
in the game (warp modulename) while original Naga Sadow's map remains intact.
I tested this but could forget something.

I am still working on it. Imagine what can be done with this until February
For an example take areas you like and connect them in one complex.

I hope the community will be able to modify walkmeshes and area's models one day. Great job on MDLOps ccharggin

Last edited by Kaspian; 11-17-2004 at 10:24 PM.
Kaspian is offline   you may: quote & reply,
Old 11-17-2004, 09:20 AM   #6
Darth333
Administraterror
 
Darth333's Avatar
 
Status: Administrator
Join Date: Feb 2004
Location: In my secret dungeon...
Posts: 8,292
Quote:
Originally posted by Kaspian

Now the harder part. You should rename *.are and *.git files in case to have custom map without overwriting original map of Naga Sadow Tomb right? Open module.ifo file with GFF Editor and navigate to Mod Area List[List] / 0 [User-defined struct: 6] / Area Name [CResRef]. Change Area Name to m50ab. Save the file. Finaly take *.lyt of Naga Sadow's Tomb from Layouts, rename it to m50ab.lyt and place it to Override. Everything should be OK and custom map in the game (warp modulename) while original Naga Sadow's map remains intact. I tested this but could forget something.

I am still working on it. Imagine what can be done with this until February For an example take areas you like and connect them in one complex.
This is cool Working on something similar here too but using Taris

And thanks again for sharing this with the community it is very much appreciated.
Darth333 is offline   you may: quote & reply,
Old 11-17-2004, 09:43 AM   #7
Kaspian
Rookie
 
Kaspian's Avatar
 
Join Date: Oct 2004
Location: Europe
Posts: 50
Quote:
And thanks again for sharing this with the community it is very much appreciated
I like to share knowledge with such a great community as Holowan Laboratories are. Great things can be done in this informations flow (I hope you understand
me - language).

Just for fun, try to imagine how long does it take me to write one post (with help of bad vocabulary and intermediate knowledge of English) *smiles*


Quote:
Working on something similar here too but using Taris
I look forward your mod. I can't wait but will have to.

I wonder if anyone had any success patching KotOR dialog talktable.

I thought about some small program ... "Modder" creates custom.tlk and tells program to pack it. Program makes the patch. Patch is redistributed. User takes the patch and run it. Patch query for "Kotor Installation Folder". User chooses
path (Windows style - browse?), program checks if there is dialog.tlk present
and if yes it will merge its content (custom.tlk) with KotOR's dialog.tlk

I tried some of NWN merge tools, but wasn't successful so far. It needs something easy for users.


Creating planets for Ebon Hawk's Galaxy Map

Models: As is said in tk102's thread, use model lplanet_01.mdl as a template
for creation of the live planet. Change all 4 instances of model's orginal name
in the file.

If you do so, you won't ger an error like "Names Differ: planet_0# lplanet_0#"
in "Ar_error.log" in your KotOR root folder.

I suggest naming planet's texture GUI_livep_# (where # is number 2-6).
It's perfect match to GUI_yavin_1 when hex editing planet's model and
it makes things clear.

Last edited by Kaspian; 11-17-2004 at 09:46 PM.
Kaspian is offline   you may: quote & reply,
Post a new thread. Add a reply to this thread. Indicate all threads in this forum as read. Subscribe to this forum. RSS feed: this forum RSS feed: all forums
Go Back   LucasForums > Network > Knights of the Old Republic > Editing / Modding > Holowan Laboratories > Rapid Transit System on custom made planets

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 03:05 PM.

LFNetwork, LLC ©2002-2011 - All rights reserved.
Powered by vBulletin®
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.