Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
SLIGE... Automatic level generator for DOOM!
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gamers & Players
View previous topic :: View next topic  
Author Message
bLUEbYTE84
Guru
Guru


Joined: 21 Jul 2006
Posts: 566
Location: universe.tar.gz, src/earth.h, struct homo_sapiens_table

PostPosted: Thu Dec 28, 2006 10:30 pm    Post subject: SLIGE... Automatic level generator for DOOM! Reply with quote

Hey,
I think many of you DOOM(1 and 2, not 3) players know SLIGE. In case you don't; well it generates single player levels for DOOM automatically, and IT ROCKS. The generated levels are very enjoyable in fact.

I got its source (originally for DOS and windows) and made some small modifications so that it now compiles and runs flawlessly (tested both on x86 amd amd64). If anyone is interested on making an ebuild, I can send the source file together with the few original accompanying text & cfg files. Let's take this gem into portage.

I play-tested the generated levels on PrBOOM and Doomsday.
Usage: You run slige and it generates a file SLIGE.OUT. Then you convert it to a .WAD file using glbsp program (which is already in portage). Then you feed this .wad to your favourite Doom port, enter a new game in the first episode and there you go... Fun action.
Back to top
View user's profile Send private message
PaulBredbury
Watchman
Watchman


Joined: 14 Jul 2005
Posts: 7043

PostPosted: Fri Dec 29, 2006 3:42 am    Post subject: Reply with quote

The source code needs to be hosted somewhere. Can you host it? Or perhaps start a Sourceforge project?
Back to top
View user's profile Send private message
Phenax
l33t
l33t


Joined: 10 Mar 2006
Posts: 972

PostPosted: Fri Dec 29, 2006 4:00 am    Post subject: Reply with quote

You know, I'd say start Sourceforge project -- hell, I might even be interested at contributing a bit of code as needed.
Back to top
View user's profile Send private message
vibrokatana
Guru
Guru


Joined: 09 Feb 2006
Posts: 328
Location: o0o0oo

PostPosted: Fri Dec 29, 2006 5:39 am    Post subject: Reply with quote

sourceforge is great. As long as your files dont become incredibly huge, then its a pain..
_________________
My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time."
Back to top
View user's profile Send private message
tylerwylie
Guru
Guru


Joined: 19 Sep 2004
Posts: 455
Location: /US/Illinois/Champaign

PostPosted: Fri Dec 29, 2006 6:54 am    Post subject: Reply with quote

Wow, I need to try this.
_________________
"Government is to society, what rape is to lovemaking"
Back to top
View user's profile Send private message
bLUEbYTE84
Guru
Guru


Joined: 21 Jul 2006
Posts: 566
Location: universe.tar.gz, src/earth.h, struct homo_sapiens_table

PostPosted: Fri Dec 29, 2006 11:14 am    Post subject: Reply with quote

Hi again,
Unfortunately I cannot host it (have sucky ADSL connection and comp is not 24/7 running).
And about sourceforge; I have never used sourceforge.net to host a project, and I doubt the source can be justified to be hosted as it really is just a small modification on the original source.

The source code consists of only one file, SLIGE.C (A C++ source)

Maybe someone/somewhere can host a diff patch?

Links:
Official SLIGE web page
Official SLIGE sources
Source tarball containing the modified SLIGE.C
A static i386 binary I compiled

Compilation:
On x86: I used
Code:
gcc -O2 -o slige SLIGE.C

On amd64: I used
Code:
gcc -O2 -o slige SLIGE.C
EDIT: Doesn't compile & work properly on AMD64
UPDATE: The amd64 compiled slige generates invalid .out file (can't converted by glbsp :/ ) Any ideas? Also tried without optimizations but no good :(

Running:
Copy the binary to /usr/local/bin if you want.
Then run:
Code:
slige

You need a program called glbsp to convert this file to a format understood by the game so
Code:
emerge glbsp

Then run this to convert the SLIGE output to a .wad:
Code:
glbsp SLIGE.OUT -o slige.wad


Now you are ready to play your new level:
For Doomsday:
Code:
doomsday-doom -file /usr/share/games/doom-data/DOOM.WAD -file ./slige.wad

For prboom:
Code:
prboom -iwad /usr/share/games/doom-data/DOOM.WAD -pwad ./slige.wad


Last edited by bLUEbYTE84 on Thu Jan 04, 2007 2:34 am; edited 2 times in total
Back to top
View user's profile Send private message
Phenax
l33t
l33t


Joined: 10 Mar 2006
Posts: 972

PostPosted: Fri Dec 29, 2006 11:23 am    Post subject: Reply with quote

OT:
Does Doomsday work for AMD64 yet?


Anyways, I believe Sourceforge lets you in without any code (Pre-planning)
I'd say slap a name on it, like "Leetige" [who cares], and make a project. Just make sure you send him an e-mail.. telling him you are :P.., licensing junk, bleh..
Back to top
View user's profile Send private message
bLUEbYTE84
Guru
Guru


Joined: 21 Jul 2006
Posts: 566
Location: universe.tar.gz, src/earth.h, struct homo_sapiens_table

PostPosted: Fri Dec 29, 2006 11:32 am    Post subject: Reply with quote

Phenax wrote:
OT:
Does Doomsday work for AMD64 yet?

Never tried it on amd64, I'm using prboom on amd64. I think it is better (more faithful to the original) ayway
Back to top
View user's profile Send private message
Phenax
l33t
l33t


Joined: 10 Mar 2006
Posts: 972

PostPosted: Fri Dec 29, 2006 11:48 am    Post subject: Reply with quote

I use Vavoom myself, great engine.. Doomsday didn't work on amd64 last time I tried it, or I'd probably be using that. PrBoom is good, but I can't play without Mouselook :(

I'd like to see the furthering of this utility though, I've never used it (More of a Quake guy), but it looks very nice. I do get bored of Doom after beating it a multitude of times. I could have a shiny new level by just running a script and waiting a few, sounds good.
Back to top
View user's profile Send private message
bLUEbYTE84
Guru
Guru


Joined: 21 Jul 2006
Posts: 566
Location: universe.tar.gz, src/earth.h, struct homo_sapiens_table

PostPosted: Fri Dec 29, 2006 11:53 am    Post subject: Reply with quote

Phenax wrote:
I use Vavoom myself, great engine.. Doomsday didn't work on amd64 last time I tried it, or I'd probably be using that. PrBoom is good, but I can't play without Mouselook :(

I'd like to see the furthering of this utility though, I've never used it (More of a Quake guy), but it looks very nice. I do get bored of Doom after beating it a multitude of times. I could have a shiny new level by just running a script and waiting a few, sounds good.


Go ahead and test it if your arch is x86 or you have 32bit compat stuff. I think you will be impressed. Would be glad to hear feedbacks. Or failing that, I can upload a sample generated level.

BTW, Thinking of the possibilities... What about porting it to a web language like PHP or CGI? It generates the level and then you download it :D

Edit: I'll see what I can do with this source... Would be nice to develop something together if any of you guys are interested.
Back to top
View user's profile Send private message
Phenax
l33t
l33t


Joined: 10 Mar 2006
Posts: 972

PostPosted: Fri Dec 29, 2006 12:02 pm    Post subject: Reply with quote

EDIT: Duh, it works for Doom 2!

Anyways, I just used it. It's quite good.

The process for Vavoom is pretty much the same, but you can manually run it through glvis, or have the game do it.
Code:

vavoom -opengl -doom -file slige.wad


EDIT2: Wish I could get it working for amd64, looks beyond me.
Back to top
View user's profile Send private message
vibrokatana
Guru
Guru


Joined: 09 Feb 2006
Posts: 328
Location: o0o0oo

PostPosted: Fri Dec 29, 2006 1:54 pm    Post subject: Reply with quote

I have plenty of webspace, contact me via pm or aim and I can work something out.

pleh, reminds me that I need to renew my domain names...
_________________
My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time."
Back to top
View user's profile Send private message
bLUEbYTE84
Guru
Guru


Joined: 21 Jul 2006
Posts: 566
Location: universe.tar.gz, src/earth.h, struct homo_sapiens_table

PostPosted: Fri Dec 29, 2006 4:56 pm    Post subject: Reply with quote

vibrokatana wrote:
I have plenty of webspace, contact me via pm or aim and I can work something out.

pleh, reminds me that I need to renew my domain names...


Thanks for the offer, I think it's only a matter of making an ebuild for it, then you can host. Arch is x86 only. All the necessary info is in my above posts. Only one source file, extremely simple I think (for making an ebuild). Sorry to say that I have never done an ebuild (but will learn when I find time).

P.S I think glbsp should be a dependency for it.
Back to top
View user's profile Send private message
vibrokatana
Guru
Guru


Joined: 09 Feb 2006
Posts: 328
Location: o0o0oo

PostPosted: Fri Dec 29, 2006 4:59 pm    Post subject: Reply with quote

ebuilds are easy, basically cut and paste for the simpler ones...

I believe there are templates floating around.
_________________
My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time."
Back to top
View user's profile Send private message
Scen
Retired Dev
Retired Dev


Joined: 29 Jul 2003
Posts: 2470
Location: Padova, Italy

PostPosted: Wed Jan 03, 2007 3:20 pm    Post subject: Slige in Xwadtools Reply with quote

I propose another solution: using the version included in Xwadtools, that has better unix support (and includes a lot of useful utilities :twisted: )

Some link about Xwadtools:

http://www.teaser.fr/~amajorel/doom/unix_doom_editing.html
http://doom.wikia.com/wiki/XWadTools

I've also submitted an ebuild:

http://bugs.gentoo.org/show_bug.cgi?id=159863

Feel free to improve it 8)

P.S. I can confirm the problem on AMD64, unfortunately the code of Slige (and other xwadtools programs) is quite old :?
_________________
I was born in a deep forest/I wish I could live here all my life/I am made from stones and roots/My home, these woods and roads
All my life I loved this sound/Of the woods all around/Eagles flies where the winds blows free
Journey is my destiny
Back to top
View user's profile Send private message
vibrokatana
Guru
Guru


Joined: 09 Feb 2006
Posts: 328
Location: o0o0oo

PostPosted: Wed Jan 03, 2007 3:26 pm    Post subject: Reply with quote

what is it written in? c/c++?

btw I will upload the tarball to a mirror when I get the chance to remember to do it :\

May want to look at making a makefile for it so it will work "out of the box" with portage.
_________________
My Systems - "I suggest the whole thing be coded in whitespace. Henceforth the code will be obscure and functional at the same time."
Back to top
View user's profile Send private message
Phenax
l33t
l33t


Joined: 10 Mar 2006
Posts: 972

PostPosted: Wed Jan 03, 2007 3:41 pm    Post subject: Reply with quote

vibrokatana wrote:
what is it written in? c/c++?

btw I will upload the tarball to a mirror when I get the chance to remember to do it :\

May want to look at making a makefile for it so it will work "out of the box" with portage.


C
Back to top
View user's profile Send private message
bLUEbYTE84
Guru
Guru


Joined: 21 Jul 2006
Posts: 566
Location: universe.tar.gz, src/earth.h, struct homo_sapiens_table

PostPosted: Wed Jan 03, 2007 8:53 pm    Post subject: Reply with quote

Phenax wrote:
vibrokatana wrote:
what is it written in? c/c++?

btw I will upload the tarball to a mirror when I get the chance to remember to do it :\

May want to look at making a makefile for it so it will work "out of the box" with portage.


C


No no, C++
Back to top
View user's profile Send private message
Hyper_Eye
Guru
Guru


Joined: 17 Aug 2003
Posts: 437
Location: Huntsville, AL.

PostPosted: Wed Jan 03, 2007 9:41 pm    Post subject: Reply with quote

Quote:
If you're doing a port and you find that something or other needs
twiddling to get it to compile, let me know and I'll stick in some
ifdefs. The current code assumes that Microsoft C has a horrible
rand() function and uses str(n)icmp() instead of str(n)casecmp(),
whereas everyone else has an ok rand() and str(n)casecmp(). And
make sure that you compile with tight structure-packing (/Zp1 or
-fpack_struct, I think) or DOOM won't understand the files. Also,
if you want to port to a non-Intel-byte-order platform, you've got
a bit of work, but I think it's mostly isolated to DumpLevel,
CloseDump, dump_texture_lmp, and a few others. Good luck! *8)


There it is right at the top of the source code. Send the patch to him and see if he will implement it. Then an ebuild could be made using the official release and use the official host. If that dosn't pan out then I will be happy to host the patch and someone can make an ebuild to snag the source from the official site and the patch from me.
_________________
Gentoo Gaming Videos
Back to top
View user's profile Send private message
Hyper_Eye
Guru
Guru


Joined: 17 Aug 2003
Posts: 437
Location: Huntsville, AL.

PostPosted: Wed Jan 03, 2007 9:46 pm    Post subject: Reply with quote

bLUEbYTE84 wrote:
Phenax wrote:
vibrokatana wrote:
what is it written in? c/c++?

btw I will upload the tarball to a mirror when I get the chance to remember to do it :\

May want to look at making a makefile for it so it will work "out of the box" with portage.


C


No no, C++


Looking through the code this is 100% C. There is no C++ in it.
_________________
Gentoo Gaming Videos
Back to top
View user's profile Send private message
bLUEbYTE84
Guru
Guru


Joined: 21 Jul 2006
Posts: 566
Location: universe.tar.gz, src/earth.h, struct homo_sapiens_table

PostPosted: Wed Jan 03, 2007 10:16 pm    Post subject: Reply with quote

Quote:


There it is right at the top of the source code. Send the patch to him and see if he will implement it. Then an ebuild could be made using the official release and use the official host. If that dosn't pan out then I will be happy to host the patch and someone can make an ebuild to snag the source from the official site and the patch from me.


I mailed him about the whole Linux build and modification stuff like about one month ago, and he didn't respond. Considering the fact that this code was released in 2000, he's inactive (both e-mail wise and SLIGE-wise).

Quote:
Looking through the code this is 100% C. There is no C++ in it.

Sorry, my bad. Haven't thoughly examined it and for some reason I thought I (mis)read somewhere that it was in C++. I didn't noticed C++ code in the areas I modified but I think I falsely assumed other parts contain C++.
Back to top
View user's profile Send private message
Hyper_Eye
Guru
Guru


Joined: 17 Aug 2003
Posts: 437
Location: Huntsville, AL.

PostPosted: Thu Jan 04, 2007 1:12 am    Post subject: Reply with quote

Well you can go ahead and compile it with gcc instead of g++ and it will link MUCH faster.
_________________
Gentoo Gaming Videos
Back to top
View user's profile Send private message
Phenax
l33t
l33t


Joined: 10 Mar 2006
Posts: 972

PostPosted: Sun Nov 30, 2008 1:20 am    Post subject: Reply with quote

http://oblige.sourceforge.net/
SLIGE-based project in active development. New features. GUI. Code that compiles in modern compilers.
Working copy can be downloaded now.

(I apologize for this necromancy, but I remembered this thread upon finding OBLIGE)
Back to top
View user's profile Send private message
Hyper_Eye
Guru
Guru


Joined: 17 Aug 2003
Posts: 437
Location: Huntsville, AL.

PostPosted: Sun Nov 30, 2008 1:25 am    Post subject: Reply with quote

Phenax wrote:
http://oblige.sourceforge.net/
SLIGE-based project in active development. New features. GUI. Code that compiles in modern compilers.
Working copy can be downloaded now.

(I apologize for this necromancy, but I remembered this thread upon finding OBLIGE)


Awesome. I will definitely have to take a look at this.
_________________
Gentoo Gaming Videos
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gamers & Players All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum