Softcode

SCS - Simple Combat System

Submitted by RockyRaccoon on Tue, 2015-01-27 05:03

I tried my hand at a Simple Combat System, as I noticed not many 'Free' Systems Exist for people. I am a noob coder, so this was good practice in any event, I imagine. It DOES work and hasn't caused my test MUSH to crash horribly in the past two days I've been coding it!

Anyways this system is meant to be simple. I accomplished that. But it also has a few features that are in more modern systems, such the ability to 'boss up' to take on multiple players, and switch between +forms (armor forms, etc.).

A cute little toy about Evolution.

Submitted by MrWigggles on Tue, 2013-10-29 23:06

So the toy below is a Dice Snake living in a most cruel world. Only dice snake made out of pairs of number can breed and be successful.

So yea. +snake < the length of the snake >

The game is suppose to show that Evolution doesn't work on blind chance even though it has random elements part of it process. Generally select numbers between 5-20. The longer the snake, the longer the toy takes.

@@ Snake Toy (#12101)
@create Snake Toy

SceneSys: Reaching a Finished Project

Submitted by Mercutio on Thu, 2013-07-25 03:22

I've now almost finished SceneSys, not just in that it works, but that it is in a status where the MUSH side of things is basically releasable. I would not have been able to get there had it not been for the support from people @ M*U*S*H. But there was another important factor, and that's the very positive support from the MUSH where I first deployed SceneSys. It had its bugs, but with player input, it quickly grew into something far 'more'. Something 'better'!

Thank you, players of Final Kingdom MUSH.

24-bit Color Gradients (for TinyMUX)

Submitted by Kyrion on Sat, 2012-07-28 23:42

It’s sure been a while, hasn’t it. I’ve still been working on my existing MUSH and my new one, when I’ve been able, and have some useful gadgets done, but not much building yet. That’s not what I’m about to post, though.

I’ve chatted about this on <Softcode>, and the suggestion I got was to post it here. I wrote this code for TinyMUX, which unlike Penn will display the full 24-bit color space, and was reminded how useful the PennMUSH features are that TinyMUX doesn’t support. As you may recall, my previous project implemented most Tiny* functions missing from Penn in softcode, so that’s less true the other way around.

It will not run on PennMUSH as written, but could be converted to run with the same logic. The major incompatibilities are the @@ final argument to iter() and, especially, the extra backslashes Tiny* forces me to use thorough its illogical, broken-as-designed parsing of nested arguments.

Code and commentary below the cut.

Softcode Problem: Naughty List

Submitted by walker on Fri, 2011-12-30 00:07

For the past few years, I've been running a Secret Santa on M*U*S*H. But with such a small pool of attendees, we're now having an "issue" where one person might have the same recipient or gifter several times in a row. "Walker again? I gave him a gift last year and the year before that!"

(Okay, so maybe everybody has Walker, but that's a different topic . . . =)

Semi-Dynamic ASCII Maps

Submitted by daniko on Mon, 2011-10-17 18:34

Anyone play anything IRE? Well, if you do, you'll know that they have a pretty awesome in-game mapping system. A simple MAP command and you've got yourself a fairly dynamic ASCII paths and rooms picture:

[ ]
   \
[ ]-[ ]-[_]
      
        [^]
       /
    [+]-[ ]-

Well, I'm proud of my own similar and halfway-dynamic system that does something similar (did I just use "similar" twice in the same sentence?).

Rather than creating a single blob of map text on each and every room, I've come up with a way to create a single map on a parent room, set coordinates on child rooms and have the "You are Here" marker move about via those coordinates.

Simple bit of Code to Help Builders ~ Managing Long Room Names

Submitted by MrWigggles on Sun, 2011-10-16 05:39

When you're building, occasionally the name of a room, can get quite long, and the length of the room name can be awkward to deal with. In my experience, the long room names, comes from, by denoting an interior room of a sub set of an area.

Example:

Rome Coliseum of Rome - Gladiator Ready Room

A possible solution, is by simply making the Coliseum its own Zone, which may be a good solution, if the Coliseum is large enough to be its own grid area. Though, if it's just a sub area of the Zone, then it seems a little silly to make it, its own Zone

Simple bit of Code to Help Builders ~ Automatic Parent Setting

Submitted by MrWigggles on Sat, 2011-10-15 00:48

Building, will probably always be one of the more tedious and time consuming aspects for a mush. Though, much to Penn's credit, they've taken great strides to reduce the amount of commands that you have to type in, in order to build.
However, the very important parents, still need to be set per room built, and thats a separate command.

Its a separate command, that can be done automatically however.

How?

With the Event System.
The Event System, allow for soft code to happen, triggered by hardcode events in Penn. Its quite a marvelous system they've recently introduce into Penn.

@create Event Handler
@set Event Handler=Wizard

@config/set event_handler=[num(Event Handler)]

&object`create Event Handler=@switch type(%0)=room,{@force %#=@parent %0=[xget(%#,rparent)]}

Now, what that &object`create will do is, at every instance a room is created, that it'll set the room parent, as the attribute on the builder, rparent.

Now on the Builder, you'll want to include the attribute &rparent which will hold the DB# of the room parent you want to use.

Style rant

Submitted by raevnos on Tue, 2011-10-11 20:27

I see a lot of people using constructs like: squish(iter(some list, if(some condition, %i0))). This annoys me to no end. It's a poor reinvention of filter(obj/attr testing some condition, some list).