Fallout 2 mod Status on Mutant Rising?

Discussion in 'Fallout General Modding' started by qfasinsky, Jan 28, 2016.

  1. .Pixote.

    .Pixote. Antediluvian as Feck
    Modder

    Sep 14, 2009
    I just tinker around with modding because it's an enjoyable hobby. My skill level is pretty basic...I know a little about art, and like making Fallout maps. I'll be a happy man when Mutants Rising is finally finished and people get a chance to play it.
     
    • [Rad] [Rad] x 4
  2. TorontoReign

    TorontoReign ⛧卐⛧ [REDACTED]

    Apr 1, 2005
    Is Skye (I think there name is) still working on it with you?
     
  3. .Pixote.

    .Pixote. Antediluvian as Feck
    Modder

    Sep 14, 2009
    Yes, here's his website for anyone interested - http://www.skyesken.org/pro_mr.html

    Skye has done some very nice illustrations for MR, as well as writing a good portion of the dialogue, very talented IMO.

     
    • [Rad] [Rad] x 1
  4. -Ghoster-

    -Ghoster- First time out of the vault

    12
    Jan 4, 2020
    Now, I wonder if the map of Mutants Rising spreads all the way from the west coast to the east coast? I remember Dayglow being a location in one of the earlier drafts and thenI saw you talk about one of the maps being set in New York.
     
  5. ironmask

    ironmask A Smooth-Skin

    661
    Mar 10, 2018
    It doesn't. Mutants rising only takes place in Nevada.
     
  6. .Pixote.

    .Pixote. Antediluvian as Feck
    Modder

    Sep 14, 2009
    I don't think so...the main character will travel widely, the map is as large as F2's, there will be some interstate travel between California and Nevada.
     
    • [Rad] [Rad] x 1
  7. 25_year_old_None

    25_year_old_None First time out of the vault

    34
    Jan 27, 2020
    I don't know anything about modding, but I can fix animations if you guide me with the proper software (I have a master degree in art and am good with After Effects and Photoshop). I can also test/proofread text and give inputs about dialogs.

    I have lots more time with the almost total isolation we're at now...
     
  8. Vic Vos

    Vic Vos First time out of the vault

    6
    Mar 25, 2020
    Real glad to hear MR is still kicking! Hope it gets finally finished one day. :boy:
     
  9. .Pixote.

    .Pixote. Antediluvian as Feck
    Modder

    Sep 14, 2009
    I'm taking a little break from it for now, but I will get back into it soon. I have just one map to rework, one map, yet I'm reluctant to finish it...strange!
     
    • [Rad] [Rad] x 6
  10. ironmask

    ironmask A Smooth-Skin

    661
    Mar 10, 2018
    Surely working a mod for years can do that. Even if you are close to finish.
     
  11. ironmask

    ironmask A Smooth-Skin

    661
    Mar 10, 2018
    Hey .pixote. I have been wanting to ask you this but how do you make maps? I mean like how do you plan them? Do you make it up as you go along or do you plan it, like make out on a piece of paper first before mapping. Like how DnD players draw dungeons.



    I'm sorry if this is a stupid question. I'm planning on getting into fallout 2 modding.
     
    • [Rad] [Rad] x 1
  12. .Pixote.

    .Pixote. Antediluvian as Feck
    Modder

    Sep 14, 2009
    Good question...I need to understand the story of a particular location before I start mapping. Understanding the quests and needs of the characters help with the planning. One place in MR was modeled on a New York apartment feel, I just wanted to see if it was possible to make something like that. The engine limits the elevations to only 3 levels, and I want to maintain the outside view with each elevation, which adds more complexity.






    Ardent (main designer) often comes up with a town layout, which I use to build a map from, but often a top down paper design doesn't work as well when mapped in a isometric view. So things get shifted around and adjusted to get the balance right. I treat every map like a painting, and add and remove stuff overtime to get the right feel for a location, too much stuff looks messy and too little looks boring, so getting the balance is tricky. Often I'll build a location and then come back later and re-edit it...I've spent months editing previous maps, often removing unnecessary junk just to make the maps flow better. Knowing the purpose of a location is critical.
     
    • [Rad] [Rad] x 5
  13. ironmask

    ironmask A Smooth-Skin

    661
    Mar 10, 2018
    Thanks .pixote. This good advice. If I ever do decide to start modding I remember what you said.
     
  14. Fic_Mon

    Fic_Mon First time out of the vault

    36
    Jun 27, 2020
    Yo, Pixote how is the mod going and you doing alright?
     
  15. .Pixote.

    .Pixote. Antediluvian as Feck
    Modder

    Sep 14, 2009
    I haven't touched it since February...I needed to update one single map, the last map (then all the maps are complete), but I've just left it, I blame my new PC. I was running an old Windows XP machine with a CRT monitor for my Fallout modding, then I got my hands on a new faster, stronger, sexier machine and I took up playing a few choice games - fucking Elite Dangerous for one.

    Mutants Rising has slowed to almost to a nought, so will be be released any time soon? I don't think so...the key factor is the scripting. That's what's holding the games release. Some of our quests are convoluted and requite a certain level of clever scripting, I'm not capable of scripting, and our key scriptor is extremely busy with his life - he works for Arkane Studios in France.

    I'll keep working on the game, making small fixes here and there - improving the maps, adding new artwork when necessary, doing my thing. Bottom line - If the scripting isn't finished the game won't see the light of day.

    At least I made my truck gateway work beautifully...



    PS: When I feel like it I'll screen grab all the maps and put them up on the Mutants Rising website, for people to look over...
     
    • [Rad] [Rad] x 4
  16. Fic_Mon

    Fic_Mon First time out of the vault

    36
    Jun 27, 2020
    Do you accept new scripters?
     
    • [Rad] [Rad] x 2
  17. PsychoSniper

    PsychoSniper So Old I'm Losing Radiation Signs

    Jun 27, 2003

    In a pinch you can edit .frm files in ms paint.
     
  18. .Pixote.

    .Pixote. Antediluvian as Feck
    Modder

    Sep 14, 2009
    People with Fallout scripting knowledge only, it's not the sort of job to learn how to script on. We need to finish approximately 100 - 200 scripts (i'm guessing, it could be less). See the examples below - if you can write those scripts without struggling, and more importantly if your willing to put in the effort (this is the critical factor) then drop me a message. Now Ardent gets the final say, he's the lead designer and scriptor, he doesn't have the time to teach people how to script.

    For example - a fairly small script.........

    /* Script from map templete */
    /*
    Groom Lake Kristinos Mansion map script
    GROkrist.map
    by Ardent
    */
    /* Include Files */
    #include "..\headers\define.h"
    #include "..\headers\command.h"
    #define NAME SCRIPT_GROOMM3
    #include "..\headers\UPDATMAP.H"
    #include "..\headers\MR\Location\GroomLake.h"
    procedure start;
    procedure map_exit_p_proc;
    procedure map_enter_p_proc;
    procedure map_update_p_proc;
    /****************** MACROS AND OTHER DEFS *******************/
    /****************** VARIABLES *******************/
    export variable lucy_pickett_ptr;
    export variable pickett_explode_box;
    procedure start begin
    end
    procedure map_enter_p_proc begin
    /*if (map_first_run) then begin
    mark_on_map(AREA_TRAPPER_TOWN)
    display_msg(mstr(100));
    end
    else begin
    display_msg(mstr(101));
    end
    override_map_start_hex(27918,0,5);*/ //tile, elev, rot
    end
    procedure map_update_p_proc begin
    Lighting;
    end
    procedure map_exit_p_proc begin
    mark_exit_bleeding
    end

    .............................................................


    A larger script....


    .............................................................

    /*
    MR NPC: Deputy Carl Hastings
    Role: Sheriff's secretary
    Location: Groom Lake West, Police Station
    Dialogue: Jinx
    Script: Ardent
    */
    /* Include Files */
    #include "..\headers\define.h"
    #define NAME SCRIPT_GROOMC20
    #include "..\headers\command.h"
    #include "..\headers\GROwest.h"
    #include "..\headers\MR\Location\GroomLake.h"
    #include "..\headers\MR\Location\GlobalQuests.h"
    /* Standard Script Procedures */
    procedure start;
    procedure timed_event_p_proc;
    procedure critter_p_proc;
    procedure pickup_p_proc;
    procedure destroy_p_proc;
    procedure use_p_proc;
    procedure look_at_p_proc;
    procedure description_p_proc;
    procedure use_skill_on_p_proc;
    procedure use_obj_on_p_proc;
    procedure damage_p_proc;
    procedure map_enter_p_proc;
    procedure map_exit_p_proc;
    procedure map_update_p_proc;
    procedure talk_p_proc;
    procedure node001;
    procedure node002;
    procedure node003;
    procedure node004;
    procedure node005;
    procedure node006;
    procedure node007;
    procedure node008;
    procedure node009;
    procedure node010;
    procedure node011;
    procedure node012;
    procedure node013;
    procedure node014;
    procedure node015;
    procedure node016;
    procedure node017;
    procedure node018;
    procedure node019;
    procedure node020;
    procedure node021;
    procedure node022;
    procedure node023;
    procedure node024;
    procedure node025;
    procedure node026;
    procedure node027;
    procedure node028;
    procedure node029;
    procedure node030;
    procedure node031;
    procedure node032;
    procedure node033;
    procedure node034;
    procedure node035;
    procedure node036;
    procedure node037;
    procedure node038;
    procedure node039;
    procedure node040;
    procedure node041;
    procedure node042;
    procedure node043;
    procedure node044;
    procedure node045;
    procedure node046;
    procedure node047;
    procedure node048;
    procedure node049;
    procedure node050;
    procedure node997; //both go to Nolan Bask
    procedure node998;
    procedure node999;
    /*****************************************************************
    Local Variables which are saved. All Local Variables need to be
    prepended by LVAR_
    *****************************************************************/
    #define LVAR_Herebefore (4)
    #define LVAR_Hostile (5)
    #define LVAR_Personal_Enemy (6)
    #define LVAR_Q_Important_Position (7)
    #define LVAR_Q_Town_News (8)
    #define LVAR_Here_For_Area51 (9)
    #define LVAR_Been_Node36 (10)
    #define LVAR_Thievery_Return (11)
    #define open_captains_door if (map_var(MVAR_Hastings_Let_Dude_In) == 0) then \
    set_map_var(MVAR_Hastings_Let_Dude_In,1); \
    set_map_var(MVAR_Bask_Door_Status,1); \
    add_timer_event(captains_door_ew_ptr,1,tefp_unlock_door); \
    add_timer_event(captains_door_ns_ptr,1,tefp_unlock_door)
    /*******************************************************************
    Imported variables from the Map scripts. These should only be
    pointers and variables that need not be saved. If a variable
    Needs to be saved, make it a map variable (MVAR_)
    *******************************************************************/
    import variable captains_door_ew_ptr;
    import variable captains_door_ns_ptr;
    import variable hastings_ptr;
    import variable intercom_float;
    /*******************************************************************
    Local variables which do not need to be saved between map changes.
    *******************************************************************/
    variable begin
    n24_first; been_node44; been_node45; tamper;
    end
    /*******************************************************************
    ******* PROCEDURES *******
    *******************************************************************/
    /*******************************************************************
    The start procedure is the first procedure called when the map is
    first entered. Any initial information that needs to be set up
    should be placed in here.
    *******************************************************************/
    procedure start begin
    hastings_ptr:=self_obj;
    end
    procedure timed_event_p_proc begin
    if (fixed_param == 0) then begin
    floater(intercom_float);
    end
    else if (fixed_param == 1) then begin
    tamper:=1;
    if (obj_can_see_obj(self_obj,dude_obj)) then begin
    dialogue_system_enter;
    end
    else begin
    call talk_p_proc;
    end
    end
    end
    /********************************************************************
    ********************************************************************/
    procedure use_p_proc begin
    end
    /***************************************************************************
    This is cursory glance description that the player will receive should
    he just pass the Action Cursor over. Examines which give more information
    need to be in the description_p_proc procedure.
    ***************************************************************************/
    procedure look_at_p_proc begin
    script_overrides;
    if (local_var(LVAR_Herebefore) == 0) then
    display_msg(mstr(100));
    else
    display_msg(mstr(101));
    end
    procedure description_p_proc begin
    script_overrides;
    display_msg(mstr(102));
    end
    procedure use_skill_on_p_proc begin
    end
    procedure use_obj_on_p_proc begin
    end
    /******************************************************************************************
    IF it gets damaged
    ******************************************************************************************/
    procedure pickup_p_proc begin
    if (obj_in_party(source_obj)) then begin
    set_local_var(LVAR_Hostile,1);
    attack(dude_obj);
    end
    end
    procedure damage_p_proc begin
    if (obj_in_party(source_obj)) then begin
    set_local_var(LVAR_Hostile,1);
    attack(dude_obj);
    end
    end
    procedure destroy_p_proc begin
    set_global_var(GVAR_GROOM_DEPUTY_HASTINGS_STATUS,GROOM_StatusVal_Hastings_Dead);

    if (source_obj == dude_obj) then begin
    inc_good_critter
    end

    if (obj_in_party(source_obj)) then begin
    dec_global_var_amt(GVAR_TOWN_REP_REDDING,10);
    end
    end
    /***************************************************************************************
    Whenever the map is first entered, this procedure will be called.
    ***************************************************************************************/
    procedure map_enter_p_proc begin
    hastings_ptr:=self_obj;
    critter_add_trait(self_obj,TRAIT_OBJECT,OBJECT_TEAM_NUM,TEAM_GROOM_POLICE);
    end
    procedure map_exit_p_proc begin
    rm_timer_event(self_obj);
    end
    /**************************************************************************************
    This procedure gets called roughly every 30 seconds of real time.
    **************************************************************************************/
    procedure map_update_p_proc begin
    end
    procedure critter_p_proc begin
    if ((local_var(LVAR_Hostile) == 2) and (obj_can_see_obj(self_obj,dude_obj))) then begin
    set_local_var(LVAR_Hostile,1);
    attack(dude_obj);
    end
    end
    /**************************************************************************************
    This is used for any dialogue that may need to occur with the player.
    **************************************************************************************/
    procedure talk_p_proc begin
    if (tamper > 0) then begin
    start_gdialog(NAME,self_obj,4,-1,-1);
    gsay_start;
    if (global_var(GVAR_GROOM_BASK_QUEST_PROGRESSION) == GROOM_Bask_ThieveryAfoot_Active) then begin //Thievery quest active
    if (local_var(LVAR_Thievery_Return) == 0) then
    call node022;
    else
    call node023;
    end
    else begin
    call node050;
    end
    gsay_end;
    end_dialogue;
    end
    else begin
    if (global_var(GVAR_GROOM_BASK_QUEST_PROGRESSION) == GROOM_Bask_ThieveryAfoot_Active) then begin //Thievery quest active
    start_gdialog(NAME,self_obj,4,-1,-1);
    gsay_start;
    if (local_var(LVAR_Thievery_Return) == 0) then
    call node022;
    else
    call node023;
    gsay_end;
    end_dialogue;
    end
    else if (global_var(GVAR_GROOM_BASK_QUEST_PROGRESSION) == GROOM_Bask_WitnessProtection_Active) then begin //Witness Protection quest active
    start_gdialog(NAME,self_obj,4,-1,-1);
    gsay_start;
    call node034;
    gsay_end;
    end_dialogue;
    end
    else if (global_var(GVAR_GROOM_BASK_QUEST_PROGRESSION) == GROOM_Bask_WitnessProtection_Complete) then begin //Witness Protection quest active
    start_gdialog(NAME,self_obj,4,-1,-1);
    gsay_start;
    call node038;
    gsay_end;
    end_dialogue;
    end
    else begin
    start_gdialog(NAME,self_obj,4,-1,-1);
    gsay_start;
    if (local_var(LVAR_Herebefore) == 0) then
    call node001;
    else
    call node002;
    gsay_end;
    end_dialogue;
    end
    end

    tamper:=0;
    end
    procedure node001 begin
    set_local_var(LVAR_Herebefore,1);
    if (dude_is_male) then begin
    Reply(200);
    end
    else begin
    Reply(1020);
    if (local_var(LVAR_Q_Important_Position) == 0) then
    NOption(1021,node018,4);
    end
    NOption(201,node003,4);
    NOption(202,node015,4);
    NOption(203,node021,4);
    NOption(204,node999,4);
    end
    procedure node002 begin
    Reply(210);
    if (GROOM_Quest_TwoBirds_Active) then begin
    if (obj_is_carrying_obj_pid(self_obj,PID_CARAVAN_LEDGERS_GROOM_LAKE) > 0) then
    NOption(215,node021,4);
    end
    else begin
    if ((dude_is_female) and (map_var(MVAR_Hastings_Let_Dude_In) == 0)) then
    NOption(1031,node018,4);
    NOption(211,node003,4);
    if (map_var(MVAR_Hastings_Let_Dude_In) == 0) then begin
    NOption(212,node015,4);
    NOption(213,node021,4);
    end
    else begin
    BOption(214,node048,4);
    end
    end
    NOption(216,node999,4);
    end
    procedure node003 begin
    Reply(220);
    NOption(221,node004,4);
    NOption(222,node009,4);
    if (map_var(MVAR_Hastings_Let_Dude_In) == 0) then
    NOption(223,node015,4);
    else
    NOption(224,node048,4);
    NOption(225,node999,4);
    end
    procedure node004 begin
    if (local_var(LVAR_Q_Town_News) == 0) then begin
    set_local_var(LVAR_Q_Town_News,1);
    Reply(230);
    end
    else begin
    Reply(231);
    end
    NOption(232,node005,4);
    NOption(233,node007,4);
    NOption(234,node008,4);
    NOption(235,node003,4);
    NOption(236,node999,4);
    end
    procedure node005 begin
    Reply(240);
    NOption(241,node006,4);
    NOption(242,node007,4);
    NOption(243,node008,4);
    NOption(244,node003,4);
    NOption(245,node999,4);
    end
    procedure node006 begin
    Reply(250);
    NOption(251,node007,4);
    NOption(252,node008,4);
    NOption(253,node003,4);
    NOption(254,node999,4);
    end
    procedure node007 begin
    Reply(260);
    NOption(261,node005,4);
    NOption(262,node008,4);
    NOption(263,node003,4);
    NOption(264,node999,4);
    end
    procedure node008 begin
    Reply(270);
    NOption(271,node005,4);
    NOption(272,node007,4);
    NOption(273,node003,4);
    NOption(274,node999,4);
    end
    procedure node009 begin
    Reply(280);
    NOption(281,node010,4);
    NOption(282,node011,4);
    NOption(283,node013,4);
    NOption(284,node014,4);
    NOption(285,node003,4);
    NOption(286,node999,4);
    end
    procedure node010 begin
    Reply(290);
    NOption(291,node009,4);
    if (map_var(MVAR_Hastings_Let_Dude_In) == 0) then
    NOption(292,node015,4);
    NOption(293,node003,4);
    NOption(294,node999,4);
    end
    procedure node011 begin
    Reply(300);
    NOption(301,node012,4);
    NOption(302,node009,4);
    NOption(303,node003,4);
    NOption(304,node999,4);
    end
    procedure node012 begin
    Reply(310);
    NOption(311,node009,4);
    NOption(312,node003,4);
    NOption(313,node999,4);
    end
    procedure node013 begin
    Reply(320);
    NOption(321,node009,4);
    NOption(322,node003,4);
    NOption(323,node999,4);
    end
    procedure node014 begin
    GROOM_Set_DudeHeardAboutPickett;
    Reply(330);
    NOption(331,node009,4);
    NOption(332,node003,4);
    NOption(333,node999,4);
    end
    procedure node015 begin
    Reply(340);
    if ((dude_charisma >= 6) or (has_trait(TRAIT_TRAIT,dude_obj,TRAIT_good_natured)) or (global_var(GVAR_PLAYER_REPUTATION) > 100)) then
    GOption(341,node017,4);
    else
    NOption(342,node016,4);
    if ((dude_is_female) and (has_trait(TRAIT_TRAIT,dude_obj,TRAIT_sex_appeal))) then
    GOption(1050,node019,4);
    NOption(343,node021,4);
    NOption(344,node003,4);
    NOption(345,node999,4);
    end
    procedure node016 begin
    Reply(350);
    NOption(351,node003,4);
    if ((Dude_heard_about_area51) and (local_var(LVAR_Here_For_Area51) == 0)) then
    NOption(352,node020,4);
    NOption(353,node999,4);
    end
    procedure node017 begin
    open_captains_door;
    Reply(360);
    NOption(361,node999,4);
    end
    procedure node018 begin
    set_local_var(LVAR_Q_Important_Position,1);
    Reply(1060);
    NOption(1061,node019,4);
    NOption(1062,node999,4);
    end
    procedure node019 begin
    open_captains_door;
    Reply(1070);
    NOption(1071,node999,4);
    end
    procedure node020 begin
    open_captains_door;
    set_map_var(MVAR_Hastings_Let_Dude_In,2);
    if (dude_is_male) then
    Reply(370);
    else
    Reply(1080);
    NOption(371,node999,4);
    end
    procedure node021 begin
    Reply(380);
    NOption(381,node997,4);
    NOption(382,node999,4);
    end
    procedure node022 begin
    set_local_var(LVAR_Thievery_Return,1);
    if (dude_is_male) then
    Reply(390);
    else
    Reply(1090);
    GOption(391,node024,4);
    NOption(392,node024,4);
    if (GROOM_Quest_ThieveryAfoot_Evidence) then
    NOption(393,node032,4);
    NOption(394,node999,4); //TODO: Correct node
    NOption(394,node999,4);
    end
    procedure node023 begin
    if (dude_is_male) then
    Reply(400);
    else
    Reply(1100);
    NOption(401,node024,4);
    if (GROOM_Quest_ThieveryAfoot_Evidence) then
    NOption(402,node032,4);
    NOption(403,node999,4); //TODO: Correct node
    NOption(404,node999,4);
    end
    procedure node024 begin
    if (n24_first == 0) then begin
    n24_first:=1;
    Reply(410);
    end
    else begin
    Reply(411);
    end
    NOption(412,node026,4);
    NOption(413,node027,4);
    NOption(414,node028,4);
    NOption(415,node029,4);
    NOption(416,node999,4);
    end
    procedure node025 begin
    //UNUSED
    end
    procedure node026 begin
    set_global_var(GVAR_GROOM_THIEVERY_HARVIN_INFO,1);
    Reply(430);
    NOption(431,node024,4);
    NOption(432,node999,4);
    end
    procedure node027 begin
    set_global_var(GVAR_GROOM_THIEVERY_ANNAMARIA_INFO,1);
    Reply(440);
    NOption(441,node024,4);
    NOption(442,node999,4);
    end
    procedure node028 begin
    Reply(450);
    if ((dude_perception >= 7) or (dude_iq >= 7) or (dude_charisma >= 7)) then
    NOption(451,node030,4);
    NOption(452,node024,4);
    NOption(453,node999,4);
    end
    procedure node029 begin
    Reply(460);
    NOption(461,node024,4);
    NOption(462,node999,4);
    end
    procedure node030 begin
    set_global_var(GVAR_GROOM_THIEVERY_JEN_INFO,1);
    Reply(470);
    NOption(471,node031,4);
    end
    procedure node031 begin
    Reply(480);
    NOption(481,node999,4);
    BOption(482,node999,4);
    end
    procedure node032 begin
    Reply(490);
    NOption(491,node033,4);
    NOption(492,node999,4);
    end
    procedure node033 begin
    //TODO: Float activation
    open_captains_door;
    Reply(500);
    NOption(501,node999,4);
    NOption(502,node999,4);
    end
    procedure node034 begin
    if (dude_is_male) then
    Reply(510);
    else
    Reply(1120);
    NOption(511,node035,4);
    if (global_var(GVAR_GROOM_ALBERT_HORATIO_STATUS) >= GROOM_StatusVal_Albert_Dead) then
    NOption(512,node049,4);
    NOption(513,node999,4);
    end
    procedure node035 begin
    Reply(520);
    NOption(521,node036,4);
    NOption(522,node999,4);
    end
    procedure node036 begin
    set_local_var(LVAR_Been_Node36,1);
    Reply(530);
    NOption(531,node037,4);
    end
    procedure node037 begin
    Reply(540);
    NOption(541,node999,4);
    end
    procedure node038 begin
    //TODO: Float only thing
    if (dude_is_male) then
    Reply(550);
    else
    Reply(1130);
    if (local_var(LVAR_Been_Node36) > 0) then
    NOption(551,node039,4);
    NOption(552,node999,4);
    end
    procedure node039 begin
    inc_general_rep(GROOM_HastingsComplement_KarmaGen);
    Reply(560);
    NOption(561,node999,4);
    end
    procedure node040 begin
    //TODO: Only float
    open_captains_door;
    if (dude_is_male) then
    Reply(570);
    else
    Reply(1140);
    if (GROOM_DudeKnowsPickett == GROOM_DudePickett_NeverHeardOf) then
    NOption(571,node041,4);
    else
    NOption(572,node042,4);
    NOption(573,node999,4);
    end
    procedure node041 begin
    Reply(580);
    NOption(581,node999,4);
    end
    procedure node042 begin
    Reply(590);
    NOption(591,node999,4);
    end
    procedure node043 begin
    //TODO: Float only
    Reply(600);
    NOption(601,node044,4);
    NOption(602,node045,4);
    NOption(603,node999,4);
    end
    procedure node044 begin
    been_node44:=1;
    Reply(610);
    if (been_node45 == 0) then
    NOption(611,node045,4);
    NOption(612,node999,4);
    end
    procedure node045 begin
    been_node45:=1;
    Reply(620);
    if (been_node44 == 0) then
    NOption(621,node044,4);
    NOption(622,node999,4);
    end
    procedure node046 begin
    Reply(630);
    //TODO: Caravan ledgers?
    NOption(631,node047,4);
    NOption(632,node999,4);
    end
    procedure node047 begin
    open_captains_door;
    Reply(640);
    NOption(641,node999,4);
    end
    procedure node048 begin
    open_captains_door;
    Reply(650);
    NOption(651,node999,4);
    end
    procedure node049 begin
    open_captains_door;
    Reply(660);
    NOption(661,node999,4);
    end
    procedure node050 begin
    if (local_var(LVAR_Herebefore) == 0) then begin
    set_local_var(LVAR_Herebefore,1);
    Reply(670);
    end
    else begin
    if (dude_is_male) then
    Reply(671);
    else
    Reply(672);
    end
    NOption(673,node015,4);
    NOption(674,node021,4);
    NOption(675,node999,4);
    NOption(676,node999,4);
    end
    procedure node997 begin //Open door, and setup Bask to force-initiate dialogue
    set_map_var(MVAR_Hastings_Bask_Visit,1);
    open_captains_door;
    end
    procedure node998 begin
    set_local_var(LVAR_Hostile,2);
    end
    procedure node999 begin
    end


     
    • [Rad] [Rad] x 1
  19. PsychoSniper

    PsychoSniper So Old I'm Losing Radiation Signs

    Jun 27, 2003
    Yeah, now I remember why I never did more than .frm work back in the day......

    Still probably easier and less buggy than Armada 2 code once you learn it.
     
  20. Lexx

    Lexx Testament to the ghoul lifespan
    Moderator Modder

    Apr 24, 2005
    It's pretty easy once you have an understand of how scripts work.
    Stuff in Fallout is 95% of the time just big blocks of if-then-else with variables.