Eric S. Raymond [Tue, 17 Oct 2006 17:31:52 +0000 (17:31 +0000)]
Equates for display character names made sense when the values were
FORTRAN literals, but in Python it makes better readability to just let the
name of the display character be itself. Search and replace is easy.
Eric S. Raymond [Tue, 17 Oct 2006 15:09:45 +0000 (15:09 +0000)]
Imprive documentation, fix a typo, add the hacking guide.
Eric S. Raymond [Tue, 17 Oct 2006 14:08:28 +0000 (14:08 +0000)]
Fix an embarassing last-minute bug.
Eric S. Raymond [Mon, 16 Oct 2006 14:55:36 +0000 (14:55 +0000)]
A bit more code compression.
Eric S. Raymond [Mon, 16 Oct 2006 13:41:47 +0000 (13:41 +0000)]
More trig refactoring.
Eric S. Raymond [Mon, 16 Oct 2006 12:39:48 +0000 (12:39 +0000)]
Prevent torpedo wraparound.
Eric S. Raymond [Mon, 16 Oct 2006 02:19:40 +0000 (02:19 +0000)]
Clean up and refactor the movement code, fix minor translation bugs.
Eric S. Raymond [Fri, 13 Oct 2006 17:10:08 +0000 (17:10 +0000)]
Make it possible to reset a course object.
Eric S. Raymond [Fri, 13 Oct 2006 16:54:21 +0000 (16:54 +0000)]
Subsume more trig into the course object.
Eric S. Raymond [Fri, 13 Oct 2006 12:08:36 +0000 (12:08 +0000)]
Navigation is finally subsumed by the course object.
Eric S. Raymond [Fri, 13 Oct 2006 11:39:37 +0000 (11:39 +0000)]
More vector-arithmetic abstraction.
Eric S. Raymond [Fri, 13 Oct 2006 10:32:35 +0000 (10:32 +0000)]
Compute final member in course object.
Eric S. Raymond [Fri, 13 Oct 2006 10:23:21 +0000 (10:23 +0000)]
Fix two minor bugs.
Eric S. Raymond [Fri, 13 Oct 2006 02:50:47 +0000 (02:50 +0000)]
More course-object refactoring.
Eric S. Raymond [Fri, 13 Oct 2006 02:46:16 +0000 (02:46 +0000)]
Another step in subsuming navigation into the course object.
Eric S. Raymond [Thu, 12 Oct 2006 22:15:05 +0000 (22:15 +0000)]
Restore some display behavior.
Eric S. Raymond [Thu, 12 Oct 2006 22:04:27 +0000 (22:04 +0000)]
Another refactoring step.
Eric S. Raymond [Thu, 12 Oct 2006 21:48:48 +0000 (21:48 +0000)]
Simplify the torpedo code preparatory to refactoring it.
Eric S. Raymond [Thu, 12 Oct 2006 13:43:31 +0000 (13:43 +0000)]
Another step towards pulling all trig into the course object.
Eric S. Raymond [Thu, 12 Oct 2006 13:27:13 +0000 (13:27 +0000)]
Eliminate traces of some macros.
Eric S. Raymond [Thu, 12 Oct 2006 12:01:04 +0000 (12:01 +0000)]
Torpedo-track computation now done by course object.
Eric S. Raymond [Thu, 12 Oct 2006 10:37:21 +0000 (10:37 +0000)]
Probe navigation is now handled completely by the course object.
Eric S. Raymond [Wed, 11 Oct 2006 21:22:07 +0000 (21:22 +0000)]
Fix the probe bug.
Eric S. Raymond [Wed, 11 Oct 2006 13:04:38 +0000 (13:04 +0000)]
New probe logic mostly looks good, but there is a glitch in the
initial course computation.
This change introduces a course object.
This (someday) should unify all the messy trigonometry in one place.
Eric S. Raymond [Wed, 11 Oct 2006 11:17:48 +0000 (11:17 +0000)]
Fix typo noticed while working on the Python translation.
Eric S. Raymond [Wed, 11 Oct 2006 00:52:25 +0000 (00:52 +0000)]
Simplify the probe code.
Eric S. Raymond [Tue, 10 Oct 2006 21:07:40 +0000 (21:07 +0000)]
Invert the sense of a test for better readability.
Eric S. Raymond [Tue, 10 Oct 2006 20:08:59 +0000 (20:08 +0000)]
Lexer fixes for Stas.
Eric S. Raymond [Tue, 10 Oct 2006 17:46:03 +0000 (17:46 +0000)]
Minor fixes to curses interface.
Stas Sergeev [Tue, 10 Oct 2006 17:09:07 +0000 (17:09 +0000)]
Enabled the gettext support.
However:
1. The path is hardcoded and suits *my* configuration.
2. It is still unclear how to build the translation catalog without automake.
How can I solve these?
Eric S. Raymond [Tue, 10 Oct 2006 16:14:13 +0000 (16:14 +0000)]
Get rid of some magic numbers, simplify the scanner.
Eric S. Raymond [Tue, 10 Oct 2006 15:38:45 +0000 (15:38 +0000)]
Debug the logic for deep-space probes.
Eric S. Raymond [Tue, 10 Oct 2006 10:03:10 +0000 (10:03 +0000)]
Better wrapup on replays.
Eric S. Raymond [Tue, 10 Oct 2006 09:41:28 +0000 (09:41 +0000)]
Now the Python version works, let's deep-six this.
...so nobody else is tempted to go through the pain...
Eric S. Raymond [Tue, 10 Oct 2006 09:38:53 +0000 (09:38 +0000)]
Remove some scaffolding, comments that were guidance for code now working.
Eric S. Raymond [Tue, 10 Oct 2006 09:25:53 +0000 (09:25 +0000)]
Put a timestamp an email in lofiles. Add the replay debugging script.
And a tiny tweak to io.c.
Eric S. Raymond [Tue, 10 Oct 2006 08:51:43 +0000 (08:51 +0000)]
Fix range error in Tholian movement.
Eric S. Raymond [Tue, 10 Oct 2006 08:38:33 +0000 (08:38 +0000)]
Unscramble some of the trig-formula mess.
Eric S. Raymond [Tue, 10 Oct 2006 08:20:59 +0000 (08:20 +0000)]
Fix listCommands.
Eric S. Raymond [Tue, 10 Oct 2006 07:57:49 +0000 (07:57 +0000)]
curses interface seems to work!
Eric S. Raymond [Tue, 10 Oct 2006 07:41:34 +0000 (07:41 +0000)]
Atexit was screwing up the Python curses bindings. Weird.
Eric S. Raymond [Tue, 10 Oct 2006 07:22:57 +0000 (07:22 +0000)]
Don't try to do color initialization in Python yet, direct C
translation of that code doesn't work.
Eric S. Raymond [Tue, 10 Oct 2006 07:06:46 +0000 (07:06 +0000)]
Time to make curses work.
Eric S. Raymond [Tue, 10 Oct 2006 06:21:55 +0000 (06:21 +0000)]
Simplify tac movement, handle more torpedo input cases correctly.
Eric S. Raymond [Tue, 10 Oct 2006 02:18:09 +0000 (02:18 +0000)]
Get rid of a duplicative variable.
Eric S. Raymond [Tue, 10 Oct 2006 02:09:10 +0000 (02:09 +0000)]
Make some constants into strings for better debugging messages.
Eric S. Raymond [Tue, 10 Oct 2006 01:56:31 +0000 (01:56 +0000)]
Fix translation error that prevented commanders from being hit by torps.
Eric S. Raymond [Tue, 10 Oct 2006 01:14:36 +0000 (01:14 +0000)]
More nomenclature fixes.
Eric S. Raymond [Mon, 9 Oct 2006 23:14:11 +0000 (23:14 +0000)]
Two sources of vast confusion in reading the C code are these:
(1) the code uses x and y as though they're Cartesian coordinate
variables, but (inconsistently) swaps them around so that "x"
variables usually refer to the y direction in the output charts.
(2) Coordinates in the y direction (whether they are x variables or
not) increase *downwards* (charts are printed row zero first).
There is extremely ugly and confusing code in targetcheck() and
getcourse() where two opposite sets of conventions bump up against
each other.
As a first step, towards untangling this mess, we'll change the
nomenclature so that coordinate names refer to 'i' and 'j'
directions, as in matrix indices (i vertical, increasing downwards,
and j horizontal, increasing rightwards). This patch does that for
the coord class members, also fixing two small bugs that turned
up during testing.
More steps will be necessary...
Eric S. Raymond [Mon, 9 Oct 2006 22:51:25 +0000 (22:51 +0000)]
Fix another basic error.
Eric S. Raymond [Mon, 9 Oct 2006 22:40:21 +0000 (22:40 +0000)]
Fix a rather basic error in vector comparisons.
Eric S. Raymond [Mon, 9 Oct 2006 21:53:56 +0000 (21:53 +0000)]
This version of the Python does both navigation and torps correctly.
...but the use of trig and variables is unbelievably snarled (legacy from
the C and FORTRAN code).
Eric S. Raymond [Mon, 9 Oct 2006 20:59:19 +0000 (20:59 +0000)]
Aha! Found the lurking bug in the Python torpedo code. Now to clean up.
Eric S. Raymond [Mon, 9 Oct 2006 18:53:42 +0000 (18:53 +0000)]
Get rid of a special case in the old code.
Eric S. Raymond [Mon, 9 Oct 2006 18:33:55 +0000 (18:33 +0000)]
Dead-code removal.
Stas Sergeev [Mon, 9 Oct 2006 17:41:34 +0000 (17:41 +0000)]
announce doesnt ask for enter
Eric S. Raymond [Mon, 9 Oct 2006 13:31:30 +0000 (13:31 +0000)]
More code slimming in the Python version.
Eric S. Raymond [Mon, 9 Oct 2006 12:55:21 +0000 (12:55 +0000)]
Python logic for torpedo-salvo input seems to work now.
There's still a glitch in the course computation.
Eric S. Raymond [Mon, 9 Oct 2006 00:51:34 +0000 (00:51 +0000)]
Add -s option to Python version. Fix more minor bugs.
Eric S. Raymond [Mon, 9 Oct 2006 00:14:35 +0000 (00:14 +0000)]
Small port fixes.
Eric S. Raymond [Sun, 8 Oct 2006 22:28:32 +0000 (22:28 +0000)]
More refactoring of the Python version.
Eric S. Raymond [Sun, 8 Oct 2006 22:18:25 +0000 (22:18 +0000)]
Use Python list operations to get rid of a lot of FORTRANish for loops.
Eric S. Raymond [Sun, 8 Oct 2006 21:01:59 +0000 (21:01 +0000)]
Found the bad distance/direction calculation.
Eric S. Raymond [Sun, 8 Oct 2006 20:36:51 +0000 (20:36 +0000)]
Various minor port fixes.
Eric S. Raymond [Sun, 8 Oct 2006 09:00:09 +0000 (09:00 +0000)]
Use object methods for vector calculations.
Eric S. Raymond [Sun, 8 Oct 2006 07:59:35 +0000 (07:59 +0000)]
Torpedo logic still isn't right, but we're getting there.
Eric S. Raymond [Sun, 8 Oct 2006 06:35:38 +0000 (06:35 +0000)]
Simplify some corner cases in the scanner code.
Eric S. Raymond [Sun, 8 Oct 2006 06:19:28 +0000 (06:19 +0000)]
Refactored lexical analyzer into a scanner class.
This will make it easier to replace the parser, when we need to do that.
Eric S. Raymond [Sun, 8 Oct 2006 05:49:11 +0000 (05:49 +0000)]
Oops -- fix a typo that broke the scanner.
Eric S. Raymond [Sun, 8 Oct 2006 02:56:00 +0000 (02:56 +0000)]
Fix Tholian motion.
Eric S. Raymond [Sat, 7 Oct 2006 06:40:00 +0000 (06:40 +0000)]
Clear the new quadeant properly, otherwise we end up with ghost features.
Eric S. Raymond [Sat, 7 Oct 2006 04:47:29 +0000 (04:47 +0000)]
Stub out the color support in the Python version.
Direct translation of the C doesn't work. Also fix an argument-type bug.
Eric S. Raymond [Sat, 7 Oct 2006 04:33:02 +0000 (04:33 +0000)]
Preparation for making curses interface work in Python.
Eric S. Raymond [Fri, 6 Oct 2006 20:15:41 +0000 (20:15 +0000)]
Ready to start making the curses interface work.
Eric S. Raymond [Fri, 6 Oct 2006 19:00:27 +0000 (19:00 +0000)]
More code slimming.
Eric S. Raymond [Fri, 6 Oct 2006 18:48:32 +0000 (18:48 +0000)]
Refactor code to refer to enemy objects.
Eric S. Raymond [Fri, 6 Oct 2006 18:14:08 +0000 (18:14 +0000)]
Got through an entire game with this Python version.
Eric S. Raymond [Fri, 6 Oct 2006 15:21:33 +0000 (15:21 +0000)]
Get rid of the nasty old bubble sort in the Python version.
Eric S. Raymond [Fri, 6 Oct 2006 15:08:13 +0000 (15:08 +0000)]
Collect three parallel arrays into an 'enemy' structure.
Eric S. Raymond [Fri, 6 Oct 2006 14:07:40 +0000 (14:07 +0000)]
Fixed bug in Python version's reporting of critical hits.
Eric S. Raymond [Fri, 6 Oct 2006 13:47:54 +0000 (13:47 +0000)]
More port fixes for the Python version.
Eric S. Raymond [Fri, 6 Oct 2006 12:30:27 +0000 (12:30 +0000)]
Bug fix, keyboard interrupt handling, automatic LRSCAN before CHART.
Eric S. Raymond [Fri, 6 Oct 2006 12:01:30 +0000 (12:01 +0000)]
Properly stringify enum value of "sector". Move the command prompt
back to the right place.
Eric S. Raymond [Fri, 6 Oct 2006 11:00:25 +0000 (11:00 +0000)]
Replay facility now captures command-line options.
Eric S. Raymond [Fri, 6 Oct 2006 10:54:05 +0000 (10:54 +0000)]
Replay works now, at least in plain-tty mode
Eric S. Raymond [Fri, 6 Oct 2006 10:21:23 +0000 (10:21 +0000)]
Correct off-by-one bug in placement of Tholian.
Eric S. Raymond [Fri, 6 Oct 2006 09:46:40 +0000 (09:46 +0000)]
Arrange for logging of random-number-generator calls.
Eric S. Raymond [Fri, 6 Oct 2006 03:25:24 +0000 (03:25 +0000)]
Drop out the BSD visual-scan code.
Eric S. Raymond [Fri, 6 Oct 2006 02:16:43 +0000 (02:16 +0000)]
Minor bug fixes, preparatory to finding out why replay doesn't work.
Eric S. Raymond [Fri, 6 Oct 2006 01:19:43 +0000 (01:19 +0000)]
Avoid divide-by-zero error.
Eric S. Raymond [Thu, 5 Oct 2006 22:41:05 +0000 (22:41 +0000)]
Many small port fixes in the Python.
Get rid of game.ithere, we just test whether there is a valid
coordinate object for the Tholian instead. Also, use deepcopy to make
snapshots.
Eric S. Raymond [Thu, 5 Oct 2006 12:42:37 +0000 (12:42 +0000)]
OK, warp flight between quadrants works now.
Eric S. Raymond [Thu, 5 Oct 2006 12:32:27 +0000 (12:32 +0000)]
Various minor fixes to movement code.
...and avoidance of errors raised by indexing with a float.
Eric S. Raymond [Thu, 5 Oct 2006 11:35:24 +0000 (11:35 +0000)]
Local navigation now works in Python.
Flight to other quadrants doesn't yet. (The bugs all appear to be
consequences of moving to zero indexing.)
Eric S. Raymond [Thu, 5 Oct 2006 10:16:15 +0000 (10:16 +0000)]
Get rid of some dead code.
Eric S. Raymond [Thu, 5 Oct 2006 09:53:06 +0000 (09:53 +0000)]
Planet pointer mess cleaned up. planets now works.
Eric S. Raymond [Thu, 5 Oct 2006 09:12:06 +0000 (09:12 +0000)]
status command is almost working. Must resolve the mess with planet pointers.
Eric S. Raymond [Thu, 5 Oct 2006 08:58:28 +0000 (08:58 +0000)]
lrscan, scescan, and chart are working in the Python version.
Eric S. Raymond [Thu, 5 Oct 2006 08:36:54 +0000 (08:36 +0000)]
Eliminate iqhere global in order to get rid of spurious Python warning.
Where we need this flag, we now deduce it from the location of the Thing.
Eric S. Raymond [Thu, 5 Oct 2006 06:56:51 +0000 (06:56 +0000)]
0-origin code gets through initialization OK.