June 19, 2019, 11:03:07 pm

Author Topic: Scripting Language:  (Read 1967 times)

0 Members and 1 Guest are viewing this topic.

Offline The Crazy Animal

  • Administrator
  • Master
  • *****
  • Posts: 2448
  • Karma: +18/-20
Scripting Language:
« on: January 24, 2006, 05:27:29 am »
I think most of us know that mmud used a goofy script language to do most things. What I?m really wondering now, is have you kept this moronic beast of a bygone era that they called a scripting language or has gmud moved past this.

If so can you brief us on some of its limitations and or uses? Perhaps you could use some of these examples of the language in the pending alpha test.

TCA

DeathCow

  • Guest
Re: Scripting Language:
« Reply #1 on: January 24, 2006, 07:28:02 am »
Functionally, it runs the same way. 

Offline Vitoc

  • Administrator
  • Master
  • *****
  • Posts: 1611
  • Karma: +26/-13
  • Insanity Ensues
    • WebMUD
Re: Scripting Language:
« Reply #2 on: January 24, 2006, 08:55:29 am »
I think most of us know that mmud used a goofy script language to do most things. What I?m really wondering now, is have you kept this moronic beast of a bygone era that they called a scripting language or has gmud moved past this.

If so can you brief us on some of its limitations and or uses? Perhaps you could use some of these examples of the language in the pending alpha test.

I'm not sure I completely understand the question, but I'm going to take a stab at answering it as best I can.  So far, everything in the game has been implemented without the use of "scripts."  There is a running game "timer" which allows some standard timed events to fire at a regular interval (regen, rest tick, mana tick, combat) as well as a container for other individual or recurring timed events that can be added, such as the end of a timed spell, when a door should close/lock after being opened/unlocked, when a trap resets itself, etc.

All aspects of the game are exposed to the actual programming language allowing fine-grain tuning of every aspect of the game.  For example, special NPCs could be hard coded with AI, allowing the NPC to walk around killing mobs, gaining levels, gaining wealth, etc.  Players "could" have long-term pets perhaps.  The realm could be much more interactive, perhaps with night/day, weather, etc.  There could be a realistic economy, where prices rise and fall in shops with supply and demand.  While none of this may make it's way into the initial realm, it is definitely possible and relatively easy to accomplish compared to most other languages out there.

Rest assured, everything is being implemented with a full-fledged programming language.  While there is a GMUD Server class I created that handles everything in a realm, I am directly editing that class (as well as the other classes it uses) to implement functionality, rather than modifying scripts that run in the server.

The only limitations we're subject to are hardware limitations based on memory and speed, but with a text game like this we're nowhere near reaching those limits yet.  Where we might run into an issue is with how many telnet connections a "non-server" OS like Windows XP can handle using .NET, but I'm hopeful.  We'll get a better idea of it's capabilities when we open a test realm.  Perhaps we'll have a day where we do some extreme load-testing in that department, essentially finding out how many users a meager server like ours can effectively handle.
« Last Edit: January 24, 2006, 09:03:19 am by Vitoc »


TGS v1.0 (coming soon)

Offline The Crazy Animal

  • Administrator
  • Master
  • *****
  • Posts: 2448
  • Karma: +18/-20
Re: Scripting Language:
« Reply #3 on: January 24, 2006, 12:42:17 pm »
Sorry I was getting kind of drunk when I asked the question. I meant the scripts in the textblocks:

MMUDS bad attempt at a script:
put keys in device:takeitem 490 467:message 468:takeitem 491 469:message 470:takeitem 492 471:message 472:message 473:message 474:giveitem 496
put three keys in device:takeitem 490 467:message 468:takeitem 491 469:message

An actual script from a modern game:
Begin
  Short done
      If ( OnActivate ==1)
              If ( Done ==1)
                       Activate
                       Return
      Else
             PlaceAtPC "itemname"
             Set done to 1
             Activate
             Endif
     Endif
End


What I was asking is how are you planning on having the content/players interact with the system level functionality.

TCA

Offline Valentine

  • Savant
  • *****
  • Posts: 469
  • Karma: +3/-6
  • Welcome to the human race.
    • myspace
Re: Scripting Language:
« Reply #4 on: January 24, 2006, 01:59:34 pm »
Oh god it's true....all text-based mud systems do use the same code format.
"...There was always a minority afraid of something, and a great majority afraid of the dark, afraid of the future, afraid of the past, afraid of the present, afraid of themselves and shadows of themselves..." --Ray Bradbury, The Martian Chronicles

DeathCow

  • Guest
Re: Scripting Language:
« Reply #5 on: January 24, 2006, 02:10:46 pm »
I was planning on using that kinda of textblock structure.

Offline The Crazy Animal

  • Administrator
  • Master
  • *****
  • Posts: 2448
  • Karma: +18/-20
Re: Scripting Language:
« Reply #6 on: January 24, 2006, 02:36:22 pm »
LOL, it?s a common code format that is the reason they use it.

Personally, if it was me I would have it be able to read the classic textblocks but I would also allow some more eloquent scripting options, since the textblock structure was at best unfriendly to work with.  I don?t know if it?s possible to have it do both but doing so would let it have that legacy feel with out the limitations of actually having to use it.

TCA