BYOND Hack - "Embed" Python code in DM

This post on the forum gave me a funny idea that I'm sure will make some of you shudder. How can we embed Python code within DM?

Start off by installing Python if you haven't already got it (it comes standard with pretty much any modern OS but Windows). Next grab my byondthon.py script and run it. This script will start a fake web server on port 9001 which we'll be using to execute our Python code.

Now, fire up Dream Maker and start a new project. Paste in the following code:
proc/python(code)
	var/http[] = world.Export("http://127.0.0.1:9001?" + code)
	if(!http)
		usr << "Failed to connect." 
		return

	var/F = http["CONTENT"]
	if(F)
		usr << html_encode(file2text(F))

mob/verb/test()
	python({"
import time, sys
print 'Hello from python', sys.version
print 'The time is: ' + time.asctime()
print 'Did you know that 792 to the power of 42 is ', 792**42, '?'"})

(Yes the indenting within the test verb should be like that. Otherwise Python will get confused by the extra whitespace.)

Now try running it and using the test verb.

Cool, huh? ;-)

Posted by BobOfDoom on Tuesday, March 06, 2007 04:03AM - 4 comments / Members say: yea +0, nay -0
(Edited on Tuesday, March 06, 2007 04:14AM)

Ooh, colours!


*snip* (Javascript no longer works in blog pages).



Posted by BobOfDoom on Wednesday, April 20, 2005 01:34AM - 7 comments / Members say: yea +0, nay -0
(Edited on Monday, March 05, 2007 01:06AM)

Some more "Latin"

If you want to use this as a template I don't mind.

Okay! Got both sets of boxes in the right place by spying on Mike H's code ;).

I want to see what this looks like with a few posts, so enjoy some more computer generated Latin.

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Curabitur rutrum. Fusce pede turpis, tincidunt id, dignissim a, tincidunt in, orci. Duis quis nisl. Aliquam varius. Morbi lobortis semper lectus. Donec elementum. Ut aliquam consectetuer quam. Mauris consequat. Nullam lobortis lacus non diam. Nullam ligula. Integer nec erat quis elit mollis pulvinar. Sed non elit. Donec vulputate tortor ut libero. Curabitur feugiat, libero non nonummy pharetra, felis mauris sodales urna, eget condimentum justo lorem nec risus. Nulla varius facilisis magna. Nam at turpis non wisi gravida vestibulum.

Praesent malesuada urna vitae dui. Sed sapien wisi, lobortis in, placerat nec, imperdiet at, massa. Nunc tristique vestibulum magna. Donec lobortis, felis ut rutrum fringilla, tellus ante luctus ipsum, adipiscing elementum neque odio quis augue. Proin cursus consequat enim. Donec tempor vehicula purus. Vestibulum semper euismod diam. Integer nec libero. Nulla ultricies dolor tristique nulla. Integer enim augue, sagittis sed, blandit vitae, hendrerit nec, orci.

Posted by BobOfDoom on Tuesday, April 19, 2005 10:11PM - 1 comment / Members say: yea +0, nay -0

A simple post

Ouch! Those defaults really kill my design. There, looking a bit nicer (except in IE).

I haven't got anything much to say just yet. This post is for playing around with the CSS. Maecenas at leo. Mauris in augue. Mauris tincidunt dictum erat. Duis luctus. Donec ut nisl vitae mauris congue mollis. Suspendisse pellentesque, velit at placerat interdum, turpis nibh rhoncus arcu, sed tristique massa enim non diam. Maecenas nunc quam, convallis vitae, facilisis vitae, placerat nec, risus. Etiam est sapien, ultricies id, fringilla eu, suscipit elementum, pede. Nam a felis. Vivamus libero odio, ultrices et, scelerisque quis, egestas eget, libero. Suspendisse vitae risus nec eros nonummy laoreet.

Curabitur porta nibh quis dolor. Sed ornare aliquam pede. Donec nec dui. Maecenas hendrerit, nunc eu facilisis convallis, nulla dolor tincidunt odio, non tempor enim quam quis tellus. Praesent ligula lorem, tristique semper, volutpat vitae, rutrum ut, lectus. Ut nisl. Praesent ligula magna, aliquet quis, porttitor ac, luctus ultrices, libero. Curabitur quis enim a purus dapibus tristique. Vestibulum sodales velit nec diam. Duis ut mi suscipit elit feugiat viverra. Sed interdum, lacus in aliquam gravida, lorem ante placerat elit, eu pellentesque nulla quam gravida nulla. Integer laoreet quam vel dui. Praesent auctor pharetra diam. Mauris lorem. Sed sapien. Morbi erat dui, vulputate in, egestas at, interdum ut, tortor. Sed eget massa.

Ut nec nunc nec metus faucibus consectetuer. Morbi elementum. Maecenas ligula. Ut aliquet pretium pede. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Curabitur diam. Vestibulum nonummy arcu at nunc. Morbi libero dolor, aliquam in, tempor vitae, aliquam vitae, velit. Proin sollicitudin arcu sed ligula nonummy feugiat. Nullam bibendum lobortis odio. Phasellus adipiscing gravida felis. Integer est nisl, mollis vel, accumsan nec, venenatis vel, augue. Ut condimentum.

Posted by BobOfDoom on Tuesday, April 19, 2005 06:31PM - 3 comments / Members say: yea +0, nay -0

BobOfDoom

Joined: Oct 21, 03

Blog Calendar

March 2007
Su Mo Tu We Th Fr Sa
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
 
«Apr