Author |
Topic: [CODE/MAP] Standard maps with new items... |
Hellchick~rb |
General Member Since: Dec 23, 2006 Posts: 39 Last: Dec 23, 2006 [view latest posts] |
|
|
Category: General Gaming Posted: Friday, Jan. 24, 2003 09:38 pm |
|
Hey everyone, As I've been working on Detonator Q3A I was curious about the whole subject of adding new items from your mod into maps. Rather than replace existing items in Q3A such as powerups with my fragments, I've added my fragments as unique items on their own, so they don't replace anything in the game. My assumption as I've been working on the mod has been that I'd need to create new maps for the mod because the existing Q3A maps don't have spawn points in them for my fragments. I created a .def file to add these spawn points to any maps made. But it occured to me -- rather late in the mod's development -- that there are mods out there using the standard q3a maps that have new items in them, so obviously they got their mod-specific items in there somehow. So my question is, how? Did they decompile the .bsp and add them in? Or did they have some process where their mod code somehow adds these items without needing to mess with the map at all? A friend of mine raised the Lithium mod as an example of such a mod. Anyone here have any experience with this who could clue me in? (Note to Rev. Ted: I still have the ent email you sent me relating to this subject, but I'm wondering how other mods did it). Aside from one more thing needing coding and the models needing some skins, my mod is essentially done and ready for playtesting. If I could get my items in the standard q3a maps that would save a lot of time. (I'd still like to create new maps for my mod.) Thanks! |
|
|
|
Lacutis~rb |
General Member Since: Dec 23, 2006 Posts: 105 Last: Dec 23, 2006 [view latest posts] |
|
|
Category: General Gaming Posted: Friday, Jan. 24, 2003 10:26 pm |
|
Well, with Single Player Action Quake 2 I use 3 different methods. The first method being that I replace existing items in the game with new items. I do that by looking inthe SpawnItem functions and basically going Code Sample | if(item == "olditem") { item == "newitem"; }
|
The second way I do it is with .ent files. Basically when the map loads and it starts spawning in static things like ammo, weapons, etc, I open a file called mapname.ent and start reading it in. It holds in it basically the structure used to define items, with a classname, location, any other variables I need. Then as I read them in I just call the spawn functions and spawn my items into the world.
The third method is used to create coop spawn points in maps that weren't really designed to have a bunch of them. What I do is search through the player spawn entities, find one, then spawn the player at an offset to it, making sure he isn't in a wall, floor, or ceiling.
What I would recommend for you is to look through the item spawns in the map and just pick one and spawn your fragment there, maybe giving it a little forward and upward velocity to make it shoot a little ways away. |
|
|
|
U.S.S. Speed~rb |
General Member Since: Dec 23, 2006 Posts: 9936 Last: Dec 23, 2006 [view latest posts] |
|
|
|
ReverendTed~rb |
General Member Since: Dec 23, 2006 Posts: 2198 Last: Dec 23, 2006 [view latest posts] |
|
|
Category: General Gaming Posted: Saturday, Jan. 25, 2003 07:06 pm |
|
Quote (U.S.S. Speed @ Jan. 25 2003, 7:34 am) | And the last but the best way, is add your item spawn point on the .map, (Like q3dm17.map), and only do a "Entities recompile" which only add the entities on the map, letting the brush/lighting work like it is.
Of course, you need the q3dm17.bsp on your maps folder as well as q3dm17.map... |
It's actually possible to do this without the original .map file. You can strip the entity information straight out of the .bsp, as it's all in plain text, and save this to your own .map file. You can then add your entity(s) and do the "-ents only" recompile. It's even possible to open the entity-only info in Radiant by stripping out any entity with a "model" key and saving it as a seperate .map file. This makes it a little easier to get your bearings (though getting grid coordinates while inside the game precludes this necessity). However, this method requires that you distribute a full .bsp file, while the ManDown method (a version of the accessory .ant\.ent file method) requires nothing more than the entity info. (For example, my +10MB pk3 file of 6 recompiled KtMwtB-compatible stock Raven maps was supported in ManDown by 6 files totalling 767 bytes.)
I am puzzled by the recent release of a CTF-enabled version of mp_finca on SoF2Files.com. The method I've described does not allow for the addition of new brushes, as would ne necessary to add in triggers...and you have to add in triggers to support CTF. |
|
|
|
U.S.S. Speed~rb |
General Member Since: Dec 23, 2006 Posts: 9936 Last: Dec 23, 2006 [view latest posts] |
|
|
|
Lacutis~rb |
General Member Since: Dec 23, 2006 Posts: 105 Last: Dec 23, 2006 [view latest posts] |
|
|
|
ReverendTed~rb |
General Member Since: Dec 23, 2006 Posts: 2198 Last: Dec 23, 2006 [view latest posts] |
|
|
|
Lacutis~rb |
General Member Since: Dec 23, 2006 Posts: 105 Last: Dec 23, 2006 [view latest posts] |
|
|
Category: General Gaming Posted: Sunday, Jan. 26, 2003 06:23 am |
|
This is how it works with SP AQ2: http://users.bigpond.net.au/abcgi....101.htmI didn't write it, but it's how people write .ent files for my mod. I don't see any reason why you can't add triggers to a map using .ents? |
|
|
|
Lacutis~rb |
General Member Since: Dec 23, 2006 Posts: 105 Last: Dec 23, 2006 [view latest posts] |
|
|
|
ReverendTed~rb |
General Member Since: Dec 23, 2006 Posts: 2198 Last: Dec 23, 2006 [view latest posts] |
|
|
|