LucasForums

LucasForums (http://www.lucasforums.com/index.php)
-   Holowan Laboratories (http://www.lucasforums.com/forumdisplay.php?f=324)
-   -   Two Module Map Questions (http://www.lucasforums.com/showthread.php?t=209918)

Fallen Guardian 04-05-2012 07:47 PM

Two Module Map Questions
 
So as the title suggests I have two questions about maps in modules.

1. What file do I edit in order to set whether the map for the module is completely revealed or not?

2. How do I set up and create Map Notes? I've attempted this before but for some reason they didn't show up.

Sithspecter 04-05-2012 08:27 PM

The map notes are actually waypoints. You can set them up with the UTW files.

JCarter426 04-05-2012 08:42 PM

I don't think there's an option to reveal the map automatically, but there's a simple script function - RevealMap() - that you can put in the module's OnEnter script. You can also put in coordinates and a radius to reveal only a specific region. Here's the source code:
Code:

// 515: RevealMap
// Reveals the map at the given WORLD point 'vPoint' with a MAP Grid Radius 'nRadius'
// If this function is called with no parameters it will reveal the entire map.
// (NOTE: if this function is called with a valid point but a default radius, ie. 'nRadius' of -1
//        then the entire map will be revealed)
void RevealMap(vector vPoint=[0.0,0.0,0.0],int nRadius=-1);


Fallen Guardian 04-05-2012 08:51 PM

@JC But for some reason when I load up a module that module already has its map revealed, is there a way to make it un-revelaed?

@SS Okay, I'll play around with it and get back on it.

JCarter426 04-05-2012 08:58 PM

Hmm. Maybe the OnEnter script already reveals the map. Try removing it from the ARE file and see if that fixes it - and make sure you load from before you've ever been there.

newbiemodder 04-05-2012 11:21 PM

For the map reveal..check out Stoney"$ Mini-map tutorial....I'm pretty sure there is an entry regarding that there

Yep..it is in the general tutorials

Fallen Guardian 04-08-2012 02:21 AM

Okay, while this isn't related to map questions, it is related to module questions and I'd rather not start a new thread.

Anyway, I've been attempting to place some sitting people placeables in some of my modules for a quite a while now, however whenever I enter the module they are either standing up straight with their arms stretched out and I can walk through them, or they are playing a dead animation. Is there something I have to do via scripting or .ARE/.GIT/.IFO wise to make this work? Or do I have to do something in the placeable file itself?

Hassat Hunter 04-08-2012 04:41 AM

I don't know for KOTOR1, but with KOTOR2 their sitting is done in the onenter script (make sure it runs also when a savegame is loaded)...

Fallen Guardian 04-08-2012 11:50 AM

What would I put in the onenter to make them sit?

LDR 04-08-2012 12:11 PM

Err, here's a tutorial on how to make mapnotes.

Hassat Hunter 04-08-2012 12:47 PM

Example... part of k_503_enter.nss from TSLRCM 1.8;
Code:

void sub3() {
        object oSittingRodian = GetObjectByTag("SittingCommMale", 0);
        DelayCommand(0.1, AssignCommand(oSittingRodian, ActionPlayAnimation(37, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingSwoopganger", 0);
        DelayCommand(1.3, AssignCommand(oSittingRodian, ActionPlayAnimation(37, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingCommFemale", 0);
        DelayCommand(0.7, AssignCommand(oSittingRodian, ActionPlayAnimation(38, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingSwoopganger", 1);
        DelayCommand(0.3, AssignCommand(oSittingRodian, ActionPlayAnimation(36, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingAlien", 0);
        DelayCommand(1.0, AssignCommand(oSittingRodian, ActionPlayAnimation(36, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingCommFemale", 1);
        DelayCommand(2.1, AssignCommand(oSittingRodian, ActionPlayAnimation(38, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingCommMale", 1);
        DelayCommand(2.2, AssignCommand(oSittingRodian, ActionPlayAnimation(37, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingWalrusman", 0);
        DelayCommand(0.1, AssignCommand(oSittingRodian, ActionPlayAnimation(36, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingBith", 0);
        DelayCommand(1.3, AssignCommand(oSittingRodian, ActionPlayAnimation(37, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingBith", 1);
        DelayCommand(0.1, AssignCommand(oSittingRodian, ActionPlayAnimation(37, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingRodian", 0);
        DelayCommand(2.2, AssignCommand(oSittingRodian, ActionPlayAnimation(37, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingCommMale", 2);
        DelayCommand(0.1, AssignCommand(oSittingRodian, ActionPlayAnimation(37, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingCommMale", 3);
        DelayCommand(0.8, AssignCommand(oSittingRodian, ActionPlayAnimation(37, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingCommFemale", 2);
        DelayCommand(1.2, AssignCommand(oSittingRodian, ActionPlayAnimation(37, 1.0, (-1.0))));
        oSittingRodian = GetObjectByTag("SittingCommFemale", 3);
        DelayCommand(0.3, AssignCommand(oSittingRodian, ActionPlayAnimation(37, 1.0, (-1.0))));
}

IIRC 37 is drinking, 36 is just sitting and 38 is playing pazaak.

And here's the start of the main part;
Code:

void main() {
        if ((GetEnteringObject() != GetFirstPC())) {
                return;
        }
        sub1();
        sub3();
        if (GetLoadFromSaveGame()) {
                return;
        }

You can do it without sub (most do), but it was already the case here... and it's a bit too much to do without.
Also make sure the tags match (in vanilla, this was NOT the case)


All times are GMT -4. The time now is 06:59 PM.

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