genzgd / lampost-mud Goto Github PK
View Code? Open in Web Editor NEWA Python server and HTML/angular.js client for MUDs and other multi-user virtual worlds
Home Page: https://lampostmud.org
License: MIT License
A Python server and HTML/angular.js client for MUDs and other multi-user virtual worlds
Home Page: https://lampostmud.org
License: MIT License
insteed of :
{
"display": {
"lines": [
{"color": 7024747, "text": "Grottington Street [grottington:1]"},
{"color": 11354522, "text": "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-="},
{"color": 11354522, "text": "Branching off from the street to the west stands a recently constructed building ... to see during all hours of the day and night."},
{"color": 11354522, "text": "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-="},
{"color": 8421376, "text": "Exit: south grottington:0 "},
{"color": 8421376, "text": "Exit: north grottington:2 "},
{"color": 8421376, "text": "Exit: west grottington:19 "}
]
}
}
maybe do something like :
{
"display": {
"content": [
{"c": 1, "t": "Grottington Street [grottington:1]", "n" : true},
{"c": 2, "t": "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=", "n" : true},
{"c": 2, "t": "Branching off from the street to the west stands a recently ", "n" : false},
{"c": 3, "t": "constructed building", "n" : false, "a" : "look building"},
{"c": 2, "t": " ... to see during all hours of the day and night.", "n" : true},
{"c": 2, "t": "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=", "n" : true},
{"c": 4, "t": "Exit: ", "n" : false},
{"c": 4, "t": "south", "n" : false, "a" : "move s"},
{"c": 4, "t": " grottington:0 ", "n" : true},
{"c": 4, "t": "Exit: ", "n" : false},
{"c": 4, "t": "north", "n" : false, "a" : "move n"},
{"c": 4, "t": " grottington:2 ", "n" : true},
{"c": 4, "t": "Exit: ", "n" : false},
{"c": 4, "t": "west", "n" : false, "a" : "move w"},
{"c": 4, "t": " grottington:19 ", "n" : true},
{"d": "prompt", "t" : "|123h 123m 123v>"}
]
}
}
so you can have multiple colors in one line, add links ( like mxp does ), etc.
using a social - grin, hug, etc, causes some sort of disconnect
Summoning imogen produced a stack trace in immortal.py
2 different presentations:
====================TEF which is TFE code
South Garnie Lane
+=--------------------------------------------------------------------------=+
| Lighting: Well Lit Time: Night Terrain: Field |
| Exits: NeSW Weather: Clear Room Size: Dinosaur |
+=--------------------------------------------------------------------------=+
Garnie Lane continues to both the north and south of here. Yellow
construction cones mark off both the east and west sides of the road,
drawing your attention to the new homes being built for Chiiron's good
citizens. A bustling town square can be seen to the north while to the
south a large construction site marks off the building of a new gate out
of town.
Exits Command:
<p|2067hp 1257e 301mv> Obvious Exits
North - South Garnie Lane
East - Closed wooden door
South - The South Gate of Chiiron
West - Leatherworker's Shop
what i like... lower case for closed exits. Also has a main colour for main roads and secondary colour for others... forest/water/mountains/buildings etc.
====================WD which is ROM code
5761/5761hp 7886/7886mana 763xp Hapsor> Main Street Westbridge [LAW] [NOLOOT]
This is Main Street, Westbridge, one of the most well traveled
thoroughfares in all the realms. The pavement is well worn by many
years of traffic. Gas lamp lights line either side of the street.
[Exits: north south] [Doors: west]
Exits Command:
5761/5761hp 7886/7886mana 763xp Hapsor> Obvious exits:
north - The Intersection of Main & Life
south - Main Street Westbridge
What I like... not a lot
we just had a visitor to the mud, who spoke to me, but i did not hear them because i was in another window. is an alert sound possible?
Iria kicked himself and could not stop, even while in another room.
Jens tried reload and it gives a blank screen. Not sure what it should give, maybe a bit of history (is that possible?), but at the very least, there should be a forced 'look'.
Jens thinks we might want to limit the size of it.
maybe we need to have a save buffer option?
README seems out of date. The lampost_setup.py and lampost_mud.py both seem to have some issues relating to imports. Seems like maybe there was a refactor done and they weren't updated?
Using master branch and running either of those scripts:
Traceback (most recent call last):
File "lampost_setup.py", line 3, in <module>
from lampost.util import logging
ModuleNotFoundError: No module named 'lampost'
The JQuery autofocus logic doesn't work in IE if there is a table on the page.
python lampost_setup.py -im results in an AttributeError exception being thrown.
Traceback (most recent call last):
File "lampost_setup.py", line 28, in <module>
newsetup.new_setup(args)
File "/usr/lib64/python3.4/site-packages/lampost/setup/newsetup.py", line 41, in new_setup
app.exec_bootstraps()
File "/usr/lib64/python3.4/site-packages/lampost/di/app.py", line 29, in exec_bootstraps
func()
File "/home/michael/projects/Lampost-Mud/lampmud/mud/mudcore.py", line 27, in _start
shout_channel = Channel('shout', general=True)
File "/usr/lib64/python3.4/site-packages/lampost/server/channel.py", line 20, in __init__
cs.register_channel(self.id, general)
AttributeError: 'Injected' object has no attribute 'register_channel'
I am able to get it to move on by simply wrapping the cs.register_channel in lampost/server/channel.py of lampost_lib
diff --git a/lampost/server/channel.py b/lampost/server/channel.py
index 7c9defa..27dae0e 100644
--- a/lampost/server/channel.py
+++ b/lampost/server/channel.py
@@ -6,7 +6,7 @@ from lampost.util.lputil import timestamp
ev = Injected('dispatcher')
db = Injected('datastore')
cs = Injected('channel_service')
module_inject(__name__)
@@ -17,7 +17,10 @@ class Channel():
make_action(self, (channel_type,) + aliases, target_class='cmd_str')
self.id = "{}_{}".format(channel_type, instance_id) if instance_id else channel_type
self.tag = tag
- cs.register_channel(self.id, general)
+ try:
+ cs.register_channel(self.id, general)
+ except Exception as e:
+ print("{0}".format(e))
works, and allows user setup, but obviously not a fix for the real issue. I poked around a bit, but I couldn't see an obvious fix as i'm not sure exactly how the Injected class works.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.