Matters relating to the PennMUSH server code itself, written in C, and commonly called "hardcode".

Setting up a second port for Pennmush

Submitted by Argon on Wed, 2009-12-16 15:46

By sheer misfortune one of our players has the port we use for our MUSH blocked by his work IT. Most other ports are unblocked and we've identified a port that is available from our host and is unblocked by his work. The question is, can I configure Pennmush to use two ports, our existing one and also the unblocked port?

I'm entering this under hardcode as the closest (I think) category.

new to penmush

Submitted by lineaus on Tue, 2009-11-03 01:45

Hello all, i've been mushing for quite some time now and decided to put my own spin on things, looking through the different mush software and decided pennmush is for me. I'm trying to set it up on a remote linux server

HSpace 5 Looking for Testers!

Submitted by Mongo on Tue, 2009-03-17 08:49

HSpace 5

From the ashes of HSpace 4 rises a new hard coded space
engine, HSpace 5.0. Completely re-written from the ground
up in C++, this version boasts a much faster and streamlined
engine. With several new major features such as modular
systems and Newtonian physics simulation this version of
HSpace is growing very quickly!

But we want your help! Player and Game Developer feedback
is crucial at this point in HS5's development. So we invite
everyone to come and try the system out by playing on our

SSL and reboots

Submitted by raevnos on Thu, 2009-02-19 10:52

Fixing the problem of having encrypted connections to a mush drop on a @shutdown/reboot's been on the to-do list for a while. The issue is that OpenSSL has no way to save a connection's state to disk and load it back again. The solution is to use a second process that handles SSL connections and relays data between them and the mush.

Anatomy of a bug; or, an argument for garbage collection

Submitted by raevnos on Sat, 2009-02-14 20:54

The other day, Walker introduced a bug into the test version of Penn running on M*U*S*H. Surprisingly, no crashes resulted.

(I'm picking on Walker, but I've run into this same problem, and so has everyone who's made significant contributions to the source, with the possible exception of Talek, because he's cool that way.)

Looking for help in createing new dispencers

Submitted by Logan Orion on Tue, 2009-02-03 15:49

PennMUSH version 1.8.3 patchlevel 6

I'm looking for some help coding a dispenser that locks items so you can only give them back to the dispenser they originated from. Such as a Phaser Dispenser.

The dispenser should create a preloaded item when the command 'Dispense Phaser' is entered. Then only allow the item to be given to the same dispenser that it was created from.

HSpace 4.4.1 + Penn1.8.3p7 Working

Submitted by Mongo on Sat, 2008-12-06 15:09

I have been fighting with trying to get HSpace working with Penn 1.8.3p4 - 1.8.3p6 without much luck, mostly due to compile errors that shouldnt have existed. So I finally decided to upgrade to 1.8.3p7 since there were a lot of good changes and I thought what the heck I will try HSpace again. Low and behold, it compiled cleanly after following the somewhat outdated instructions from HSpace. I can not make any promises of stability but it works at this point in time.

Tools for working with patches

Submitted by raevnos on Sat, 2008-10-04 18:13

People have noticed that the 1.8.3p7 patchfile has a summary of changed files in it:

Summary of changed files:
 BUGS                         |   17 	0 +	4 -	13 !
 CHANGES.182                  |    1 	0 +	1 -	0 !
 CHANGES.183                  |   72 	70 +	0 -	2 !

This was done by piping the patch to diffstat(1). (You can also use it to make git-style histograms and other types of reports. This was done with diffstat -m -f 0.

Named registers via setr() and setq()

Submitted by Kelvin McCorvin on Thu, 2008-07-03 12:03

One of the absolute worse things about softcode is its register system. The need for such a thing is great, and our code is littered with things like %q3,%q4,%q5, which can make sense when you're writing things. But looking back at something even as short as a week later usually means trying to figure out what in the world %q3 is. Or worse yet, getting them mixed up.

Something I've been whining for on MUX as well is named registers. RhostMUSH is the only one I know of so far that has this. Basically, something like this would be legal:

> think [setr(SOMEVAR, value)][r(SOMEVAR)]

Newsfiles, but no news directory!

Submitted by Nano on Mon, 2008-03-24 17:41

This's been bothering me to no end. I can go in and edit up index.nws and pennmush.nws, and typing 'news (news file)' works like a charm. But here's where I hit a little problem; typing 'news' alone doesn't seem to bring up the index. Infact, all it gives me is 'No entry for 'NEWS'.' So, anyone know what I'm doing wrong?