X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=doc%2FHACKING;h=abb692a03c587f1713645034d9ac8aa82058e7cb;hb=HEAD;hp=1739465c1c6e3d60bf1b6f00d12506a26ad64261;hpb=f4aaa436b9fe5755c00f54501ff09cf6080b33df;p=super-star-trek.git diff --git a/doc/HACKING b/doc/HACKING index 1739465..e940439 100644 --- a/doc/HACKING +++ b/doc/HACKING @@ -40,11 +40,15 @@ Dave also says the Space Thingy should not be preserved across saved games, so you can't prove to others that you've seen it. He says it shouldn't fire back, either. It should do nothing except scream and disappear when hit by photon torpedos. It's OK that it may move -when attacked, but it didn't in the original. (Whether the Thingy -can fire back is now controlled by OPTION_THINGY and turned off if the -game type is "plain" or "almy". The no-save behavior has been restored.) +when attacked, but it didn't in the original. (The no-save behavior +has been restored.) -The Faerie Queen, black holes, and time warping were in the original. +Dave says the Faerie Queen, black holes, and time warping were in the +original. However, either he is misremembering about time warping or +the original implementation was lost during the FORTRAN-to-C +translation, as Stas Sergeev added a time-warping feature not +previiusly present in 2006. Tom Almy also claims to have added +timewarping! Here are Tom Almy's changes: @@ -56,7 +60,7 @@ however mine had some feature it didn't have. So I merged its features that I liked. I also took a peek at the DECUS version (a port, less sources, to the PDP-10), and some other variations. -1, Compared to the original UT version, I've changed the "help" +1. Compared to the original UT version, I've changed the "help" command to "call" and the "terminate" command to "quit" to better match user expectations. The DECUS version apparently made those changes as well as changing "freeze" to "save". However I like @@ -210,7 +214,8 @@ and added more: the LRSCAN command is no longer needed. (Controlled by OPTION_AUTOSCAN and turned off if game type is "plain" or "almy".) -10. I imported Tom Almy's SCORE command from his 2013 version. +10. I imported Tom Almy's SCORE, CAPTURE, and CLOAK command from his +2013 version. 11. I added color. @@ -231,7 +236,7 @@ coverage of the suite. Two things to do to the log before dropping it in the test directory: (a) Strip out all lines beginning with "#curses:" - these are for debugging -the curses interface and are not needed or regression testing; removing +the curses interface and are not needed for regression testing; removing them makes it easier to see the game commands. (b) Add a header comment line explaining what the log is a test for. @@ -297,3 +302,7 @@ clockface-to-radian conversions. For this reason, and others, the trig code is still a bit wacky and obscure. Modify with caution and test thoroughly. +Adding or remobing random() calls is very likely to break lots of +regression tests. If you have to add new one, wrap them in a +save/restore of the LCG state; there's an example of this around +the setup for the Space Thingy.