Caius
Conjurer


Group: Members
Posts: 114
Joined: Oct 21, 2006
|
#31 Posted Oct 13, 2008, 11:51 pm
|
exeter said:Sorry about the minor thread necromancy, but I have a suggestion. How about a 32k or 24k MUD codebase contest, modelled after the 16k competition? I think just having the cachet of Mudbytes behind it, along with some promotion on Usenets and the major MUD sites should attract at least 3 or 4 entries, and that'd be interesting enough. Hell, I might even enter! :)
Thoughts?
Hehe. From Erwin Andreasen's 16K page, mark the words at the end of the first section: "Thanks to everyone for the entries -- and see you in the 32k MUD competition (just kidding ;) )"
Seriously, though. I think 3 or 4 entries would be the most one could expect, depending on how long the deadline is, and how well it's promoted (and in what way). I have a few game ideas myself that are suited for a small mud, so it could be fun.
|
......................... SWR2 Refactor - The improved SWR 2.0 codebase.
|
|
Caius
Conjurer


Group: Members
Posts: 114
Joined: Oct 21, 2006
|
#32 Posted Oct 14, 2008, 12:03 am
|
Noplex said:How would you handle someone writing a MUD in Python, Ruby or Java? Are we talking about the size of the final executable or the code? Because those languages have a lot of nice features that are linked in from their standard libraries. I wouldn't mind joining a contest to mod an existing engine (e.g. SocketMUD) and then sizing the difference. But I always seem to miss the dates on these things. Keep me informed!
Yeah, you have a good point here. Some language has more built in functionality than other. So it would be very unreasonable to place restrictions on source code size. Size on the executable would be equally futile, since different compilers yields different sizes on that.
|
......................... SWR2 Refactor - The improved SWR 2.0 codebase.
|
|
KaVir
Wizard


Group: Members
Posts: 1,114
Joined: Jun 19, 2006
|
#33 Posted Oct 14, 2008, 6:22 am
|
Noplex said:How would you handle someone writing a MUD in Python, Ruby or Java? Are we talking about the size of the final executable or the code?
The 16K MUD competition split the entries into two categories based on programming language, and the 16K limit referred to the size of the source code (without comments, blank lines and leading white spaces). There's no reason why you couldn't do exactly the same thing again.
However I'd be surprised if many people entered a 32K MUD competition - I know I certainly wouldn't consider it a worthwhile use of my time. The 16K MUD competition was a novel idea that allowed people to prove they could design and develop a feature-full mud from scratch in a very small amount of code. This would just be a repetition of an old idea, and would require twice as much work.
|
......................... KaVir at God Wars II: godwars2.org 3000 Roomless world. Manual combat. Endless possibilities.
Last edited Oct 14, 2008, 6:22 am by KaVir
|
|
Noplex
Magician


Group: Members
Posts: 84
Joined: May 20, 2006
|
#34 Posted Oct 14, 2008, 12:59 pm
|
KaVir said:Noplex said:How would you handle someone writing a MUD in Python, Ruby or Java? Are we talking about the size of the final executable or the code?
The 16K MUD competition split the entries into two categories based on programming language, and the 16K limit referred to the size of the source code (without comments, blank lines and leading white spaces). There's no reason why you couldn't do exactly the same thing again.
However I'd be surprised if many people entered a 32K MUD competition - I know I certainly wouldn't consider it a worthwhile use of my time. The 16K MUD competition was a novel idea that allowed people to prove they could design and develop a feature-full mud from scratch in a very small amount of code. This would just be a repetition of an old idea, and would require twice as much work.
I'd be interested in a 16K contest. I missed out on the first one.
|
|
......................... jb
Last edited Oct 14, 2008, 1:00 pm by Noplex
|
|
|
|
Chris Bailey
Sorcerer


Group: Members
Posts: 499
Joined: Sep 13, 2008
|
#36 Posted Oct 14, 2008, 4:35 pm
|
So it seems that not many people would be interested in a new "Mud competition" that required entrants to design a new codebase. If that is the case, what kind of contest would people like to enter? I'm very interesting in getting this started and I would be more than willing to contribute my time to the project but I need a good way to measure the interest.
A) How many of you are interested in a programming challenge centered around mud development?
B) Of those interested in a challenge, what would some of you like the challenge to be about?
C) Would interested parties be interested in creating a new sub-community centered around mud-related programming challenges?
D) Would said parties be interested in smaller, code-base specific challenges that can be added to the mudbytes repository afterwards?
EDIT: I would like to note that my original idea was to develop a way of hosting multiple diverse challenges that might interest
several people all across the mudding community.
|
......................... If what Proust says is true, that happiness is the absence of fever, then I will never know happiness. For I am possessed by a fever for knowledge, experience, and creation.
Quote:[ichat] Twisol@Talon: Do me, do me.
Last edited Oct 14, 2008, 4:38 pm by Chris Bailey
|
|
David Haley
Wizard


Group: Members
Posts: 5,727
Joined: Jun 30, 2007
|
#37 Posted Oct 14, 2008, 4:45 pm
|
A) count me in, in general.
B) unclear, to be honest. It would have to be something for which entrants are fairly easy to compare. That could mean comparing end results as far as the user is concerned, or code quality -- but comparing code quality has several issues. Something that might be interesting would be a conversation system based on topics, like Morrowind/Oblivion, but that is a very open-ended challenge...
C) only if there's enough interest to warrant it. At present I'm not sure that is the case.
D) I guess so, although it depends on which codebase of course. And I'd rather the winning entry have some (more or less firm) guarantee of being accepted into the source, and not be "just another snippet". Of course, this is only relevant for codebases under this community's general umbrella (FUSS, RaM now, etc.)
In general, my interest would be in adding something that hasn't really been done, or hasn't been done often or well. This typically involves somewhat advanced features, which is a double-edged sword when it comes to competitions. The more interesting something is, the harder it is, meaning the fewer entrants you'll get. If it's just a few people competing, time could arguably be better spent doing three separate projects.
I think I need to think about this some more, I don't have very firm ideas at present...
|
|
|
Vassi
Conjurer


Group: Members
Posts: 182
Joined: Sep 24, 2008
|
#38 Posted Oct 14, 2008, 11:35 pm
|
Chris Bailey said:So it seems that not many people would be interested in a new "Mud competition" that required entrants to design a new codebase. If that is the case, what kind of contest would people like to enter? I'm very interesting in getting this started and I would be more than willing to contribute my time to the project but I need a good way to measure the interest.
A) How many of you are interested in a programming challenge centered around mud development?
B) Of those interested in a challenge, what would some of you like the challenge to be about?
C) Would interested parties be interested in creating a new sub-community centered around mud-related programming challenges?
D) Would said parties be interested in smaller, code-base specific challenges that can be added to the mudbytes repository afterwards?
EDIT: I would like to note that my original idea was to develop a way of hosting multiple diverse challenges that might interest
several people all across the mudding community.
A) Definitely interested.
B) I'm with David on this one, I think maybe something not 'common' perhaps. I also agree that the better question is what the judging criteria is, I.E. are you judging purely for efficiency in the design, or the robustness of the user experience? Personally I'm in favor of the latter, since that's what actually matters. (Not to say that a badly written piece of code should win just because it's feature crammed, but a sublimely 'elegant' design should lose to a slightly less elegant, but vastly more 'fun' product.
C) I agree that I don't think there's enough interest, exactly. What i'd love to see though is some kind of blogging site with multiple contributors, maybe have a monthly article written by a guest programmer or something on a specific topic. I.E. pick a codebase with a cool custom feature and ask the author to write a little about it, what the challenges were that led them to their decision and how they implemented it, etc. That kind of thing is mostly language agnostic as it's a question of design over function, when you hear the problems and the solutions most (interested) programmers will immediately see how they could tackle that kind of problem in their language of choice.
The code challenge could piggy back onto that kind of site easily.
D) My biggest fear there is that it's a heavy C\C++ skew there - but then that is where the majority of the code falls, so I guess that's ok - it just wouldn't do much for me.
|
......................... Vassi no Diem et Tharin
< ramble/>
Last edited Oct 14, 2008, 11:36 pm by Vassi
|
|
Idealiad
Sorcerer

Group: Members
Posts: 256
Joined: Jan 28, 2007
|
#39 Posted Oct 15, 2008, 2:53 am
|
I think it would be wise to:
- split the judging between (a) style and ingenuity of code and (b) user experience (so the entry must be something you can either play, or it's documented well enough that you can imagine playing with it). The scoring system gives points in both categories.
- keep the contest hosted here (you could keep contest talk in a single thread, and MudBytes does have an articles section, and a news section on the front page, right?).
- allow for any language to be used, but if your panel of judges doesn't cover a particular language, simply say sorry, you don't get points for the judging of (a) if you enter with an obscure language.
- keep the scope of the contest narrow, but it would be interesting to have a 'contest series' where each successive contest is related to the previous. Perhaps it's organized around a central theme, for example such as geography (coordinate systems, free roaming environments), npcs (conversation, AGI), physics, or events (sense passing).
|
|
|
The_Fury
Sorcerer


Group: Banned
Posts: 485
Joined: Jun 1, 2008
|
#40 Posted Oct 15, 2008, 3:12 am
|
A) How many of you are interested in a programming challenge centered around mud development?
Interested
B) Of those interested in a challenge, what would some of you like the challenge to be about?
The only things i can think of are specific to my own game and that would be unfair. Tho a better autoquestor would is something i can think of that would benifit a lot of generic bases. Vasago's quest system just does not cut it anymore.
C) Would interested parties be interested in creating a new sub-community centered around mud-related programming challenges?
A new thread or section here would suffice, IMO i think bringing a lot of things under one umbrella has a lot of benefits all around.
D) Would said parties be interested in smaller, code-base specific challenges that can be added to the mudbytes repository afterwards?
I think, in general, smaller projects that can be used across a number of bases with minimal porting would be a boon here.
|
......................... bMUD: Custom server written in Ruby.
The Oriental Dojo Mud
The_Fury: Coder and Designer.

|
|
KaVir
Wizard


Group: Members
Posts: 1,114
Joined: Jun 19, 2006
|
#41 Posted Oct 15, 2008, 5:07 am
|
DavidHaley said:In general, my interest would be in adding something that hasn't really been done, or hasn't been done often or well.
Same here. My interest would be further increased if the entry were something that I could reuse in my own mud (because then it wouldn't feel as if I were taking time away from my mud to enter the competition).
Vassi said:I also agree that the better question is what the judging criteria is, I.E. are you judging purely for efficiency in the design, or the robustness of the user experience? Personally I'm in favor of the latter, since that's what actually matters. (Not to say that a badly written piece of code should win just because it's feature crammed, but a sublimely 'elegant' design should lose to a slightly less elegant, but vastly more 'fun' product.
That really depends on what the entry is supposed to be used for. If it's something intended to be used out-of-the-box then obviously "fun" is a very important factor, but if it's only intended to serve as a foundation for further enhancements then IMO a stable and elegant design would be far more important.
The 16K MUD competition gave features a weighing of 1.6 and fun a weighing of 1.3, while maintainability and stability were given a weighing of 0.9 and 0.6 respectively. In my opinion that was the wrong way around for a barebones codebase designed as a platform for people to build their own games on.
I would also appreciate it if the weighings were made clear in advance (the 16K MUD competition didn't do this).
The_Fury said:I think, in general, smaller projects that can be used across a number of bases with minimal porting would be a boon here.
That's what I'd prefer as well. For the mudmagic coding contests I ensured that my entries could be compiled and tested as standalone applications, but also came with clear installation instructions for Merc 2.1. I then submitted two copies of my code - one on its own (with the standalone option enabled), and the other preinstalled into a copy of Merc 2.1 (note that I picked Merc 2.1 because (1) I'm familiar with it, and (2) it's the parent of most modern Diku muds and thus reasonably familiar to a wide range of developers, but I think any other well-known codebase would be fine as well).
My second entry also compiled cleanly as both C and C++, so that it could be used in any codebase written in either language, with minimum programming effort.
Obviously I'm highly biased, because it's the approach I already favour, but I think it's one that makes sense considering the wide range of different codebases out there. The more easily a snippet can be ported to different muds, the more likely it is to be used.
|
......................... KaVir at God Wars II: godwars2.org 3000 Roomless world. Manual combat. Endless possibilities.
|
|
quixadhal
Wizard


Group: Members
Posts: 1,256
Joined: Oct 17, 2007
|
#42 Posted Oct 15, 2008, 8:07 am
|
Strictly my own desire being pushed here.... but maybe it would be the right kind of scope for such a competition.
One of the things I've kept tossing around for a few years now, but been put off really working on due to my past habits of not doing my math homework, is creating a world-map system using Perlin noise. I say Perlin noise, to distinguish it from other fractal systems that require you to make the map finite size, or generate it in blocks and store them. Any system that gives you numbers that share the same properties (the same output from the same input, seemingly random, but adjacent numbers are close to each other) would work.
Obviously there are a couple parts to making that a useful system.
DikuMUD's don't use seperate values for terrain height, vegetation, climate, etc... they just have a single sector type. So, if you were aiming for a DikuMUD snippet, you'd need to use several noise functions and map the combinations of values to sector types. A high value would be a mountain, but a low value might be water in one climate, but ice in another.
Once you have a terrain system working, you need a dynamic description system which, at the minimum, would need to look at all the adjacent room terrains to not be worthless.
Of course, to integrate with the existing hand-built vnums, you'd want a way to specify points of entry. In other words, rooms along the border would need to store coordinate values so if you try and "generate" something using those coordinates, it would instead say "AHA! I already have a saved room, here ya go!" That would also let you roam around the virtual wilderness, decide you want to add a crumbling stone pillar to a particular place, and "save" the room, making it a real vnum-based room.
Lastly, there would be cleanup details to handle, like what happens when a player quits (or disconnects) in a virtual room, how long do you let such rooms hang around before nuking them, if you drop things in them, do the things just go away? If you have OLC, those systems need to become aware of virtual rooms and coordinates, so they can be integrated.
So, maybe not a small enough project for a competition afterall. Then again, I do recall one or two of the entries in the 16K version had dynamic room generation, so maybe not so far off either.
Anyways, I wanted to write that all in one spot and see what anyone thinks of it, competition or no. :)
|
......................... 
|
|
David Haley
Wizard


Group: Members
Posts: 5,727
Joined: Jun 30, 2007
|
#43 Posted Oct 15, 2008, 10:28 am
|
Idealiad said:allow for any language to be used, but if your panel of judges doesn't cover a particular language, simply say sorry, you don't get points for the judging of (a) if you enter with an obscure language.
IMO the only way this could possibly be acceptable would be for the list of languages to be known ahead of time, or at the least allow people to request if a language would be accepted.
|
|
|
Noplex
Magician


Group: Members
Posts: 84
Joined: May 20, 2006
|
#44 Posted Oct 15, 2008, 10:55 am
|
DavidHaley said:Idealiad said:allow for any language to be used, but if your panel of judges doesn't cover a particular language, simply say sorry, you don't get points for the judging of (a) if you enter with an obscure language.
IMO the only way this could possibly be acceptable would be for the list of languages to be known ahead of time, or at the least allow people to request if a language would be accepted.
Agreed, I'd like a list ahead of time. I am assuming that languages such as Python, Ruby, Java, etc; I'd like to know if linking in non-standard external libraries (such as boost) would go against the overall size of the code. The rules need to be straightforward, but other than that, count me in.
|
|
......................... jb
|
|
Chris Bailey
Sorcerer


Group: Members
Posts: 499
Joined: Sep 13, 2008
|
#45 Posted Oct 15, 2008, 1:01 pm
|
Quixadhal said:Strictly my own desire being pushed here.... but maybe it would be the right kind of scope for such a competition.
One of the things I've kept tossing around for a few years now, but been put off really working on due to my past habits of not doing my math homework, is creating a world-map system using Perlin noise. I say Perlin noise, to distinguish it from other fractal systems that require you to make the map finite size, or generate it in blocks and store them. Any system that gives you numbers that share the same properties (the same output from the same input, seemingly random, but adjacent numbers are close to each other) would work.
I hadn't thought of using perlin noise to generate a wilderness but it's an excellent idea, especially for very large overland terrain. I'm going to go look at some of the generators for 3d terrain and see what I can come up with.
|
......................... If what Proust says is true, that happiness is the absence of fever, then I will never know happiness. For I am possessed by a fever for knowledge, experience, and creation.
Quote:[ichat] Twisol@Talon: Do me, do me.
|
|