Eric S. Raymond [Wed, 4 Oct 2006 01:37:55 +0000 (01:37 +0000)]
More of Stas's notes about the time recomputation bug.
Eric S. Raymond [Tue, 3 Oct 2006 19:29:35 +0000 (19:29 +0000)]
Incorporated events.c into Python.
Eric S. Raymond [Tue, 3 Oct 2006 18:19:39 +0000 (18:19 +0000)]
Small cleanups discovered during Python translation.
Stas Sergeev [Tue, 3 Oct 2006 17:19:58 +0000 (17:19 +0000)]
Another rollup patch.
- fixed manual moving
- quick hack to avoid division by zero when calculating game.state.remtime
- fixed some problems with sensors() on ncurses
- small translation fixes
Eric S. Raymond [Tue, 3 Oct 2006 00:19:52 +0000 (00:19 +0000)]
battle.c incorporated into Python translation.
Stas Sergeev [Mon, 2 Oct 2006 19:03:33 +0000 (19:03 +0000)]
adjustments
Eric S. Raymond [Mon, 2 Oct 2006 17:17:04 +0000 (17:17 +0000)]
Eliminate uses of cramlc().
Stas Sergeev [Mon, 2 Oct 2006 17:16:19 +0000 (17:16 +0000)]
oops, revert ocasional change
Stas Sergeev [Mon, 2 Oct 2006 17:13:02 +0000 (17:13 +0000)]
Another rollup patch.
- Enabled more gcc warnings
- Fixed -Wundef warnings
- Fixes to inhabited-worlds code, the attempt to enslave the
uninhabited planet is no longer made.
- Replaced pause_game(true) with announce() and killed the pause_latch()
trick as it leaded to the lost scroll-pauses
- Fixed calculation of destroyed planets
- Made scan() locale-safe
- Translation updates
Gameplay changes:
- Removed the Romulans-guarding-inhabited-worlds behaviour that probably
came from bsd-trek. Frankly, I find it much more annoying than enjoying.
- Added the behaveour of transporter consuming the ship's energy - inspired
by Star Control 2's landing habit. If someone finds this too harsh -
feel free to remove, but I personally find that logical. (!OPTION_PLAIN)
Eric S. Raymond [Mon, 2 Oct 2006 14:47:33 +0000 (14:47 +0000)]
Python translation now includes ai.c.
Eric S. Raymond [Sat, 30 Sep 2006 09:00:49 +0000 (09:00 +0000)]
Get rid of some macros that block mechanical translation.
Eric S. Raymond [Fri, 29 Sep 2006 09:39:24 +0000 (09:39 +0000)]
Create blank objects in all arrays during Python game state initialization.
Eric S. Raymond [Fri, 29 Sep 2006 09:21:09 +0000 (09:21 +0000)]
Reset all structures for stupid literal translation of the game.
Eric S. Raymond [Fri, 29 Sep 2006 07:59:45 +0000 (07:59 +0000)]
Get rid of DESTROY macro.
Eric S. Raymond [Fri, 29 Sep 2006 07:41:43 +0000 (07:41 +0000)]
Get rid of the iterator macros I wrote.
They interfere with mechanical translation.
Eric S. Raymond [Thu, 28 Sep 2006 21:21:33 +0000 (21:21 +0000)]
Hack boxed xcomments so they're easier for a mechanical translator to recognize.
Eric S. Raymond [Thu, 28 Sep 2006 10:52:08 +0000 (10:52 +0000)]
Clean up ugly FORTRANISH names.
It's been years since C public names had a 6-character significance limit.
Eric S. Raymond [Thu, 28 Sep 2006 10:18:52 +0000 (10:18 +0000)]
More cleanup towards automated Python translation.
Eric S. Raymond [Thu, 28 Sep 2006 09:48:31 +0000 (09:48 +0000)]
More elimination of FORTAN-style if statements.
Eric S. Raymond [Thu, 28 Sep 2006 09:34:55 +0000 (09:34 +0000)]
Reset the translation, we're going to redo it with ctopy.
Eric S. Raymond [Thu, 28 Sep 2006 09:19:16 +0000 (09:19 +0000)]
Get rid of obnoxious visible "have we paused?" state.
This change shouldn't make any behavioral difference, but it
simplifies the call sequence and code of a couple of functions.
Eric S. Raymond [Thu, 28 Sep 2006 08:20:52 +0000 (08:20 +0000)]
Change some ugly and misleading names.
Eric S. Raymond [Thu, 28 Sep 2006 08:01:45 +0000 (08:01 +0000)]
Clean up nasty FORTRAN-style if statements.
E.g., with the body on the same line as the guard. They're bad style
and make the code hard to read, and I got fed up,
Eric S. Raymond [Wed, 27 Sep 2006 21:46:35 +0000 (21:46 +0000)]
Parallel cleanups in the C and scratch Python code.
Stas Sergeev [Wed, 27 Sep 2006 16:27:49 +0000 (16:27 +0000)]
bugfix in fry() and translation
Stas Sergeev [Tue, 26 Sep 2006 17:46:57 +0000 (17:46 +0000)]
better fix for is_valid()
Stas Sergeev [Tue, 26 Sep 2006 17:27:51 +0000 (17:27 +0000)]
Yet another rollup patch.
- proper localization of dreprt()
- fixed preport() which didn't work at all
- fixed a nasty bug in photon() which caused a misfired torpedo to proceed
- fixed a very nasty bug in is_valid()
- many translation fixes
Stas Sergeev [Mon, 25 Sep 2006 16:53:11 +0000 (16:53 +0000)]
few assorted adjustments and a fix for #8883
Stas Sergeev [Sun, 24 Sep 2006 14:20:15 +0000 (14:20 +0000)]
fix makehelp.py invocation
Eric S. Raymond [Sun, 24 Sep 2006 11:04:28 +0000 (11:04 +0000)]
Trial Python now incorporates ai.c
Stas Sergeev [Fri, 22 Sep 2006 17:09:23 +0000 (17:09 +0000)]
Another rollup patch.
- use ARRAY_SIZE
- cleaned up srscan()
- introduced a separate ncurses window for status
- removed completed TODO entries
- fixed SIGSEGV in tty mode when env LINES is undefined (always!)
- made "Please enter password" message visible
- made the above message to appear for OPTION_PLAIN instead of !OPTION_CURSES
- killed enqueue()
- localized status() (added helper prstat() )
- enabled gcc to check the format arguments, which uncovered a lot of
the real bugs!
- fixed the bugs uncovered by the gcc format checking (the last one in
ai.c is left for Eric :)
- fixed problem with skip(): it relied on "linecount", but "linecount"
doesn't increment when you enter the multiline answers, like, for example,
the torpedo courses. The fix works only in curses mode though - no idea
how to fix this for tty.
- localized prouts(), however, not very cleanly. Any help is appreciated,
see the added comments.
Eric S. Raymond [Fri, 22 Sep 2006 16:18:30 +0000 (16:18 +0000)]
Beginning of experimental Python translation.
The initial file is definitions corresponding to sst.h.
Eric S. Raymond [Fri, 22 Sep 2006 14:11:43 +0000 (14:11 +0000)]
Added appending on development timeline.
Eric S. Raymond [Fri, 22 Sep 2006 11:38:54 +0000 (11:38 +0000)]
Abstract away the operations involving a sentinel value for coordinates.
Besides making the code more readable, the sentinel may change someday
if we go zero-origin everywhere.
Eric S. Raymond [Thu, 21 Sep 2006 18:16:38 +0000 (18:16 +0000)]
Make the "crystals' member into an enumeration.
Also, add explanatory comments to the attack code. Remove some redundant
logic to push you out of dock on an attack.
Eric S. Raymond [Thu, 21 Sep 2006 10:47:26 +0000 (10:47 +0000)]
More applications of same().
Eric S. Raymond [Wed, 20 Sep 2006 21:18:05 +0000 (21:18 +0000)]
Get rid of obnoxious iattak global.
This was a kluge to prevent recursion through an infinit regress of
moves leading to exit attacks forcing moves, etc.
Eric S. Raymond [Wed, 20 Sep 2006 20:50:53 +0000 (20:50 +0000)]
On Stas Sergeev's suggestion, change where the logfile is written.
Stas Sergeev [Wed, 20 Sep 2006 19:00:34 +0000 (19:00 +0000)]
allow gcc to still do the bounds checking
Eric S. Raymond [Wed, 20 Sep 2006 18:10:28 +0000 (18:10 +0000)]
Clean up some boolean arguments.
Stas Sergeev [Wed, 20 Sep 2006 17:02:59 +0000 (17:02 +0000)]
and this gettextized in while I was resolving the rejects...
Stas Sergeev [Wed, 20 Sep 2006 16:51:13 +0000 (16:51 +0000)]
this gettextized by mistake
Stas Sergeev [Wed, 20 Sep 2006 16:42:35 +0000 (16:42 +0000)]
Rollup patch.
- completed the first pass on the gettextization and translation
- better (IMHO) fix for the initialization of the gettextized string arrays
- do not clearscreen on exit to leave the "Galaxy Bird" message visible
- implemented scroll-pausing for "help"
- fixed enqueue() which didn't always work
- added IHW to cramen()
Eric S. Raymond [Wed, 20 Sep 2006 16:29:48 +0000 (16:29 +0000)]
Incorporate BSD-Trek visual-scan code, just in case.
Eric S. Raymond [Wed, 20 Sep 2006 15:47:19 +0000 (15:47 +0000)]
Chase more booleans and enums.
Eric S. Raymond [Wed, 20 Sep 2006 09:45:17 +0000 (09:45 +0000)]
A bit of documentation swiped and edited from the BSD code.
Eric S. Raymond [Wed, 20 Sep 2006 08:55:41 +0000 (08:55 +0000)]
BSD-Trek-like critical hits with weighting.
Eric S. Raymond [Wed, 20 Sep 2006 06:25:57 +0000 (06:25 +0000)]
Replace more #defines with enums.
Eric S. Raymond [Wed, 20 Sep 2006 05:31:21 +0000 (05:31 +0000)]
Change the condition field from an uint with #defines to an enum.
Eric S. Raymond [Wed, 20 Sep 2006 05:18:07 +0000 (05:18 +0000)]
More boolean-chasing and coord applications.
Eric S. Raymond [Wed, 20 Sep 2006 04:35:23 +0000 (04:35 +0000)]
Still more application of coord type.
Eric S. Raymond [Wed, 20 Sep 2006 03:57:04 +0000 (03:57 +0000)]
More uses of distance() macro. Eliminate some magic numbers.
Eric S. Raymond [Wed, 20 Sep 2006 03:26:16 +0000 (03:26 +0000)]
More boolean cleanups. More consistent use of coord type
Anong other things, this allows us to write a distance() macro and get
rid of a lot of gnarly expressions.
Eric S. Raymond [Tue, 19 Sep 2006 23:56:55 +0000 (23:56 +0000)]
Clean up more booleans.
Eric S. Raymond [Tue, 19 Sep 2006 23:09:39 +0000 (23:09 +0000)]
Clean up the rather nasty logoc of snova(), and fix a minor navigation bug.
...(inability to select manual mode) introduced by a recent commit.
Eric S. Raymond [Tue, 19 Sep 2006 22:03:07 +0000 (22:03 +0000)]
More boolean cleanups and explanator comments.
Eric S. Raymond [Tue, 19 Sep 2006 21:30:15 +0000 (21:30 +0000)]
More type cleanup and explanatory comments.
Eric S. Raymond [Tue, 19 Sep 2006 21:00:29 +0000 (21:00 +0000)]
More type cleanup.
Eric S. Raymond [Tue, 19 Sep 2006 19:35:24 +0000 (19:35 +0000)]
More boolean cleanups.
Eric S. Raymond [Tue, 19 Sep 2006 19:20:43 +0000 (19:20 +0000)]
Avoid a nasty bug in planet-name display, and fix another boolean.
Eric S. Raymond [Tue, 19 Sep 2006 19:04:35 +0000 (19:04 +0000)]
More BSD features.
You can now lose if your entire crew dies in battle. When abandoning
ship in a game with inhabited worlds enabled, they must have one in
the quadrant to beam down to; otherwise they die in space and this
counts heavily against your score (BSD Trek had score adjustment as a
to-do). Docking at a starbase replenishes your crew.
Stas Sergeev [Tue, 19 Sep 2006 18:44:07 +0000 (18:44 +0000)]
more gettextizing and translating
Eric S. Raymond [Tue, 19 Sep 2006 18:13:35 +0000 (18:13 +0000)]
Abstract out damage checks.
Implement BSD-Trek check in abandon-ship routine that transporter is
operational and an inhabited planet is nearby before crew can beam
down, otherwise they die in space. (But this isn't counted against
your score yet.)
Eric S. Raymond [Tue, 19 Sep 2006 10:14:04 +0000 (10:14 +0000)]
Klingon ship births are working.
Eric S. Raymond [Tue, 19 Sep 2006 09:19:41 +0000 (09:19 +0000)]
More booleans cleanup.
Eric S. Raymond [Tue, 19 Sep 2006 08:56:52 +0000 (08:56 +0000)]
FDISTR/FENSLV/FREPRO sequence looks like it's working.
Eric S. Raymond [Tue, 19 Sep 2006 08:28:19 +0000 (08:28 +0000)]
Fix two minor bugs, one in the shove code and one in debugme().
Eric S. Raymond [Tue, 19 Sep 2006 08:05:42 +0000 (08:05 +0000)]
Improvements to the testing machinery, including the replay option.
Eric S. Raymond [Tue, 19 Sep 2006 08:01:27 +0000 (08:01 +0000)]
Improve the world list.
Eric S. Raymond [Tue, 19 Sep 2006 06:27:07 +0000 (06:27 +0000)]
More int-to-boolean cleanup. Make the FDISTR event work.
Eric S. Raymond [Mon, 18 Sep 2006 19:38:35 +0000 (19:38 +0000)]
Checkpoint with several changes, committed so Stas can play with debug code.
1. Change planet member of quadrant struct back to integer so it can be saved.
2. Add code for torpedoing an inhabited world. Score drops by 400 when you
do that, it's the only outcome worse than being killed.
3. Events are now structures and can hold quadrant coordinates.
4. EXPERIMENTAL tag is gone, code for BSD-Trek events is in good enough
shape to test now.
5. User input is always logged.
6. SEED command is implemented.
Eric S. Raymond [Mon, 18 Sep 2006 08:34:16 +0000 (08:34 +0000)]
Input capture to 'sst-input.log' now happens automatically when idebug is on.
Eric S. Raymond [Mon, 18 Sep 2006 08:18:50 +0000 (08:18 +0000)]
New debug-mode support.
Get rid of DEBUG, the instrumentation is cheap and we want to cut down
on the possibilities for unanticipated logic changes due to
configuration vagaries. Take the debugging bit out of the game
structure. Start on the logger.
Eric S. Raymond [Mon, 18 Sep 2006 08:05:56 +0000 (08:05 +0000)]
Revert an incorrect bool type change.
Eric S. Raymond [Mon, 18 Sep 2006 05:16:40 +0000 (05:16 +0000)]
More type cleanup.
Use stdbool facility from C99 so code checkers can do type-consistency
analysis.
Eric S. Raymond [Mon, 18 Sep 2006 03:49:33 +0000 (03:49 +0000)]
Introduce 'coord' data structure, an (x,y) tuple.
Use it consistently in both data structures and arguments of functions
that handle coordinates.
The main benefit of this is that lots of conditional expressions become
significantly less gnarly. We get a bit of reduction in the line count
by cutting down on pairs of coordinate assignments.
Eric S. Raymond [Sun, 17 Sep 2006 23:55:46 +0000 (23:55 +0000)]
Abstract all references to the future array (outside of events.c) away.
This has two benefits:
1. New code is easier to read.
2. It prepares us for implementing stateful events with a different
underlying data structure. We'll need this for some BSD-Trek features.
Eric S. Raymond [Sun, 17 Sep 2006 22:43:51 +0000 (22:43 +0000)]
Other half of eta-check fix.
Eric S. Raymond [Sun, 17 Sep 2006 21:51:30 +0000 (21:51 +0000)]
Fix what look like a longstanding bug in ETA computation.
Stas Sergeev [Sun, 17 Sep 2006 09:01:35 +0000 (09:01 +0000)]
remove autogenerated files
Eric S. Raymond [Sun, 17 Sep 2006 05:31:52 +0000 (05:31 +0000)]
Complete the change to BSD license.
Eric S. Raymond [Sun, 17 Sep 2006 05:14:52 +0000 (05:14 +0000)]
First checkin of experimental event code for the BSDTrek-style Klingons.
E.g the attacks on inhabited systems. Currently #ifdefed out; the
only operative change is the newkling() function and a bit of
data-structure cleanup.
Eric S. Raymond [Sun, 17 Sep 2006 00:52:17 +0000 (00:52 +0000)]
Fix a minor bug in -t mode display of the starchart.
Eric S. Raymond [Sun, 17 Sep 2006 00:48:26 +0000 (00:48 +0000)]
Added more history.
Stas Sergeev [Sat, 16 Sep 2006 18:47:55 +0000 (18:47 +0000)]
gettextize and some rough translations
Eric S. Raymond [Fri, 15 Sep 2006 22:47:09 +0000 (22:47 +0000)]
Make inhabited worlds display as '@'. Document this.
Turn off generation of inhabited worlds in plain and almy versions.
Eric S. Raymond [Fri, 15 Sep 2006 21:14:45 +0000 (21:14 +0000)]
Fixed some bug items from the TO-DO list.
* Bring the online help in sync with our commands changes
* Find out why the online help contains the escape sequences like ~@~T (Eric?)
The first was due to bugs in some macro definitions in sst.c, now fixed.
The second was from escape sequences generated into sst.doc by xmlto
for left-and right-quotes, dashes, and no-break spaces; that is fixed
by an additional translation step in makehelp.py.
xmlto still generates line-drawing characters for the tables in the
LRSCAN and REPORT help items, but those look OK on an xterm in text
mode and their help items are suppressed (along with their commands) in
curses mode.
This is not a completely satisfactory solution, but it will do until a
design change makes those help items visible again.
Eric S. Raymond [Fri, 15 Sep 2006 20:58:05 +0000 (20:58 +0000)]
Fixes the bug that was directing help lookups incorrectly.
Renames the old "help()" function to "mayday()" to match the new command.
Fixes display bugs in curses due to generation of wacky quotes, nonbreak
spaces, and dashes. Does not fix problems with forms-drawing characters.
Eric S. Raymond [Fri, 15 Sep 2006 20:12:00 +0000 (20:12 +0000)]
Fix an extremely obscure bug in the help generation.
It was triggered by non-breaking space in xmlto output.
Eric S. Raymond [Fri, 15 Sep 2006 18:51:40 +0000 (18:51 +0000)]
% has to be mapped to %% when producing sst.doc
...otherwise printf does unhelpful things.
Eric S. Raymond [Fri, 15 Sep 2006 18:41:16 +0000 (18:41 +0000)]
Add inhabited planets.
Presently this is just color, as they have no dilithium. In the
future, this will become the basis for BSD-Trek like code that allows
Klingons to attack and enslave inhabited worlds in order to expand
their fleet. (This feature is controlled by OPTION_WORLDS).
Eric S. Raymond [Fri, 15 Sep 2006 09:35:11 +0000 (09:35 +0000)]
Clean up after macro elimination.
Eric S. Raymond [Fri, 15 Sep 2006 07:43:44 +0000 (07:43 +0000)]
More typo fixes.
Eric S. Raymond [Fri, 15 Sep 2006 01:55:24 +0000 (01:55 +0000)]
Temporarily make this standalone.
Eric S. Raymond [Thu, 14 Sep 2006 23:02:52 +0000 (23:02 +0000)]
Document the problems with xio.c.
Eric S. Raymond [Thu, 14 Sep 2006 21:46:37 +0000 (21:46 +0000)]
Typo fixes.
Eric S. Raymond [Thu, 14 Sep 2006 20:58:49 +0000 (20:58 +0000)]
Various declaration cleanups.
Eric S. Raymond [Thu, 14 Sep 2006 20:42:27 +0000 (20:42 +0000)]
Eliminate nasty macro holdovers.
All game structure members are now referred to by full name. Also, one
more minor step in making xio work.
Eric S. Raymond [Thu, 14 Sep 2006 18:25:06 +0000 (18:25 +0000)]
Text append looks like it should work, but it core-dumps.
Eric S. Raymond [Thu, 14 Sep 2006 18:01:40 +0000 (18:01 +0000)]
More settings into fallback.