home home

downloads files

forum forum

docs docs

wiki wiki

faq faq

Cube & Cube 2 FORUM


Sauerbraten engine development

by Aardappel on 03/03/2004 05:18, 1571 messages, last message: 03/14/2008 18:53, 1695020 views, last view: 05/05/2024 06:45

This thread is for discussion of Sauerbraten coding issues / implementation ideas etc.

Go to first 20 messagesGo to previous 20 messages    Board Index    Go to next 20 messagesGo to last 20 messages

#21: VC++ 6 project file progress

by stampson1 on 03/12/2004 21:03


Well, I have created a vc6 project for Sauerbraten, and it seems to me to work, however I have encountered the following issue.

From tools.h:

#define loop(v,m) for(int v = 0; v<(m); v++)
#define loopi(m) loop(i,m)
#define loopj(m) loop(j,m)
#define loopk(m) loop(k,m)
#define loopl(m) loop(l,m)

When the loop macros are used, the second time the compiler encounters one it errors and complains about the redeclaration of the index variable used int the loop.

I can certainly imagine many ways to fix this for myself, however in terms of the project, should changes to suit vc6 be rolled back into the source, or should people using vc6 just roll their own?

Of course it's possible I'm so rusty I am just missing something =)

Here is a link to the project file, if it is of use or interest: http://www.westga.edu/~phall/vcpp.zip

reply to this message

#22: Re: Maybe a lot more than three...

by Aardappel on 03/12/2004 23:59, refers to #18

Yup, sauerbraten allows a rich set of geometrical shapes, but there are worst cases. Editing for Sauerbraten means having fun piecing things together taking into account the cubes you work with, not trying to squeeze every potential shape in there.

There certainly never should be a generic mesh->sauerbraten importer, it would be senseless. The other way around however can be useful and is absolutely trivial (the data is already available in the engine as mesh).

reply to this message

#23: Re: VC++ 6 project file progress

by Bingo! on 03/17/2004 19:25, refers to #21

Not sure how this would be changed in the project. I think the problem is down to MSVC6.0 not adhering to standards ;-)

The scope of variable definitions in loops should be local to the loop but in MSVC6.0 they are local to the enclosing block!

You can fix these errors by simply wrapping the offending items in curly braces to force a block to contain the scope. Not sure if this is the best way though! Anyone have a better way?

reply to this message

#24: Sauerbraten Mac OS X Port

by absinth on 03/18/2004 00:53

hello
i've ported sauerbraten to macosx.
you can get a diff at http://homepage.mac.com/julianmayer/osx.diff

project files for macosx can be downloaded from http://homepage.mac.com/julianmayer/osx.tgz
(the folder should be put inside the sauerbraten folder)

i had to disable the GL_NV_vertex_array_range stuff for macosx, but if someone would modify the code to also work with the GL_APPLE_vertex_array_range extension, it would be better ;)

regards, julian

reply to this message

#25: Re: VC++ 6 project file progress

by Bingo! on 03/18/2004 12:34, refers to #21

Sorry I should probably have posted this before. You can download a working MSVC++ 6.0 project from the Sauerbraten page on my website...

http://www.linux-games.co.uk/

Should compile fine and there's a read me with changes listed.

reply to this message

#26: Re: Sauerbraten Mac OS X Port

by hungerburg on 03/18/2004 12:51, refers to #24

this looks cheap:) and does it run too? or just compile...

BTW: the last two hunks (in renderparticles) should not need a #ifdef apple - they might be due to the gcc apple ships; sth. similar happened with building the initial source on linux systems.

then it seems wrong to me, that you three times set v.x, but not v.y and v.z... but I dont know c++, only c, and dont understand the declaration of struct vec in cube.h...

PS: the eu dont make law, but "directives", these are made into law by member countries (cf: http://wiki.ael.be/index.php/EUCD-Status)

reply to this message

#27: Re: VC++ 6 project file progress

by Aardappel on 03/18/2004 20:37, refers to #25

that's cool... I guess you could add things like that to CVS

reply to this message

#28: ..

by shahar2k on 03/19/2004 05:52

I just played with Sauerbraten for a bit, and I have to say this kicks ass, I was wondering about the earlier comment about using 3ds max to make Saurbraten maps... wouldnt you be able to do something like a marching cubes algorithm and take ANY 3D object and devide it into the appropriate 3D volumes? it seems very similar to the way metaballs are created from pure equations... at the same time it seems like you could even write a converter for wings maps though they would become a bit less efficient under the new engine (since elongated shapes require multiple cubes instead of just one column) though I dont claim to know much about the internals of the engine.

About the RPG Idea, originally unreal had a cool Idea where in any particular server, you could have doors and portals which would lead to other servers and players would be able to go between servers like a kind of HTML for a 3D world.

you could perhaps create a kind of distributed system, where by running the client, you have your own home \"map\" which anyone can visit, and you can visit anyone else running the client

just a few out-there ideas, hope this inspires.

reply to this message

#29: Re: ..

by Aardappel on 03/19/2004 07:06, refers to #28

again, yes its technically possible, but it would completely defy the point of sauerbraten. If you want to use max to create game architecture, you are better off with other engines.

Linking up servers is a fun idea, but it needs a bit more serious infrastructure to be really fun. You could have a mini-mmorpg this way if players could carry their stats & items over to new servers, and worlds persisted as well.

reply to this message

#30: Re: ..

by D.plomat on 03/19/2004 10:55, refers to #28

linking servers... sounds interesting, but it probably would be better to link multiple games hosted on the same server, as -like now for Cube- servers aren't always running the latest version(or it'd need some version checking system), and worst of all, if a link makes 6 ppl go from a server with good bandwidth to one with bad bandwidth that can be annoying.

reply to this message

#31: Re: Sauerbraten Mac OS X Port

by absinth on 03/19/2004 13:40, refers to #26

>this looks cheap:) and does it run too? or just compile...

yeah it runs just fine ;) even my scrollwheel works for editing

>BTW: the last two hunks (in renderparticles) should not need a #ifdef apple - they might be due to the gcc apple ships; sth. similar happened with building the initial source on linux systems.

yeah the compiler barfed at it, even though it is a modified gcc 3.3 which should be the same as on linux.

>then it seems wrong to me, that you three times set v.x, but not v.y and v.z... but I dont know c++, only c, and dont understand the declaration of struct vec in cube.h...

you are right it should not be three times x, didn't seem to matter though ;) i've updated the diff to be correct.

>PS: the eu dont make law, but "directives", these are made into law by member countries (cf: http://wiki.ael.be/index.php/EUCD-Status)

yeah i know but a law based on the EUCD directive is already passed in austria...


any chance some changes might be integrated or the project files might be added?

regards, julian

reply to this message

#32: Map editor

by PigeonRat on 03/20/2004 23:48

I downloaded Sauerbraten last night, and I must say, it's already looking quite nice. If I get some time I might be able to do a bit of work on it.

One thing, with the map editor, is that I was only able to push cubes down, not up. Say I have a flat ground, I can't select a cube and then scroll up to have it above the ground. Is that a bug, just not implemented yet, something I'm doing wrong or is the engine just not designed for this?

Hope that made sense.

reply to this message

#33: ..

by PigeonRat on 03/20/2004 23:49

BTW, if a cube hasn't been push the whole way down, I can still bring it back up. ie if I've only scrolled it down 7/8's of the way, I can still bring it back up.

reply to this message

#34: Re: Map editor

by pushplay on 03/21/2004 03:50, refers to #32

Right click to deselect, hold f and use the scroll wheel.

reply to this message

#35: ..

by PigeonRat on 03/21/2004 04:33

Thanks :)

reply to this message

#36: ..

by shahar2k on 03/22/2004 00:04

just wondering, but how feasable is it to add dynamically modifyable geometry to this? you could create something like in "scorched earth" with something like a "dirt missile" would create a sphere of junk in the world, or you could dig through the world using generated negative meshes. just an Idea, but I think it would kick ass to have this kind of stuff in a multiplayer game (somone's chasing you, you can dig your own tunnels, then fill them up)

reply to this message

#37: shahar2k

by Pxtl on 03/22/2004 03:55

Look up an indie game called Tread Marks. High-speed tank combat and racing game with fully mutable terrain.

reply to this message

#38: Re: shahar2k

by dcp on 03/22/2004 05:14, refers to #37

or red faction (geoMod engine)

reply to this message

#39: Re: ..

by Aardappel on 03/22/2004 05:33, refers to #36

that be relatively easy.

reply to this message

#40: Dynamic geometry

by Morningstar on 03/22/2004 07:23

Given Sauerbraten has an in-engine map editor, I\'d be tempted to go one step further than just deformable terrain, and actually integrate map editing into the game itself. (Perhaps more suited to a MMORPG than an RPG or FPS...)

Imagine a world where Mages have the ability to shape the world around them. They can tunnel through rock, throw up walls to defend themselves, or build castles (or mountains!)...

Some spells might make sense to occur realtime in game (Raise Pillar, for example, might create a tall column of particular height under the Mage\'s feet), while more complex changes might be better isolated from other players -- the Mage could create a \'boundary cube\' inside which he has total control over the map for a time; other players could see the changes through the boundary, but not enter themselves, so they don\'t interfere with the editing process.

Just an idea...

reply to this message

Go to first 20 messagesGo to previous 20 messages    Board Index    Go to next 20 messagesGo to last 20 messages


Unvalidated accounts can only reply to the 'Permanent Threads' section!


content by Aardappel & eihrul © 2001-2024
website by SleepwalkR © 2001-2024
53860666 visitors requested 71635694 pages
page created in 0.054 seconds using 10 queries
hosted by Boost Digital