UFO/XCOM saved game editors BASE.EXE documentation Program requirements: * 286 computer running DOS 3.0 or later (talk about crazy ... UFO needs a 386, so this should be redundant... :) ) * Memory - not sure how much, so call it 640K :) ;) This program is FREEWARE. NO warranties are made as to its suitability to any particular task, or to any limitations thereof. You may freely copy, distribute, etc. this program. You may NOT decompile, reverse engineer, etc. the code of this program. Should you have any suggestions, send them to me and I'll try to incorporate them into the next version. The source code is not likely to be released, but I might be persuaded... :) Having got that out of the way... This program is intended to be used as an editor of the BASE.DAT portion of the UFO saved game. It should be fairly straightforward to use. If you need any help, F1 will bring up a (rather terse) help screen. Upon loading the program, you will be prompted to enter the saved game you wish to edit. If there is no saved game in that directory, you will be told as much. You should run this program whilst in the UFO directory, but the BASE.EXE file does not have to be in that directory - anywhere in the DOS path is fine. When typing in your choice, remember that typing "1" to "9" corresponds to that same saved game; typing "0" corresponds to saved game "10". The arrow keys will select the type of construction you wish to place (up/down) and which base you want to put it in (left/right). Press Enter to start positioning the structure. At this stage, there is *no* checking that you are placing the structure in a legal position, or even that you can place it there - it will be put there, and woe betide all construction underneath the new location... :) In all cases, except the HyperWave decoder, the facility will be placed fully built. The decoder, for some reason, will not work properly unless its construction is carried out "normally" (ie, at least one day.) Thus, it will need one day until it is fully constructed. The base display is text-based. Except for hangers, the name of the facility in a square is printed inside that square. Hangers are also printed in this manner, except that there are four squares printed: "Hanger (UL)", "Hanger (UR)", "Hanger (LL)", "Hanger(LR)". These mean the "Upper Left", "Upper Right", "Lower Left", and "Lower Right" squares, respectively. If you don't understand this, don't worry - it'll be clearer inside the program. If you want all your bases to be identical, you can easily copy one base to all the others. To perform this function, press "C" from the facilities editing screen. There is also mouse capability built into the program. If your mouse driver is installed, it will be sensed, and the mouse support activated automatically. To position an object, click on the building to be built, followed by the location on which to build. If you need to construct multiple buildings of the same type, there is no need to reselect the type of building - just click where you want it to go. When positioning hangers, click on the location where the *top left* corner is to be placed. Note, however, that you cannot enter a new name using the mouse alone. (I didn't feel like printing the whole alphabet on screen... :) ) In the stores editor, mouse support is limited to selecting the type of stores to change. Again, you must type the new value on the keyboard. Editing the base stores ~~~~~~~~~~~~~~~~~~~~~~~ This version now implements stores editing. Press "S" from the main editing screen, and you will be able to change the stores' contents to your heart's content. For all fields, except scientists and engineers, the maximum value is 65535; scientists and engineers can reach 255. A word of warning: As of January 1 1995, AARNet (Australian Academic Research Network) will be changing (read: increasing) its charges. Instead of charging a FLAT CONNECTION RATE, there will be a PER MEGABYTE CHARGE. "So what?" you might ask. Well, AARNet is the route Monash University uses to link to the InterNet. It is still unclear as to how this will affect the students' access to the InterNet, but FTP access is almost certainly "out"; mail *might* be cut; etc. As a result, you can *try* the InterNet addresses during '95, but you might get a bounced message. My course will *definitely* finish by the end of 1999, and, possibly (if I choose not to do honours) in 1998. Therefore, even if the mail addresses hold through 1995, they will *not* work during 2000 or the 21st century. (Yes, I do hold to the idea that 2001 is the first year of the 21st century...:). To summarise this paragraph: The mail addresses might not work after this (1994) year. If they do, they might not during 1999. They definitely will not during and after 2000. Despite the above comments, I would love to hear from you if you have any comments, criticisms, suggestions, etc. My InterNet email addresses, together with their pros and cons, are: sjlam1@mfs01.cc.monash.edu.au (less space for incoming mail; read more often) lamble@yoyo.cc.monash.edu.au (more likely to get through to me; I only usually use this account for FTP'ing, though. In other words, expect a response from the mfs account.) Revision History ~~~~~~~~~~~~~~~~ Version 1.0 ~~~~~~~~~~~ Initial release. Version 1.01 ~~~~~~~~~~~~ Not generally released to those who had version 1.0 (2.0 was well under way...). Fixed a bug in saving - BASE.DAT would be left "as is", and the new file was named BASE.NEW, owing to a mistake in coding the renaming routines. :( Version 2.0 ~~~~~~~~~~~ Not released - 2.01 was written within twelve hours. Introduced stores editing Introduced "duplicating" ability - the ability to copy an entire base structure, excluding stores and the name, to all other bases that have so far been constructed. Other problems from version 1.01 remain unfixed... Version 2.01 ~~~~~~~~~~~~ Modified the program so that only existing bases can be selected. Modified copying procedure to copy the stores as well. Can now specify the saved game to edit on the command line. Fixed the wrap-around problem with inserting a facility into a base - if the cursor was on the right-hand side of the screen and the right arror was pressed, or the cursor was on the bottom of the screen and the down arrow was pressed, the cursor would not be placed properly. Version 2.02 ~~~~~~~~~~~~ Fixed a bug in the stores - the number of given items in the stores would not appear in the correct location. Eg: where "Blaster launcher" is displayed, the number beside it would actually be for "Blaster bombs". Version 2.10 ~~~~~~~~~~~~ Added mouse support. Finally found (and fixed... :) ) the bug in copying bases. Why can't computers do what I mean, not what I say? :) :) :) In fixing the bug (version 2.02), I managed to introduce another...entering a new value for, say, "small launchers" would actually change the value for "stun bombs." When will I learn to test before I release? :) :) :) Version 2.11 ~~~~~~~~~~~~ One bug fix - in implementing mouse support, I also sought to reduce the screen flicker which occurred when placing an object in a base. In doing so, though, I forgot to fix the calls to edit the store, and get help - if you selected these with the keyboard, the screen would not look very pretty upon return. :) The mouse selection worked OK, though. This has been fixed. (I repeat my earlier statement about testing... :) ) Known version 2.11 problems ~~~~~~~~~~~~~~~~~~~~~~~~~~~ No checking that the new facility is connected (directly or indirectly) to the access lift. (related to #1) No checking that removing a facility does not remove the connection to the access lift for some other facility. Stores: How the (live) alien fields work is unknown. I suspect, however, that they are not used within the game, and live alien information is stored inside another file. All fields printed in grey, rather than white, are not entirely clear. I'm trying to figure it out...