Skip to content

0xDEADFED5/xtermia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xtermia, an xterm.js webclient for Evennia

This replaces the webclient of an Evennia game with the xterm.js terminal emulator. This is a demo that you can copy over a freshly initialized Evennia game.

screenshot

Features

  • No more input box, type directly into the terminal like it's 1984
  • Does terminal stuff
  • Optional persistent map display
    • send 'map' command to webclient with your map to update the cached map
    • map will be centered in right half of terminal
    • map can be enabled/disabled/updated at will
    • (see examples.py)
  • Up/down arrow to scroll through command history
  • Start typing to see completion suggestions, use right arrow or Tab to accept the suggestion
  • You can hold Enter to spam commands now or type anything else to overwrite last command
  • Ctrl+C to copy, Ctrl+V to paste in addition to the right-click copy/paste
  • Clickable web links
  • Completion suggestions based on Evennia commands available at login
  • Client side options for font size, screenreader, etc. enter :help for a command list
  • Record sessions and share them at Terminoid
  • Tells Evennia the terminal width/height at startup and on resize
  • Won't echo commands or add to command history until after login (won't echo password)
  • Sound/music (see examples.py)
  • Interactive terminal mode (see examples.py) for an example, or type 'interact' in the game
  • All files are local, no internet required
  • Uses Fira Code font because it has great box drawing characters

Installation for a fresh game

Copy this repo's entire folder structure to your Evennia "mygame" game folder.

Note:

  • /server/conf/settings.py Will be overwritten
  • /server/conf/inputfuncs.py Will be overwritten
  • /typeclasses/characters.py Will be overwritten
  • /commands/default_cmdsets.py Will be overwritten

Installation for an existing game

Back up your existing game folder. Copy this repo's entire folder structure to your Evennia "mygame" game folder and overwrite inputfuncs.py but don't overwrite the other 3 files listed above.

Add settings from settings.py to your own settings.py.

Look at characters.py for command completion and map example, add what you want to yours.

File sources

About

Alternate webclient based on xterm.js for Evennia

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published