133 lines
5.3 KiB
Plaintext
133 lines
5.3 KiB
Plaintext
|
|
-pass the correct terminal size to nethack. (dgl handles
|
|
term resizes correctly, but nethack doesn't see the new size)
|
|
|
|
-allow setting banners for the internal menus, with the same method
|
|
as normal user-defined menus, but only the banner is used from them.
|
|
if no such menu is defined, then uses the default banner file.
|
|
|
|
-update dgamelaunch.8
|
|
|
|
-occasionally dgl crashes, leaving the shmem semaphore in a state
|
|
where the shmem block has to be freed.
|
|
|
|
-configure option --ncurses and --ncursesw
|
|
|
|
< kerio> paxed: it would also be cool to have %g and %s work within a game definition too
|
|
|
|
< kerio> paxed: is this intended behavior? i can't set two different spooldirs for two different games
|
|
|
|
|
|
[22:45] < kerio> paxed: dgamelaunch bug! :D - you *need* a file called dgamelaunch in the root of the jail -
|
|
otherwise the shared memory craps out
|
|
[22:48] < kerio> anyway, /dgldir/shmkey would've been better
|
|
|
|
|
|
|
|
-when no banner file given, try to make a banner automagically?
|
|
(needs some way to name the options given as keys... maybe another
|
|
format for the keys that includes a string to be used as the name)
|
|
|
|
-cursor keys are not restored after watching a game of
|
|
curses-nethack.
|
|
|
|
-$MTIME(filename)
|
|
|
|
< Napkin> I'd suggest the default of DGL_MAILMSGLEN to be less
|
|
< Napkin> there are 4 digits in front of the prompt, paxed. having
|
|
it at 80, will cause display errors if someone types more than 75 letters
|
|
< Napkin> well, to be precise - not the writing - but deleting
|
|
will no longer work, because the cursor won't be moved to the previous
|
|
line again
|
|
|
|
-when exiting from watching a player, move the cursor to the last line
|
|
of the screen before enabling the ncurses mode; so when we exit dgl,
|
|
the watched player's game is all visible and the menu prompt doesn't
|
|
mess it up.
|
|
-watching menu will hilight the first matching username... what if we have
|
|
more than one game installed, and someone's playing more than one at the
|
|
same time? Should also save game#, not just the username.
|
|
-allow admin to disable the 'm' mail key in ttyplay.
|
|
-update README
|
|
-whenever config file has a dir, check that it ends with "/"
|
|
-in domailuser(), we need find_curr_player_game(username)
|
|
-for menu definitions, allow "default" commands (when user presses a
|
|
key not defined in other commands):
|
|
commands[default] = ...
|
|
|
|
-allow the admin to config the watching menu:
|
|
-top banner
|
|
-bottom banner
|
|
-set default sort method
|
|
-selectorchars:
|
|
watch_selectorchars = "abcdefghijklmn" (a-zA-Z, minus qQ)
|
|
-keys:
|
|
currently: qQ=return, '.'=sort++, ','=sort--, etc
|
|
|
|
-update virus to the newest version.
|
|
(virus is originally from busybox:
|
|
http://git.busybox.net/busybox/tree/editors/vi.c
|
|
but that version needs to be made secure)
|
|
-allow changing the name where the ttyrecs are saved, like
|
|
ttyrec_fn = "%rttyrec/%n/%g/%p.ttyrec"
|
|
-maybe save more stuff in the db, if we're using the sqlite
|
|
(last login timestamp, watch-menu sort-type, etc)
|
|
-Allow using a ttyrec (or similar screen capture) as the menu
|
|
text, instead of a text file.
|
|
maybe adding a bannertype={auto,txt,ttyrec,screendump}
|
|
into a menu def. auto=try to detect it from file extension.
|
|
would be useful to be able to define a program to run that
|
|
generates the banner? (eg. nethack hiscore list via nethack itself)
|
|
to output raw escape codes under ncurses, use write(1, "foo", strlen("foo"))
|
|
(must restore cursor position after printing or ncurses is confoosed)
|
|
-BUG: cannot quit watching until caught up with the stream.
|
|
-allow configuring the watching, new user registration,
|
|
email/passwd change, etc. screens.
|
|
-add config file command "chmod file mode"
|
|
-allow configuring the ttyrec dir location & file format.
|
|
-add commandline parameters to dgamelaunch:
|
|
dgamelaunch --chpasswd "nick" "newpass"
|
|
-some games (robotfindskitten?) are not worth saving into ttyrecs,
|
|
make it configurable. if no ttyrecs, then can't watch the game, which is
|
|
a pity. maybe rather just save the latest ttyrec, which ties into
|
|
having configurable ttyrec filenames...
|
|
-allow configuring ttyplay.c; some games may use different clear-screen
|
|
commands. (see for example crawl)
|
|
-allow configuring the gfx stripping. (number of chars, types of stripping,
|
|
include unicode stripping from crawl dgl, etc.)
|
|
This must be per-game configs; maybe we're running nethack and crawl
|
|
on the same server. ...does ttyplay know what game we're watching?
|
|
|
|
charstrip "name" {
|
|
start_state = 0;
|
|
state = (0 and 0x0e), 0x00, 1;
|
|
state = (1 and 0x0f), 0x0f, 0;
|
|
state = (1 and 0x1b), 0x1b, 0;
|
|
state = (1 and gfxmap), gfxmap, 1;
|
|
|
|
# initializes the gfxmap from charstrip "name" gfxmap. could also have
|
|
# gfxmap_init = zero;
|
|
gfxmap_init = from "name";
|
|
|
|
# the following will replace characters 128-135 with the listed characters.
|
|
# accepts:
|
|
# 0xff (hexadecimal), 240 (decimal), 001 (octal), 'x' (character)
|
|
gfxmap = 128, (' ', '|', '#', 0xb3, 0x00, 240, 241);
|
|
}
|
|
|
|
|
|
in game definition:
|
|
char_strips = "name", "name", "name", ...
|
|
or maybe add a new command '' set_charstrip "name" ''
|
|
|
|
|
|
-public (no-password) accounts? (a per-user flag) what happens when someone
|
|
is playing on the account and someone else logins and we start playing?
|
|
-allow users to run recover themselves
|
|
-configurable stuff: allowed chars in usernames,
|
|
allow char stripping, ...
|
|
|
|
- Localization of variables, code clean up
|
|
|
|
- Use /var/run/nologin and/or dgl-specific nologin file
|