WorldBuilder and Your Projects

WorldBuilder and Your Projects

Discuss game development here, from a distinct game project to an accessible third-party mutator, down to the interaction and design of individual units if you like.

Moderator: Moderators

User avatar
Argh
Posts: 10920
Joined: 21 Feb 2005, 03:38

WorldBuilder and Your Projects

Post by Argh »

I think this is probably the right place to post this, as this is a topic of general interest for most of the game designers here.

Basically, World Builder is nearly feature-complete. For those of you who live under a rock, it's a pretty nice level-design tool, with hundreds of pieces of content, dynamic effects, custom Unit shading system, etc.

The last remaining big issue is getting it to be 100% compatible with other people's games, so that mappers finally have a unified level-design tool that's powerful and can feature as much dynamic content as people are willing to contribute, and getting mappers to use it.

But unless other game designers are willing to participate, then we have an endless chicken-and-egg scenario, where World Builder is Open Source, but is essentially proprietary because mappers don't use it, because they are afraid that their final product won't be useable with BA / CA / NOTA / Cursed / etc. That leaves me with this incredible toolset, awesome maps that do things that you will never, ever see on old-style maps... and it's not really Open Source. This was never my intention.

Therefore, I need my fellow game designers to see that having a future where mappers routinely use World Builder, and regard it as a normal part of their workflow, is possible and desireable.

If we can get that far, I am fairly certain that I can convince most of our active mappers to use it, by showing them how much cooler their maps can be, how they can fix issues with it dynamically, instead of having to re-compile, etc.

There are a few things that I anticipate will be "catches" along the way, mainly related to Lua.

1. Most of the games are using custom implementations of LUPS, taken from CA, instead of the modular version I made available with P.U.R.E. nearly a year ago. This is very unfortunate, because it's going to make it difficult to provide you with integration. I'd like to propose that we move to the modular version that I'm currently maintaining, and which I can make available soon.

All games / mods can be supported via porting certain sections of your existing code to config files. This has already been done for P.U.R.E., and I will split P.U.R.E.'s FX from World Builder.

We can't solve this via me making a mutator version of your games, though. You folks need to actively participate, or at the very least let me submit modifications to your games to make them compatible. One of the issues here is that CA's version of LUPS was designed to be proprietary, and certain aspects (their dynamic mines, in particular) need to be re-coded, because that code was stripped from the generic LUPS I've been working on. This is a fairly minor wrinkle, but I wanted to make it clear from the outset that this is a known issue that you will need to overcome. I am willing to help, of course- for the most part, this change-over means just cutting some lines of text from one file to another, and then you're all done.

If this isn't done, then I *think* that all that this is going cause, problem-wise, is that World Builder objects that depend on static LUPS unit FX won't work. So, not the end of the world, but it's something to keep in mind.

2. While map_resources.lua will be working in the next version of Spring, allowing World Builder's resources files to be present (basically, all of the projectile bitmaps used in P.U.R.E.- a huge amount of nice content), and I think that sound resources will be taken care of, in terms of cross-compatibility, there may be issues there- this will have to be explored and dealt with.

I don't think I'll need any help on this, but we'll just have to see.

3. I will be releasing the current build of P.O.P.S. fairly soon. It's almost feature-complete. It allows for a lot of effects that just aren't possible with CEG, including fire simulations, better trails for projectiles, better CPU performance overall, and other things.

This is a 100% optional thing for people to use, but keep in mind that it can potentially be a major upgrade for certain types of FX. I'll do my best to support people trying to implement their own effects systems, but it's definitely non-trivial Lua programming, but it's not a lot more complicated than building CEGs, and uses a fairly familiar nomenclature.



In closing, these are the issues that I'm anticipating. I will try to find the time to make more videos to show people exactly why they want to participate, and raise awareness / interest in the mapping community.

No doubt other things will come up, as we move forwards. The rest of this is up to you folks- whether World Builder finally reaches its intended purpose, as a non-proprietary tool, is mainly up to you being aware of these things, and willing to work this out with me.
Satirik
Lobby Developer
Posts: 1688
Joined: 16 Mar 2007, 18:27

Re: WorldBuilder and Your Projects

Post by Satirik »

moving trees are nice !!
User avatar
PicassoCT
Journeywar Developer & Mapper
Posts: 10450
Joined: 24 Jan 2006, 21:12

Re: WorldBuilder and Your Projects

Post by PicassoCT »

yeah, they are, i admit that.
User avatar
Argh
Posts: 10920
Joined: 21 Feb 2005, 03:38

Re: WorldBuilder and Your Projects

Post by Argh »

It's not just moving trees. Heck, that probably will get added to the engine.

It's trees that are unique models you can knock over.

It's buildings with complex destruction animation.

It's lava fields with LUPS effects to make them dynamic and interesting, "marsh" FX generators that build little areas of dynamic fog, and other "little things", like attaching intermittent sounds to areas, or having dynamic sounds that create a realistic ambiance (an area where one of the P.U.R.E. maps basically demonstrated it, but it's not in current WB atm, hasn't been a priority).

It's explicit support for "floating world" scenarios.

It's support for cars, trucks, tanks, aircraft, robots, animals, birds that can all be put into motion, interact with players, and greatly enhance the living feel of a map.

It's rocks that fall when destroyed, instead of just disappearing.

It's dynamic rubble for buildings, so that wreckage doesn't all look the same.

It's being able to build, and rebuild, cities, towns, forests, jungles, deserts without having to re-compile the map or use third-party tools that don't look exactly like Spring does.

Basically, it's about having modern level design tools, and making it possible to have content that approaches top-tier games. Is it there yet? Hell no- if nothing else, I need a lot more buildings made, at higher polycount than the current bunch, which I was very conservative with, and a lot more work needs to get put into building better P.O.P.S. effects for a few things.

Can it get there? Yes.

Anyhow, if you want to play with a very-slightly-out-of-date version (since I just finished integrating Behirith's buildings, and that's not currently uploaded)... here are working links:

Here's a near-current build of World Builder, to test certain things with(only 67MB):

http://www.wolfegames.com/TA_Section/wo ... current.7z

Here's a sample World Builder map (it's a tiny file):

http://www.wolfegames.com/TA_Section/Fl ... rld.sdd.7z

These are SDD archives inside the 7zs. All the folders in the first one go into the /mods directory. FloatingWorld should be extracted to /maps.

To try it out... here are some fun things to try:

1. Hit the "destroy" button. Voila, clean slate. I don't have it erase heightmap changes (yet) but it will do so in the next release.

2. Try adding a seagull. Give it patrol orders. Do the same with a flock, and slightly vary the orders. Hit "save world", to save the current state, and replace the 00001World_Builder.lua file in the LuaGaia/LuaRules folder of the sample map with the one you'll find in Spring's root. Fire the map up again- voila, the flock of gulls are a part of the map now.

3. Select any element of the map, CTRL-D, and it's gone, just like any other Unit in a regular game.


To play with it on another map... just port over the LuaGaia folder, and remove the 00001World_Builder.lua file. Then fire up the map, use World Builder to place your content, save the world, put that file into LuaGaia/LuaRules, and you're done. You'll see how quickly you can build really complex scenes with this- it's a very speedy and intuitive tool.
User avatar
Masse
Damned Developer
Posts: 979
Joined: 15 Sep 2004, 18:56

Re: WorldBuilder and Your Projects

Post by Masse »

I will take a look at all this once I get some freelancing stuff done. I like what you have done with world builder... But I don't know shit about your modular LUPS. Hope you have documented everything :)
User avatar
Argh
Posts: 10920
Joined: 21 Feb 2005, 03:38

Re: WorldBuilder and Your Projects

Post by Argh »

Basically, the LUPS module is a port of jK's work on building certain types of high-end GLSL special FX, with various changes by me that allows it to be interoperable with games that don't use CA's GadgetHandler / WidgetHandler code, and pushes the functionality of FX attached to Units when Finished out to a config file, instead of internal to a certain piece of core code, and I removed CA-proprietary code in regards to their dynamic mine system, to make it broadly portable.

Typical use cases include fancy trails behind aircraft and weapon projectiles, air-distortion for everything from "vents" to fake fires, spherical and toroidal visual distortion effects, etc. It's amazing how much you can improve the looks of things with a few effects, and most of the LUPS effects are very cheap.

All of this is working on ATi hardware, I think, now that I have an ATi card and can debug GLSL, so other than checking it over for MT compatibility (which may take some time) it's ready for general use.

There isn't a lot of documentation about specific use-case; I pretty much learned how to use it by messing about, and made the modifications to make it reasonably game-agnostic over time. I guess some documentation of it might be useful, at the same time I prepare some materials about achieving certain things with P.O.P.S.
User avatar
SirArtturi
Posts: 1164
Joined: 23 Jan 2008, 18:29

Re: WorldBuilder and Your Projects

Post by SirArtturi »

Well I see this really useful tool and Imo, if its up to you, keep it open source!

Couple questions: (I dont remember that did your last version of WB include these features)
-Does it have feature rotation support? (best ofc would be free rotation, but even basic angles would be nice)
-How about feature deletation support? single features. Not the whole set?

Good work!
User avatar
Argh
Posts: 10920
Joined: 21 Feb 2005, 03:38

Re: WorldBuilder and Your Projects

Post by Argh »

1. WorldBuilder will always be Open Source.

2. You can rotate objects NSEW just like building anything. Trees, bushes, rocks, shrubs and other natural objects all auto-rotate to random angles, which produces a very natural feel.

3. Because it uses Units, you can just click on things, hit CTRL-D, and they will be removed. I am planning on making them Reclaimable again, as well- this feature was removed at one point, due to changes in P.U.R.E., but due to rule changes, it's no longer necessary. I will give trees and other plants a smallish Energy value, rocks and other inorganic stuff a scaled Metal value which should make them suitable in most OTA settings (in OTA, cities were practically awash in Metal... I won't go quite that far).
User avatar
PicassoCT
Journeywar Developer & Mapper
Posts: 10450
Joined: 24 Jan 2006, 21:12

Re: WorldBuilder and Your Projects

Post by PicassoCT »

Is there a chance you will add in the far off future -> customizeable particlegeneration to world builder?
User avatar
Argh
Posts: 10920
Joined: 21 Feb 2005, 03:38

Re: WorldBuilder and Your Projects

Post by Argh »

Well, I've thought about building a P.O.P.S. test environment, yes. But nothing like what you've been talking about in Feature Requests, just a straightforward simulation for building specific things in an environment where you can get some feedback and then keep the numbers you've arrived at.
User avatar
Pxtl
Posts: 6112
Joined: 23 Oct 2004, 01:43

Re: WorldBuilder and Your Projects

Post by Pxtl »

Are things like feature-health, reclaimation stats, etc. available in the MapOptions? Modifiable on a global basis by a mod that does not wish to have WorldBuilder features have such things?
User avatar
oksnoop2
Posts: 1207
Joined: 29 Aug 2009, 20:12

Re: WorldBuilder and Your Projects

Post by oksnoop2 »

Where do i put these folders?
User avatar
Argh
Posts: 10920
Joined: 21 Feb 2005, 03:38

Re: WorldBuilder and Your Projects

Post by Argh »

All the folders in worldbuilder_current.7z go into the mods/ directory. The other 7z goes into /maps.
User avatar
oksnoop2
Posts: 1207
Joined: 29 Aug 2009, 20:12

Re: WorldBuilder and Your Projects

Post by oksnoop2 »

Ok so I just tried this out. Pretty cool. Got some questions.

How do I make this work with my game?
How do I make maps with it?
User avatar
Argh
Posts: 10920
Joined: 21 Feb 2005, 03:38

Re: WorldBuilder and Your Projects

Post by Argh »

How do I make this work with my game?
If you aren't using a custom GadgetHandler / WidgetHandler, then in theory you can just make it a dependency of your game, for now. That's how it worked in P.U.R.E. for a very long time. But I'm working on making it a map dependency, not a game dependency, where possible.
How do I make maps with it?
You just make a map, fire up the Editor, put objects wherever you want, set up paths, patrols, etc. for mobile units and hit "save world". That creates a file called 00001World_Builder.lua in the Spring root directory. Then you just put the file that gets written into the LuaGaia/Gadgets folder, like the example map. That's it, it's a very simple process.
User avatar
KaiserJ
Community Representative
Posts: 3113
Joined: 08 Sep 2008, 22:59

Re: WorldBuilder and Your Projects

Post by KaiserJ »

But I'm working on making it a map dependency, not a game dependency, where possible.
this would be the clincher for me; i prefer to create content for everyone rather than just supporting games

that been said, if every mod used WB, or if it could be map dependent, then it would be a no-brainer.

(how much bloat might it add to a map? any estimations?)
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: WorldBuilder and Your Projects

Post by Forboding Angel »

Atm it's a moot point, because maps can't call dependencies. I went through this same thing with featureplacer already.

Edit: THis is stupid because years ago maps COULD call dependencies.
User avatar
Argh
Posts: 10920
Joined: 21 Feb 2005, 03:38

Re: WorldBuilder and Your Projects

Post by Argh »

Tobi said that MapInfo.lua, like ModInfo.lua, can call dependencies. Are you sure that doesn't work? I guess I'll have to test that out really thoroughly now.
(how much bloat might it add to a map? any estimations?)
Maybe a few hundred K for the Lua file, if it was a map dependency and a really complex map- basically nothing. Real in-game overhead will vary wildly depending on the size / complexity of the scene, ofc.
User avatar
daryl
Posts: 195
Joined: 08 Oct 2006, 10:33

Re: WorldBuilder and Your Projects

Post by daryl »

Argh wrote:Tobi said that MapInfo.lua, like ModInfo.lua, can call dependencies. Are you sure that doesn't work? I guess I'll have to test that out really thoroughly now.
(how much bloat might it add to a map? any estimations?)
Maybe a few hundred K for the Lua file, if it was a map dependency and a really complex map- basically nothing. Real in-game overhead will vary wildly depending on the size / complexity of the scene, ofc.
does world builder work with last version of spring??
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: WorldBuilder and Your Projects

Post by Forboding Angel »

Use featureplacer

http://springrts.com/phpbb/viewtopic.php?f=56&t=21458

At this point FP is far better than Worldbuilder.

Edit: Wow, boardfail. Link Fixed.
Post Reply

Return to “Game Development”