Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Ashon

Pages: [1] 2
1
Dead Souls Support / Re: How far can DS go?
« on: February 27, 2010, 09:40:02 am »
Quote from: Nilrin
It didn't take long to realize that designing the system the way I did was a complete hog of resources and having 50,000 objects all with heartbeats was generally not a good idea.

While there are probably workarounds for such a problem, I ultimately ended up with basically a fun science experiment and a nice crafting system.

Try having a crop daemon that tracks your growing seasons, every 'wheat' object should register with the crop daemon and when the daemon determines that it's time to grow, harvest, rot, whatever, it sends a message to the wheat object, and forces whatever changes you need.  That way it's all controled by a central location and if you want to make changes you've got a centralized place to do it.

2
Dead Souls Support / Re: How far can DS go?
« on: February 26, 2010, 10:41:16 pm »
yes.

3
Promotions / Re: LPC coder looking...
« on: February 06, 2010, 08:26:09 am »
Does this project include happy code?

4
General / Re: Contributing to the Kernel/Mudlib
« on: January 15, 2010, 09:45:35 am »
Hamsters poop in your han d when you pick them up.  It wouldve been better if I'd used the generally accepted colloquism of herding cats.

Quote
Thanks for the helpful tips, I was looking for a starting point to do something useful (even if it is something small) since it seems like it is all too easy to work on a fork that doesn't end up helping the community. I'll take the advice and get familiarized with the code vault section.

There's a lot to be said for developing systems that are compat busters, but unless you are deep in your development and there is a ton of inheritables that are lost in the nether world, you've got quite a few people who can take your code and translate it back to vanilla DS or to their flavor of DS.  New code is always appreciated and if it is nifty it gets used.  So code contributions are always loved and appreciated.

5
General / Re: SetBaseCost
« on: January 13, 2010, 08:47:31 am »
D'Oh.  At least I didn't get FAQ'd By Crat.   ;)


6
General / Re: Contributing to the Kernel/Mudlib
« on: January 13, 2010, 08:46:01 am »
FluffOS gets updates when Cratylus rounds up enough problems to get the hamsters on their wheel.  And speaking of Crat, he has been maintaining the trunk development of DS taking us to 3.0, and he has recently announced he is going to start working on his game instead of just working on the distribution.  Best way to contribute is to download the code and start working on it.

7
General / SetBaseCost
« on: January 12, 2010, 11:41:19 am »
I've grepped and poked and prodded and can't find where SetBaseCost is actually defined.  In create.c it points me to eventModCost in Money.c which still doesn't define SetBaseCost  (It looks like there is no REAL SetBaseCost and there is a lot of backwards compatibility functionality (or so I assume) before I go off and hack out an Actual SetBaseCost function I figured I'd ask the Guru's.

Why am I looking you ask?
I am hacking the weapons to have weapon defaults:
All short swords will share base stats and then depending on the actual object (A Flaming Short Sword) I want to enforce specific Defaults so that I don't have two Flaming Short Swords made by different builders that have different stats.  I have been able to find and hack most of my Defaults but can't locate this magical SetBaseCost() function.  Any pointers are much appreciated.

-Ashon

8
Dead Souls Support / Re: Happy Birthday Dead Souls!
« on: December 29, 2009, 09:34:15 am »
Crat Occasionally releases code that is a compat-buster, but not very often.  And as long as you have a diff program you should be fine on continuing to develop your game

9
LPMud 2.x and Amylaar / Re: Filter(object(), x, y, z) question
« on: September 23, 2008, 09:44:54 am »
Son of a...

Dammit...

I figured it out halfway through typing the post and was pretty sure I didn't post it.  But I guess I did.

*slaps his forehead*

10
LPMud 2.x and Amylaar / Filter(object(), x, y, z) question
« on: September 23, 2008, 01:24:45 am »
Okay, so I'm confused by the filter man files.

Here is what I am trying to do:


11
General / Re: function of armor
« on: September 15, 2008, 11:10:13 pm »
You have the power to make armor much more then either less hits/less damage.

How easy is it since you are starting pretty much from scratch to make the different armor types resist/conduct different types of damage?
The material can be more/less conducive to different types of magical attacks.
Armor can and should take damage for economic reasons, you can also add effects to armor, like spikes or studs which damage/deflect weapons.

You've got a whole subsystem that can be incredibly versatile, take advantage of it!

12
Dead Souls Support / Re: Happy Birthday Dead Souls!
« on: September 14, 2008, 10:03:41 am »
I started working on DS awhile back in 2006 while I was unemployed, and have worked on and off on my game, until I was able to revive my favorite mud.  But cratylus, lpmuds.net and intermud have been valuable resources for anyone doing lp development.

I'm currently working on a lib that is ancient.  And I boggle at the fact that DS is much better organized, written, and planned.  Good job Craty!

13
Dead Souls Support / Re: List of...?
« on: August 05, 2008, 10:07:11 am »
It's going to be different based on your player.c and the functions you have in it.

Your list is the player.c

14
Dead Souls Support / Re: Read Menu questions:
« on: June 27, 2008, 04:20:07 pm »
Thanks to the responses from Kalinash I was able to hack this together: bar.c for all your menu reading needs.
Code: [Select]
/*  /lib/bar.c
 *  From the Talos Object Library
 *  Added Functionality for Bars/Pubs to Read Menu Item
 *  So that it doesn't have to be re-coded each time.
 *  Version: 1.0
 *  Last Modified: 06/27/08
 *  Ashon
 */
 
#include <lib.h>
#include <message_class.h>


mixed barkeep_check(){
    object *livs = get_livings(this_object());
    object barkeep;
    if(sizeof(livs))
        foreach(object liv in livs){
        if(inherits(LIB_BARKEEP,liv)) {
write(liv->GetShort());
write(liv->GetNativeLanguage());
return liv;
}

    }
    return 0;
}

int ReadMenu(object who, string str) {
   
string array tmp2 = ({});
    string array tmp = ({ sprintf("%s \t\t\t\t%s", "Item", "Cost") });
object ob = barkeep_check();
if( !ob ) { // Barkeep
    who->eventPrint("The menu is too bloodstained to read.");
return 1;
}
   
    foreach(string *item in keys(ob->GetMenuItems())) {
if ( strlen(item[0]) > 20 ) {
tmp += ({ sprintf("%s \t%d silver", capitalize(item[0]),
to_int(ob->GetCost(item))) });
}
else if ( strlen(item[0]) > 10 ){
tmp += ({ sprintf("%s \t\t%d silver", capitalize(item[0]),
to_int(ob->GetCost(item))) });
}
else {
tmp += ({ sprintf("%s \t\t\t\t\t%d silver", capitalize(item[0]),
to_int(ob->GetCost(item))) });
}
   }

    foreach(string element in tmp){
if ( nullp(ob->GetNativeLanguage())) {
element = translate(element,  this_player()->GetLanguageLevel(ob->GetNativeLanguage()));
tmp2 += ({ element });
}
        else {
element = translate(element,  this_player()->GetLanguageLevel("Common"));
tmp2 += ({ element });
}
    }
    tmp = tmp2;


    // show the menu a page at a time
    this_player()->eventPage(tmp, MSG_SYSTEM); // MSG_SYSTEM means ignore blocking
    return 1;


15
Dead Souls Support / Read Menu questions:
« on: June 27, 2008, 11:43:30 am »
straight out of pub.c in Yslrim:

Code: [Select]
int readMenu(object who, string str) {
    string array tmp2 = ({});
    string array tmp = ({ sprintf("%:-20s %:-7s", "Drink", "Cost") });
    object ob = present("lars");

    if( !ob ) { // lars is dead!
        this_player()->eventPrint("The menu is too bloodstained to read.");
        return 1;
    }
    foreach(string *item in keys(ob->GetMenuItems())) {
        tmp += ({ sprintf("%:-20s %d electrum", capitalize(item[0]),
            to_int(ob->GetCost(item))) });
    }
    foreach(string element in tmp){
        element = translate(element,  this_player()->GetLanguageLevel("Edhellen"));
        tmp2 += ({ element });
    }
    tmp = tmp2;
    // show the menu a page at a time
    this_player()->eventPage(tmp, MSG_SYSTEM); // MSG_SYSTEM means ignore blocking
    return 1;

Which is called from this little gem in the main room definition:
Code: [Select]
SetRead("menu", (: readMenu :));

So what I need to do is be able to pass the bar keeps name into the function so that it can be inherited into any and all "Inns".

Pages: [1] 2