Author Topic: saving base layout  (Read 23480 times)

rasz_pl

  • Guest
saving base layout
« Reply #30 on: December 12, 2006, 06:23:25 pm »
Quote from: "Voidling"
If you're going to make it, I'll be happy. :)


I will If someone who knows how managing entities works :)

Quote from: "Voidling"

 But I don't understand one thing: do you want multiple default base spots, from which one would be picked at random (as in Gloom, I think), saving of blueprints for base(es) at your computer, saving the blueprints server-side by admins or what?


all of this :)

Quote from: "Voidling"
And one more thing: while you apparenly figured out a way of technically managing them, how would they load? Server side mod, or is it going too deep for it?


First part of my post is basically vcxzet idea rephraset for the masses :)
The second one came to me when I sat for a while and thought about the possibilities of external layouts.
First part can be absolutelly server side, and if coded today you could play it tomorrow with current clients. Server would just load the map, delete default buildables and load custom/random/favourite layout from the text file.
The second one needs deep patching of the client code.

Quote from: "Voidling"
And how would you see blueprints ingame, like ghost-buildings in specific spots?


exactly, but with different color and more transparent to not confuse ppl. You toggle display of the current loaded "blueprint buffer" with a key/bind, peek other peoples current loaded "blueprint buffer" with another key/bind, and copy with another.
 That would enable for example a team leader, or main builder to show other players how he wants his base build without typing in the chat every position. Imagine 2 ppl, one loads different blueprints, the second one just aims at him and presses /showblueprint, then looks arround at the ghost buildables and says "its shit, show me another one", after the third one he says "this is pure gold, do it" :).

 Fast building when clicling on the blueprint ghost is the wet dream of every anal builder, imagine NO MORE 10 second fitting armory in that very special place you like :) just load your blueprint, aim at the ghost image of the armory and press LMB, Done! its building :).

Quote from: "Voidling"
All around, I think it is a brilliant idea, especially with all those lame builders around.


/me too, now all we need is a trem hacker who knows enough about entities.

David

  • Spam Killer
  • *
  • Posts: 3543
  • Turrets: +249/-273
saving base layout
« Reply #31 on: December 12, 2006, 06:29:46 pm »
Also, when a building is destroyed, how about it automatically add a blueprint there, so you can rebuild fast? You can just delete it if you don't want it.

Also, a pro builder can load a blueprint and some noob and build the base, while the pro goes killing.

Also, it would be cool to be able to name building, so you could number build order, or mark important bit, or stuff that looks stupid at first, but is really a good idea.

EDIT:
Can we get a dev's views on this?
Its obviously going to be a lot of work, and there is no point if it never gets added to the next version.
Any maps not in the MG repo?  Email me or come to irc.freenode.net/#mg.
--
My words are mine and mine alone.  I can't speak for anyone else, and there is no one who can speak for me.  If I ever make a post that gives the opinions or positions of other users or groups, then they will be clearly labeled as such.
I'm disappointed that people's past actions have forced me to state what should be obvious.
I am not a dev.  Nothing I say counts for anything.

techhead

  • Posts: 1496
  • Turrets: +77/-73
    • My (Virtually) Infinite Source of Knowledge (and Trivia)
saving base layout
« Reply #32 on: December 12, 2006, 07:01:46 pm »
A lot of work, but it looks like an awesome feature.
I'm playing Tremulous on a Mac!
MGDev fan-club member
Techhead||TH
/"/""\"\
\"\""/"/
\\:.V.://
Copy and paste Granger into your signature!

vcxzet

  • Guest
saving base layout
« Reply #33 on: December 12, 2006, 07:45:58 pm »
in g_main.c
in func
G_InitGame

// parse the key/value pairs and spawn gentities
  G_SpawnEntitiesFromString( );

rasz_pl

  • Guest
saving base layout
« Reply #34 on: December 12, 2006, 07:59:14 pm »
Quote from: "vcxzet"
in g_main.c
in func
G_InitGame

// parse the key/value pairs and spawn gentities
  G_SpawnEntitiesFromString( );


jackpot

vcxzet

  • Guest
saving base layout
« Reply #35 on: December 12, 2006, 08:03:40 pm »
qboolean G_ParseSpawnVars( void )
in g_spawn.c


maybe if you parse a file in that function rather than the ones in the map
hmmm I have to try
first I need to save the layout in a format that function recognize
Code: [Select]

G_ParseSpawnVars

Parses a brace bounded set of key / value pairs out of the
level's entity strings into level.spawnVars[]

This does not actually spawn an entity.

rasz_pl

  • Guest
saving base layout
« Reply #36 on: December 12, 2006, 08:11:29 pm »
Quote from: "David"
Also, when a building is destroyed, how about it automatically add a blueprint there, so you can rebuild fast? You can just delete it if you don't want it.

just after building base player could press bind for /copyblueprint NOT aiming any players, so now this players buffer would contain current base, so after the attack he would see what is missing to rebuild.
Quote from: "David"
Also, a pro builder can load a blueprint and some noob and build the base, while the pro goes killing.

yes, but the noob would have to press /showblueprint and then /copyblueprint to make the pro builder blueprint his own active. Forcing own blueprints on other players is a big NO NO imo.
Quote from: "David"
Also, it would be cool to be able to name building, so you could number build order, or mark important bit, or stuff that looks stupid at first, but is really a good idea.

would be handy, but im affraid that too much information could be also a bad thing, hmm maybe toggleable like tutorial mode, yep that could work.

Quote from: "David"
EDIT:
Can we get a dev's views on this?
Its obviously going to be a lot of work, and there is no point if it never gets added to the next version.


Ill PM some devs.
bzz bzz PMs send to Timbo Norfenstein ERR:OverFlow dolby

Quote from: "vcxzet"


jackpot, i was toying with the code an hour ago and noticed entities arent just dropped on the map, but spawned just like 1000 underpants builder gnomes would build them in a split of a second on the map load :P

doomagent13

  • Posts: 506
  • Turrets: +18/-18
saving base layout
« Reply #37 on: December 12, 2006, 11:40:49 pm »
I havent looked completely through the code, but the way I see it, a change to the renderer would require a client side change, if not a complete client recompile.  Just an idea that could help: have it remember the default locations without reloading map in case the different layout doesnt fit, such as something in a brush.  For saved blueprints, it will probably need to remember not only each buildings position in relationship to eachother, but also their relationship to a specific spot in the map, possibly the center.  I dont know how well this would work, but it might be a good idea to have it store blueprints in the map's .pk3 , in order to keep blueprints from different maps separated and with their own map, as well as to not have it need to look elsewhere when it loads the map--maybe put them in the scripts folder?

rasz_pl

  • Guest
saving base layout
« Reply #38 on: December 13, 2006, 02:22:23 am »
Quote from: "doomagent13"
For saved blueprints, it will probably need to remember not only each buildings position in relationship to eachother, but also their relationship to a specific spot in the map, possibly the center.  I dont know how well this would work, but it might be a good idea to have it store blueprints in the map's .pk3 , in order to keep blueprints from different maps separated and with their own map, as well as to not have it need to look elsewhere when it loads the map--maybe put them in the scripts folder?


automatically add  map name before the file name, so on ATCS
/loadblueprint myshittybase
would load atcs-myshittybase.bpt

holyknight

  • Posts: 998
  • Turrets: +4/-2
saving base layout
« Reply #39 on: December 13, 2006, 02:49:19 am »
sounds interesting and fun :)
but sounds confusing and hard to follow because of all those weird sentences going / and : with codes and stuff  :-?

Undeference

  • Tremulous Developers
  • *
  • Posts: 1254
  • Turrets: +122/-45
saving base layout
« Reply #40 on: December 13, 2006, 05:54:55 am »
Some people may like using the same base for every map. I can just imagine "No, that base sucks... but it might be cool on such and such map in such and such room".

I wonder if base layouts could be considered copyrighted...
[Edit]
You used my base. Pay royalties or I'll sue!
Need help? Ask intelligently. Please share solutions you find.

Thats what we need, helpful players, not more powerful admins.

rasz_pl

  • Guest
saving base layout
« Reply #41 on: December 13, 2006, 07:42:04 pm »
Quote from: "Undeference"
I wonder if base layouts could be considered copyrighted...
[Edit]
You used my base. Pay royalties or I'll sue!


>Location: Detroit, MI

no, the rest of the world is not retarded ...

Quote from: "holyknight"
sounds interesting and fun :)
but sounds confusing and hard to follow because of all those weird sentences going / and : with codes and stuff  :-?


you use those "weird sentences going / and : with codes and stuff" EVERY time you play tremulous, every time you press a button you sent one of those weird sentences to the server :). All the user will se would be 2-3 new buttons to press, thats all.

|Nex|TrEmMa

  • Posts: 248
  • Turrets: +0/-0
saving base layout
« Reply #42 on: December 13, 2006, 07:50:43 pm »
Sounds like RollerCoaster Tycoon and saving my roller-coaster design.

Best game ever btw.

vcxzet

  • Guest
saving base layout
« Reply #43 on: December 14, 2006, 08:06:08 pm »
I think it a little bit
I need /fly and /nobuildtime commands
for creating layouts easily

daenyth

  • Posts: 230
  • Turrets: +21/-26
saving base layout
« Reply #44 on: December 14, 2006, 10:31:03 pm »
Absolutely fantastic idea!

I usually end up being :granger: because either my team has better fighters or because if I don't the base ends up using 60bp on eggs and then 24bp on floor trappers...

Also it would make sharing innovative (read: new, untested, crappy) bases SO much easier than the current demo/1000 screenshots :P

Finally, if it could be integrated with !designate somehow, that would be IDEAL. I see futures of "!forceblueprint awesomebase.bpt" (And the following server changes from admin abuse :P). Along these lines, "/callvote blueprint foo" might be pretty spiffy also.

I'm looking forward to this mod...
Quote from: Bullislander05
It's like trying to take apple seeds out of a zebra to plant a giraffe tree.

Risujin

  • Posts: 739
  • Turrets: +33/-13
    • http://risujin.org
saving base layout
« Reply #45 on: December 15, 2006, 06:27:07 pm »
Har har, I coded this idea this morning. Look for a patch against SVN 872 later today ... and of course, in Balance mod rev 11. :)

dude11235

  • Posts: 100
  • Turrets: +3/-4
saving base layout
« Reply #46 on: December 25, 2006, 06:45:01 am »
I'm a troll!

AKAnotu

  • Posts: 616
  • Turrets: +7/-9
saving base layout
« Reply #47 on: December 27, 2006, 07:59:22 pm »
2 things
1 talk about this in pms
2 there's already a patch for this, browse around, or play balance mod servers

vcxzet

  • Guest
saving base layout
« Reply #48 on: December 27, 2006, 08:28:28 pm »
tjw released a patch which is based on risujins
they load the same way
in risujins you get invisible buildables
in tjw's you get start in solid error
risujin's is more funny but quite abusive
tjws not abusive ... but less funny
(abuse=fun for me)
I am happy. thanks to both :D

Risujin

  • Posts: 739
  • Turrets: +33/-13
    • http://risujin.org
saving base layout
« Reply #49 on: December 31, 2006, 08:50:41 pm »
Quote from: "vcxzet"
(abuse=fun for me)
I am happy. thanks to both :D

Games are all about abuse. Doing things in virtual reality you would never have the balls to do in life. Like slapping random strangers! The more abuse, the better the game. 8)

chompers

  • Posts: 224
  • Turrets: +4/-0
saving base layout
« Reply #50 on: January 01, 2007, 05:37:52 am »
Back in the day, D!ABLO wrote an entity editor mod for q3a, it saves and loads files with new entities in the standard text based .map format. It was open source, and included in the CPMA mod. It requires running a client side mod to save layouts, but in load only mode it is a server side mod.

For trem, the simplest way would be to view base variants as though they were whole new maps, even though they are just a text file which refer to a bsp, so you could callvote map ATCS, or callvote map ATCS_myLeetBases_version4.

Havent seen Risujin or tjw's versions, do they work in a similar way?


Also, plugging my old blueprint idea again in this thread.

It would be cool if you could lay down blueprints in game, not an automatic whole base layout, but something where you can run around 'fake building' very quickly to show other players where you would build if you werent out killing the enemy

There's no build delay at all but each blueprint costs cash, say 200cr / 1 evo. When someone comes along and builds on your blueprint, they get that cash. This way experienced players can help out newbs or late joiners who only have a ckit because they cant afford light armour.

Undeference

  • Tremulous Developers
  • *
  • Posts: 1254
  • Turrets: +122/-45
saving base layout
« Reply #51 on: January 01, 2007, 08:37:10 am »
Quote from: "Risujin"
you would never have the balls to [...] slap random strangers!
lies

Quote
Havent seen Risujin or tjw's versions, do they work in a similar way?
Any way you implement it would sort of be similar. So yes, I guess. But layouts aren't loaded with /map

Quote
There's no build delay at all but each blueprint costs cash, say 200cr / 1 evo. When someone comes along and builds on your blueprint, they get that cash.
So people could get free money for picking up a ckit and movin a couple turrets? Seems a little problematic.
Need help? Ask intelligently. Please share solutions you find.

Thats what we need, helpful players, not more powerful admins.

Risujin

  • Posts: 739
  • Turrets: +33/-13
    • http://risujin.org
saving base layout
« Reply #52 on: January 01, 2007, 05:52:41 pm »
Quote from: "chompers"
Back in the day, D!ABLO wrote an entity editor mod for q3a, it saves and loads files with new entities in the standard text based .map format.

!layout saves to a plain text file. I think TJWs does too.

Quote from: "chompers"
It requires running a client side mod to save layouts, but in load only mode it is a server side mod.

This sort of thing is server-side, no client modifications are necessary. The server has a full list of entities and saves them to a file on the server.

techhead

  • Posts: 1496
  • Turrets: +77/-73
    • My (Virtually) Infinite Source of Knowledge (and Trivia)
saving base layout
« Reply #53 on: January 01, 2007, 06:56:41 pm »
Did you miss the part about the blueprint costing cash to begin with?
Person with money goes, "There should be a turret here, I'll pay you do do it."
Noob with Ckit builds it, buys light armor and helmet.
Money does not come free, it is just redistributed.
I'm playing Tremulous on a Mac!
MGDev fan-club member
Techhead||TH
/"/""\"\
\"\""/"/
\\:.V.://
Copy and paste Granger into your signature!

vcxzet

  • Guest
saving base layout
« Reply #54 on: March 06, 2007, 11:21:44 pm »
the layout patch in svn
https://bugzilla.icculus.org/show_bug.cgi?id=2973
compilation of tjw's comments
Code: [Select]

svn891 g_layouts

server commands:

 layoutsave LAYOUTNAME
  saves the layout to layouts/MAPNAME/LAYOUTNAME.dat

 layoutload LAYOUTNAME1 [ LAYOUTNAME2 [ LAYOUTNAME3 [ ... ] ] ]
  loads at random one of the named layouts ( ones that exist )

cvars:
  g_layouts [string]
    This is a latched cvar that is a space sperated list of allowed
    LAYOUTNAME's.  If this is empty any layouts found by g_layoutAuto will
    be used.

  g_layoutAuto [1|0]
    Determines whether or not the server should search for all valid layouts
    and select one at random (default 1)

Specifying layouts with maprotation.cfg:
   For server admins who want to disable certain layouts a map comes with,
   or want to force only their own layouts, a primitive "layouts" has been
   added to the maprotation.cfg file.  For example:

  rotation1
  {
    karith
    atcs
    {
      layouts "tjw tjw2"
    }
    niveus
  }

  This would allow only the layouts named tjw and tjw2 to be used when the
  map is started by the maprotation system.

Other changes:
  * buildings are created instantly when cheats are enabled
  * build timer is instant when cheats are enabled

  This is to make creating a layout less tedious.

* add optional parameter to the !restart command "!restart [LAYOUTNAME]"
* add new !map command "!map MAPNAME [LAYOUTNAME]"
* add new !listlayouts command "!listlayouts [MAPNAME]"


I've added a special name for the map's built-in layout called "*BUILTIN*"
This name is added to the list for random selection and can be named in the
list of allowed layouts.

PFB

  • Guest
saving base layout
« Reply #55 on: June 04, 2007, 12:16:30 am »
what about adding support for storing "disabled classes/upgrades/weapons" in the layout file
and with the support for triggers and targets . you can have a mission layout

n00b pl0x

  • Posts: 2412
  • Turrets: +55/-168
saving base layout
« Reply #56 on: June 04, 2007, 05:30:00 am »
i like how the first 5 posts of this thread yelled at vcx for trolling but this is one of the best features ever (well the one that you turn on and off allowing a person to buy tons of shit is at least)
will sort out my sig, or I will get banned.

HOW DO I SORTED SIG?