The Mud Connector

Author Topic: After the Breaking - Builders wanted!  (Read 1798 times)

ATBMud

  • New to TMC
  • *
  • Posts: 7
    • View Profile
After the Breaking - Builders wanted!
« on: February 16, 2018, 8:15 PM »
Going down our list of things to do so we can get out of beta and fully open,  we are looking to add another person to our volunteer staff as a builder/creative design member. If you know Wheel of Time, the current genre-specific item next on the list is writing Tar Valon/The White Tower. If you don't know the genre but you like to build, there's a road through a mountain pass that is also a priority item.

At this time we have over 1,000 rooms finished and open, along with over 500 mobs, several dozen quests, and more. We’re creating a dynamic world that stays true to our theme as well as our purpose: To have a MUD that is friendly to everyone, and can deliver a quality experience whether a player has 10 minutes or 10 hours to spend with us.

Our vision is that we’re all a group of gamers. Those of us who Staff the game are the Gamemasters. No special superhero powers, no illusions of grandeur, just people who love the MUD style of gaming and want to help create a virtual gaming session that everyone can enjoy.

If you’d like to visit the idea of becoming part of the team, please let me know. I invite you to take a look at our forums at http://atbmud.freeforums.net/, or drop by to see us at atbmud.dune.net port 4000. We are a tbaMUD and just updated to the 2018 release. Someone from our core staff is usually visible during the day from 9am-4pm PST, while others are concentrating on their projects in the background.

Thank you for your consideration!

Drizzt1216

  • Sr. Member
  • ****
  • Posts: 279
    • View Profile
    • tbaMUD
Re: After the Breaking - Builders wanted!
« Reply #1 on: February 16, 2018, 8:35 PM »
To anyone that enjoys "thinking big" and creating interactive content, that should not be an issue for them on ATBMUD. The zones created thus far feel far more alive than the zones on most MUDs I have seen, largely due to DG Script. DG (Death's Gate - named after the MUD it was originally used on) is an embedded mud-specific interpreted programming language built into tbaMUD that can accomplish a vast array of tasks. Learning the basics of using it is simple, mastering it can take time, should anyone wish to learn to use it I'd be more than happy to help them in doing so. Should they have ideas for a zone that they are unsure how to implement I would be more than happy to help in that regard as well.

Jodah

  • Sr. Member
  • ****
  • Posts: 445
    • View Profile
Re: After the Breaking - Builders wanted!
« Reply #2 on: February 19, 2018, 6:40 AM »
Is the game open to players?

ATBMud

  • New to TMC
  • *
  • Posts: 7
    • View Profile
Re: After the Breaking - Builders wanted!
« Reply #3 on: February 19, 2018, 12:12 PM »
Yes, but please bear with us. As things unintentionally go bump in the night we fix them. Our core world is open with new content being added daily - a little over 1,000 rooms.  You are welcome to come in!

pariias

  • New to TMC
  • *
  • Posts: 49
    • View Profile
Re: After the Breaking - Builders wanted!
« Reply #4 on: February 19, 2018, 12:26 PM »
The zones created thus far feel far more alive than the zones on most MUDs I have seen, largely due to DG Script.

What does that script do that makes zones feel alive? Are mobs more interactive or something?

Drizzt1216

  • Sr. Member
  • ****
  • Posts: 279
    • View Profile
    • tbaMUD
Re: After the Breaking - Builders wanted!
« Reply #5 on: February 19, 2018, 12:59 PM »
The zones created thus far feel far more alive than the zones on most MUDs I have seen, largely due to DG Script.

What does that script do that makes zones feel alive? Are mobs more interactive or something?

Trigedit can make mobs, rooms, objects all much more interactive. You can also attach and detach scripts directly to players with it as well which opens up a lot of possibilities that'd never be possible with more traditional "prog" code.

Here's an example of a fairly basic script from the MUD.

Code: [Select]
Name: 'Aylar - quest beginning',  VNum: [  721], RNum: [  346]
Trigger Intended Assignment: Mobiles
Trigger Type: Speech , Numeric Arg: 100, Arg list: help assistance
Commands:
if %actor.is_pc%
  if %actor.quest% == 750
    em frowns mightily, his face a picture of worry.
    wait 1 sec
    say Hrrm, yes, little human. I do need help.
    wait 2 sec
    say I have misplaced my sketchbook, with building plans!
    em smacks his forehead with his open palm, making a sound like a small thundercrack.
    wait 2 sec
    say I was speaking with Domon, and one thing lead to another, and the book was gone.
    say It has to be somewhere in the City, I hope!
    wait 2 sec
    em moans to himself in disgust.
    say I'm the youngest Wansho allowed out in the world, how could I make such an error?
    wait 2 sec
    say The Elders will surely say I was hasty. Very hasty.
    sigh
    wait 1 sec
    say They'll try to tell me to come home, I just know it.
    wait 1 sec
    say If you can find my sketchbook, perhaps I can avoid their judgement.
  else
    if %actor.questdone(750)%
      wait 1 sec
      say Light bless you, %actor.name%, you've already been so helpful to me!
    else
      wait 1 sec
      say Hrrm.  Thank you, little human, but all is well.
      wait 1 sec
      smile %actor.name%
    end
  end
end

The mob in question responds to speech, but also checks whether the player is on the quest associated with the mob, and/or if they have previously completed the quest and responds differently depending on their circumstances.

Code: [Select]
Name: 'Garden produce',  VNum: [  735], RNum: [  360]
Trigger Intended Assignment: Rooms
Trigger Type: Random , Numeric Arg: 5, Arg list: None
Commands:
switch %random.3%
  case 1
    %echo% An apple falls from the apple tree.
    %load% obj 733
  break
  case 2
    %echo% A cluster of grapes ripens on the vine.
    %load% obj 734
  break
  case 3
    %echo% A raccoon steals some fruit and scampers away!
    set item %self.contents%
    while %item%
      set next %item.next_in_list%
      set iname %item.name%
      if %iname.contains(fruit)%
        set fruitlist %fruitlist% %item%
        eval fruitcount %fruitcount% + 1
      end
      set item %next%
    done
    eval rnd %%random.%fruitcount%%%
    extract fruit %rnd% %fruitlist%
    %purge% %fruit%
  break
done

Here a room randomly loads a piece of fruitevery ~390 seconds, and every 780 seconds a raccoon steals a random piece of the fruit.

There's far, far more you can accomplish with the language, but those are a couple of random examples that are currently in-use on the MUD.

In some instances it can even replace coded commands.

For example, we had a player log on today who mentioned that they use a screenreader, and that as a result commands like score, or outputs like a prompt can be hard for them to parse and asked about a command that would print their hp, mana, and move on command so I whipped this up.

Code: [Select]
Name: 'Screenreader Support',  VNum: [ 1272], RNum: [  503]
Trigger Intended Assignment: Mobiles
Trigger Type: Command , Numeric Arg: 100, Arg list: *
Commands:
if %actor% == %self%
  if %cmd% == hp
    eval percent %actor.hitp% * 100 / %actor.maxhitp%
    %send% %actor% HP %percent%%% %actor.hitp%/%actor.maxhitp%
  elseif %cmd% == mana
    eval percent %actor.mana% * 100 / %actor.maxmana%
    %send% %actor% Mana %percent%%% %actor.mana%/%actor.maxmana%
  elseif %cmd% == move
    eval percent %actor.move% * 100 / %actor.maxmove%
    %send% %actor% Move %percent%%% %actor.move%/%actor.maxmove%
  else
    return 0
  end
else
  return 0
end
« Last Edit: February 19, 2018, 1:31 PM by Drizzt1216 »

ATBMud

  • New to TMC
  • *
  • Posts: 7
    • View Profile
Re: After the Breaking - Builders wanted!
« Reply #6 on: February 19, 2018, 3:19 PM »
The NPCs also move around, and speak with you, and react to certain actions.  Rooms have life to them, with random actions based upon time of day, weather conditions, etc.  Here's an example of how it looks to a player, at one of the shorelines of a lake.

Code: [Select]
At the Lake's Edge
Set in a hidden clearing within the woods and hillside, the edge of the lake is
a small slice of water compared to the vista that flows southward.  Cattails and
lake weed line the shore, and tall pine trees the color of blue-gray smoke stand
a bit back from the water's edge.  A tumble of rocks at the far end make a dam
over which water spills to the other side of the southern hills.
[ Exits: n d ]
The water's edge shimmers.
A huge man covered in leaves and vines walks by.
Ahlex is spending his day fishing.

139H 259M 98V >
139H 259M 98V >
'how do I fish?
You say, 'how do I fish?'

139H 259M 98V >

Ahlex Marconan says, 'First, you need the mindset that a bad day fishing '
Ahlex Marconan says, 'is better than a good day doing anything else.'

139H 259M 98V >

Ahlex Marconan says, 'After you have that down, fishing is easy.'

139H 259M 98V >

Ahlex Marconan says, 'Then, you will need a fishing pole.'

139H 259M 98V >

Ahlex Marconan says, 'I think that the Wisdom, Karensa, may have a few laying around.'

139H 259M 98V >

Ahlex Marconan says, 'She probably won't mind you borrowing one.'

139H 259M 98V >

Ahlex Marconan says, 'Hold on a moment!'

139H 259M 98V >

Ahlex Marconan starts to pull in his line.

139H 259M 98V >

Ahlex Marconan stifles a mild oath as his line snaps at the hook.

139H 259M 98V >

Ahlex Marconan mutters something about the fish that got away.

139H 259M 98V >

Ahlex Marconan says, 'Now, as I was saying...'

139H 259M 98V >

Ahlex Marconan says, 'Once you have a fishing pole, go to anywhere that you see the water's edge '
Ahlex Marconan says, 'along the shoreline.  You'll get a feel for those, we call them honey-holes.'

139H 259M 98V >

Ahlex Marconan says, 'Then hold your fishing pole. No need to grip it like a weapon, mind you. '
Ahlex Marconan says, 'Fishing isn't a battle.'

139H 259M 98V >

Ahlex Marconan chuckles politely.
Ahlex Marconan says, 'Then toss your line and wait.'

139H 259M 98V >

Ahlex Marconan shrugs helplessly.
Ahlex Marconan says, 'Fishing requires patience.  And before you know it, '
Ahlex Marconan says, 'your whole day could be gone.'

139H 259M 98V >

Ahlex Marconan whistles low through his teeth.

139H 259M 98V >

Ahlex Marconan says, 'That's how you fish.  May fortune favor you!'
Ahlex Marconan turns his attention to his line, which seems to be tugging slightly.

139H 259M 98V >
 139H 259M 98V >

A Nym leaves north.

139H 259M 98V >

Ahlex Marconan casts his line into the water and settles in to wait.

139H 259M 98V >

The day has begun.

139H 259M 98V >

A trout leaps from the water to catch a bug.

139H 259M 98V >

Ahlex Marconan stifles a mild oath as his line snaps.

139H 259M 98V >

Ahlex Marconan mutters something about the fish that got away.

139H 259M 98V >


Jodah

  • Sr. Member
  • ****
  • Posts: 445
    • View Profile
Re: After the Breaking - Builders wanted!
« Reply #7 on: February 20, 2018, 6:34 AM »
Looks great.  I'm not saying your mud does this, but I would like to add that npcs doing the same thing all the time don't really create "life" to the player as a real person wouldn't be fishing 24/7.   NPCs with about 100 different random outcomes with their scripts would definitely create "life", but I recognize the impossibly long and hard task that would require to implement, plus it appears your example has a randomness to it which is great.  Regardless, scripts and edits are more than most muds.  It looks great from your examples, and I love Wheel of Time, so I will stop by sometime.   

Drizzt1216

  • Sr. Member
  • ****
  • Posts: 279
    • View Profile
    • tbaMUD
Re: After the Breaking - Builders wanted!
« Reply #8 on: February 20, 2018, 12:22 PM »
Looks great.  I'm not saying your mud does this, but I would like to add that npcs doing the same thing all the time don't really create "life" to the player as a real person wouldn't be fishing 24/7.   NPCs with about 100 different random outcomes with their scripts would definitely create "life", but I recognize the impossibly long and hard task that would require to implement, plus it appears your example has a randomness to it which is great.  Regardless, scripts and edits are more than most muds.  It looks great from your examples, and I love Wheel of Time, so I will stop by sometime.   

I fully agree that people don't do one activity all day everyday, and that as such mobs that do so don't necessarily depict reality. There are certainly no implementation-related limitations to having DG Script have mobs be in different areas at different times of day, or giving them schedules that even vary based on the day of the week. There is however, as you touched on, the problem of logistics. While it's super doable to make one mob behave in such a manner, it'd be much more time consuming to script unique behavior to such an extent for every mob in a game - though perhaps not prohibitively so.

ATBMud

  • New to TMC
  • *
  • Posts: 7
    • View Profile
Re: After the Breaking - Builders wanted!
« Reply #9 on: February 20, 2018, 12:27 PM »
Thanks so much!  Most of our specialty/storyline mobs do things on separate time scripts.  For example, at the end of the day, that fisherman goes somewhere else entirely and does other things.

It's that kind of thinking - how to round out even the smallest detail to make it better - that we look for in our Staff members.  Not everything has to be perfect to the nth degree, but if something lends itself to another layer of action, description, etc. why not explore it?

However, that's from the perspective of a highly experienced builder.  One of the things we do, and encourage, is that after any builder has built a room/zone, mob, or item, ask another builder to look it over not only for typos, etc. but also for ideas.  Sometimes a builder can be outstanding at writing rooms but needs help with rounding them out.  We work as a team, so anyone reading this - if you like building, don't be discourage if you know nothing about scripting. Don't let it stop you. Let's have a chat and see how to fit you in!