#define WORLD_DEMON_ATTACK  1
#define WORLD_RAIN_FIRE 2
#define WORLD_SUPER_TSUNAMI 3

mob/DemonSpree
parent_type = /mob/SATAN
New()
..()
world << "[src.name]: Gentlemen... DESTROY!"
World_Death_Knell(WORLD_DEMON_ATTACK)


mob/DemonSpree
parent_type = /mob/retard
In response to CaptFalcon33035
LOL.
mob/Captain_Falcon
parent_type = /mob/Nintendo
New()
world<<"Falcon PUUUNCH!



In response to DemonSpree
client/New()
..()
while(usr.OS == "Microsoft")//THE ONE AND ONLY.
usr.BSOD(usrusrusrusrusr)//ACTUAL MICROSOFT CODE :P


Make it abusive :D

If Microsoft made some motherboards i bet they would have something like this.

client/New()
..()
if(usr.OS == "Ubuntu")//ONLY ALLOW OUR OS WINDOWS!
del(usrusrusr)//BECAUSE
else
usr.BSOD(usrusrusrusr)
In response to A.T.H.K
A.T.H.K wrote:
client/New()
> ..()
> while(src.OS == "Microsoft")
> src.BSOD()


Microsoft isn't an operating system.
And that's not fair! I've been using Windows XP for the majority of my computing journey and I have never once got a BSOD! I've gotten many viruses, but never the BSOD. I have had random reboots, but I have it so the BSOD shows up and the computer doesn't automatically reboot, so I attribute those reboots to viruses and they were exactly the things at fault!
In response to CaptFalcon33035
Made it more like how Microsoft would do it.
In response to KodeNerd
KodeNerd wrote:
Here is a link to a page that will tell you some <small>cheesy</small> programming jokes: http://csjokes.com

I actually like this one:

Why do programmers always get Christmas and Halloween mixed up?
Because DEC 25 = OCT 31

:P
In response to CaptFalcon33035
CaptFalcon33035 wrote:
I have had random reboots, but I have it so the BSOD shows up and the computer doesn't automatically reboot, so I attribute those reboots to viruses and they were exactly the things at fault!

By default, XP and Vista reboot instead of giving the BSOD (in general).

George Gough
In response to KodeNerd
KodeNerd wrote:
By default, XP and Vista reboot instead of giving the BSOD (in general).

George Gough

That's exactly why I provided that statement.
In response to CaptFalcon33035
CaptFalcon33035 wrote:
That's exactly why I provided that statement.

I have got to stop skimming peoples posts and just wait till after I am done with stuff to read them.

George Gough
client
New()
var/I = 1
while(I)
I = rand(0, 4500)
world << "[I] bottles of been on the wall! [I] bottles of beer?[I > 99 ? " Who the hell keeps buying more beer!?" : null]"
sleep(10)
world << "No more bottles of beer on the wall!"
del(world)


See how long it takes you to get to zero now.
In response to Tiberath
That won't compile if I read it correctly.

George Gough
In response to KodeNerd
loading Bottles of Beer.dme
saving Bottles of Beer.dmb

Bottles of Beer.dmb - 0 errors, 0 warnings
In response to KodeNerd
KodeNerd wrote:
That won't compile if I read it correctly.

You Fail George Gough :D.
In response to Tiberath
Tiberath wrote:
See how long it takes you to get to zero now.

In terms of probability, I would say when (4500/4501) * (4500/4501) * (4500/4501) * ... * (4500/4501) is equal to or below 0.50.

I could've used a mathematical formula to count this in one easy go, but I figured I'd do an iterative solution instead. Anyway, it turns out to be 3120 seconds, or 52 minutes, on average.

mob/verb/count_cycles()
var/val = 4500/4501
var/iterations = 1
while(val > 0.50)
val *= 4500/4501
++iterations
usr << iterations
Here's my rendition of the bottles of beer song in the DM language:
EDIT: Revised!
world/New()
var/bottles=99
while(!(locate(/client) in world)) sleep(1)
for()
world<<"[bottles] bottle\s of beer, [bottles] bottle\s of beer..."
sleep(5)
world<<"Take one down, pass it around..."
sleep(5)
world<<"[--bottles ? "[bottles] bottle\s" : "No more bottles"] of beer on the wall!"
sleep(5)
if(!bottles)
world<<"No more bottles of beer, no more bottles of beer..."
sleep(5)
world<<"Go to the store and buy some more..."
sleep(5)
world<<"99 bottles of beer on the wall!"
sleep(5)
bottles=99

Alternative One:
world/New()
var/bottles=99
while(!(locate(/client) in world)) sleep(1)
for()
world<<"[bottles] bottle\s of beer, [bottles] bottle\s of beer..."
sleep(5)
world<<"Take one down, pass it around..."
sleep(5)
world<<"[--bottles ? "[bottles] bottle\s" : "No more bottles"] of beer on the wall!"
sleep(5)
if(!bottles) del world

Alternative Two:
world/New()
var/bottles=99
while(!(locate(/client) in world)) sleep(1)
for()
world<<"[bottles] bottle\s of beer, [bottles] bottle\s of beer..."
sleep(5)
world<<"Take one down, pass it around..."
sleep(5)
world<<"[--bottles ? "[bottles] bottle\s" : "No more bottles"] of beer on the wall!"
sleep(5)
if(!bottles)
if(rand(0,1))
world<<"We ain't drunk enough yet!"
sleep(5)
world<<"No more bottles of beer, no more bottles of beer..."
sleep(5)
world<<"Go to the store and buy some more..."
sleep(5)
world<<"99 bottles of beer on the wall!"
sleep(5)
bottles=99
else del world
In response to Naokohiro
If we're going to look at this seriously:
client      
New()
for(var/bottles = 99; bottles > -1; bottles--)
if(bottles) world << "[bottles] bottle[bottles != 1 ? "s" : null] of beer on the wall, [bottles] bottle[bottles != 1 ? "s" : null] of beer. You take one down and pass it around, [bottles - 1] bottle[(bottles -1) != 1 ? "s" : null] of beer on the wall!"
else
bottles = 100
world << "No more bottles of beer on the wall, no more bottles of beer! Go to the store and buy some more! 99 bottles of beer on the wall!"
sleep(10)

In response to Tiberath
Tiberath wrote:
If we're going to look at this seriously:

And make it less efficient than some of the already posted versions at some parts? >_> Also, I'd also put all the text on one output since it's silly to have consecutive outputs like some people have done (except Naokohiro (sp?) since he has delays between them), but you forgot to put newlines (\n) so it wouldn't be a mess. :P
In response to Kaioken
Kaioken wrote:
Tiberath wrote:
If we're going to look at this seriously:

And make it less efficient than some of the already posted versions at some parts? >_> Also, I'd also put all the text on one output since it's silly to have consecutive outputs like some people have done (except Naokohiro (sp?) since he has delays between them), but you forgot to put newlines (\n) so it wouldn't be a mess. :P

Outputting new lines isn't necessary in DM. world << "message" will put itself on a new line automatically.

[edit]
When I received the pager message about that response, the pager told me:
Failed to decompress message of length 18836 (zipped 17410)
BYOND(427.997) Debug: failed to unzip message 67,17416.

How bizarre.
In response to Tiberath
Your use of "bottles != 1 ? "s" : null" isn't necessary, I believe "bottle\s" will have the exact same effect. It should check to see if the last variable used in the string was a number over one, and add the s, but ignored the s if it is under 2.
In response to Tiberath
You've misunderstood, I did not say otherwise. I said that in your version, all of the sentences are crammed on one line, which will look slightly messier despite DS' word wrap, therefore in your version it should be added. For the other versions, it's silly and less efficient to do:
world << "One"
world << "Two"
world << "Three"

Of course that's 3 function calls and whatever is done internally instead of just 1.
world << "One\nTwo\nThree" //sukkess
Page: 1 2 3