Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
andrewj

Eureka: a Linux map editor

Recommended Posts

Eureka is a map editor that I've had on the back-burner for quite a long time, and I decided to get it to a state where people could play with it. The primary target is Linux OSes, though the code is cross-platform.

Eureka is a fork / rewrite of the Yadex editor, though I don't intend to keep any compatibility with Yadex.

Currently this is very alpha stuff and definitely not ready for serious use, there are major things missing (like a texture / flat / thing browser) and lots of bugs.

The following package contains the source code and a binary, though you may need to compile it yourself. Knowledge of C++, makefiles and FLTK is recommended if you're gonna do that.

http://awwports.sourceforge.net/files/eureka-0.64.tar.gz

'Nuff said, have at it Linux dudes! :-)

Share this post


Link to post

Thank you so much for this, I have been waiting for someone to pick up the Yadex code and improve on it. If only the DCK source was not lost...

Good Job! A nice screenshot below from Fedora Core 15.

Share this post


Link to post

That's quite cool, already it's better than Yadex and pretty much nothing works.

Are you planning to make it something like Doom Builder with all fancy auto-insertion of vertices and linedefs and sidedefs so it doesn't take 7 years to make one sector, as it does in Yadex?

The ultimate would be 3D mode but obviously that's a bit down the track.

I will be watching this with great interest.

Share this post


Link to post
Super Jamie said:

That's quite cool, already it's better than Yadex and pretty much nothing works.

Hehe.

Making lines and sectors will be easier than Yadex. Already you can go into vertex mode and just press 'a' (or INSERT key) to add vertices and new linedefs, then go into sector mode and press 'a' / INSERT to add a new sector into the area you've just created. (In the 0.64 version you need to select the first vertex to start adding lines, but that is not necessary in the latest code).

Press TAB to toggle the 3D preview. Being able to select things, floors, ceilings and sidedef parts so you can modify the texture (etc) is planned for the future.

Share this post


Link to post

You can also press F9 in a sector and insert a rectangle or polygonal shape and then select the lines and press INSERT to make it double sided and referencing the parent sector. That is another Yadex feature that I like. And selecting all the linedefs in a complex polygonal shaped sector by highlighting one linedef and pressing 'e'. As long as you keep those features in I am happy.

Share this post


Link to post

I don't find it difficult to create sectors in Yadex, but aligning textures can be a real PITA sometimes. Also, the lack of "undo" function is just no fun.

It looks like AYM had some kind of x/y texture autoalign feature planned, but it's not implemented. Last time I wanted to align a whole bunch of oddball-sized linedefs I went into DOSBox and used DCK. Which reminds me, that editor had some nice features, like simple stair building, user-defined texture themes (in Yadex only one can be defined in the config), better visual texture selector (you can see a whole screen of them at once vs. only one at a time in Yadex). I can't remember if it allowed templates/prefabs and copying stuff between maps, but those would be pretty handy features.

Share this post


Link to post
andrewj said:

and just press 'a' (or INSERT key)

Ideally, everything would be re-bindable. Even if it involves getting hex keysyms from "xev" and editing a config file manually, that's better than nothing. Making the Spacebar the insert key is one of the most time-saving features I've found when mapping.

Share this post


Link to post
neubejiita said:

You can also press F9 in a sector and insert a rectangle or polygonal shape and then select the lines and press INSERT to make it double sided and referencing the parent sector.

It's just as easy in Eureka : move the mouse into void space and press INSERT to make a square sector, drag it into the other sector, select the outer sector and press INSERT again to fix the island.

And selecting all the linedefs in a complex polygonal shaped sector by highlighting one linedef and pressing 'e'.

Don't worry, I use that a lot too and will get it working again.

Super Jamie said
Making the Spacebar the insert key is one of the most time-saving features I've found when mapping.

OK, I will change it from 'a' to SPACE (of course the INSERT key does the same thing too).

Re-bindable keys is a wish-list item at this stage.

Auto-alignment is a feature I will get working eventually (the code already exists in Oblige). Prefabs are also a wish-list item right now.

Share this post


Link to post

no more switching back and forth between OSs? Yes please. This makes my day.

Thank you andrewj

Share this post


Link to post
ellmo said:

no more switching back and forth between OSs? Yes please. This makes my day.

You know you can run DB1 and XWE in Wine, right? That's how I make all my maps.

Share this post


Link to post
Super Jamie said:

You know you can run DB1 and XWE in Wine, right? That's how I make all my maps.


That's how I do it too, minus the XWE part. Could also setup DB1 or DB2 in a virtual machine.

Which ports do you target? I'd like to play some of your maps.

Of course I'm in favor of this project. Yadex seemed promising, but I found it too difficult to be productive. Maybe DB spoiled me :P

Share this post


Link to post
sparerib1968 said:

That's how I do it too, minus the XWE part. Could also setup DB1 or DB2 in a virtual machine.

Which ports do you target? I'd like to play some of your maps.

Of course I'm in favor of this project. Yadex seemed promising, but I found it too difficult to be productive. Maybe DB spoiled me :P

3D mode may be problematic due to 3D acceleration, depending on which virtualisation platform you're using. VirtualBox has some 3D smarts though from memory not enough for Doom Builder.

I map for Boom, I guess this would be the best example of work done.

And no, I don't think DB spoils anyone, all these ancient editors verge on completely unusable. I am in awe of anyone who could make a good coherent map in them, let alone great megawads like Memento Mori. No matter how much I think about it, it still surprises me that it took almost 11 years for someone to make an intuitive and easy-to-use Doom editor with 3D mode. Considering Duke3D had the Build Editor in 1996, it wasn't a huge stretch of the imagination to extend that to Doom. We owe so much to CodeImp.

hex11 said:

Wine isn't even an option on OpenBSD:
http://openports.se/emulators

Previous releases had an ancient version (1.1.21), but it wasn't really useful for much of anything...

Looks like you don't have much of anything. Switch to Arch already, it's like BSD but good :P

Also I'm pretty sure Wine 1.1 will run DB. The DB section of this forum has gone byebye now but I'm pretty sure our old DB1-on-Linux thread had all my testing from versions around then. Maybe the 3D acceleration part will screw things up though?

Share this post


Link to post

3D mode is evil, don't trust it. Every room/area feels totally different in the game.

Share this post


Link to post

This can be true, particularly in respect to lighting which no GL-based engine can get right. A good mapper will always test in their target port to make sure the important aspects of the map are right anyway.

But as a tool for getting your overall room-size/sector-height scaling right and for aligning/pegging textures, 3D Mode's usefulness is undeniable.

Share this post


Link to post
Super Jamie said:

You know you can run DB1 and XWE in Wine, right? That's how I make all my maps.

I know, but my wine runs only one program:
segmentation fault
No matter what I do, no matter ho many times I reinstall, recompile it or upgrade my system.

Share this post


Link to post

Error: Cannot find IWAD: doom2.wad

No matter what game I choose, no matter where the file is :(

-------

EDIT: If I choose doom, it still only opens doom2.wad and only if it's physically in the same directory (symlinks don't do any good).

When I open the app I am unable to do anything basically, but browse the map and close it. No other menu_item from the menubar works.

Can you tell me how to compile it properly? The most simple steps?
There's not configure, no autogen or whatever I was expecting...

-------

EDIT2: Oh, there's an INSTALL.TXT file <_<

-------

EDIT3: Recompiled, and got exatcly the same issues. Runs only on doom2.wad and none of the buttons/menu items work.

Share this post


Link to post

Eureka, like Yadex, needs to be run from the command line (i.e. the Terminal app). You can specify a PWAD to edit and the map with the following syntax:

./Eureka -file blah.wad -warp map03
Being able to do stuff from the menus is planned but as the README says, some items in the File menu (New, Open, Export) don't do anything yet.

It's odd that symlinks don't work for you -- they work for me OK -- perhaps the name had an uppercase letter in it (e.g. "DOOM2.WAD" won't work, it needs to be fully lowercase).

Only DOOM 2 is supported properly right now, although you could get DOOM 1 (or Final Doom or FreeDoom) working by copying the IWAD as "doom2.wad" in Eureka's folder and using "-warp e1m1" on the command line.

You can add linedefs in the map by going into Vertex Mode (with 'v' key or the button on the bottom left of the window) and pressing INSERT key, select that vertex with left click, move mouse and press INSERT to add another vertex and a linedef between them, and keep going.

You can add sectors by going into sector mode ('s' key) and moving the mouse into a closed off area and pressing INSERT.

You can change stuff by selected the line or sector or thing and modifying stuff in the right-hand panel. Use the File/Save menu or CTRL-S to save the map.

Hope that helps, and Eureka will be easier to use and have decent documentation in the future (when it reaches that "1.00" version number, heh).

Share this post


Link to post

I have no idea how to run this.

Going into the folder and typing ./Eureka gives me
bash: ./Eureka: No such file or directory

and typing ./configure gives me
bash: ./configure: No such file or directory

and typing make of course gives me an error.


Help plzkthx???
(am on Crunchbang 10; have no programming experience other than Pascal in high school like 15 years ago and basic "Web 1.0" Javascript and DECORATE/ACS)

Share this post


Link to post

Try: ./eureka

(lower case 'E')

and be sure to put a copy of doom2.wad (fully lowercase too) in the same directory.

Share this post


Link to post

I've renamed the included binary to "eureka" instead of "Eureka" and copied DOOM2.WAD into the folder, renamed that to doom2.wad, tried ./eureka and got the same result. It's like it's not recognizing there's a binary there at all, though the file properties indicate it is executable and the type-hit-Tab thing works just fine.

Got rid of the version number in the folder and that didn't work either, nor did moving the /eureka folder into my /home/[username]/ folder.

I've had this problem or something vaguely like it before and it's usually resolved by recompiling everything on my end. But then again, I was never able to run Yadex either...


EDIT: Does it make a difference that I'm on a 64-bit OS?

Share this post


Link to post

andrewj, do you use a public version-control repository? I'm interested in looking live at the code :P It's okay if it's private, no need to send it to me in private :)

Who is Kromulent? :P

Also note that patches don't have to be namespaced into P_. It's just a user convention.

Share this post


Link to post

What distro are you using? On Fedoa 16 64-bit this is literally all I need to do to get the editor working:

[superjamie@animal ~]$ cd Downloads/
[superjamie@animal Downloads]$ tar xvf eureka-0.64.tar.gz
[superjamie@animal Downloads]$ cd eureka-0.64/
[superjamie@animal eureka-0.64]$ cp ~/doom/IWADs/doom2.wad .
[superjamie@animal eureka-0.64]$ ./Eureka

These are the libraries it uses, check to see if you have these installed:

[superjamie@animal ~]$ lsof | grep reka
Eureka 27785 superjamie cwd DIR 253,2 4096 22283506 /home/superjamie/Downloads/eureka-0.64
Eureka 27785 superjamie rtd DIR 253,0 4096 2 /
Eureka 27785 superjamie txt REG 253,2 555748 22283511 /home/superjamie/Downloads/eureka-0.64/Eureka
Eureka 27785 superjamie mem REG 253,0 163360 159009 /usr/lib/libpng12.so.0.49.0
Eureka 27785 superjamie mem REG 253,0 1279760 159787 /usr/lib/libX11.so.6.3.0
Eureka 27785 superjamie mem REG 253,0 10132 159224 /usr/lib/libXau.so.6.0.0
Eureka 27785 superjamie mem REG 253,0 122428 159745 /usr/lib/libxcb.so.1.1.0
Eureka 27785 superjamie mem REG 253,0 74040 159796 /usr/lib/libXext.so.6.4.0
Eureka 27785 superjamie mem REG 253,0 115376 4076 /lib/libgcc_s-4.6.3-20120306.so.1
Eureka 27785 superjamie mem REG 253,0 157200 7135 /lib/ld-2.14.90.so
Eureka 27785 superjamie mem REG 253,0 2000368 3708 /lib/libc-2.14.90.so
Eureka 27785 superjamie mem REG 253,0 19888 4141 /lib/libdl-2.14.90.so
Eureka 27785 superjamie mem REG 253,0 208320 4285 /lib/libm-2.14.90.so
Eureka 27785 superjamie mem REG 253,0 86768 7225 /lib/libz.so.1.2.5
Eureka 27785 superjamie mem REG 253,0 934428 163648 /usr/lib/libstdc++.so.6.0.16
Eureka 27785 superjamie mem REG 253,0 280236 163721 /usr/lib/libjpeg.so.62.0.0
Eureka 27785 superjamie 0u CHR 136,1 0t0 4 /dev/pts/1
Eureka 27785 superjamie 1u CHR 136,1 0t0 4 /dev/pts/1
Eureka 27785 superjamie 2u CHR 136,1 0t0 4 /dev/pts/1
Eureka 27785 superjamie 3w REG 253,2 40159 22283629 /home/superjamie/Downloads/eureka-0.64/LOG.txt
Eureka 27785 superjamie 4u REG 253,2 14604584 22283630 /home/superjamie/Downloads/eureka-0.64/doom2.wad
Eureka 27785 superjamie 5u unix 0xffff88030858ea40 0t0 1900574 socket

Share this post


Link to post

#! 10 "Statler" running 3.2.0-bpo.2-amd64
Last dist-upgrade I think was back in late April.

The first set of steps looks equivalent to what I first tried to do.

But wouldn't I be getting some kind of error message about missing libraries if missing libraries was the problem, rather than an error that I would only expect to get if the file wasn't there at all?

Share this post


Link to post

Result:

strace: exec: No such file or directory

then the file goes to 10 lines compared to your 400+.

My line 1 ends with this after the first close parenthesis:

= -1 ENOENT (No such file or directory)


However, if I try the same thing while deliberately typoing "./Eureka" the error is "strace: ./Eurekaa: command not found" so that seems to be something.

Share this post


Link to post

That sounds like an error from the dynamic linker. You're probably missing one of the required libraries that Jamie listed.

Share this post


Link to post
antares said:

libraries


After scrolling through hundreds of vaguely similar-looking entries in Synaptic for each of those after libX* I think this is the point where my brain shuts off, I have to consciously stop myself from asking if there's just a Windows binary version of this that just plain runs, and see if I can run EdMap in DOSBox. EDIT: Squinting at a tiny screen in a very slow shell at a badly outdated program with very little functionality was a bit more prohibitively stressful than I thought.

Share this post


Link to post

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×