History of all external releases -------------------------------- The version numbers may skip because they were only my own internal version numbers, those marked as Beta Test were kindly tested for me by Norbert Peter Feist on The Nut Factory BBS. Public Releases are those that were released into the public domain. This is the format for version strings: Major Revision . (Revision or Addition) [minor bug fix] V1.0 - (Beta Test) Fixed up the code a bit, added the message base, added disaster round, bank loans and communications check, fixed problems with players losing troops when the enemy had none. V1.1 - (Beta Test) Fixed up screen clearing codes, fixed some problems with multi-node/line BBS's. V1.2 - (Beta Test) Fixed up message editor so blank lines could be added, added new part so new players could read all the old news, another new part so that aliances could advertise. Personal couriers can be send to other players bearing gifts, and encrypted messages to avoid tapps. Also added line counter for large messages. Door wasn't cleaning up ram when it closed - fixed. Added 3 new message bases for alliance leaders. Fixed more probems with multinode. Fixed global messages. V1.22 - (Beta test) Added a file lock for multiline BBS's, Changed the data file structure again for amusement (and some later additions). Added hidden option 'V' on the buying screen for version numbers and information. Added more file checking routines, so that older data files won't be accidently used and so that MSE creates new files properly (data codes are only stored in the player data files, so don't use old team files !) V1.23 - (Public Release) Added optional text file for filelocks, Fixed problem with crash when trying to reply to private messages, added OS2 internal version numbers (wow!) Rewrote some of the flakey message funtions. Fixed problem with file staying locked after makeing new data files. Rewrote crypto() modules, and reduced datafile size. V1.25 - (Public Release) Prototyped the functions to ANSI, fixed up some typo errors, and problems with crashing. Program will load into fragmented memory now, as code has been split up more. Fixed problem where files would stay locked after initial creation. V1.26 - (Public Release) Added the train soldiers function, and the food stores function. Game now creates a text file when the game is won (only when the game is won, and the winner logs on and sees his congrats message), displaying info about the winner which is shown when new players login. The file created is called MSE:Winner.txt, so it can also be used to send messages to the new players... The version numbers are now stored in the header of the data-files (should have done that before !) so it knows exactley what files it's reading... V1.30 - (Beta Test) Whoops ! Game might crash if a message was replied to, Datafiles are not the same format, however you will have to delete the newsfile and start again, I decided to change to format to aid in scanning for dates. MSE now counts days since game started, mostly used for other purposes however, Added the 'Hall of Fame' file, so that all winners would be recorded, file is ASCII and can be displayed from outside the game, file is {doorspath}:{MSE-path}Hall_Fame.txt. Replaced the scores file, after seeing that some BBS's did use it to show the current scores. Fixed bug where player would loose all food when trying to sell. And fixed bug where planets wern't updating after sale. Put in some delays as some data was being displayed too fast. Fixed up the screen clearing codes (again).MSE will now restart the game itself, with the following rule - the winner must logon to MSE AFTER he has won before the game will be started new, As the winner won't know he has won until he has loged on anyway, this shouldn't be a problem. All the message and newsfiles are in a totally differant format, to solve a problem with not being read properly. They all have more robust data header to solve misread problems, and now hold more data. Added cargo ships (from the AREXX Space Empire), and view team option. Killed the file locking, as it seemed to be causing problems, instead mse open a new port 'MSE Port', and will check for this to see if MSE is active, this will also be used in future versions for similtaneous multi-line play. Added new 'hidden' option, will appear when a set function has been triggered, Thanks to Norbert for the idea !! V1.40 - (Beta Test) The previous version was not worth releasing, since the whole message bases were really fucked, it was impossible to reply to a message (I still don't know why), so I have completly rewritten the message support. A file will be created called Message.Data, which will contain all the infomation about a message and the data that was previously stored within the message. Messages will be saved as _Message.(number). Meaning that the messages will stay through out the game, so I'll get around to putting a function in to read old messages. So messages are not sent to players directley, but are instead dumped into a file, which is scanned through, and the relavent message number is picked out, this saves a LOT of time when sending global messages, as it does not have to be copied upto 50 times, or tapped messages, as it only needs to be copied once, with just another appendation to the data file. Don't fuck with the data file ! I have put checks in it, and if you don't know the codes it will restart the game !!, As another result of this, player news and game news will have a differant format as well, The player news will be stored with the other messages, but will be acessed at a differant time to messages. Game news will also use a similar system, as there were problems with the news dating. This is fixed now with the new message system. The delete rotines have been cleaned up dramaticly, so everything will be deleted now, plus most of the code has undergone a lot of optimizing, hopefully I will keep it around the 150K mark, and I am working on speeding it all up, at least disk access is now FAAAAST. All the message files are now close to straight ascii, and can be displayed if you wish. But as the news file is within the message base, you cannot display it. I haven't optimized the scan routines very much, in fact it resans the whole file on every call, I will get around to fixing this, but it shouldn't be a problem with a small message base. Since it is now posible, I have added an option to view old messages, dont think you can re-read transporter codes and couriers as they are filtered !!. V1.41 - (Public Release) Fixed bug with MSE not creating new data files properly. Added the read previous option, this only goes one message back at this stage, and to put it further would only make the program less usable. Moved a lot of shit around, and added a lot of new functions to clean up the code and put some speed where it needed it. V1.41a - (Public Release) Changed over to SAS 6.0, bloody hell it took some doing, but I changed all the code to ANSI, and picked up LOTS of little bugs in the comiling stage. Used lots of the new options to help the code along a bit, plus added some pretty ansi menus. I will try to have colour menus through out the whole game in the future. Fucked off the UNIX file functions I was using and went back to ANSI. Fixed a bug from KSE 101, that I only found out about when I saw KSE 101d. Mainly, it was that you couldn't take governing planets off someone, so it was impossible to kill them if thats all they had remaining. V1.42 - (Public Release) Redid the dataread/write functions (again), moved some code around to make it easier for myself. Added CheckSums to the datafiles.. Don't screw with the data dude ! If the game reads a dud data block, it will just halt the functions, and skip the rest. General cleapup, fixed up some memory trashing (again). Fixed up the transporter section, previusly you could only send one type of thing per convoy, you may now send all the differant things in one convoy. The Message.data file is now called _Message.data, this was just to tidy up the directory when I looked at it. Messages will now be saved in _Message.text. Fixed bug where MSE would lock if it's directory did not exist. V1.50 - (Alpha Test) Tidied up all the code, fixed up all checks fo null pointers plus various other small bugs. Speed up random access files. Added Key file checking, see the ReadMe for more info. Redesigned internal message workings, added team ratings. All messages are working perfectly (Watch this space), as far as I can see. Added the option of using a bbs' inbuilt full screen message editor. Your bbs MUST be 100% Paragon compliant to use this. Use the agrument at program startup - "PARAGON", this allows MSE to use the editor that may be called through the standard Paragon port commands. Message data is dumped in ram for fast scanning if you want it, it makes game play faster, but it will slow down a bit a the start and end of the game for copying. To activate this, use the argument "FAST". There have been a few new menus put in to tidy things up and the storage functions have added safety checks now. All time delays removed and where neccasary have been replaced with "..press any key to continue...", increasing the speed of the game. Added several new ansi screens and put auto centering headers to the menus. V1.50a- (Beta Test) MSE would sometimes crash when writing files, added code to flush old files and removed files from register variables. Scanned through code with CodeProbe and removed some bugs found. V1.50b- (Beta Test) Crashing seems to be something to do with the Scores.txt or MSE.data, these files are now only written once when the door has shut down control. Extra checks have been added for lost carriers. V1.50c- (Beta Test) Temporary files weren't removed when user quitted from logon menu. Shrunk the code a bit more, and sped things up a bit. Changed the way the data files are written. * All MSE releases will now have the program MSE.master included, and all update information will be in this file. Make sure that you use the same version of MSE and MSE.master !! V1.51 - (Beta Test) All data files and message handling are now controlled through an external program making MSE 100% compatable for multi-line / simitaneous playing !! Option added for Excelsior bbs to switch hotkeys to prompts. V1.51a- (Beta Test) Whoops !, Opened all the ports with CreatMsgPort() and tried closing them with DeletePort(), that explains some of the random crashes. MSE.master now correctly frees up the message structure memory. Added MAXS option, and implemented key files fully. MSE is faster to exit now, as all filling is handled after the BBS has been told to return. V1.51b- (Beta Test) Key file was being cleared when a new game was started. Max purchase was incorrect in buying menu. MSE.master is now a background task, and is now safer. MSE will remove MSE.master from the system if it has locked up and run a new one. V1.51c- (Beta Test) Added support for the use of environment files, as Excelsior did not allow arguments to be passed. Removed some redundant code from MSE.master, and made it safer again. Some minor bugs fixed in MSE. V1.51d- (Public Release) Accidently fucked all the pointers to NULL after requesting the address !! Now it doesn't screw with them, and leaves ExecBase alone !! V2.00 - (Public Release) Finally made it to the last release !! Heres the list of changes: Using #pragmas instead of stubs for ROM calls to speed things up. MSE will use the IEEE library to save space and make use of FPUs. Fixed up bug with sending single char to Excelsior, and optimized the sendchar() function to buffer strings. Fixed up more ANSIs for Excelsior mode. Fixed bug where Paragon message were incorrectly added to the data and not the text. Fixed up problem with looping when a player has no food left, or when stores are empty. Enhanced the 'List Members' and 'Other Alliance Members' lists. Tidied up the 'press any key' so that it is used when needed and skipped when not needed. Fixed endless loop when receiving Transporters. Fixed up Mungwall hits. Fixed errors encontered with run away date codes. Wait()'s on correct signals now. Increased stack sizes to avoid overflows during battle. Doesn't require fast ram anymore. Redesigned MSE.Control and Message interface. Fixed 'X' teams in alliance listings. Fixed crash on 'View Alliance Members'. Gives and takes planets correctly after a battle. Uses correct variables for PSN menus. No longer crashes on receipt of an encrytped message. Added player Xit option. Added checking for inactive players, removed after an absense of > 5 days. Fixed zero scores on bribed spying. Fixed bad pointer addresses when in sentinal battle. V2.10 - (Public Release) Still not the last release I guess 8^).. Players could never be totally killed from the game, fixed. Infintie loop sometimes when taking planets, fixed. V2.20 - (Public Release) Invite Super games are internal now with new option 'INVITE' When teams were disolved, or player expelled, each player would get all the forces they put in, even though those forces may have been killed off, fixed to give all players back a fair percentage of what they put in, and still surviving. Fixed problem where a player could have no planets left after being wiped out by civil war, ut keep on playing. V2.30 - (Public Release) Mostly lots of little ansi fixes, and adjusted some things to make the game last a bit longer. Really too many little things to list, but this should be the last release now, though I will still fix any other little things up from time to time.. V2.35 - (Public Release) Oh well, still more bugs.. Fixed bad random number generator Harmony and morale levels could 'clock' and go negative suddenly Could crash if an alliance was disbanded with no members. Removed player restriction for unregistered versions.