Commit graph

858 commits

Author SHA1 Message Date
Eric House
4cf595e939 on commandline, only allow assignment of per-player dicts to local
players.  I don't know what happens when a player's position is
changed when its game is a guest and the hosts rearranges players.
Which is why on Android I'm moving to allowing per-player dicts only
on local-only games.
2012-10-14 19:10:42 -07:00
Eric House
25a1ee451b resolve links if required to get the actual name of the dict 2012-10-12 20:50:34 -07:00
Eric House
e90c5ee94f pass index of resigning player into util_notifyGameOver. Not yet
passed into java.
2012-10-09 05:31:12 -07:00
Eric House
e64ecfb78d implement resign on top of existing endGame logic, adding "quitter" as
new param passed to remote and changing final score formatting and
menu items to match.  Still need to show old menu on android in case
where game has already ended.
2012-10-07 12:47:06 -07:00
Eric House
4e0c7923d9 fix bug with clean target introduced when BUILD_DIR was introduced 2012-10-07 12:14:47 -07:00
Eric House
968340f665 Fix release-build warnings that new compiler flags. 2012-10-07 11:43:50 -07:00
Eric House
fd9b9f85e2 make util_hiliteCell conditional, and remove from android where it
wasn't used anyway.
2012-10-05 18:51:32 -07:00
Eric House
6ddd4a61c1 fix compile errors (mostly unused variables) found by gcc on latest
Ubuntu (12.04).
2012-09-25 07:28:02 -07:00
Eric House
53774eb807 Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-09-24 20:08:14 -07:00
Eric House
140c982d41 merge from android_branch 2012-09-24 07:39:44 -07:00
Eric House
bdc114dc46 add phony targets to check, on debian-based systems, whether required
packages are installed and to install them.
2012-09-24 07:26:37 -07:00
Eric House
4fa5c61e14 add option to build in a separate directory, for e.g. case where source files
are on ro filesystem.
2012-09-17 06:48:53 -07:00
Eric House
a6bed2706d include, commented out, the parameter that makes things fall apart. I
think the protocol needs work to survive devices failing to save
state.  Better to work on making sure they always save.
2012-09-11 20:45:03 -07:00
Eric House
761f93dd7e use new mem_stream_make_sized 2012-09-11 19:07:00 -07:00
Eric House
75474e1891 Add option to pretend save failed a random pct of time. Point it to
test fix for problem on Android, but right now turning this on breaks
networking.
2012-09-11 07:26:17 -07:00
Eric House
ad4231289f fix --max-devs and resigns begin allowed when only one game 2012-09-11 07:24:51 -07:00
Eric House
0ccc2331b5 address bug where message was getting ACK'd by a device that failed to
save what it had ACK'd leaving the game permanently broken.  Do that
by adding a new method game_saveSucceeded() called after the client
claims to have committed bytes returned by game_writeToStream() to
disk.  In that method comms updates the value it'll use in subseqent
ACKs.
2012-09-10 07:31:45 -07:00
Eric House
1608f0a8f9 handle missing error messages 2012-09-09 15:49:17 -07:00
Eric House
9340db36c1 disallow opening android DBs when not configured correctly. 2012-09-09 15:48:57 -07:00
Eric House
8fbc9ca343 fix to compile in release mode 2012-09-09 09:22:00 -07:00
Eric House
95a7b14a3a transmit dict's md5sum along with name in initial message from host to
guest.  On guest, pass that sum into client code along with names so
the appropriate tests can be done and corrections taken.
2012-09-08 20:23:48 -07:00
Eric House
9a72f252ed Merge branch 'android_branch' into android_dictname 2012-09-08 13:20:59 -07:00
Eric House
14a77ff7f1 factor out common code 2012-09-08 07:45:18 -07:00
Eric House
5fa9b60846 add md5Sum field to dict struct, and on linux load it if present,
otherwise calculate it.  In DEBUG builds always calculate and assert
they match.
2012-09-07 20:34:06 -07:00
Eric House
270a19f3aa Revert "first of a set of changes to communicate to clients dictionary being"
This reverts commit b7a0f1489b, which I didn't mean to check in on this branch.
2012-09-03 21:34:51 -07:00
Eric House
ea4d805d5f first of a set of changes to communicate to clients dictionary being
used by server.  Clients need to care if e.g. the server's disallowing
phonies based on its dict.  Can only be sent if client is of latest
version.  In that case, common code calls into new util function.  In
future changes, BoardActivity's implemention of the callback will need
to check if the server's choice of dict is available, and if not offer
to download it.  Once it's available, will want to install it.
2012-09-03 21:33:46 -07:00
Eric House
b7a0f1489b first of a set of changes to communicate to clients dictionary being
used by server.  Clients need to care if e.g. the server's disallowing
phonies based on its dict.  Can only be sent if client is of latest
version.  In that case, common code calls into new util function.  In
future changes, BoardActivity's implemention of the callback will need
to check if the server's choice of dict is available, and if not offer
to download it.  Once it's available, will want to install it.
2012-09-03 21:29:21 -07:00
Eric House
4cb848582e fix edge cases in prefix matching 2012-08-28 07:35:11 -07:00
Eric House
145317426d Fix prefix matching to accept letters constituting the first part of a
digraph tile when at the end of a prefix so that e.g. GORIL in Catalan
will list GORIL·LA (rather than nothing since GORIL, ending with the L
tile, is not a prefix.)
2012-08-27 21:50:09 -07:00
Eric House
79be03ac66 splite lines to get under 80 columns; no code change 2012-08-27 07:06:40 -07:00
Eric House
9d174601b9 add field, and getter, for new dict header description string, and
load it in linux client.
2012-08-26 20:58:28 -07:00
Eric House
b29df8512a add null-terminated note to dawg header and modify linux client to
accept it if present.  Android client will successfully ignore it and
will need to be modified to capture and display it if present.  Idea's
to display information about copyright, source, etc. of wordlists.
2012-08-25 10:20:52 -07:00
Eric House
a86ab69aec don't store argv element in game data structure where it gets freed. 2012-08-22 07:35:18 -07:00
Eric House
13d359cb39 turn on endgame BONUSALL feature for linux client too 2012-08-13 06:44:46 -07:00
Eric House
c98bbe2b9a use setsockopt to limit read() block time and so to prevent linux
version from being unkillable when relay crashes at the wrong time.
2012-08-13 06:44:16 -07:00
Eric House
c49408d7e9 fix warnings compiling in release mode 2012-08-12 19:37:47 -07:00
Eric House
ec0702d584 initialize buffer that common code will pass to strcat. 2012-08-10 21:31:01 -07:00
Eric House
464696566d get rid of NODE_CAN_4. Not change to post-compiled code 2012-08-01 20:29:15 -07:00
Eric House
d25916ae5f protect sqlite code with compile-time flag so easier to disable. 2012-07-29 08:37:08 -07:00
Eric House
08e5fbdcc2 add ability to open game in sqlite3 DB from an Android phone. It's
read-only now: changes are not saved.  But it works!
2012-07-26 20:44:33 -07:00
Eric House
0c030360bf fix compile warning 2012-07-26 20:42:25 -07:00
Eric House
9b0436d1ee Make rem string measure function return boolean to indicate rect will
be invisible rather than setting width and height to 0.  No real
change beyond simplifying/speeding platform code.
2012-07-15 09:30:27 -07:00
Eric House
bd70a1dd7d improve text in remaining tiles dialog, and always show the tiles for
all trays rather than excluding those in current player's tray.
2012-07-09 21:44:29 -07:00
Eric House
f1c5ebeb31 don't hide REM tiles square when drops to 0 2012-07-09 21:43:35 -07:00
Eric House
d234646fb2 fix broken compile 2012-07-09 21:17:01 -07:00
Eric House
b9b58bd0a5 enable tray tap undo 2012-06-29 06:52:49 -07:00
Eric House
2fc2a60842 create alternate scoreboard draw flow, disabled by compile-time flag,
that does layout and draw in a single pass and with more information
so platform has more responsibilty for dealing with space constraints
and can, I hope, do a better job.  There's no change until the flag is
turned on.  Works for GTK with flag on, but is stubbed out for ncurses.
2012-06-26 07:20:09 -07:00
Eric House
405cb23023 fix bug where current player's scoreboard would disappear if other
players' names were too long by giving all a the same proportion of
what they request and passing in the percent given in case draw
implementation wants to use it as a cue to truncate.
2012-06-15 06:26:40 -07:00
Eric House
42f2612e67 turn on HASH_STREAM to match Android 2012-05-30 06:51:26 -07:00
Eric House
b343034cc2 add ability to pass params only to new version of app so that test of
upgrade from old to new needn't skip test of new features.
2012-05-28 11:04:39 -07:00
Eric House
e36635944e fix to make two-device games much more common than four-device ones 2012-05-27 19:05:27 -07:00
Eric House
0b1a9a67fe add param to server_handleUndo to prevent it from undoing all moves in
robot-vs-robot game, which is the wrong thing to do during a test
simulating play.
2012-05-24 22:25:30 -07:00
Eric House
5309da9845 add --undo-pct option that passes through to curses client 2012-05-24 22:17:10 -07:00
Eric House
cd89885cd2 add new periodic (one-second) timer, and commandline option that sets
what percent of the times that timer fires will result in a move being
undone.  Will be used to interject random out-of-order undos into
games played for testing.  (Currently the tests fail when this is
enabled; I need to fix that.)
2012-05-23 19:58:03 -07:00
Eric House
60e1d50f43 add stream_copyBits, and use it to hash the move stack -- commented
out via conditional compile as it still doesn't work in all cases.
2012-05-22 19:24:54 -07:00
Eric House
d1869a233c fix so non-debug build builds 2012-05-22 19:18:04 -07:00
Eric House
3a54aa0ebc add util_informUndo() that gets called, and puts up a dialog, after
remote device has performed an undo on a committed turn.
2012-05-14 07:01:02 -07:00
Eric House
61453b8720 center gtk_ask window on parent window rather than on screen so can
tell which instance it belongs to
2012-05-14 06:58:54 -07:00
Eric House
2996af17ce fix crash when trade happens while --show-other is on 2012-05-09 18:20:51 -07:00
Eric House
f7c49a6620 remove shift: --one-per doesn't take a param 2012-05-08 06:15:06 -07:00
Eric House
64199c4e64 Merge branch 'android_branch' into android_bt 2012-05-05 11:08:03 -07:00
Eric House
c2d8b17747 add --sort-tiles and fix confict between param name in code and in usage() 2012-05-05 10:55:35 -07:00
Eric House
44a6653166 add passthrough of params present in gtk but not curses 2012-05-05 09:24:41 -07:00
Eric House
d59b19514b Merge branch 'android_branch' into android_bt 2012-05-03 21:44:35 -07:00
Eric House
7afa4f26db use the new --trade-pct flag 2012-05-03 19:00:56 -07:00
Eric House
09f9038cff add option to have robot choose to trade tiles a configurable percent
of the time.  Meant to increase automated test coverage of trades.
2012-05-02 20:14:42 -07:00
Eric House
de965350c4 turn on feature that allows version of remote device to be deduced and
included in stream -- so that new move stack hash can be included when
possible.
2012-05-01 07:59:22 -07:00
Eric House
416a1054a7 Merge branch 'android_ack' into android_bt
Conflicts:
	xwords4/common/comms.c
	xwords4/common/comtypes.h
2012-04-13 20:57:35 -07:00
Eric House
f22d9530b1 track what's been ack'd, and add method to ack what hasn't been. 2012-04-13 20:21:59 -07:00
Eric House
cd8889f90e Merge branch 'android_branch' into android_bt
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgDelegate.java
	xwords4/linux/Makefile
2012-03-12 07:04:06 -07:00
Eric House
2a728ce4b0 turn off debug flag that's started crashing the gtk app (presumably
due to an upgrade to a stricter version of glib)
2012-03-11 15:06:57 -07:00
Eric House
e145a04111 add missing variable assigment 2012-03-09 22:11:51 -08:00
Eric House
0755a9e781 add new util function that gets called when a game is opened to inform
it if any players are missing.  Idea's to allow for non-relay devices
the invitation opportunity that comes when a game connects to the
relay and learns that no other games have joined its room.
2012-02-09 05:19:03 -08:00
Eric House
79a897b428 fix assert (but still leaking) 2012-02-09 05:16:32 -08:00
Eric House
6bfd6e74e6 Merge branch 'android_branch' into android_bt 2012-01-26 06:24:18 -08:00
Eric House
af26ebfff9 fix usage hint 2012-01-26 05:40:22 -08:00
Eric House
0934f83106 add gameID to params passed to comms' sendproc, including passing
through to java layer.
2012-01-25 18:27:37 -08:00
Eric House
923d6a24bd use libuuid to prep BT UUID, now a string instead of an array of bytes
for ease of use from java.  Since libbluetooth stupidly and
unrepentantly redefines uuid_t, add a new file/function to call
libuuid without having to pull its definitions into the bt code.  This
code compiles but is completely untested: I don't quite remember how
to play games via BT on Linux and at any rate will need an always-on
listener like the one I'm adding to the Android client.
2012-01-19 18:52:33 -08:00
Eric House
bd35f8363f cast enum to int inside switch to avoid new compiler error 2012-01-11 18:43:51 -08:00
Andy2
2a34cd1e05 remove second param from server_do() -- it doesn't work anyway. 2011-12-21 18:45:05 -08:00
eehouse@eehouse.org
14bddb0e45 Merge branch 'android_branch' into send_in_background 2011-12-15 18:46:24 -08:00
Eric House
888b4f6701 fix undeclared variable. 2011-12-15 18:45:22 -08:00
Eric House
af7398ce20 fix undeclared variable. 2011-12-15 18:36:47 -08:00
Andy2
d6ce11b084 fix to compile with DEBUG off 2011-12-14 18:17:52 -08:00
Andy2
17edc79aaf Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/XWApp.java
2011-12-06 19:56:10 -08:00
Andy2
b0470d5276 add new preference that when set prevents calculation and drawing of
crosshairs.
2011-12-06 18:17:55 -08:00
eehouse@eehouse.org
e1e8516e1b Merge branch 'android_branch' into send_in_background 2011-12-02 19:04:12 -08:00
Andy2
52d02f04dd pass tile value into drawCell(). Java code doesn't use it yet, but I
want to play with drawing cells tray-tile-style when they're big
enough.
2011-12-02 18:58:52 -08:00
Eric House
964d2dfb0b allow, by default, more than one-player-per-device, but require that
roomnames be unique to eliminate risk of devices not matching up
correctly.
2011-12-02 18:55:20 -08:00
Andy2
08063d9444 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/NetUtils.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/XWApp.java
2011-12-01 21:18:37 -08:00
Andy2
fc00102384 don't leak/fail to install zoom-out button when chat enabled 2011-12-01 21:09:37 -08:00
Andy2
85fdb950bb init board so deeper scrolling possible 2011-12-01 21:04:18 -08:00
Eric House
6691c0713c Merge remote branch 'origin/android_branch' into android_branch 2011-12-01 20:16:15 -08:00
Eric House
0065f5078e add variable controlling odds of "upgrading" -- which still needs tweaking. 2011-12-01 20:16:09 -08:00
Eric House
1e48a8d615 Merge remote branch 'origin/android_branch' into android_branch
Conflicts:
	xwords4/common/model.c
2011-12-01 20:12:27 -08:00
Eric House
32f1dfa5da configure by passing params rather than setting ENV variables 2011-11-30 21:01:11 -08:00
Eric House
c39487e0cc add ability to start out with mix of old and new versions and have old
upgrade to new at random times.
2011-11-29 20:51:19 -08:00
Eric House
c1e420f726 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/relay/rq.c
2011-11-29 06:45:32 -08:00
Eric House
c8b868c243 Separate app from params. No change in behavior (though restart of
existing games is now broken), but this sets up testing mid-game
upgrade.
2011-11-29 06:43:16 -08:00
Eric House
c6e994abef use $RANDOM rather than $SEED -- still repeatable, but avoids relay
problems when devices have same game seed.
2011-11-28 18:53:40 -08:00
Eric House
1b864b5527 Add backtrace function. May only work on Linux but still very useful. 2011-11-28 18:12:56 -08:00
Eric House
384a41ed5b add ability to specify seed and vary board-size 2011-11-25 18:03:51 -08:00
eehouse@eehouse.org
93a7d15a5e Merge remote branch 'origin/send_in_background' into send_in_background 2011-11-23 17:57:54 -08:00
Andy2
d37424ad7f Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/linux/linuxutl.h
2011-11-21 22:18:52 -08:00
Andy2
f32f7a8b19 Don't behave badly in presence of empty dict: word count should be 0
and sanity test should pass.
2011-11-21 18:07:08 -08:00
Eric House
9115b344fb use a hash of lists rather than a single list to store pending
background messages to fix assertion failure when more than two
devices are playing: messages must be sent grouped by relayID.
2011-11-21 17:57:38 -08:00
Eric House
b00327aa8b fix to work for NDEVS > 2. 2011-11-21 17:35:08 -08:00
Eric House
a0a8a816a4 make number of devices configurable 2011-11-21 10:09:29 -08:00
Andy2
cc0105e14c add param to dict_countWords in which it accumulates counts per word
length.  Shouldn't hurt speed too much if null passed.
2011-11-18 08:15:21 -08:00
Andy2
598be8b404 MAX_COLS -> MAX_COLS_DICT for dict-related stuff (since dicts are
staying with fewer words for now.)
2011-11-18 07:56:02 -08:00
Andy2
4760ceda5a Merge branch 'android_branch' into android_browsedict
Conflicts:
	xwords4/android/XWords4/jni/anddict.c
2011-11-17 20:55:02 -08:00
Eric House
55d23c9502 various improvements, including allowing to specify seed to enhance
reproducibility, copying xwrelay.log into directory with game logs
when they don't finish for easier analysis.
2011-11-17 19:58:08 -08:00
Eric House
8a51d5f3e4 fix race condition that was breaking tests: when one device sends two
messages they must be handled by the relay in order.  So modify linux
client to build a single packet of all messages sent instead of
letting rq sent each on a separate socket.  The relay would give the
sockets to different threads and sometimes the wrong one won.  Will
need to make sure the android code's doing the same thing (it appears
to be), or perhaps make the coalescing code common so I only debug it
once.
2011-11-17 19:56:36 -08:00
Andy2
210c59ef9b move bonus square values into model: add API to set an array, and API
to query model for values.  Now everybody else queries new model API
rather than client via util_getSquareBonus(), model uses its internal
values if present otherwise falls back to util_getSquareBonus(), and
internalizes the array as part of the game.  Now it should be easier
to have different bonus patterns and to have them exchanged as part of
network game init.
2011-11-16 19:01:11 -08:00
Andy2
bdb8e6f03c fix several crashers that prevented network games from working when
MAX_COLS was larger than 16.  In order that old-style messages on
relay be readable by new-style code on device, modified server.c's
protocol to include stream version.  But: unless I come up with a
better way of doing this all devices will have to be upgraded at the
same time: old won't be able to read the new format as it's done here.
2011-11-15 06:13:25 -08:00
Andy2
379e5f1d96 use actual rather than max possible board dimensions to apportion
space, fixing crashes when max upped to 32.  Will still fail as actual
size approaches that number.
2011-11-14 20:18:09 -08:00
Andy2
86d5778ec3 remove 16x16 limitation on board size, replacing with 32x32. Change
is enabled by a compile-time flag so Android needn't follow yet.
2011-11-14 18:21:41 -08:00
Andy2
2492e7cfc5 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/linux/cursesmain.c
2011-11-13 17:10:46 -08:00
Eric House
d6fecaa3d3 don't crash when dict is empty file 2011-11-13 17:06:57 -08:00
Andy2
dddec50f1d Merge branch 'android_branch' into android_browsedict
Conflicts:
	xwords4/android/XWords4/jni/Android.mk
	xwords4/linux/Makefile
	xwords4/linux/linuxmain.c
2011-11-10 19:22:57 -08:00
Eric House
5be5e9fdeb cleanup script output 2011-11-10 18:39:35 -08:00
eehouse@eehouse.org
9f22b11f81 Merge remote branch 'origin/android_branch' into android_branch 2011-11-10 06:54:42 -08:00
Andy2
00f743409a script for reproducing problem with relay games that show up randomly. 2011-11-10 06:51:30 -08:00
Andy2
d479b2b979 use timeout rather than idle. Sometimes (due to bug?) curses app is
too busy ever to fire idle proc.
2011-11-10 06:51:05 -08:00
Eric House
36c267ad88 Merge remote branch 'origin/android_branch' into android_branch 2011-11-09 06:52:32 -08:00
Eric House
268f018140 add dict sanity check that will, I hope, catch corrupt dicts. 2011-11-09 06:51:12 -08:00
eehouse@eehouse.org
ffd6a42c1e Merge remote branch 'origin/android_branch' into android_branch 2011-11-08 21:12:47 -08:00
Eric House
c591182d6c Modify linux bonus square code to work with board data that's half the
size.  Toward a board small enough to be transmitted as part of
network game initialization.
2011-11-08 21:11:06 -08:00
Andy2
956fe350ba remove changed param -- mmap's the default now. 2011-11-07 18:19:12 -08:00
Andy2
4b5a06fe20 test code tweaks 2011-11-05 06:14:46 -07:00
Eric House
adb9473a87 Merge branch 'android_branch' into android_browsedict
Conflicts:
	xwords4/common/dictiter.c
	xwords4/linux/linuxmain.c
2011-11-03 21:32:04 -07:00
Eric House
a2319a8073 experimental additions, mostly compile-time disable-able, so prune
dict by wordlen.
2011-11-03 21:25:51 -07:00
Andy2
1de9f806e9 test dict_countWords() 2011-11-03 06:19:07 -07:00
Andy2
4f29f51253 turn dict iter feature on for linux for good 2011-11-03 06:18:15 -07:00
Andy2
5c995af38c stop changing formats between internal and external structs
(iterators); use internal format all the time for speed.  Update linux
test code for new API.
2011-11-02 18:32:00 -07:00
Andy2
ab4ccb1a22 use realloc for testing 2011-11-02 04:39:12 -07:00
Andy2
0d4404d43b add dict_getStartsWith(), and code to test it. Lots of cleanup and
bugfixing of dictiter code as well.
2011-10-31 21:05:34 -07:00
Andy2
69b1b4da27 break dict iteration stuff out into new files. No code change
otherwise.
2011-10-31 18:30:55 -07:00
eehouse@eehouse.org
916d817ef2 Merge remote branch 'origin/android_branch' into android_branch 2011-10-31 07:02:30 -07:00
Andy2
dc58d123d5 combine params into single struct 2011-10-31 06:34:21 -07:00
Eric House
491c9d06d6 reverse sense of option to mmap dicts by default 2011-10-29 20:31:47 -07:00
Andy2
8d228ae190 turn on face-up tile picking for Android (though there's no prefs UI
to enable it for a game yet).  In common code, break pick tile utils
method in two, one for blank and the other for tray tiles.  In java,
implement dialog for picking the tiles.  Works, though is a bit clumsy
to have the dialog come and go after every pick.  Better would be a
dialog that stays up and accumulates picks -- but it'd have to know to
reduce the set of tile choices as letters are chosen.  This'll do for
now.
2011-10-28 22:15:56 -07:00
Eric House
71450b02b3 use indexing (and add binary search) to double speed of getNthWord 2011-10-28 20:27:16 -07:00
Eric House
ff89ffb168 add missing backup button to fully test tile picking 2011-10-28 20:23:59 -07:00
Andy2
b62fe13c97 move dict iterator test into separate function and add test for
dict_getNthWord().  Still ifdef'd out.
2011-10-25 06:48:59 -07:00
Andy2
ac214236c4 add code to walk dict backwards as well, and test code that
succesfully walks huge dicts in both directions turning out the same
list of words either way.  Still compile-time disabled.
2011-10-24 18:27:16 -07:00
Andy2
7c7cd82e0a add code to iterate over words in a dict. Works on Linux (iterating
forward only) but disabled at compile time.  Idea's to have a dict
browser.  There was some simple refactoring in common code Android
uses, and that tests fine.
2011-10-21 18:51:33 -07:00
Andy2
4eee7f8aa7 Pass selected tiles into new util function, and from there into java
world, so confirming query can include them.
2011-10-19 18:34:26 -07:00
Andy2
f41d3c27e6 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/common/server.c
2011-10-19 06:23:16 -07:00
Andy2
b31e829414 Remove file-format differences between debug and non-debug versions.
Fix curses to compile non-debug.
2011-10-18 18:52:37 -07:00
eehouse@eehouse.org
b8adbd94c1 Merge branch 'android_branch' into send_in_background 2011-10-18 06:47:38 -07:00
Andy2
b02e0eb9cf actually list words: makes a better test. 2011-10-17 06:47:49 -07:00
eehouse@eehouse.org
5afb0ae145 Merge branch 'android_branch' into send_in_background 2011-10-14 22:34:29 -07:00
Andy2
6793742f0f remove option to list all words played in a single lookup dialog, and
supporting code in the jni/common C.
2011-10-14 22:32:30 -07:00
Andy2
0e6b4d749f When pen held on committed tile on board, cons up list of all words
played that include that tile and pass to new util_cellSquareHeld()
method.  In java implementation of that method, use existing lookup
activity code to display list of words.  Enabled on the C side by a
compile-time flag in case it has problems.  Right now the time spent
saving a game before launching the lookup activity, and reloading it
after, is pretty apparent, but that's in emulator which is slow.
2011-10-13 19:14:08 -07:00
Andy2
0dfa69b1b2 implement pen timer with timeout, not idle. 2011-10-11 19:38:26 -07:00
Andy2
febf32040e don't kill xwords; it'll exit when it's done 2011-10-07 18:51:27 -07:00
eehouse@eehouse.org
471a9d988d Merge branch 'android_branch' into send_in_background 2011-10-05 07:10:52 -07:00
Andy2
dc20b04a4c remove unused param (on the C/jni side) 2011-10-04 18:54:53 -07:00
Andy2
3ec97d5c07 Turn "Turn done" into "Pass" when the pending score is 0. To do that
I had to pass the score into draw_trayBegin since
draw_drawPendingScore() isn't called until the first tile's placed.
Note: as long as I'm messinng with this menuitem it should be disabled
when it's not the player's turn.
2011-10-04 18:48:33 -07:00
eehouse@eehouse.org
82615f409b Merge branch 'android_branch' into send_in_background 2011-10-04 06:49:19 -07:00
Andy2
77b9fa11a5 improving lookup words experience: replace
util_userQuery(QUERY_ROBOT_MOVE) with new util_informMove(), into
which the number of words formed and the words themselves are passed.
The process of consing up the score explanation was already passing
over the model, so storing the words is very little effort, and will
save a call back into the model where the user actually wants to do
the lookup.
2011-10-02 16:21:09 -07:00
Andy2
38adeb9160 improve script to be more patient but exit after there stop being
messages -- which usually means the games finished.  With this and
previous changes the background stuff works most of the time.  Now to
debug why it's not all of the time.
2011-09-30 18:22:25 -07:00
Andy2
dee826c6b1 hide script log directories 2011-09-30 18:20:41 -07:00
Andy2
22382b3a19 reduce logging some more 2011-09-30 18:11:08 -07:00
Andy2
9bc36cd431 not an error when wait fails 2011-09-30 06:51:48 -07:00
Andy2
2af4888098 unlink socket file before trying to bind to it 2011-09-30 06:51:24 -07:00
eehouse@eehouse.org
554e497593 Merge branch 'send_in_background' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into send_in_background 2011-09-30 06:39:23 -07:00
Andy2
c992c65015 changes to support automated testing of background messages sends: new
param gives name of Unix domain socket to be used to accept connection
that passes in messages from relay and receives messages to be sent
back.  Works once but needs debugging....
2011-09-30 06:32:21 -07:00
Andy2
c952ebd8e6 cleanup 2011-09-30 06:29:14 -07:00
Andy2
9c586efb02 new script for testing this branch's changes: replying to
messages delivered in the background.
2011-09-30 05:43:24 -07:00
Andy2
4a49db5c2a initialize variable 2011-09-30 05:42:44 -07:00
Andy2
8e0e8d911e fix compile errors 2011-09-26 18:12:16 -07:00
Eric House
26ba812aff cleanup 2011-09-22 17:31:57 -07:00
Eric House
f0c3e2c5f0 Merge branch 'android_branch' into send_in_background 2011-09-22 17:22:01 -07:00
Andy2
35a0a3a291 passing pool into word-listing code a mistake as it put tiles back
when undoing and so the pool grew each time.  Fix, and remove server
API as it's unneeded.
2011-09-22 06:41:48 -07:00
Andy2
92614370ce Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/common/comms.c
2011-09-20 06:21:54 -07:00
Andy2
11d44ba72a use glib mainloop by default 2011-09-20 06:14:11 -07:00
Andy2
7e0252713c changes to use glib main loop were incomplete, didn't include timers.
Fix that.  Now discon_ok2.sh test works with the USE_GLIBLOOP turned
on.
2011-09-19 18:28:19 -07:00
Andy2
c2e2bdf3c5 listen on stdin always -- not sure how the condition got added -- and
don't register for OUTbound events when listening -- stdin gets one
and I don't want to sign up to handle it.
2011-09-19 17:56:20 -07:00
Andy2
9eacdb3856 add server_listWordsPlayed, and implement via function in model.c that
uses existing stack and undo features to run a WordNotifierInfo over
some number of scoring passes to gather the words seen.  Seems to work
as tested from gtk version.  Now need to try from android....
2011-09-18 17:20:01 -07:00
Eric House
84931f34ff Merge branch 'android_branch' into send_in_background 2011-09-07 21:44:36 -07:00
Andy2
da475347a5 get rid of unused constants 2011-09-02 18:36:26 -07:00
Andy2
2d2f3e23fd change signature of util_playerScoreHeld(): pass player num rather
than formatted text. Client code can use new
model_getPlayersLastScore() or whatever else it wants to build text to
show the user.
2011-09-02 18:36:03 -07:00
Andy2
dadf41ad2e add "cancel trade" menu item 2011-09-02 06:38:30 -07:00
Andy2
c2150bc9ed get rid of util_setInTrade() 2011-09-02 06:14:29 -07:00
eehouse@eehouse.org
b6e5327b1a Merge branch 'android_branch' into send_in_background 2011-08-31 06:46:42 -07:00
Eric House
c01981bc8f Make miniwindow stuff compile-time optional. The goal's to use native
features where they look better or are easier to manage, e.g. Toasts
and dialogs on Android.
2011-08-29 20:36:01 -07:00
Eric House
3b719f54de add compile-time option to use glib main loop (instead of select())
with ncurses.  The goals to make it easier to include watch on pipes
for incoming messages to better model Android -- and to be a bit more
modern.  Works for one run of test script but needs more testing to be
turned on.
2011-08-29 20:24:15 -07:00
Andy2
eb00984563 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GameUtils.java
2011-08-20 12:44:17 -07:00
Eric House
c2c673e932 improve testing of proxy delete by saving up a number of relayIDs and
sending with multiple -d flags to rq.
2011-08-16 19:44:37 -07:00
Andy2
dfab747504 make server_do() take a new param to allow caller to call it until
there's nothing more to do (without the assumption it's driven from an
event queue.)
2011-08-16 19:28:59 -07:00
Eric House
cbfdf992bd add compile-time option to allow passing game seed from commandline.
This should allow testing relay changes to deal better with duplicate
seeds.
2011-07-31 22:23:46 -07:00
Eric House
47da43a581 use new param to turn on mmap 2011-07-18 18:08:31 -07:00
Eric House
4093e1c947 add option to switch between mmap and malloc for dict runtime access. 2011-07-18 18:07:15 -07:00
Andy2
c482df300b better value for RESIGN_RATIO 2011-07-15 18:24:26 -07:00
Andy2
d81458c34c use nmap -- as test case for doing same in jni 2011-07-15 18:24:08 -07:00
Eric House
febb640049 add name of remote player to notification that remote player moved.
And remove a few dead strings.
2011-07-15 18:13:55 -07:00
Andy2
1686f3d9a8 make --skip-confirm do what it says, and include it in test script. 2011-07-12 07:13:58 -07:00
Eric House
abf60e027d fix pattern to pick the right hostid. 2011-07-06 20:02:51 -07:00
Andy2
4789bac85e add new mode that only launches games after the relay says there's a
message for them.  This is to mimic a common way games are played on
Android and to ensure that there are no points where that style of
play hangs because no device in the game will be "up".
2011-07-04 19:46:12 -07:00
Eric House
e207e0e142 add option to run only one game at a time in a given room. The idea
was to mimic conditions that are creating a bug on-device but it
didn't work.  Still, a useful test case....
2011-07-02 23:12:16 -07:00
Eric House
5c5708fa66 try to fix race condition that sometimes means script detects game is
over but doesn't communicate to relay: don't consider file done until
have info to sent to relay.
2011-06-30 19:37:37 -07:00
Eric House
ef9d359ab9 tweak default param values 2011-06-29 21:38:54 -07:00
Andy2
363acc228a use printf so rooms sort numerically 2011-06-28 17:38:59 -07:00
Andy2
b2a7acbdf1 remove echo 2011-06-27 18:59:36 -07:00
Andy2
3db0543994 work in absence of drop-nth-packet param 2011-06-27 18:57:27 -07:00
Andy2
8673c6a001 toward being able to verify that upgrading the relay won't hurt
in-play games: add ability to pick up games mid-play; don't sleep
before killing a device unless it's only been running less that the
minimum.
2011-06-27 18:32:30 -07:00
Andy2
e122953fd5 clean up logging 2011-06-27 18:27:07 -07:00
Andy2
e44ed96691 fix logging: calling read(), not recv() 2011-06-24 18:28:18 -07:00
Andy2
a5bab1232f deal with changing connnames: use the last 2011-06-23 18:12:38 -07:00
Andy2
b4381e8403 drop-packets off, not on, by default 2011-06-22 18:17:47 -07:00
Andy2
c87df3ce16 add option to drop incoming packets randomly (rather than 1st, then
2nd, then 3rd etc.)
2011-06-20 18:55:57 -07:00
Andy2
9b4034f409 fix undefined variable by updating script before possibly deleting it 2011-06-16 18:35:08 -07:00
Andy2
3f7cd851f2 use new drop-nth-packet option, incrementing by 1 each time.
Currently this breaks the relay -- which must be fixed.
2011-06-15 06:49:15 -07:00
Andy2
2d7a1f13b8 add drop-nth-packet option 2011-06-15 06:47:08 -07:00
Eric House
cb3e33ef72 update for months-old param name changes 2011-06-14 05:46:27 -07:00
Andy2
4c5c435fb5 add new parameter so client always gets notified on connection
including how many players are still missing.
2011-05-19 05:51:00 -07:00
Eric House
3cc105da0b add ability to dump board (model) as text, protected by ifdef that
will likely only get set on Linux.  Uses lower-case to designate
blanks.  For that and maybe string size assumptions is very broken for
non-ascii languages, including Spanish.
2011-04-13 06:45:22 -07:00
Eric House
0474fda127 reverse (back) sense of show-other option 2011-04-13 06:41:49 -07:00
Eric House
d6165deb47 anything beyond the 15th char in a bonus-square line is a comment (ignored) 2011-04-10 13:13:45 -07:00
Eric House
26eadb3b99 add commandline option to set bonus square pattern via an external
file.  (Effects only Linux versions.)
2011-04-10 13:04:05 -07:00
Eric House
3310645a12 test files for new bonus-squares-settable feature 2011-04-10 13:02:45 -07:00
Eric House
c77d3039cc add XP_FREEP. Should be no change in behavior. 2011-04-07 18:07:45 -07:00
Andy2
3b7b4802a9 add ability to specify, track and use separate dictionaries for each
player.  Works for gtk client.  Compiles for Android but there's no UI
yet to specify more than one dict.  Management of dupicate dicts
without duplicating memory -- refcounting -- will be up to the
platforms.
2011-04-01 19:57:10 -07:00
Andy2
d430e158ba add commandline flag for phonies 2011-04-01 17:36:04 -07:00
Andy2
f6be6222a1 draw timer in player color 2011-04-01 07:22:40 -07:00
Andy2
379538fd7e show robot/remote scores by default 2011-03-31 06:41:34 -07:00
Andy2
80e0edbf03 cleanup 2011-03-31 06:41:11 -07:00
Eric House
553bee4956 replace fwrite etc with write so fsync can be added before close. 2011-03-14 18:56:17 -07:00
Andy2
fc4fddb055 check if can hint (to refresh buttons) after enter/leaving trade mode 2011-03-08 07:41:16 -08:00
Andy2
54f2ae3edf error string for: fire user error rather than committing turn when
trade attempted without any tiles selected.
2011-03-07 06:29:40 -08:00
Andy2
3fb7c48172 turn off tile selection for linux (perhaps temporarily) 2011-02-18 22:31:28 -08:00
Andy2
15f40f01af fix to compile with new gdk that's on ubuntu 10.10. Need to fix the
APIs eventually.....
2011-02-18 22:28:32 -08:00
Andy2
f41356c98b fix the show-other param 2011-02-01 18:57:01 -08:00
Andy2
bf0582f0aa make hint buttons en/disabled based on board_canHint() results. 2011-02-01 18:56:37 -08:00
Eric House
4bf613a006 move pipe handling code to where can be shared by curses and gtk -- but use from curses is untested. 2011-01-24 22:20:47 -08:00
Eric House
4ae8c76959 break printed runtime into hours:minutes:seconds 2011-01-24 22:19:02 -08:00
Andy2
825cda9125 new feature for testing proxy: --with-pipe option causes linux client
to, instead of putting up UI, blocking on pipe and once it's readable
opening saved game and passing messages into it from pipe then saving
it when done.  Works, but requires gtk so far.
2011-01-23 21:52:26 -08:00
Andy2
09b5c44fb4 add option to prevent switching players by tapping scoreboard (to
mimic android)
2011-01-21 21:29:28 -08:00
Eric House
c4bf153d36 log reason game ended to game's logfile 2011-01-20 18:10:33 -08:00
Andy2
c9fec737e5 changes, protected by a disabled compile-time flag, to use cairo-based
API for drawing instead of now-deprecated gdk ones.  Unfortunately
nothing actually draws and I'm putting the debugging off until I have
some time.
2011-01-14 18:15:33 -08:00
Andy2
e7dbac41a6 fix to compile with new gdk that's on ubuntu 10.10. Need to fix the
APIs eventually.....
2011-01-12 19:00:20 -08:00
Eric House
b3de3fc91e add --robot-iq param for testing 2011-01-10 18:18:35 -08:00
Andy2
f48c1cc8b2 add robot-iq param to test new common code and adapt to its API
changes; change param from robot-name to robot.
2011-01-10 06:46:09 -08:00
Andy2
639279f865 up the number of moves saved to 32 to match Android. 2011-01-10 06:44:47 -08:00
Andy2
fc23080120 param name has changed 2011-01-10 06:40:42 -08:00
Andy2
7fe5e43963 modify to use new long-only flags 2010-12-21 08:02:51 -08:00
Andy2
63e7084cc8 fix a couple of the new options 2010-12-21 08:01:44 -08:00
Andy2
a7aabdc41b use getopt_long_only and a table to make adding params easier, fix
running out of letters, and force better usage.
2010-12-21 00:58:02 -08:00