Server Side Scripting

Started by Vitoc, Apr 18, 2007, 04:43 PM

Previous topic - Next topic

Vitoc

So how many of you run MegaMUD 24/7 on one or more of your own computers?  Do you ever wish you could script without having to run the scripting client on your own computer?

As we start finishing up the implementation of the in-game engine, Im starting to brainstorm some higher level ideas.  I think it's feasible to build a scripting framework into the GMUD engine itself.  Each user could use a web interface to change their script settings, view their stats and current status, and to some degree control their character in the realm from that web interface (communication like gossips, gangpaths, etc. or starting script commands like sending their characters to certain areas and/or looping in an area).

When you connect manually from your own machine, it would completely deactivate this server side scripting.  You wouldn't have to use this feature btw, it's completely optional; if you want to use your own computer's CPU cycles and bandwidth, that's your perrogative. 

This is obviously down the road a bit, but I'd like to start getting some feedback on this.  Would you use it?


The Crazy Animal

That would be kinda cool.

An intresting offshoot idea if we could get it as an option that when you used server-side scripting that it would treated your character like an NPC of the proper alignment behavior. That way players could add to the game in a new way while scripting. I can think up some simple but fair trade offs for using it in this way too.

Ian

If we can hit that bulls-eye, the rest of the dominoes will fall like a house of cards.? Check-mate!

DeathCow

The only auto abilties I'd like to see are things like bless management and stuff like that.  :/

The Crazy Animal

Quote from: DeathCow on Apr 28, 2007, 10:33 AM
The only auto abilties I'd like to see are things like bless management and stuff like that.  :/

bless management would be cool too.

Vitoc

Quote from: The Crazy Animal on Apr 29, 2007, 11:18 PM
bless management would be cool too.
So I've thought about this a bit more.  Let's call the bless management system BSM from now (not to be confused with BDSM)

What would the rules be on it?

1) If someone is typing, the BSM *must* be inactive because they could be trying to cast a spell.
2) The BSM will be smart enough to know if a user has already cast a spell (ie. has enough spell energy to cast it) and if the user has enough Mana.  The %'s of MA at which blessing starts and stops will be configurable in a web interface.

Do we want the actual text (spell name) to show up on the user's screen for the spell being cast, or do you want it to be kind of silent, only showing the actual success/fail message?  I wonder how well Mega would handle it if we went the silent route...  I just want to avoid cluttering the user's screen, making it look like someone else is controlling their session.

How far do we take this?  Do we allow auto-healing as well?  Auto-combat?  Auto-collect cash/items?  Obviously, these are all things people could reasonably be interested in.


The Crazy Animal

Auto collect is bad, I wouldn't go there; it never worked well even for mega...
Auto healing is good.
Auto party heal is cool too.
As would be auto party bless.

As for what goes on the screen it should just send the pass or fail message for any spell.

AI wise I'd go the fuzzy logic route hell you could even make it use character stats to pick how well it works and call it autoconfig. It would be a good testbed for NPC AI :P On the other hand some players still like to set stuff and for that I'd make it simple.

AHM:
Auto build a list of heal spells that the player has. Each heal spell has min mana field and a min health field and a priority number. Such as "Greater healing: M? H? P?" each round it runs a check on mana and health if the mana is good, and health is lower then one of the set spells threshold values it casts that spell. If there are two or more spells that are applicable it defaults to the priority number and casts the highest priority heal spell that qualifies.

Healing when not in combat. Should be handled differently however one set able field for mana threshold and one pick able spell.

BSM:
The BSM autorecast would be very similar to the AHM but instead of just casting the spell it needs to first pass it into a wait to cast list since quite probably you might have quite a few bless spells that have timed out. So when a spell times out it sends a priority # and spell # to the wait list then at the appropriate time it recasts the spells in a priority sorted order. Rather then first come first serve. One more thing that would be nice would be a "bless in combat yes/no... this was something that mega left out but it would be a good feature since it would be able to help conserve mana for healing.

I'm not sure how exactly to set up blessings or healings for parties though but it would be nice.