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.
Eric S. Raymond [Thu, 5 Oct 2006 05:47:19 +0000 (05:47 +0000)]
Checkpoint Python version before trying to move to zero-origin indexing.
Eric S. Raymond [Thu, 5 Oct 2006 04:21:56 +0000 (04:21 +0000)]
Python IO queue appears to work.
Eric S. Raymond [Thu, 5 Oct 2006 03:38:44 +0000 (03:38 +0000)]
Python version did its first I/O.
Eric S. Raymond [Thu, 5 Oct 2006 02:30:35 +0000 (02:30 +0000)]
Python translation is syntactically correct. Now for the grotty
part...
Eric S. Raymond [Wed, 4 Oct 2006 22:35:53 +0000 (22:35 +0000)]
setup.py code added to Python translation.