Tremulous Forum

Mods => Mod Releases => Non-Gameplay Changing => Topic started by: googles on December 03, 2008, 11:07:19 pm

Title: nobuild..a server-defined option
Post by: googles on December 03, 2008, 11:07:19 pm
Hey there! I have been attempting to port/rewrite nobuild to/for Lakitu7's QVM. This feature is an admin command that allows you to define places on maps to disallow building, when nobuild mode is enabled, you simply place a buildable where you want the nobuild marker to be and it will auto disallow building in that area, which you can define.

Usage: !nobuild (area) (height). Area is the range wide, and height is how far up/down the area should be. When im done porting/rewriting nobuild, it will have the ability to save nobuild areas. This feature can be used for disallowing glitch-building.

Question is: will anyone use this feature? If not i will stop work on the port...I would like some community feed back....
Title: Re: nobuild..a server-defined option
Post by: Hendrich on December 03, 2008, 11:38:34 pm
Googles, that sounds like an excellent idea! Some members of the community can always use features like that for fun servers or to dis-allow buildings being built on areas of the map that the admin considers to be un-balanced, or this feature can be used in layouts or trick-jump servers. I beleive this feature can be handy if used wisely, and if we're open-minded to the idea, it can be used greatly.

Don't give up on this feature Googles! I think its a cool feature that can potentially be useful if developed.
Title: Re: nobuild..a server-defined option
Post by: Lakitu7 on December 03, 2008, 11:56:18 pm
I think Hendrich here has the right idea, actually. It would make more sense as part of the layout system, since it is a modification of buildables on a map, as opposed to its currently implementation as an admin command.

Picture this more: In devmap, there's an extra nobuild-marker buildable (available to both teams). When you "build" it, the shadow buildable then becomes a second one that defines the other corner of the bounding box. A third one could then come up, which could either be placed or cancelled, giving the region a height (or not). The markers and affected area should be given some reasonable graphics (visible only in devmap of course). They should then be included in layoutsave, and loaded (minus the visuals) in layout load.

I understand that the graphics-side of things isn't really possible in game.qvm only, but I personally don't think it'd be a bad addition to the mainline layout system in theory if done cleanly along those lines.
Title: Re: nobuild..a server-defined option
Post by: googles on December 04, 2008, 12:12:09 am
Well the here is how it would work: i do !nobuild 100 50, that will enable nobuild mode for a 100 game-unit range, and a 50 game-unit height. After nobuild is enabled, you will select a buildable( it really doesn't matter what type it is.. ) and find where you want the nobuild area to be defined, and place the buildable. This will not actually place a building, but instead a nobuild marker( it will be the XYZ axis since it will be pure QVM based ). There will be another command, called !nobuildsave, which from the name you could imagine what it would do. It will create a nobuild folder( much like the layout feature.. ) and save all nobuild markers made. Once a marker is placed, it cannot be removed( since it lacks a bbox and therefore no way of telling where a marker is ) and it will show a XYZ model type thing. After they have been saved and the map is restarted, there will be nothing there, visually, so they won't confuse/distract players, but they will still disallow building in that area as previously defined.

Edit:

I was considering a nobuild list..so you could possibly remove a marker if you misplaced it or did the wrong range/height...

Edit 2:

I don't want to mix nobuild and layout together, doing so would break all current layout config files and thus, not allowing backwards compatibility...

Edit 3:

http://www.sendspace.com/file/07gjn7 (http://www.sendspace.com/file/07gjn7) lol....
Title: Re: nobuild..a server-defined option
Post by: Lakitu7 on December 04, 2008, 12:46:57 am
Not necessarily, no. If you defined another faux buildable type, then all current layouts would work just fine as they wouldn't have any of the nobuild markers.
Title: Re: nobuild..a server-defined option
Post by: googles on December 04, 2008, 12:48:43 am
Well i would still like to keep them apart..to keep it more clean...
Title: Re: nobuild..a server-defined option
Post by: Lakitu7 on December 04, 2008, 01:27:30 am
Surely a system that modifies the layouts of buildables would fit into a system that... modifies the layouts of buildables. You made a thread for feedback. Do at least think said feedback over for more than 30 seconds first.
Title: Re: nobuild..a server-defined option
Post by: SlackerLinux on December 04, 2008, 02:40:23 am
good to see your improving on your old patch google

layout system and defining points using buildable placement (an buildable each corner of the box) seems to be 2 good ideas the old way was a little bit of trial and error.

im surprised latiku7 didn't port it the second it made it into p-g good to see your doing it now Google.

giving each build zone a #id  or an alias might be a nice feature then you can make a command that could disable some of the zones.
also any way to make the full zone be totally visible would be nice instead of 1 icon in the middle (again just making it easier to use)
Title: Re: nobuild..a server-defined option
Post by: googles on December 04, 2008, 09:34:22 pm
I have been thinking of working with the layout system and adding nobuild to it..but honestly, I would rather keep the two separate..I have also been thinking of extending the !nobuild command to have sub-commands, such as enable, disable, log, remove, and save...

Edit:

I believe a nobuild log would be quite easy, I would just use an array...
Title: Re: nobuild..a server-defined option
Post by: googles on December 05, 2008, 12:37:47 am
Well i have added the ability to enable/disable nobuild mode, show all the nobuild markers with a log command, save and auto load nobuild configs. here is the latest patch based on SVN 122 Lakitu7

http://www.sendspace.com/file/1y0nec

Edit:

I would like to note that the nobuild log is pretty debug-ish, it only displays the origin of a marker...

Edit:

This has been added to the MG patch tracker... http://patches.mercenariesguild.net/index.php?do=details&task_id=213 (http://patches.mercenariesguild.net/index.php?do=details&task_id=213)