Fallout 2 mod How-To Journal: Creation of the Mod "Innocence Lost"

Discussion in 'Fallout General Modding' started by Robert B, Jun 7, 2017.

  1. Robert B

    Robert B Kitty's got some rads!

    May 29, 2017
    Alright, so let me take the opportunity to turn that problem resolution thread into a "How-To" here. The issue I was experiencing evolved as we explored the options. This means we covered several areas in a mixed fashion. I'd just like to re-state things here so that they're clear for everyone.

    #1 - I wanted to update the Town Map Art for my rebuild of Shady Sands. This is the graphical screen that shows up when you are entering a town (after the first time you enter a location), so you can click on the entrance you want. To do this you need to create a new *.FRM graphic file approximately 450x450 in size. It can vary, but that's the size I aimed for.

    Because we were troubleshooting why I couldn't get the Town Map Art file to display; I made the choice to use the existing entries for NCR as the location to record my Shady Sands data. So the next step was to update CITY.TXT and MAPS.TXT files to convert from NCR to Shady Sands. In addition, I went into the file INTRFACE.LST in the Fallout 2 [My Mod]\data\art\intrface subdirectory and figured out which Town Map Art file was there for NCR. This turned out to be twnncr.frm. So that's what I named my Town Map Art file and dumped it into the intrface directory.

    In this process, @Lexx helped me realize that I'd misspelled the intrface subdirectory. It's important to note that almost all filenames and folders are limited to 8 characters. I should have realized the error earlier; but with his assistance we identified the issue and were successful in utilizing the new Town Map Art.

    #2 - @Lexx and I then needed to troubleshoot why the name Shady Sands was not appearing on the worldmap. This turned out to be another problem where the file MAP.MSG wasn't located in the correct subdirectory. Once moved to the correct location, the name changes I'd made showed up for both the world map and the automap.

    #3 - This was the tough one with a simple fix from @Lexx. I needed the entrance to "Shady Sands West" to show up on the Town Map Art screen when the player was entering the location. It turns out this is done in the Worldmap.msg file (something I hadn't touched before). It is here that all entrances are documented for all locations. By updating the correct entry in this file, we were able to make the correct entrance description appear.

    So this is where I am in my replacement mod project. I'm ensuring I have all location data correct in CITY.TXT, MAPS.TXT, MAP.MSG and WORLDMAP.MSG. In addition, I've been updating my maps for the various locations and putting in placeholder critters who will control the dialog for my quest(s). Once these tasks are complete, I'll move on to dialog scripts. In my first pass, I'll keep the language and choices very simple.

    Later, I'll go back and enhance the dialogs to make them more complex; but the intention is to get to a "playable" mod as quickly as possible. In parallel, I'll also begin working on my behavioral scripts; but that will be a second priority.

    Oh, one helpful note on testing changes to CITY.TXT, MAPS.TXT, MAP.MSG and WORLDMAP.MSG. All of these files are loaded when you start FO2. That means you need to completely exit and re-enter the program to test your changes. It's kind of a pain, but part of the process.

    I guess that's all for now. I'll share more lessons as I learn them and talk about my progress. @Lexx has been invaluable in getting me going. I can't thank him enough!
    Last edited: Jun 13, 2017
  2. Robert B

    Robert B Kitty's got some rads!

    May 29, 2017
    OH! By the way. In figuring out which line number that Town Map Art file was in; I did a quick data conversion on the INTRFACE.LST file to add line numbers. If anyone is interested in using this as a starting point for themselves, please feel free!

    Example Content:

    blank.frm ; Line 0 - used to be mset000.frm for top of bouncing mouse cursor
    msef000.frm ; Line 1 - hex mouse cursor
    egg.frm ; Line 2 - used for the translucent ""egg"" effect around player"
    msef001.frm ; Line 3 -
    actionh.frm ; Line 4 - *** NO LONGER USED ***
    actionm.frm ; Line 5 - *** NO LONGER USED ***
    bigredup.frm ; Line 6 - big red button up
    bigreddn.frm ; Line 7 - big red button down
    lilredup.frm ; Line 8 - little red button up
    lilreddn.frm ; Line 9 - little red button down
    MAPDN.FRM ; Line 10 - automap button down
    AMAPHV.FRM ; Line 11 - *** NO LONGER USED ***

    Attached Files:

    Last edited: Jun 13, 2017
  3. Robert B

    Robert B Kitty's got some rads!

    May 29, 2017
    Hey, so I'm going to do my best to make updates every few weeks going forward. More frequently doesn't make sense based on how quickly activities can be completed. So what are my lessons for this week?

    Well, I think first and foremost has to do with the difficulty in getting roofs to align correctly in my maps. I can't tell you the number of times I've needed to shift buildings a row to allow me to properly build the roof map. I'm ALMOST of the opinion that you should start building rooms with roof tiles first; but I just don't see how to do that. You'd really compromise development of your vision for the building, how it will be used and the layout that best suits your storyline. For now, I'll maintain my recommendation that you start building back walls first, then sides, then front and then do the roof before you do interior walls, scenery, etc...

    What else have I learned? I guess the second most important lesson is to keep a rein in on how big your mod gets. I've identified a total of a dozen locations that might need to be developed as my story has progressed. This is larger than I'd like to tackle, so I'll be reviewing my plans this coming week to see where I can slim things down and simplify. It's easier to rewrite the story now before I get all my locations created in the mapper.

    Third is finding the right pace for your mod development. I'm finding that it becomes work when I'm investing more than an hour or two at a stretch. Some days it's much less. I'm always running the TV, music or some other distraction so that I don't get bored or frustrated. Your stamina may be higher than mine; but its how I'm progressing.

    At the end of this week, we now have 5 placeholder city locations set (and all moved close together on the worldmap). I've slowly been filling in the detail on these multi-map locations and putting in the critter placeholders. I'd say two maps are pretty close to done (have all their building and critter placeholders completed). I'm continuing to develop the storyline and really getting into the detail.

    In addition to the mod work, I've also been going through the NMA archives page by page. It may seem crazy, but unless you had an account on NMA before they moved to the new website; you can't search the archived forum. That said, there's crazy good information still available there. I try hard not to ask questions that have already been answered in tutorials, the forum or that I could determine through dedicated trial/error.

    I won't start my dialog efforts until all the placeholder maps, critters and storyline are nearly complete. I'm pretty happy with my progress based on the time invested. If anyone thinks I'm missing something; please shout out. I appreciate the feedback and support.

    Please be on the lookout for other threads dedicated to scripting and troubleshooting. There's been some good discussion the past few weeks. Good luck in all your own efforts and I'll be back again in a few weeks!

  4. Robert B

    Robert B Kitty's got some rads!

    May 29, 2017
    It's been about two weeks, so it's time to provide an update on progress and new lessons I've learned. The most critical error I'm continuing to make is in the size of my replacement mod. I've continued to add locations (not reduce them) and it's reaching the point that it should become a multi-person project. I am up to almost a dozen locations, all with placeholders now built and waiting to be filled in with critters and dialog. A lot of work has been done, but I feel I'm falling into the same mistake many other mod-developers have made. Aspiring to do something too big and too complex to be finished....

    It's a good time for me to take a break. I have vacation coming up in a few weeks. I'll set aside my mod work and come back to it after I've reconsidered my own advice. At stake, is whether I push on with the huge scope I've dreamed up or if I gut the story line to get it down to a reasonable size. We'll see where things are at after I return from the summer holiday....

    As always, thank you for your continued support of my efforts and I'll keep you informed of my progress. I'll be back in 4-6 weeks with an update!

  5. Lexx

    Lexx Lived Through the Heat Death

    Apr 24, 2005
    It's better to keep it as small as possible in the beginning. In worst case, don't do any side quest related stuff. Only care about the main quest. Also, nobody will hurt you if the locations only have 1 side quest instead of 10. At the end of the day, you can always add more content once the main part is done.
  6. Robert B

    Robert B Kitty's got some rads!

    May 29, 2017
    Hey Everyone! That's more good advice from @Lexx above (and I've been trying hard to follow it). Now that I'm back from holiday, I have been diligently working on map updates and my main quest line. In doing so, I've learned three things...

    #1 - The SAI block (Scenery Block 343) is critical to getting you critter AI to work without the sprites wandering off the screen on exterior map levels. Until now, I've been focusing on building my maps and have been a bit lazy. Even though I saw these blocks on existing maps, I'd been ignoring them. Big mistake. When you start adding critters to your exterior maps, the AI logic ignores the map boundaries. You need to place a box of these around your map so that you don't loose critters. I've also found these are helpful to keep critters (and Dude_Obj) from wandering through forest hexes in which I'd like to restrict movement.

    #2 - When you try to add more than 50 critters to a particular map level, the Fallout Mapper program begins to have problems. You can have issues selecting critters to edit and this means no assignment of scripts or group ID's. My recommendation is not to add more than 50 critters to a map level and avoid these problems.

    #3 - Play test your maps early and frequently... I've been doing more play testing lately and found it's easier to catch problems when I'm testing smaller increments in my development. It means I don't repeat the same error 20-30 times before realizing it (and need to redo hours of work).

    Anyway, I'm averaging 3-4 hours per map level just in creation of the map itself and putting in placeholder critters. That does not include dialog or scripts for doors, vendors, npc's, etc. (a task that I've been avoiding). I'd say it's pretty safe that you can use this as a guideline for creating large map levels. For my part, I've been creating maps that are absolutely the maximum possible size (without showing out of boundary black hexes).

    No specific progress updates in this post, except to say that I'm slowly progressing through map creation. I suppose I'll dive into more scripting and dialog as the weeks (months) progress. For now I'll just wish you all well and check back in another couple of weeks.
  7. Lexx

    Lexx Lived Through the Heat Death

    Apr 24, 2005
    If you have 50 critters in a map, you should reconsider what you are doing. This is a turn based game where you can start combat at any time... and nobody wants to wait this long.
  8. .Pixote.

    .Pixote. Venerable Relic of the Wastes

    Sep 14, 2009
    You might want to spend a bit more time designing and building a map, just tossing a few random buildings on the map won't be a very satisfying experience.

    My approach is the location has to be believable, people aren't stupid, they make best use of their surroundings to maximise their survival. Mixing very different building types can also be problematic, eg: adobe buildings and metal or brick buildings, the adobe style is more rural, while brick is more urban.

    Anyway I can't wait to see what you come up with...cheers.
  9. Robert B

    Robert B Kitty's got some rads!

    May 29, 2017
    @Lexx It's a massive map with 15 separate combat groups (mostly rats/pig rats). This is the initial quest for folks to generate some XP. The critters appear to be spaced out well so that it shouldn't be a problem (only 4-6 critters will engage in combat at any one time); but I'll rework the map if it doesn't work in play testing.

    @.Pixote. You're right. Most of what I've been building to date have been native villages and exterior maps. When I get to the city/dungeon builds; it may take me much longer.